From 89113bf6d779f10fca57789d43ed3664934a8804 Mon Sep 17 00:00:00 2001
From: Rossen Georgiev <rossen@rgp.io>
Date: Tue, 4 Oct 2022 07:41:12 +0000
Subject: [PATCH] update protobufs

---
 Makefile                                      |   18 +-
 protobuf_list.txt                             |   11 +-
 protobufs/enums.proto                         |  220 +-
 protobufs/enums_clientserver.proto            |   22 +-
 protobufs/enums_productinfo.proto             |   14 +
 protobufs/offline_ticket.proto                |    9 +
 protobufs/steammessages_auth.proto            |  382 +
 protobufs/steammessages_base.proto            |   30 +-
 protobufs/steammessages_broadcast.proto       |    5 +-
 protobufs/steammessages_chat.proto            |    1 +
 protobufs/steammessages_client_objects.proto  |  346 +-
 protobufs/steammessages_clientserver.proto    |   12 +
 protobufs/steammessages_clientserver_2.proto  |    1 +
 ...eammessages_clientserver_gameservers.proto |    4 +-
 .../steammessages_clientserver_login.proto    |   11 +-
 .../steammessages_clientserver_uds.proto      |   28 +-
 protobufs/steammessages_cloud.proto           |   48 +
 protobufs/steammessages_contentsystem.proto   |    1 +
 protobufs/steammessages_credentials.proto     |    2 +-
 protobufs/steammessages_datapublisher.proto   |    1 +
 protobufs/steammessages_depotbuilder.proto    |    1 +
 protobufs/steammessages_deviceauth.proto      |    1 +
 protobufs/steammessages_econ.proto            |   89 +-
 protobufs/steammessages_friendmessages.proto  |    1 +
 .../steammessages_gamenotifications.proto     |    1 +
 protobufs/steammessages_gameservers.proto     |   86 +
 protobufs/steammessages_inventory.proto       |    1 +
 protobufs/steammessages_linkfilter.proto      |    1 +
 .../steammessages_lobbymatchmaking.proto      |    1 +
 protobufs/steammessages_market.proto          |    1 +
 .../steammessages_marketingmessages.proto     |  203 +
 protobufs/steammessages_offline.proto         |    4 +
 protobufs/steammessages_parental.proto        |    1 +
 protobufs/steammessages_parties.proto         |    1 +
 protobufs/steammessages_partnerapps.proto     |    1 +
 protobufs/steammessages_player.proto          |   85 +-
 protobufs/steammessages_publishedfile.proto   |   55 +-
 protobufs/steammessages_qms.proto             |    1 +
 protobufs/steammessages_remoteplay.proto      |   61 +
 protobufs/steammessages_secrets.proto         |    1 +
 protobufs/steammessages_shader.proto          |    4 +
 protobufs/steammessages_site_license.proto    |    1 +
 protobufs/steammessages_star.proto            |   65 +
 protobufs/steammessages_steamtv.proto         |  631 ++
 protobufs/steammessages_store.proto           |  219 +-
 protobufs/steammessages_storebrowse.proto     |  326 +
 protobufs/steammessages_timedtrial.proto      |    1 +
 protobufs/steammessages_twofactor.proto       |   57 +
 protobufs/steammessages_unified_test.proto    |    1 +
 protobufs/steammessages_useraccount.proto     |   40 +
 protobufs/steammessages_video.proto           |    1 +
 protobufs/steammessages_workshop.proto        |   24 +
 steam/core/msg/unified.py                     |    9 +
 steam/protobufs/content_manifest_pb2.py       |  165 +-
 steam/protobufs/encrypted_app_ticket_pb2.py   |   30 +-
 steam/protobufs/enums_clientserver_pb2.py     | 7077 ++++++++++-------
 steam/protobufs/enums_pb2.py                  | 1621 +++-
 steam/protobufs/enums_productinfo_pb2.py      |   81 +
 steam/protobufs/gc_pb2.py                     |   56 +-
 steam/protobufs/offline_ticket_pb2.py         |  105 +
 steam/protobufs/steammessages_auth_pb2.py     | 2926 +++++++
 steam/protobufs/steammessages_base_pb2.py     |  987 ++-
 .../protobufs/steammessages_broadcast_pb2.py  | 1986 ++---
 steam/protobufs/steammessages_chat_pb2.py     | 3384 ++++----
 .../steammessages_client_objects_pb2.py       | 3441 +++++++-
 .../steammessages_clientserver_2_pb2.py       | 2179 ++---
 .../steammessages_clientserver_appinfo_pb2.py |  417 +-
 .../steammessages_clientserver_friends_pb2.py |  694 +-
 ...ammessages_clientserver_gameservers_pb2.py |  567 +-
 .../steammessages_clientserver_lbs_pb2.py     |  176 +-
 .../steammessages_clientserver_login_pb2.py   |  543 +-
 .../steammessages_clientserver_mms_pb2.py     |  577 +-
 .../steammessages_clientserver_pb2.py         | 1184 +--
 .../steammessages_clientserver_ucm_pb2.py     |  535 +-
 .../steammessages_clientserver_uds_pb2.py     |  523 +-
 .../steammessages_clientserver_ufs_pb2.py     |  471 +-
 ...teammessages_clientserver_userstats_pb2.py |  199 +-
 steam/protobufs/steammessages_cloud_pb2.py    | 1635 ++--
 .../steammessages_contentsystem_pb2.py        |  238 +-
 .../steammessages_credentials_pb2.py          |  339 +-
 .../steammessages_datapublisher_pb2.py        |  165 +-
 .../steammessages_depotbuilder_pb2.py         |  325 +-
 .../protobufs/steammessages_deviceauth_pb2.py |  557 +-
 steam/protobufs/steammessages_econ_pb2.py     |  905 ++-
 .../steammessages_friendmessages_pb2.py       |  427 +-
 .../steammessages_gamenotifications_pb2.py    |  426 +-
 .../steammessages_gameservers_pb2.py          |  852 +-
 .../protobufs/steammessages_inventory_pb2.py  |  544 +-
 .../protobufs/steammessages_linkfilter_pb2.py |  130 +-
 .../steammessages_lobbymatchmaking_pb2.py     |   81 +-
 steam/protobufs/steammessages_market_pb2.py   |   66 +-
 .../steammessages_marketingmessages_pb2.py    | 1479 ++++
 steam/protobufs/steammessages_offline_pb2.py  |  122 +-
 steam/protobufs/steammessages_parental_pb2.py |  530 +-
 steam/protobufs/steammessages_parties_pb2.py  |  258 +-
 .../steammessages_partnerapps_pb2.py          |  358 +-
 .../steammessages_physicalgoods_pb2.py        |  323 +-
 steam/protobufs/steammessages_player_pb2.py   | 3220 ++++----
 .../steammessages_publishedfile_pb2.py        | 2326 +++---
 steam/protobufs/steammessages_qms_pb2.py      |  324 +-
 .../protobufs/steammessages_remoteplay_pb2.py | 3098 +++++---
 steam/protobufs/steammessages_secrets_pb2.py  |  113 +-
 steam/protobufs/steammessages_shader_pb2.py   |  297 +-
 .../steammessages_site_license_pb2.py         |  337 +-
 steam/protobufs/steammessages_star_pb2.py     |  561 ++
 steam/protobufs/steammessages_steamtv_pb2.py  | 4985 ++++++++++++
 steam/protobufs/steammessages_store_pb2.py    | 2172 ++++-
 .../steammessages_storebrowse_pb2.py          | 2671 +++++++
 .../protobufs/steammessages_timedtrial_pb2.py |  130 +-
 .../protobufs/steammessages_twofactor_pb2.py  |  848 +-
 .../steammessages_unified_base_pb2.py         |   47 +-
 .../steammessages_unified_test_pb2.py         |  138 +-
 .../steammessages_useraccount_pb2.py          |  882 +-
 steam/protobufs/steammessages_video_pb2.py    |  213 +-
 .../steammessages_webui_friends_pb2.py        | 1772 +++--
 steam/protobufs/steammessages_workshop_pb2.py |  174 +
 steam/protobufs/test_messages_pb2.py          |   69 +-
 117 files changed, 48116 insertions(+), 19086 deletions(-)
 create mode 100644 protobufs/enums_productinfo.proto
 create mode 100644 protobufs/offline_ticket.proto
 create mode 100644 protobufs/steammessages_auth.proto
 create mode 100644 protobufs/steammessages_marketingmessages.proto
 create mode 100644 protobufs/steammessages_star.proto
 create mode 100644 protobufs/steammessages_steamtv.proto
 create mode 100644 protobufs/steammessages_storebrowse.proto
 create mode 100644 protobufs/steammessages_workshop.proto
 create mode 100644 steam/protobufs/enums_productinfo_pb2.py
 create mode 100644 steam/protobufs/offline_ticket_pb2.py
 create mode 100644 steam/protobufs/steammessages_auth_pb2.py
 create mode 100644 steam/protobufs/steammessages_marketingmessages_pb2.py
 create mode 100644 steam/protobufs/steammessages_star_pb2.py
 create mode 100644 steam/protobufs/steammessages_steamtv_pb2.py
 create mode 100644 steam/protobufs/steammessages_storebrowse_pb2.py
 create mode 100644 steam/protobufs/steammessages_workshop_pb2.py

diff --git a/Makefile b/Makefile
index ec3dc2d..fe61628 100644
--- a/Makefile
+++ b/Makefile
@@ -20,6 +20,8 @@ Available commands:
 
 endef
 
+SHELL := /bin/bash
+
 export HELPBODY
 help:
 	@echo "$$HELPBODY"
@@ -67,16 +69,18 @@ upload: dist register
 
 pb_fetch:
 	wget -nv --show-progress -N -P ./protobufs/ -i protobuf_list.txt || exit 0
-	mv protobufs/friends_mobile.proto protobufs/steammessages_webui_friends.steamclient.proto
-	sed -i 's/CCommunity_ClanAnnouncementInfo/xCCommunity_ClanAnnouncementInfo/' protobufs/steammessages_webui_friends.steamclient.proto
-	sed -i 's/CMsgClientSecret/xCMsgClientSecret/' protobufs/steammessages_webui_friends.steamclient.proto
-	sed -i '1s/^/option py_generic_services = true\;\n/' protobufs/steammessages_webui_friends.steamclient.proto
-	rename -v '.proto' '.proto.notouch' protobufs/{steammessages_physicalgoods,gc,test_messages}.proto
-	rename -v '.steamclient' '' protobufs/*.proto
+	for FN in protobufs/{steammessages_{physicalgoods,webui_friends},gc,test_messages}.proto; do \
+		mv "$${FN}" "$${FN}.notouch"; \
+	done;
+	for FN in protobufs/*.steamclient.proto; do \
+		mv "$${FN}" "$${FN/.steamclient.proto/.proto}"; \
+	done;
 	sed -i '1s/^/syntax = "proto2"\;\n/' protobufs/*.proto
 	sed -i 's/cc_generic_services/py_generic_services/' protobufs/*.proto
 	sed -i 's/\.steamclient\.proto/.proto/' protobufs/*.proto
-	rename -v '.notouch' '' protobufs/*.proto.notouch
+	for FN in protobufs/*.proto.notouch; do \
+		mv "$${FN}" "$${FN%.notouch}"; \
+	done;
 
 pb_compile:
 	for filepath in ./protobufs/*.proto; do \
diff --git a/protobuf_list.txt b/protobuf_list.txt
index d46fc7a..430dbb0 100644
--- a/protobuf_list.txt
+++ b/protobuf_list.txt
@@ -1,20 +1,22 @@
 https://raw.githubusercontent.com/SteamDatabase/SteamTracking/master/Protobufs/content_manifest.proto
 https://raw.githubusercontent.com/SteamDatabase/SteamTracking/master/Protobufs/encrypted_app_ticket.proto
+https://raw.githubusercontent.com/SteamDatabase/SteamTracking/master/Protobufs/offline_ticket.proto
 https://raw.githubusercontent.com/SteamDatabase/SteamTracking/master/Protobufs/steammessages_base.proto
 https://raw.githubusercontent.com/SteamDatabase/SteamTracking/master/Protobufs/steammessages_client_objects.proto
 https://raw.githubusercontent.com/SteamDatabase/SteamTracking/master/Protobufs/steammessages_clientserver.proto
 https://raw.githubusercontent.com/SteamDatabase/SteamTracking/master/Protobufs/steammessages_clientserver_2.proto
 https://raw.githubusercontent.com/SteamDatabase/SteamTracking/master/Protobufs/steammessages_clientserver_friends.proto
-https://raw.githubusercontent.com/SteamDatabase/SteamTracking/master/Protobufs/steammessages_clientserver_login.proto
 https://raw.githubusercontent.com/SteamDatabase/SteamTracking/master/Protobufs/steammessages_clientserver_appinfo.proto
 https://raw.githubusercontent.com/SteamDatabase/SteamTracking/master/Protobufs/steammessages_clientserver_gameservers.proto
 https://raw.githubusercontent.com/SteamDatabase/SteamTracking/master/Protobufs/steammessages_clientserver_lbs.proto
+https://raw.githubusercontent.com/SteamDatabase/SteamTracking/master/Protobufs/steammessages_clientserver_login.proto
 https://raw.githubusercontent.com/SteamDatabase/SteamTracking/master/Protobufs/steammessages_clientserver_mms.proto
 https://raw.githubusercontent.com/SteamDatabase/SteamTracking/master/Protobufs/steammessages_clientserver_ucm.proto
 https://raw.githubusercontent.com/SteamDatabase/SteamTracking/master/Protobufs/steammessages_clientserver_uds.proto
 https://raw.githubusercontent.com/SteamDatabase/SteamTracking/master/Protobufs/steammessages_clientserver_ufs.proto
 https://raw.githubusercontent.com/SteamDatabase/SteamTracking/master/Protobufs/steammessages_clientserver_userstats.proto
 https://raw.githubusercontent.com/SteamDatabase/SteamTracking/master/Protobufs/steammessages_remoteplay.proto
+https://raw.githubusercontent.com/SteamDatabase/SteamTracking/master/Protobufs/steammessages_auth.steamclient.proto
 https://raw.githubusercontent.com/SteamDatabase/SteamTracking/master/Protobufs/steammessages_broadcast.steamclient.proto
 https://raw.githubusercontent.com/SteamDatabase/SteamTracking/master/Protobufs/steammessages_chat.steamclient.proto
 https://raw.githubusercontent.com/SteamDatabase/SteamTracking/master/Protobufs/steammessages_cloud.steamclient.proto
@@ -31,6 +33,7 @@ https://raw.githubusercontent.com/SteamDatabase/SteamTracking/master/Protobufs/s
 https://raw.githubusercontent.com/SteamDatabase/SteamTracking/master/Protobufs/steammessages_linkfilter.steamclient.proto
 https://raw.githubusercontent.com/SteamDatabase/SteamTracking/master/Protobufs/steammessages_lobbymatchmaking.steamclient.proto
 https://raw.githubusercontent.com/SteamDatabase/SteamTracking/master/Protobufs/steammessages_market.steamclient.proto
+https://raw.githubusercontent.com/SteamDatabase/SteamTracking/master/Protobufs/steammessages_marketingmessages.steamclient.proto
 https://raw.githubusercontent.com/SteamDatabase/SteamTracking/master/Protobufs/steammessages_offline.steamclient.proto
 https://raw.githubusercontent.com/SteamDatabase/SteamTracking/master/Protobufs/steammessages_parental.steamclient.proto
 https://raw.githubusercontent.com/SteamDatabase/SteamTracking/master/Protobufs/steammessages_parties.steamclient.proto
@@ -41,13 +44,17 @@ https://raw.githubusercontent.com/SteamDatabase/SteamTracking/master/Protobufs/s
 https://raw.githubusercontent.com/SteamDatabase/SteamTracking/master/Protobufs/steammessages_secrets.steamclient.proto
 https://raw.githubusercontent.com/SteamDatabase/SteamTracking/master/Protobufs/steammessages_shader.steamclient.proto
 https://raw.githubusercontent.com/SteamDatabase/SteamTracking/master/Protobufs/steammessages_site_license.steamclient.proto
+https://raw.githubusercontent.com/SteamDatabase/SteamTracking/master/Protobufs/steammessages_star.steamclient.proto
+https://raw.githubusercontent.com/SteamDatabase/SteamTracking/master/Protobufs/steammessages_steamtv.steamclient.proto
 https://raw.githubusercontent.com/SteamDatabase/SteamTracking/master/Protobufs/steammessages_store.steamclient.proto
+https://raw.githubusercontent.com/SteamDatabase/SteamTracking/master/Protobufs/steammessages_storebrowse.steamclient.proto
 https://raw.githubusercontent.com/SteamDatabase/SteamTracking/master/Protobufs/steammessages_timedtrial.steamclient.proto
 https://raw.githubusercontent.com/SteamDatabase/SteamTracking/master/Protobufs/steammessages_twofactor.steamclient.proto
 https://raw.githubusercontent.com/SteamDatabase/SteamTracking/master/Protobufs/steammessages_unified_base.steamclient.proto
 https://raw.githubusercontent.com/SteamDatabase/SteamTracking/master/Protobufs/steammessages_unified_test.steamclient.proto
 https://raw.githubusercontent.com/SteamDatabase/SteamTracking/master/Protobufs/steammessages_useraccount.steamclient.proto
 https://raw.githubusercontent.com/SteamDatabase/SteamTracking/master/Protobufs/steammessages_video.steamclient.proto
+https://raw.githubusercontent.com/SteamDatabase/SteamTracking/master/Protobufs/steammessages_workshop.steamclient.proto
 https://raw.githubusercontent.com/SteamDatabase/SteamTracking/master/Protobufs/enums.proto
 https://raw.githubusercontent.com/SteamDatabase/SteamTracking/master/Protobufs/enums_clientserver.proto
-https://raw.githubusercontent.com/SteamDatabase/Protobufs/master/webui/friends_mobile.proto
+https://raw.githubusercontent.com/SteamDatabase/SteamTracking/master/Protobufs/enums_productinfo.proto
diff --git a/protobufs/enums.proto b/protobufs/enums.proto
index 54c41fd..0293bef 100644
--- a/protobufs/enums.proto
+++ b/protobufs/enums.proto
@@ -65,17 +65,6 @@ enum EContentCheckProvider {
 	k_EContentCheckProvider_Local = 3;
 }
 
-enum EBanContentCheckResult {
-	k_EBanContentCheckResult_NotScanned = 0;
-	k_EBanContentCheckResult_Reset = 1;
-	k_EBanContentCheckResult_NeedsChecking = 2;
-	k_EBanContentCheckResult_VeryUnlikely = 5;
-	k_EBanContentCheckResult_Unlikely = 30;
-	k_EBanContentCheckResult_Possible = 50;
-	k_EBanContentCheckResult_Likely = 75;
-	k_EBanContentCheckResult_VeryLikely = 100;
-}
-
 enum EProfileCustomizationType {
 	k_EProfileCustomizationTypeInvalid = 0;
 	k_EProfileCustomizationTypeRareAchievementShowcase = 1;
@@ -116,6 +105,28 @@ enum ECloudStoragePersistState {
 	k_ECloudStoragePersistStateDeleted = 2;
 }
 
+enum ESDCardFormatStage {
+	k_ESDCardFormatStage_Invalid = 0;
+	k_ESDCardFormatStage_Starting = 1;
+	k_ESDCardFormatStage_Testing = 2;
+	k_ESDCardFormatStage_Rescuing = 3;
+	k_ESDCardFormatStage_Formatting = 4;
+	k_ESDCardFormatStage_Finalizing = 5;
+}
+
+enum ESystemFanControlMode {
+	k_SystemFanControlMode_Invalid = 0;
+	k_SystemFanControlMode_Disabled = 1;
+	k_SystemFanControlMode_Default = 2;
+}
+
+enum EColorProfile {
+	k_EColorProfile_Invalid = 0;
+	k_EColorProfile_Native = 1;
+	k_EColorProfile_Standard = 2;
+	k_EColorProfile_Vivid = 3;
+}
+
 enum EBluetoothDeviceType {
 	k_BluetoothDeviceType_Invalid = 0;
 	k_BluetoothDeviceType_Unknown = 1;
@@ -131,6 +142,99 @@ enum EBluetoothDeviceType {
 	k_BluetoothDeviceType_Keyboard = 11;
 }
 
+enum ESystemAudioDirection {
+	k_SystemAudioDirection_Invalid = 0;
+	k_SystemAudioDirection_Input = 1;
+	k_SystemAudioDirection_Output = 2;
+}
+
+enum ESystemAudioChannel {
+	k_SystemAudioChannel_Invalid = 0;
+	k_SystemAudioChannel_Aggregated = 1;
+	k_SystemAudioChannel_FrontLeft = 2;
+	k_SystemAudioChannel_FrontRight = 3;
+	k_SystemAudioChannel_LFE = 4;
+	k_SystemAudioChannel_BackLeft = 5;
+	k_SystemAudioChannel_BackRight = 6;
+	k_SystemAudioChannel_FrontCenter = 7;
+	k_SystemAudioChannel_Unknown = 8;
+	k_SystemAudioChannel_Mono = 9;
+}
+
+enum ESystemAudioPortType {
+	k_SystemAudioPortType_Invalid = 0;
+	k_SystemAudioPortType_Unknown = 1;
+	k_SystemAudioPortType_Audio32f = 2;
+	k_SystemAudioPortType_Midi8b = 3;
+	k_SystemAudioPortType_Video32RGBA = 4;
+}
+
+enum ESystemAudioPortDirection {
+	k_SystemAudioPortDirection_Invalid = 0;
+	k_SystemAudioPortDirection_Input = 1;
+	k_SystemAudioPortDirection_Output = 2;
+}
+
+enum ESystemServiceState {
+	k_ESystemServiceState_Unavailable = 0;
+	k_ESystemServiceState_Disabled = 1;
+	k_ESystemServiceState_Enabled = 2;
+}
+
+enum EGraphicsPerfOverlayLevel {
+	k_EGraphicsPerfOverlayLevel_Hidden = 0;
+	k_EGraphicsPerfOverlayLevel_Basic = 1;
+	k_EGraphicsPerfOverlayLevel_Medium = 2;
+	k_EGraphicsPerfOverlayLevel_Full = 3;
+	k_EGraphicsPerfOverlayLevel_Minimal = 4;
+}
+
+enum EGPUPerformanceLevel {
+	k_EGPUPerformanceLevel_Invalid = 0;
+	k_EGPUPerformanceLevel_Auto = 1;
+	k_EGPUPerformanceLevel_Manual = 2;
+	k_EGPUPerformanceLevel_Low = 3;
+	k_EGPUPerformanceLevel_High = 4;
+	k_EGPUPerformanceLevel_Profiling = 5;
+}
+
+enum EScalingFilter {
+	k_EScalingFilter_Invalid = 0;
+	k_EScalingFilter_FSR = 1;
+	k_EScalingFilter_Nearest = 2;
+	k_EScalingFilter_Integer = 3;
+	k_EScalingFilter_Linear = 4;
+	k_EScalingFilter_NIS = 5;
+}
+
+enum ECPUGovernor {
+	k_ECPUGovernor_Invalid = 0;
+	k_ECPUGovernor_Perf = 1;
+	k_ECPUGovernor_Powersave = 2;
+	k_ECPUGovernor_Manual = 3;
+}
+
+enum EUpdaterType {
+	k_EUpdaterType_Invalid = 0;
+	k_EUpdaterType_Client = 1;
+	k_EUpdaterType_OS = 2;
+	k_EUpdaterType_BIOS = 3;
+	k_EUpdaterType_Aggregated = 4;
+	k_EUpdaterType_Test1 = 5;
+	k_EUpdaterType_Test2 = 6;
+	k_EUpdaterType_Dummy = 7;
+}
+
+enum EUpdaterState {
+	k_EUpdaterState_Invalid = 0;
+	k_EUpdaterState_UpToDate = 2;
+	k_EUpdaterState_Checking = 3;
+	k_EUpdaterState_Available = 4;
+	k_EUpdaterState_Applying = 5;
+	k_EUpdaterState_ClientRestartPending = 6;
+	k_EUpdaterState_SystemRestartPending = 7;
+}
+
 enum EStorageBlockContentType {
 	k_EStorageBlockContentType_Invalid = 0;
 	k_EStorageBlockContentType_Unknown = 1;
@@ -145,3 +249,97 @@ enum EStorageBlockFileSystemType {
 	k_EStorageBlockFileSystemType_VFat = 2;
 	k_EStorageBlockFileSystemType_Ext4 = 3;
 }
+
+enum ESteamDeckCompatibilityCategory {
+	k_ESteamDeckCompatibilityCategory_Unknown = 0;
+	k_ESteamDeckCompatibilityCategory_Unsupported = 1;
+	k_ESteamDeckCompatibilityCategory_Playable = 2;
+	k_ESteamDeckCompatibilityCategory_Verified = 3;
+}
+
+enum ESteamDeckCompatibilityResultDisplayType {
+	k_ESteamDeckCompatibilityResultDisplayType_Invisible = 0;
+	k_ESteamDeckCompatibilityResultDisplayType_Informational = 1;
+	k_ESteamDeckCompatibilityResultDisplayType_Unsupported = 2;
+	k_ESteamDeckCompatibilityResultDisplayType_Playable = 3;
+	k_ESteamDeckCompatibilityResultDisplayType_Verified = 4;
+}
+
+enum EACState {
+	k_EACState_Unknown = 0;
+	k_EACState_Disconnected = 1;
+	k_EACState_Connected = 2;
+	k_EACState_ConnectedSlow = 3;
+}
+
+enum EBatteryState {
+	k_EBatteryState_Unknown = 0;
+	k_EBatteryState_Discharging = 1;
+	k_EBatteryState_Charging = 2;
+	k_EBatteryState_Full = 3;
+}
+
+enum EOSBranch {
+	k_EOSBranch_Unknown = 0;
+	k_EOSBranch_Release = 1;
+	k_EOSBranch_ReleaseCandidate = 2;
+	k_EOSBranch_Beta = 3;
+	k_EOSBranch_BetaCandidate = 4;
+	k_EOSBranch_Main = 5;
+}
+
+enum ECommunityItemClass {
+	k_ECommunityItemClass_Invalid = 0;
+	k_ECommunityItemClass_Badge = 1;
+	k_ECommunityItemClass_GameCard = 2;
+	k_ECommunityItemClass_ProfileBackground = 3;
+	k_ECommunityItemClass_Emoticon = 4;
+	k_ECommunityItemClass_BoosterPack = 5;
+	k_ECommunityItemClass_Consumable = 6;
+	k_ECommunityItemClass_GameGoo = 7;
+	k_ECommunityItemClass_ProfileModifier = 8;
+	k_ECommunityItemClass_Scene = 9;
+	k_ECommunityItemClass_SalienItem = 10;
+	k_ECommunityItemClass_Sticker = 11;
+	k_ECommunityItemClass_ChatEffect = 12;
+	k_ECommunityItemClass_MiniProfileBackground = 13;
+	k_ECommunityItemClass_AvatarFrame = 14;
+	k_ECommunityItemClass_AnimatedAvatar = 15;
+	k_ECommunityItemClass_SteamDeckKeyboardSkin = 16;
+}
+
+enum ESteamDeckCompatibilityFeedback {
+	k_ESteamDeckCompatibilityFeedback_Unset = 0;
+	k_ESteamDeckCompatibilityFeedback_Agree = 1;
+	k_ESteamDeckCompatibilityFeedback_Disagree = 2;
+	k_ESteamDeckCompatibilityFeedback_Ignore = 3;
+}
+
+enum EProvideDeckFeedbackPreference {
+	k_EProvideDeckFeedbackPreference_Unset = 0;
+	k_EProvideDeckFeedbackPreference_Yes = 1;
+	k_EProvideDeckFeedbackPreference_No = 2;
+}
+
+enum ETouchGesture {
+	k_ETouchGestureNone = 0;
+	k_ETouchGestureTouch = 1;
+	k_ETouchGestureTap = 2;
+	k_ETouchGestureDoubleTap = 3;
+	k_ETouchGestureShortPress = 4;
+	k_ETouchGestureLongPress = 5;
+	k_ETouchGestureLongTap = 6;
+	k_ETouchGestureTwoFingerTap = 7;
+	k_ETouchGestureTapCancelled = 8;
+	k_ETouchGesturePinchBegin = 9;
+	k_ETouchGesturePinchUpdate = 10;
+	k_ETouchGesturePinchEnd = 11;
+	k_ETouchGestureFlingStart = 12;
+	k_ETouchGestureFlingCancelled = 13;
+}
+
+enum ESessionPersistence {
+	k_ESessionPersistence_Invalid = -1;
+	k_ESessionPersistence_Ephemeral = 0;
+	k_ESessionPersistence_Persistent = 1;
+}
diff --git a/protobufs/enums_clientserver.proto b/protobufs/enums_clientserver.proto
index e60cd79..63338ba 100644
--- a/protobufs/enums_clientserver.proto
+++ b/protobufs/enums_clientserver.proto
@@ -107,8 +107,8 @@ enum EMsg {
 	k_EMsgAIGetAppListResponse = 426;
 	k_EMsgAISGetCouponDefinition = 429;
 	k_EMsgAISGetCouponDefinitionResponse = 430;
-	k_EMsgAISUpdateSlaveContentDescription = 431;
-	k_EMsgAISUpdateSlaveContentDescriptionResponse = 432;
+	k_EMsgAISUpdateSubordinateContentDescription = 431;
+	k_EMsgAISUpdateSubordinateContentDescriptionResponse = 432;
 	k_EMsgAISTestEnableGC = 433;
 	k_EMsgBaseAM = 500;
 	k_EMsgAMUpdateUserBanRequest = 504;
@@ -258,7 +258,6 @@ enum EMsg {
 	k_EMsgGSApprove = 758;
 	k_EMsgGSDeny = 759;
 	k_EMsgGSKick = 760;
-	k_EMsgClientCreateAcctResponse = 761;
 	k_EMsgClientPurchaseResponse = 763;
 	k_EMsgClientPing = 764;
 	k_EMsgClientNOP = 765;
@@ -417,8 +416,6 @@ enum EMsg {
 	k_EMsgBSCommitGCTxn = 1425;
 	k_EMsgBSQueryTransactionStatus = 1426;
 	k_EMsgBSQueryTransactionStatusResponse = 1427;
-	k_EMsgBSQueryPaymentInstUsage = 1431;
-	k_EMsgBSQueryPaymentInstResponse = 1432;
 	k_EMsgBSQueryTxnExtendedInfo = 1433;
 	k_EMsgBSQueryTxnExtendedInfoResponse = 1434;
 	k_EMsgBSUpdateConversionRates = 1435;
@@ -643,10 +640,6 @@ enum EMsg {
 	k_EMsgAMGetChatBanListResponse = 4066;
 	k_EMsgAMUnBanFromChat = 4067;
 	k_EMsgAMSetClanDetails = 4068;
-	k_EMsgAMGetAccountLinks = 4069;
-	k_EMsgAMGetAccountLinksResponse = 4070;
-	k_EMsgAMSetAccountLinks = 4071;
-	k_EMsgAMSetAccountLinksResponse = 4072;
 	k_EMsgUGSGetUserGameStats = 4073;
 	k_EMsgUGSGetUserGameStatsResponse = 4074;
 	k_EMsgAMCheckClanMembership = 4075;
@@ -735,7 +728,6 @@ enum EMsg {
 	k_EMsgAMSupportIsAccountEnabled = 4209;
 	k_EMsgAMSupportIsAccountEnabledResponse = 4210;
 	k_EMsgUGSGetUserStats = 4211;
-	k_EMsgAMSupportKickSession = 4212;
 	k_EMsgAMGSSearch = 4213;
 	k_EMsgMarketingMessageUpdate = 4216;
 	k_EMsgChatServerRouteFriendMsg = 4219;
@@ -893,6 +885,8 @@ enum EMsg {
 	k_EMsgAMRequestPersonaUpdateForChatServer = 4420;
 	k_EMsgAMPerfectWorldPayment = 4421;
 	k_EMsgAMPerfectWorldPaymentResponse = 4422;
+	k_EMsgAMECommPayPayment = 4423;
+	k_EMsgAMECommPayPaymentResponse = 4424;
 	k_EMsgBasePSRange = 5000;
 	k_EMsgPSCreateShoppingCart = 5001;
 	k_EMsgPSCreateShoppingCartResponse = 5002;
@@ -1142,8 +1136,8 @@ enum EMsg {
 	k_EMsgClientNetworkingMobileCertRequest = 5626;
 	k_EMsgClientNetworkingMobileCertRequestResponse = 5627;
 	k_EMsgBaseMDS = 5800;
-	k_EMsgAMToMDSGetDepotDecryptionKey = 5812;
-	k_EMsgMDSToAMGetDepotDecryptionKeyResponse = 5813;
+	k_EMsgMDSGetDepotDecryptionKey = 5812;
+	k_EMsgMDSGetDepotDecryptionKeyResponse = 5813;
 	k_EMsgMDSContentServerConfigRequest = 5827;
 	k_EMsgMDSContentServerConfig = 5828;
 	k_EMsgMDSGetDepotManifest = 5829;
@@ -1474,6 +1468,10 @@ enum EMsg {
 	k_EMsgClientVoiceCallPreAuthorizeResponse = 9801;
 	k_EMsgClientServerTimestampRequest = 9802;
 	k_EMsgClientServerTimestampResponse = 9803;
+	k_EMsgServiceMethodCallFromClientNonAuthed = 9804;
+	k_EMsgClientHello = 9805;
+	k_EMsgClientEnableOrDisableDownloads = 9806;
+	k_EMsgClientEnableOrDisableDownloadsResponse = 9807;
 	k_EMsgClientLANP2PBase = 9900;
 	k_EMsgClientLANP2PRequestChunk = 9900;
 	k_EMsgClientLANP2PRequestChunkResponse = 9901;
diff --git a/protobufs/enums_productinfo.proto b/protobufs/enums_productinfo.proto
new file mode 100644
index 0000000..7c4c94c
--- /dev/null
+++ b/protobufs/enums_productinfo.proto
@@ -0,0 +1,14 @@
+syntax = "proto2";
+import "steammessages_base.proto";
+
+option optimize_for = SPEED;
+option py_generic_services = true;
+option (force_php_generation) = true;
+
+enum EContentDescriptorID {
+	k_EContentDescriptor_FrequentNudityOrSexualContent = 1;
+	k_EContentDescriptor_FrequentViolenceOrGore = 2;
+	k_EContentDescriptor_StrongSexualContent = 3;
+	k_EContentDescriptor_UNUSED_4 = 4;
+	k_EContentDescriptor_AnyMatureContent = 5;
+}
diff --git a/protobufs/offline_ticket.proto b/protobufs/offline_ticket.proto
new file mode 100644
index 0000000..835619a
--- /dev/null
+++ b/protobufs/offline_ticket.proto
@@ -0,0 +1,9 @@
+syntax = "proto2";
+message Offline_Ticket {
+	optional bytes encrypted_ticket = 1;
+	optional bytes signature = 2;
+	optional int32 kdf1 = 3;
+	optional bytes salt1 = 4;
+	optional int32 kdf2 = 5;
+	optional bytes salt2 = 6;
+}
diff --git a/protobufs/steammessages_auth.proto b/protobufs/steammessages_auth.proto
new file mode 100644
index 0000000..6d3a24c
--- /dev/null
+++ b/protobufs/steammessages_auth.proto
@@ -0,0 +1,382 @@
+syntax = "proto2";
+import "steammessages_base.proto";
+import "steammessages_unified_base.proto";
+import "enums.proto";
+
+option py_generic_services = true;
+
+enum EAuthTokenPlatformType {
+	k_EAuthTokenPlatformType_Unknown = 0;
+	k_EAuthTokenPlatformType_SteamClient = 1;
+	k_EAuthTokenPlatformType_WebBrowser = 2;
+	k_EAuthTokenPlatformType_MobileApp = 3;
+}
+
+enum EAuthSessionGuardType {
+	k_EAuthSessionGuardType_Unknown = 0;
+	k_EAuthSessionGuardType_None = 1;
+	k_EAuthSessionGuardType_EmailCode = 2;
+	k_EAuthSessionGuardType_DeviceCode = 3;
+	k_EAuthSessionGuardType_DeviceConfirmation = 4;
+	k_EAuthSessionGuardType_EmailConfirmation = 5;
+	k_EAuthSessionGuardType_MachineToken = 6;
+}
+
+enum EAuthSessionSecurityHistory {
+	k_EAuthSessionSecurityHistory_Invalid = 0;
+	k_EAuthSessionSecurityHistory_UsedPreviously = 1;
+	k_EAuthSessionSecurityHistory_NoPriorHistory = 2;
+}
+
+enum EAuthTokenRevokeAction {
+	k_EAuthTokenRevokeLogout = 0;
+	k_EAuthTokenRevokePermanent = 1;
+	k_EAuthTokenRevokeReplaced = 2;
+	k_EAuthTokenRevokeSupport = 3;
+}
+
+enum EAuthTokenState {
+	k_EAuthTokenState_Invalid = 0;
+	k_EAuthTokenState_New = 1;
+	k_EAuthTokenState_Confirmed = 2;
+	k_EAuthTokenState_Issued = 3;
+	k_EAuthTokenState_Denied = 4;
+	k_EAuthTokenState_LoggedOut = 5;
+	k_EAuthTokenState_Revoked = 99;
+}
+
+message CAuthentication_GetPasswordRSAPublicKey_Request {
+	optional string account_name = 1 [(description) = "user-provided account name to get an RSA key for"];
+}
+
+message CAuthentication_GetPasswordRSAPublicKey_Response {
+	optional string publickey_mod = 1 [(description) = "the public key modulus"];
+	optional string publickey_exp = 2 [(description) = "the public key exponent"];
+	optional uint64 timestamp = 3 [(description) = "the timestamp the key was generated"];
+}
+
+message CAuthentication_DeviceDetails {
+	optional string device_friendly_name = 1 [(description) = "User-supplied, or client-supplied, friendly name of device"];
+	optional .EAuthTokenPlatformType platform_type = 2 [default = k_EAuthTokenPlatformType_Unknown, (description) = "EAuthTokenPlatformType, claimed, of device"];
+	optional int32 os_type = 3 [(description) = "EOSType, claimed, of authorized device"];
+	optional uint32 gaming_device_type = 4 [(description) = "EGamingDeviceType, claimed, of authorized device for steam client-type devices"];
+}
+
+message CAuthentication_BeginAuthSessionViaQR_Request {
+	optional string device_friendly_name = 1;
+	optional .EAuthTokenPlatformType platform_type = 2 [default = k_EAuthTokenPlatformType_Unknown];
+	optional .CAuthentication_DeviceDetails device_details = 3 [(description) = "User-supplied details about the device attempting to sign in"];
+}
+
+message CAuthentication_AllowedConfirmation {
+	optional .EAuthSessionGuardType confirmation_type = 1 [default = k_EAuthSessionGuardType_Unknown, (description) = "authentication can proceed with this confirmation type"];
+	optional string associated_message = 2 [(description) = "message to be interpreted depending on the confirmation type. for email confirmation, this might be the redacted email address to which email was sent."];
+}
+
+message CAuthentication_BeginAuthSessionViaQR_Response {
+	optional uint64 client_id = 1 [(description) = "unique identifier of requestor, also used for routing, portion of QR code"];
+	optional string challenge_url = 2 [(description) = "URL based on client ID, which will be rendered as QR code"];
+	optional bytes request_id = 3 [(description) = "unique request ID to be presented by requestor at poll time - must not be rendered in QR"];
+	optional float interval = 4 [(description) = "refresh interval with which requestor should call PollAuthSessionStatus"];
+	repeated .CAuthentication_AllowedConfirmation allowed_confirmations = 5 [(description) = "the confirmation types that will be able to confirm the request"];
+	optional int32 version = 6 [(description) = "version of the QR data"];
+}
+
+message CAuthentication_BeginAuthSessionViaCredentials_Request {
+	optional string device_friendly_name = 1;
+	optional string account_name = 2;
+	optional string encrypted_password = 3 [(description) = "password, RSA encrypted client side"];
+	optional uint64 encryption_timestamp = 4 [(description) = "timestamp to map to a key - STime"];
+	optional bool remember_login = 5 [(description) = "deprecated"];
+	optional .EAuthTokenPlatformType platform_type = 6 [default = k_EAuthTokenPlatformType_Unknown];
+	optional .ESessionPersistence persistence = 7 [default = k_ESessionPersistence_Persistent, (description) = "whether we are requesting a persistent or an ephemeral session"];
+	optional string website_id = 8 [default = "Unknown", (description) = "(EMachineAuthWebDomain) identifier of client requesting auth"];
+	optional .CAuthentication_DeviceDetails device_details = 9 [(description) = "User-supplied details about the device attempting to sign in"];
+	optional string guard_data = 10 [(description) = "steam guard data for client login"];
+}
+
+message CAuthentication_BeginAuthSessionViaCredentials_Response {
+	optional uint64 client_id = 1 [(description) = "unique identifier of requestor, also used for routing"];
+	optional bytes request_id = 2 [(description) = "unique request ID to be presented by requestor at poll time - must not be transferred or displayed"];
+	optional float interval = 3 [(description) = "refresh interval with which requestor should call PollAuthSessionStatus"];
+	repeated .CAuthentication_AllowedConfirmation allowed_confirmations = 4 [(description) = "the confirmation types that will be able to confirm the request"];
+	optional uint64 steamid = 5 [(description) = "steamid of the account logging in - will only be included if the credentials were correct"];
+	optional string weak_token = 6 [(description) = "partial-authentication token - limited lifetime and scope, included only if credentials were valid"];
+}
+
+message CAuthentication_PollAuthSessionStatus_Request {
+	optional uint64 client_id = 1;
+	optional bytes request_id = 2;
+	optional fixed64 token_to_revoke = 3 [(description) = "If this is set to a token owned by this user, that token will be retired"];
+}
+
+message CAuthentication_PollAuthSessionStatus_Response {
+	optional uint64 new_client_id = 1 [(description) = "if challenge is old, this is the new client id"];
+	optional string new_challenge_url = 2 [(description) = "if challenge is old, this is the new challenge ID to re-render for mobile confirmation"];
+	optional string refresh_token = 3 [(description) = "if login has been confirmed, this is the requestor's new refresh token"];
+	optional string access_token = 4 [(description) = "if login has been confirmed, this is a new token subordinate to refresh_token"];
+	optional bool had_remote_interaction = 5 [(description) = "whether or not the auth session appears to have had remote interaction from a potential confirmer"];
+	optional string account_name = 6 [(description) = "account name of authenticating account, for use by UI layer"];
+	optional string new_guard_data = 7 [(description) = "if login has been confirmed, may contain remembered machine ID for future login"];
+}
+
+message CAuthentication_GetAuthSessionInfo_Request {
+	optional uint64 client_id = 1 [(description) = "client ID from scanned QR Code, used for routing"];
+}
+
+message CAuthentication_GetAuthSessionInfo_Response {
+	optional string ip = 1 [(description) = "IP address of requestor"];
+	optional string geoloc = 2 [(description) = "geoloc info of requestor"];
+	optional string city = 3 [(description) = "city of requestor"];
+	optional string state = 4 [(description) = "state of requestor"];
+	optional string country = 5 [(description) = "country of requestor"];
+	optional .EAuthTokenPlatformType platform_type = 6 [default = k_EAuthTokenPlatformType_Unknown, (description) = "platform type of requestor"];
+	optional string device_friendly_name = 7 [(description) = "name of requestor device"];
+	optional int32 version = 8 [(description) = "version field"];
+	optional .EAuthSessionSecurityHistory login_history = 9 [default = k_EAuthSessionSecurityHistory_Invalid, (description) = "whether the ip has previuously been used on the account successfully"];
+	optional bool requestor_location_mismatch = 10 [(description) = "whether the requestor location matches this requests location"];
+	optional bool high_usage_login = 11 [(description) = "whether this login has seen high usage recently"];
+	optional .ESessionPersistence requested_persistence = 12 [default = k_ESessionPersistence_Invalid, (description) = "session persistence requestor has indicated they want"];
+}
+
+message CAuthentication_UpdateAuthSessionWithMobileConfirmation_Request {
+	optional int32 version = 1 [(description) = "version field"];
+	optional uint64 client_id = 2 [(description) = "pending client ID, from scanned QR Code"];
+	optional fixed64 steamid = 3 [(description) = "user who wants to login"];
+	optional bytes signature = 4 [(description) = "HMAC digest over {version,client_id,steamid} via user's private key"];
+	optional bool confirm = 5 [default = false, (description) = "Whether to confirm the login (true) or deny the login (false)"];
+	optional .ESessionPersistence persistence = 6 [default = k_ESessionPersistence_Persistent, (description) = "whether we are requesting a persistent or an ephemeral session"];
+}
+
+message CAuthentication_UpdateAuthSessionWithMobileConfirmation_Response {
+}
+
+message CAuthentication_UpdateAuthSessionWithSteamGuardCode_Request {
+	optional uint64 client_id = 1 [(description) = "pending client ID, from initialized session"];
+	optional fixed64 steamid = 2 [(description) = "user who wants to login"];
+	optional string code = 3 [(description) = "confirmation code"];
+	optional .EAuthSessionGuardType code_type = 4 [default = k_EAuthSessionGuardType_Unknown, (description) = "type of confirmation code"];
+}
+
+message CAuthentication_UpdateAuthSessionWithSteamGuardCode_Response {
+}
+
+message CAuthentication_AccessToken_GenerateForApp_Request {
+	optional string refresh_token = 1;
+	optional fixed64 steamid = 2;
+}
+
+message CAuthentication_AccessToken_GenerateForApp_Response {
+	optional string access_token = 1;
+}
+
+message CAuthentication_RefreshToken_Enumerate_Request {
+}
+
+message CAuthentication_RefreshToken_Enumerate_Response {
+	message TokenUsageEvent {
+		optional uint32 time = 1 [(description) = "Approximate time of history event (may be deliberately fuzzed or omitted)"];
+		optional .CMsgIPAddress ip = 2 [(description) = "IP at which event was observed"];
+		optional string locale = 3 [(description) = "city/location name, if known"];
+	}
+
+	message RefreshTokenDescription {
+		optional fixed64 token_id = 1 [(description) = "Persistent token/device identifier"];
+		optional string token_description = 2 [(description) = "client-supplied friendly name for the device"];
+		optional uint32 time_updated = 3;
+		optional .EAuthTokenPlatformType platform_type = 4 [default = k_EAuthTokenPlatformType_Unknown, (description) = "gross platform type (mobile/client/browser)"];
+		optional bool logged_in = 5 [(description) = "If true, this token is currently valid. False indicates it is a machine token - ok for steamguard if you know the credential"];
+		optional uint32 os_platform = 6 [(description) = "EPlatformType - rough classification of device OS, if known"];
+		optional uint32 auth_type = 7 [(description) = "EAuthTokenGuardType - device authorization mechanism, if known"];
+		optional uint32 gaming_device_type = 8 [(description) = "EGamingDeviceType - classify console/PC/SteamDeck, if known; applies only for Steam Client devices"];
+		optional .CAuthentication_RefreshToken_Enumerate_Response.TokenUsageEvent first_seen = 9 [(description) = "Information about original authorization event"];
+		optional .CAuthentication_RefreshToken_Enumerate_Response.TokenUsageEvent last_seen = 10 [(description) = "Information about most-recently seen, if known for this device"];
+	}
+
+	repeated .CAuthentication_RefreshToken_Enumerate_Response.RefreshTokenDescription refresh_tokens = 1;
+	optional fixed64 requesting_token = 2;
+}
+
+message CAuthentication_GetAuthSessionsForAccount_Request {
+}
+
+message CAuthentication_GetAuthSessionsForAccount_Response {
+	repeated uint64 client_ids = 1 [(description) = "unique identifier of requestor, also used for routing"];
+}
+
+message CAuthentication_MigrateMobileSession_Request {
+	optional fixed64 steamid = 1 [(description) = "Steam ID of the user to migrate"];
+	optional string token = 2 [(description) = "WG Token to migrate"];
+	optional string signature = 3 [(description) = "Signature over the wg token using the user's 2FA token"];
+}
+
+message CAuthentication_MigrateMobileSession_Response {
+	optional string refresh_token = 1;
+	optional string access_token = 2;
+}
+
+message CAuthentication_RefreshToken_Revoke_Request {
+	optional fixed64 token_id = 1;
+	optional fixed64 steamid = 2 [(description) = "Token holder if an admin action on behalf of another user"];
+	optional .EAuthTokenRevokeAction revoke_action = 3 [default = k_EAuthTokenRevokePermanent, (description) = "Select between logout and logout-and-forget-machine"];
+	optional bytes signature = 4 [(description) = "required signature over token_id"];
+}
+
+message CAuthentication_RefreshToken_Revoke_Response {
+}
+
+message CAuthenticationSupport_QueryRefreshTokensByAccount_Request {
+	optional fixed64 steamid = 1 [(description) = "SteamID of the account to query (required)"];
+	optional bool include_revoked_tokens = 2 [(description) = "Includes tokens that are revoked or expired in the query"];
+}
+
+message CSupportRefreshTokenDescription {
+	optional fixed64 token_id = 1;
+	optional string token_description = 2;
+	optional uint32 time_updated = 3;
+	optional .EAuthTokenPlatformType platform_type = 4 [default = k_EAuthTokenPlatformType_Unknown];
+	optional .EAuthTokenState token_state = 5 [default = k_EAuthTokenState_Invalid];
+	optional fixed64 owner_steamid = 6;
+}
+
+message CAuthenticationSupport_QueryRefreshTokensByAccount_Response {
+	repeated .CSupportRefreshTokenDescription refresh_tokens = 1;
+}
+
+message CAuthenticationSupport_QueryRefreshTokenByID_Request {
+	optional fixed64 token_id = 1 [(description) = "Token ID of the token to look up (required)"];
+}
+
+message CAuthenticationSupport_QueryRefreshTokenByID_Response {
+	repeated .CSupportRefreshTokenDescription refresh_tokens = 1;
+}
+
+message CAuthenticationSupport_RevokeToken_Request {
+	optional fixed64 token_id = 1 [(description) = "Token ID of the token to revoke (required)"];
+}
+
+message CAuthenticationSupport_RevokeToken_Response {
+}
+
+message CAuthenticationSupport_GetTokenHistory_Request {
+	optional fixed64 token_id = 1 [(description) = "Token ID of the token to get history for (required)"];
+}
+
+message CSupportRefreshTokenAudit {
+	optional int32 action = 1;
+	optional uint32 time = 2;
+	optional .CMsgIPAddress ip = 3;
+	optional fixed64 actor = 4;
+}
+
+message CAuthenticationSupport_GetTokenHistory_Response {
+	repeated .CSupportRefreshTokenAudit history = 1;
+}
+
+message CCloudGaming_CreateNonce_Request {
+	optional string platform = 1;
+	optional uint32 appid = 2;
+}
+
+message CCloudGaming_CreateNonce_Response {
+	optional string nonce = 1;
+	optional uint32 expiry = 2;
+}
+
+message CCloudGaming_GetTimeRemaining_Request {
+	optional string platform = 1;
+	repeated uint32 appid_list = 2;
+}
+
+message CCloudGaming_TimeRemaining {
+	optional uint32 appid = 1;
+	optional uint32 minutes_remaining = 2;
+}
+
+message CCloudGaming_GetTimeRemaining_Response {
+	repeated .CCloudGaming_TimeRemaining entries = 2;
+}
+
+service Authentication {
+	option (service_description) = "Authentication Service";
+
+	rpc GetPasswordRSAPublicKey (.CAuthentication_GetPasswordRSAPublicKey_Request) returns (.CAuthentication_GetPasswordRSAPublicKey_Response) {
+		option (method_description) = "Fetches RSA public key to use to encrypt passwords for a given account name";
+	}
+
+	rpc BeginAuthSessionViaQR (.CAuthentication_BeginAuthSessionViaQR_Request) returns (.CAuthentication_BeginAuthSessionViaQR_Response) {
+		option (method_description) = "start authentication process";
+	}
+
+	rpc BeginAuthSessionViaCredentials (.CAuthentication_BeginAuthSessionViaCredentials_Request) returns (.CAuthentication_BeginAuthSessionViaCredentials_Response) {
+		option (method_description) = "start authentication process";
+	}
+
+	rpc PollAuthSessionStatus (.CAuthentication_PollAuthSessionStatus_Request) returns (.CAuthentication_PollAuthSessionStatus_Response) {
+		option (method_description) = "poll during authentication process";
+	}
+
+	rpc GetAuthSessionInfo (.CAuthentication_GetAuthSessionInfo_Request) returns (.CAuthentication_GetAuthSessionInfo_Response) {
+		option (method_description) = "get metadata of specific auth session, this will also implicitly bind the calling account";
+	}
+
+	rpc UpdateAuthSessionWithMobileConfirmation (.CAuthentication_UpdateAuthSessionWithMobileConfirmation_Request) returns (.CAuthentication_UpdateAuthSessionWithMobileConfirmation_Response) {
+		option (method_description) = "approve an authentication session via mobile 2fa";
+	}
+
+	rpc UpdateAuthSessionWithSteamGuardCode (.CAuthentication_UpdateAuthSessionWithSteamGuardCode_Request) returns (.CAuthentication_UpdateAuthSessionWithSteamGuardCode_Response) {
+		option (method_description) = "approve an authentication session via steam guard code";
+	}
+
+	rpc GenerateAccessTokenForApp (.CAuthentication_AccessToken_GenerateForApp_Request) returns (.CAuthentication_AccessToken_GenerateForApp_Response) {
+		option (method_description) = "Given a refresh token for a client app audience (e.g. desktop client / mobile client), generate an access token";
+	}
+
+	rpc EnumerateTokens (.CAuthentication_RefreshToken_Enumerate_Request) returns (.CAuthentication_RefreshToken_Enumerate_Response) {
+		option (method_description) = "Enumerate durable (refresh) tokens for the given subject account";
+	}
+
+	rpc GetAuthSessionsForAccount (.CAuthentication_GetAuthSessionsForAccount_Request) returns (.CAuthentication_GetAuthSessionsForAccount_Response) {
+		option (method_description) = "Gets all active auth sessions for an account for reference by the mobile app";
+	}
+
+	rpc MigrateMobileSession (.CAuthentication_MigrateMobileSession_Request) returns (.CAuthentication_MigrateMobileSession_Response) {
+		option (method_description) = "Migrates a WG token to an access and refresh token using a signature generated with the user's 2FA secret";
+	}
+
+	rpc RevokeRefreshToken (.CAuthentication_RefreshToken_Revoke_Request) returns (.CAuthentication_RefreshToken_Revoke_Response) {
+		option (method_description) = "Mark the given refresh token as revoked";
+	}
+}
+
+service AuthenticationSupport {
+	option (service_description) = "Authentication Support Service";
+
+	rpc QueryRefreshTokensByAccount (.CAuthenticationSupport_QueryRefreshTokensByAccount_Request) returns (.CAuthenticationSupport_QueryRefreshTokensByAccount_Response) {
+		option (method_description) = "Asks the server for a list of refresh tokens associated with an account";
+	}
+
+	rpc QueryRefreshTokenByID (.CAuthenticationSupport_QueryRefreshTokenByID_Request) returns (.CAuthenticationSupport_QueryRefreshTokenByID_Response) {
+		option (method_description) = "Asks the server for a list of refresh tokens associated with an account";
+	}
+
+	rpc RevokeToken (.CAuthenticationSupport_RevokeToken_Request) returns (.CAuthenticationSupport_RevokeToken_Response) {
+		option (method_description) = "Revokes a user's auth token";
+	}
+
+	rpc GetTokenHistory (.CAuthenticationSupport_GetTokenHistory_Request) returns (.CAuthenticationSupport_GetTokenHistory_Response) {
+		option (method_description) = "Gets the audit history for a user's auth token";
+	}
+}
+
+service CloudGaming {
+	option (service_description) = "Methods for Steam cloud gaming operations";
+
+	rpc CreateNonce (.CCloudGaming_CreateNonce_Request) returns (.CCloudGaming_CreateNonce_Response) {
+		option (method_description) = "Create a nonce for a cloud gaming service session";
+	}
+
+	rpc GetTimeRemaining (.CCloudGaming_GetTimeRemaining_Request) returns (.CCloudGaming_GetTimeRemaining_Response) {
+		option (method_description) = "Get the amount of streaming time remaining for a set of apps";
+	}
+}
diff --git a/protobufs/steammessages_base.proto b/protobufs/steammessages_base.proto
index 14a3c8d..020fbee 100644
--- a/protobufs/steammessages_base.proto
+++ b/protobufs/steammessages_base.proto
@@ -16,6 +16,18 @@ extend .google.protobuf.FileOptions {
 
 extend .google.protobuf.FieldOptions {
 	optional bool php_output_always_number = 50020 [default = false];
+	optional bool allow_field_named_steam_id = 50024 [default = false];
+}
+
+enum EBanContentCheckResult {
+	k_EBanContentCheckResult_NotScanned = 0;
+	k_EBanContentCheckResult_Reset = 1;
+	k_EBanContentCheckResult_NeedsChecking = 2;
+	k_EBanContentCheckResult_VeryUnlikely = 5;
+	k_EBanContentCheckResult_Unlikely = 30;
+	k_EBanContentCheckResult_Possible = 50;
+	k_EBanContentCheckResult_Likely = 75;
+	k_EBanContentCheckResult_VeryLikely = 100;
 }
 
 enum EProtoClanEventType {
@@ -97,9 +109,12 @@ message CMsgProtoBufHeader {
 	optional bool is_from_external_source = 26;
 	repeated uint32 forward_to_sysid = 27;
 	optional uint32 cm_sysid = 28;
-	optional string wg_token = 30;
 	optional uint32 launcher_type = 31 [default = 0];
 	optional uint32 realm = 32 [default = 0];
+	optional int32 timeout_ms = 33 [default = -1];
+	optional string debug_source = 34;
+	optional uint32 debug_source_string_index = 35;
+	optional uint64 token_id = 36;
 
 	oneof ip_addr {
 		uint32 ip = 15;
@@ -130,8 +145,6 @@ message CCDDBAppDetailCommon {
 	optional uint32 appid = 1;
 	optional string name = 2;
 	optional string icon = 3;
-	optional string logo = 4;
-	optional string logo_small = 5;
 	optional bool tool = 6;
 	optional bool demo = 7;
 	optional bool media = 8;
@@ -140,6 +153,7 @@ message CCDDBAppDetailCommon {
 	optional string propagation = 11;
 	optional bool has_adult_content = 12;
 	optional bool is_visible_in_steam_china = 13;
+	optional uint32 app_type = 14;
 }
 
 message CMsgAppRights {
@@ -220,6 +234,7 @@ message CCommunity_ClanAnnouncementInfo {
 	optional fixed64 event_gid = 13;
 	optional int32 voteupcount = 14;
 	optional int32 votedowncount = 15;
+	optional .EBanContentCheckResult ban_check_result = 16 [default = k_EBanContentCheckResult_NotScanned];
 }
 
 message CClanEventData {
@@ -278,3 +293,12 @@ message CPackageReservationStatus {
 	optional uint32 time_expires = 7;
 	optional uint32 time_reserved = 8;
 }
+
+message CMsgKeyValuePair {
+	optional string name = 1;
+	optional string value = 2;
+}
+
+message CMsgKeyValueSet {
+	repeated .CMsgKeyValuePair pairs = 1;
+}
diff --git a/protobufs/steammessages_broadcast.proto b/protobufs/steammessages_broadcast.proto
index 9893f11..2658d61 100644
--- a/protobufs/steammessages_broadcast.proto
+++ b/protobufs/steammessages_broadcast.proto
@@ -1,4 +1,5 @@
 syntax = "proto2";
+import "steammessages_base.proto";
 import "steammessages_unified_base.proto";
 
 option py_generic_services = true;
@@ -257,7 +258,7 @@ message CBroadcast_GetBroadcastChatUserNames_Request {
 
 message CBroadcast_GetBroadcastChatUserNames_Response {
 	message PersonaName {
-		optional fixed64 steam_id = 1;
+		optional fixed64 steam_id = 1 [(allow_field_named_steam_id) = true];
 		optional string persona = 2;
 	}
 
@@ -321,6 +322,7 @@ message CBroadcast_SetRTMPInfo_Request {
 	optional fixed64 steamid = 8 [(description) = "broadcaster steamID if not logged-in user"];
 	optional uint32 chat_rate_limit = 9 [(description) = "Seconds required between chat messages"];
 	optional bool enable_replay = 10 [(description) = "Enable replay of last upload"];
+	optional bool is_partner_chat_only = 11 [(description) = "When true, then only steamwork partner can create chat messages."];
 }
 
 message CBroadcast_SetRTMPInfo_Response {
@@ -343,6 +345,7 @@ message CBroadcast_GetRTMPInfo_Response {
 	optional fixed64 steamid = 9 [(description) = "broadcaster steamID"];
 	optional uint32 chat_rate_limit = 10 [(description) = "Seconds required between chat messages"];
 	optional bool enable_replay = 11 [(description) = "Enable replay of last upload"];
+	optional bool is_partner_chat_only = 12 [(description) = "When true, then only steamwork partner can create chat messages."];
 }
 
 message CBroadcast_WebRTCHaveTURNServer_Notification {
diff --git a/protobufs/steammessages_chat.proto b/protobufs/steammessages_chat.proto
index 24acb64..2d146e3 100644
--- a/protobufs/steammessages_chat.proto
+++ b/protobufs/steammessages_chat.proto
@@ -1,4 +1,5 @@
 syntax = "proto2";
+import "steammessages_base.proto";
 import "steammessages_unified_base.proto";
 import "steammessages_clientserver_friends.proto";
 
diff --git a/protobufs/steammessages_client_objects.proto b/protobufs/steammessages_client_objects.proto
index 77e595f..d17619f 100644
--- a/protobufs/steammessages_client_objects.proto
+++ b/protobufs/steammessages_client_objects.proto
@@ -12,10 +12,49 @@ enum ECloudPendingRemoteOperation {
 	k_ECloudPendingRemoteOperationAppSessionSuspended = 4;
 }
 
+enum ESteamDeckKeyboardLayout {
+	k_ESteamDeckKeyboardLayout_QWERTY = 0;
+	k_ESteamDeckKeyboardLayout_Bulgarian = 1;
+	k_ESteamDeckKeyboardLayout_Chinese_Simplified = 2;
+	k_ESteamDeckKeyboardLayout_Chinese_Traditional = 3;
+	k_ESteamDeckKeyboardLayout_Czech = 4;
+	k_ESteamDeckKeyboardLayout_Danish = 5;
+	k_ESteamDeckKeyboardLayout_Finnish = 6;
+	k_ESteamDeckKeyboardLayout_French = 7;
+	k_ESteamDeckKeyboardLayout_German = 8;
+	k_ESteamDeckKeyboardLayout_Greek = 9;
+	k_ESteamDeckKeyboardLayout_Hungarian = 10;
+	k_ESteamDeckKeyboardLayout_Italian = 11;
+	k_ESteamDeckKeyboardLayout_Japanese = 12;
+	k_ESteamDeckKeyboardLayout_Korean = 13;
+	k_ESteamDeckKeyboardLayout_Norwegian = 14;
+	k_ESteamDeckKeyboardLayout_Polish = 15;
+	k_ESteamDeckKeyboardLayout_Portuguese = 16;
+	k_ESteamDeckKeyboardLayout_Romanian = 17;
+	k_ESteamDeckKeyboardLayout_Russian = 18;
+	k_ESteamDeckKeyboardLayout_Spanish = 19;
+	k_ESteamDeckKeyboardLayout_Swedish = 20;
+	k_ESteamDeckKeyboardLayout_Thai = 21;
+	k_ESteamDeckKeyboardLayout_Turkish_F = 22;
+	k_ESteamDeckKeyboardLayout_Turkish_Q = 23;
+	k_ESteamDeckKeyboardLayout_Ukrainian = 24;
+	k_ESteamDeckKeyboardLayout_Vietnamese = 25;
+	k_ESteamDeckKeyboardLayout_QWERTY_International = 26;
+	k_ESteamDeckKeyboardLayout_Dvorak = 27;
+	k_ESteamDeckKeyboardLayout_Colemak = 28;
+	k_ESteamDeckKeyboardLayout_Bulgarian_Phonetic_Traditional = 29;
+	k_ESteamDeckKeyboardLayout_Bulgarian_Phonetic = 30;
+	k_ESteamDeckKeyboardLayout_Chinese_Traditional_Bopomofo = 31;
+	k_ESteamDeckKeyboardLayout_Chinese_Traditional_Cangjie = 32;
+	k_ESteamDeckKeyboardLayout_Japanese_Kana = 33;
+	k_ESteamDeckKeyboardLayout_Chinese_Traditional_Quick = 34;
+}
+
 message SteamMessagesClientIClientForcedEnumDependencies {
 	optional .EBluetoothDeviceType a = 1 [default = k_BluetoothDeviceType_Invalid];
 	optional .EStorageBlockContentType b = 2 [default = k_EStorageBlockContentType_Invalid];
 	optional .EStorageBlockFileSystemType c = 3 [default = k_EStorageBlockFileSystemType_Invalid];
+	optional .ESDCardFormatStage d = 4 [default = k_ESDCardFormatStage_Invalid];
 }
 
 message CMsgNetworkDeviceIP4Address {
@@ -140,6 +179,7 @@ message CMsgStorageDevicesData {
 
 	repeated .CMsgStorageDevicesData.Drive drives = 1;
 	repeated .CMsgStorageDevicesData.BlockDevice block_devices = 2;
+	optional bool is_unmount_supported = 3;
 }
 
 message CCloud_PendingRemoteOperation {
@@ -173,12 +213,13 @@ message CMsgBluetoothDevicesData {
 		optional int32 strength_raw = 8;
 	}
 
+	message Manager {
+		optional bool is_bluetooth_enabled = 1;
+	}
+
 	repeated .CMsgBluetoothDevicesData.Adapter adapters = 1;
 	repeated .CMsgBluetoothDevicesData.Device devices = 2;
-}
-
-message CMsgBluetoothSettings {
-	optional bool is_enabled = 1;
+	optional .CMsgBluetoothDevicesData.Manager manager = 3;
 }
 
 message CMsgSystemPerfDiagnosticEntry {
@@ -186,11 +227,306 @@ message CMsgSystemPerfDiagnosticEntry {
 	optional string value = 2;
 }
 
+message CMsgSystemPerfNetworkInterface {
+	optional string name = 1;
+	optional double timestamp = 2;
+	optional int64 tx_bytes_total = 3;
+	optional int64 rx_bytes_total = 4;
+	optional int32 tx_bytes_per_sec = 5;
+	optional int32 rx_bytes_per_sec = 6;
+}
+
 message CMsgSystemPerfDiagnosticInfo {
 	repeated .CMsgSystemPerfDiagnosticEntry entries = 1;
+	repeated .CMsgSystemPerfNetworkInterface interfaces = 2;
+	optional float battery_temp_c = 3;
+}
+
+message CMsgSystemPerfLimits {
+	optional int32 cpu_governor_manual_min_mhz = 1;
+	optional int32 cpu_governor_manual_max_mhz = 2;
+	optional int32 fsr_sharpness_min = 3;
+	optional int32 fsr_sharpness_max = 4;
+	optional int32 gpu_performance_manual_min_mhz = 5;
+	optional int32 gpu_performance_manual_max_mhz = 6;
+	optional bool perf_overlay_is_standalone = 7;
+	optional bool is_dynamic_vrs_available = 8;
+	optional bool is_manual_display_refresh_rate_available = 9;
+	repeated .EGPUPerformanceLevel gpu_performance_levels_available = 10;
+	optional int32 display_refresh_manual_hz_min = 11;
+	optional int32 display_refresh_manual_hz_max = 12;
+	repeated int32 fps_limit_options = 13;
+	optional int32 tdp_limit_min = 14;
+	optional int32 tdp_limit_max = 15;
+	optional bool is_nis_supported = 16;
+	optional int32 nis_sharpness_min = 17;
+	optional int32 nis_sharpness_max = 18;
+}
+
+message CMsgSystemPerfSettingsGlobal {
+	optional float diagnostic_update_rate = 1;
+	optional .ESystemServiceState system_trace_service_state = 2 [default = k_ESystemServiceState_Unavailable];
+	optional .ESystemServiceState graphics_profiling_service_state = 3 [default = k_ESystemServiceState_Unavailable];
+	optional .ESystemServiceState perf_overlay_service_state = 4 [default = k_ESystemServiceState_Unavailable];
+	optional .EGraphicsPerfOverlayLevel perf_overlay_level = 5 [default = k_EGraphicsPerfOverlayLevel_Hidden];
+	optional bool is_show_perf_overlay_over_steam_enabled = 6;
+	optional bool is_advanced_settings_enabled = 7;
+}
+
+message CMsgSystemPerfSettingsPerApp {
+	optional int32 gpu_performance_manual_mhz = 1;
+	optional int32 fps_limit = 2;
+	optional bool is_variable_resolution_enabled = 3;
+	optional bool is_dynamic_refresh_rate_enabled = 4;
+	optional int32 tdp_limit = 5;
+	optional .ECPUGovernor cpu_governor = 6 [default = k_ECPUGovernor_Invalid];
+	optional int32 cpu_governor_manual_mhz = 7;
+	optional int32 scaling_filter = 8;
+	optional int32 fsr_sharpness = 9;
+	optional bool is_fps_limit_enabled = 10;
+	optional bool is_tdp_limit_enabled = 11;
+	optional bool is_low_latency_mode_enabled = 12;
+	optional int32 display_refresh_manual_hz = 13;
+	optional bool is_game_perf_profile_enabled = 14;
+	optional .EGPUPerformanceLevel gpu_performance_level = 15 [default = k_EGPUPerformanceLevel_Invalid];
+	optional int32 nis_sharpness = 16;
 }
 
 message CMsgSystemPerfSettings {
+	optional .CMsgSystemPerfSettingsGlobal global = 1;
+	optional .CMsgSystemPerfSettingsPerApp per_app = 2;
+}
+
+message CMsgSystemPerfSettingsV1 {
 	optional float diagnostic_update_rate = 1;
-	optional bool is_shark_mode = 2;
+	optional .ESystemServiceState system_trace_service_state = 2 [default = k_ESystemServiceState_Unavailable];
+	optional .ESystemServiceState graphics_profiling_service_state = 3 [default = k_ESystemServiceState_Unavailable];
+	optional .ESystemServiceState perf_overlay_service_state = 4 [default = k_ESystemServiceState_Unavailable];
+	optional .EGraphicsPerfOverlayLevel perf_overlay_level = 5 [default = k_EGraphicsPerfOverlayLevel_Hidden];
+	optional .EGPUPerformanceLevel gpu_performance_level = 6 [default = k_EGPUPerformanceLevel_Invalid];
+	optional int32 gpu_performance_manual_mhz = 7;
+	optional int32 fps_limit = 8;
+	optional bool is_variable_resolution_enabled = 9;
+	optional bool is_dynamic_refresh_rate_enabled = 10;
+	optional int32 tdp_limit = 11;
+	optional .ECPUGovernor cpu_governor = 12 [default = k_ECPUGovernor_Invalid];
+	optional int32 cpu_governor_manual_mhz = 13;
+	optional int32 scaling_filter = 14;
+	optional int32 fsr_sharpness = 15;
+	optional bool is_fps_limit_enabled = 16;
+	optional bool is_tdp_limit_enabled = 17;
+	optional bool is_show_perf_overlay_over_steam_enabled = 18;
+	optional bool is_low_latency_mode_enabled = 19;
+	optional int32 display_refresh_manual_hz = 20;
+	optional bool is_game_perf_profile_enabled = 21;
+}
+
+message CMsgSystemPerfState {
+	optional .CMsgSystemPerfLimits limits = 1;
+	optional .CMsgSystemPerfSettings settings = 2;
+	optional uint64 current_game_id = 3;
+	optional uint64 active_profile_game_id = 4;
+}
+
+message CMsgSystemPerfUpdateSettings {
+	optional uint64 gameid = 1;
+
+	oneof update {
+		bool reset_to_default = 2;
+		.CMsgSystemPerfSettings settings_delta = 3;
+	}
+}
+
+message CMsgSystemDockUpdateState {
+	optional .EUpdaterState state = 1 [default = k_EUpdaterState_Invalid];
+	optional fixed32 rtime_last_checked = 2;
+	optional string version_current = 3;
+	optional string version_available = 4;
+	optional float stage_progress = 5;
+	optional fixed32 rtime_estimated_completion = 6;
+}
+
+message CMsgSystemDockState {
+	optional .CMsgSystemDockUpdateState update_state = 1;
+}
+
+message CMsgSystemDockUpdateFirmware {
+	optional bool check_only = 1;
+}
+
+message CMsgSystemAudioVolume {
+	message ChannelEntry {
+		optional .ESystemAudioChannel echannel = 1 [default = k_SystemAudioChannel_Invalid];
+		optional float volume = 2;
+	}
+
+	repeated .CMsgSystemAudioVolume.ChannelEntry entries = 1;
+	optional bool is_muted = 2;
+}
+
+message CMsgSystemAudioManagerObject {
+	optional uint32 id = 1;
+	optional fixed32 rtime_last_update = 2;
+}
+
+message CMsgSystemAudioManagerDevice {
+	optional .CMsgSystemAudioManagerObject base = 1;
+	optional string name = 2;
+	optional string nick = 3;
+	optional string description = 4;
+	optional string api = 5;
+}
+
+message CMsgSystemAudioManagerNode {
+	optional .CMsgSystemAudioManagerObject base = 1;
+	optional uint32 device_id = 2;
+	optional string name = 3;
+	optional string nick = 4;
+	optional string description = 5;
+	optional .ESystemAudioDirection edirection = 6 [default = k_SystemAudioDirection_Invalid];
+	optional .CMsgSystemAudioVolume volume = 7;
+}
+
+message CMsgSystemAudioManagerPort {
+	optional .CMsgSystemAudioManagerObject base = 1;
+	optional uint32 node_id = 3;
+	optional string name = 4;
+	optional string alias = 5;
+	optional .ESystemAudioPortType etype = 6 [default = k_SystemAudioPortType_Invalid];
+	optional .ESystemAudioPortDirection edirection = 7 [default = k_SystemAudioPortDirection_Invalid];
+	optional bool is_physical = 8;
+	optional bool is_terminal = 9;
+	optional bool is_control = 10;
+	optional bool is_monitor = 11;
+}
+
+message CMsgSystemAudioManagerLink {
+	optional .CMsgSystemAudioManagerObject base = 1;
+	optional uint32 output_node_id = 2;
+	optional uint32 output_port_id = 3;
+	optional uint32 input_node_id = 4;
+	optional uint32 input_port_id = 5;
+}
+
+message CMsgSystemAudioManagerStateHW {
+	repeated .CMsgSystemAudioManagerDevice devices = 1;
+	repeated .CMsgSystemAudioManagerNode nodes = 2;
+	repeated .CMsgSystemAudioManagerPort ports = 3;
+	repeated .CMsgSystemAudioManagerLink links = 4;
+}
+
+message CMsgSystemAudioManagerState {
+	optional fixed32 rtime_filter = 1;
+	optional int32 counter = 2;
+	optional .CMsgSystemAudioManagerStateHW hw = 3;
+}
+
+message CMsgSystemAudioManagerUpdateSomething {
+	optional int32 counter = 1;
+}
+
+message CMsgSystemManagerSettings {
+	optional float idle_backlight_dim_battery_seconds = 1;
+	optional float idle_backlight_dim_ac_seconds = 2;
+	optional float idle_suspend_battery_seconds = 3;
+	optional float idle_suspend_ac_seconds = 4;
+	optional bool idle_suspend_supressed = 5;
+	optional bool is_adaptive_brightness_available = 6;
+	optional bool display_adaptive_brightness_enabled = 7;
+	optional bool is_display_colorprofile_available = 8;
+	optional .EColorProfile display_colorprofile = 9 [default = k_EColorProfile_Invalid];
+	optional bool display_nightmode_enabled = 10;
+	optional float display_nightmode_tintstrength = 11;
+	optional float display_nightmode_maxhue = 12;
+	optional float display_nightmode_maxsat = 13;
+	optional float display_nightmode_uiexp = 14;
+	optional float display_nightmode_blend = 15;
+	optional bool display_nightmode_reset = 16;
+	optional bool display_nightmode_schedule_enabled = 17;
+	optional float display_nightmode_schedule_starttime = 18;
+	optional float display_nightmode_schedule_endtime = 19;
+	optional bool display_diagnostics_enabled = 20;
+	optional float als_lux_latest = 21;
+	optional float als_lux_median = 22;
+	optional float display_brightness_linear = 23;
+	optional float display_brightness_adaptivemin = 24;
+	optional float display_brightness_adaptivemax = 25;
+	optional bool is_wifi_powersave_enabled = 26;
+	optional bool is_fan_control_available = 27;
+	optional .ESystemFanControlMode fan_control_mode = 28 [default = k_SystemFanControlMode_Invalid];
+}
+
+message CMsgSelectOSBranchParams {
+	optional .EOSBranch branch = 1 [default = k_EOSBranch_Unknown];
+}
+
+message CMsgSystemUpdateProgress {
+	optional float stage_progress = 1;
+	optional int64 stage_size_bytes = 2;
+	optional fixed32 rtime_estimated_completion = 3;
+}
+
+message CMsgSystemUpdateCheckResult {
+	optional .EUpdaterType type = 1 [default = k_EUpdaterType_Invalid];
+	optional uint32 eresult = 2 [default = 2];
+	optional fixed32 rtime_checked = 3;
+	optional bool available = 4;
+	optional string version = 5;
+}
+
+message CMsgSystemUpdateApplyParams {
+	repeated .EUpdaterType apply_types = 1;
+}
+
+message CMsgSystemUpdateApplyResult {
+	optional .EUpdaterType type = 1 [default = k_EUpdaterType_Invalid];
+	optional uint32 eresult = 2 [default = 2];
+	optional bool requires_client_restart = 3 [default = false];
+	optional bool requires_system_restart = 4 [default = false];
+}
+
+message CMsgSystemUpdateState {
+	optional .EUpdaterState state = 1 [default = k_EUpdaterState_Invalid];
+	optional .CMsgSystemUpdateProgress progress = 2;
+	repeated .CMsgSystemUpdateCheckResult update_check_results = 3;
+	repeated .CMsgSystemUpdateApplyResult update_apply_results = 4;
+}
+
+message CMsgAchievementChange {
+	optional uint32 appid = 1;
+}
+
+message CMsgCellList {
+	message Cell {
+		optional uint32 cell_id = 1;
+		optional string loc_name = 2;
+	}
+
+	repeated .CMsgCellList.Cell cells = 1;
+}
+
+message CMsgShortcutInfo {
+	optional uint32 appid = 1;
+	optional string exe = 2;
+	optional string start_dir = 3;
+	optional string icon = 4;
+	optional string path = 5;
+	optional string args = 6;
+	optional string app_name = 7;
+	optional uint32 override_appid = 8;
+	optional string flatpak_appid = 9;
+	repeated string tags = 10;
+	optional bool is_remote = 11;
+	optional bool is_hidden = 12;
+	optional bool is_temporary = 13;
+	optional bool is_openvr = 14;
+	optional bool allow_desktop_config = 15;
+	optional bool allow_overlay = 16;
+	optional uint32 rt_last_played_time = 17;
+	optional bool is_devkit_shortcut = 18;
+	optional string devkit_gameid = 19;
+}
+
+message CMsgShortcutAppIds {
+	repeated uint32 appids = 1;
 }
diff --git a/protobufs/steammessages_clientserver.proto b/protobufs/steammessages_clientserver.proto
index 72c5863..b1ba83f 100644
--- a/protobufs/steammessages_clientserver.proto
+++ b/protobufs/steammessages_clientserver.proto
@@ -112,11 +112,19 @@ message CMsgClientGamesPlayed {
 		optional uint32 vr_hmd_runtime = 22;
 		optional .CMsgIPAddress game_ip_address = 23;
 		optional uint32 controller_connection_type = 24 [default = 0];
+		optional int32 game_os_platform = 25;
+		optional uint32 game_build_id = 26;
+		optional uint32 compat_tool_id = 27 [default = 0];
+		optional string compat_tool_cmd = 28;
+		optional uint32 compat_tool_build_id = 29;
+		optional string beta_name = 30;
+		optional uint32 dlc_context = 31;
 	}
 
 	repeated .CMsgClientGamesPlayed.GamePlayed games_played = 1;
 	optional uint32 client_os_type = 2;
 	optional uint32 cloud_gaming_platform = 3;
+	optional bool recent_reauthentication = 4;
 }
 
 message CMsgGSApprove {
@@ -231,6 +239,10 @@ message CMsgClientConnectionStats {
 		optional uint32 seconds_running = 5;
 		optional uint32 msec_tologonthistime = 6;
 		optional uint32 count_bad_cms = 7;
+		optional bool no_udp_connectivity = 8;
+		optional bool no_tcp_connectivity = 9;
+		optional bool no_websocket_443_connectivity = 10;
+		optional bool no_websocket_non_443_connectivity = 11;
 	}
 
 	message Stats_UDP {
diff --git a/protobufs/steammessages_clientserver_2.proto b/protobufs/steammessages_clientserver_2.proto
index 13ff1a4..1e6e7a9 100644
--- a/protobufs/steammessages_clientserver_2.proto
+++ b/protobufs/steammessages_clientserver_2.proto
@@ -700,6 +700,7 @@ message CMsgClientServiceCall {
 	optional bytes callparameter = 8;
 	optional bool ping_only = 9;
 	optional uint32 max_outstanding_calls = 10;
+	optional uint32 app_id = 11;
 }
 
 message CMsgClientServiceModule {
diff --git a/protobufs/steammessages_clientserver_gameservers.proto b/protobufs/steammessages_clientserver_gameservers.proto
index a2b8cc2..c99ab61 100644
--- a/protobufs/steammessages_clientserver_gameservers.proto
+++ b/protobufs/steammessages_clientserver_gameservers.proto
@@ -12,6 +12,7 @@ message CMsgGSServerType {
 	optional string game_dir = 5;
 	optional string game_version = 6;
 	optional uint32 game_query_port = 7;
+	optional uint32 game_port_local = 10;
 	optional bytes sdr_logon = 8;
 	optional fixed32 fake_ip = 9;
 }
@@ -48,7 +49,6 @@ message CMsgGameServerData {
 	}
 
 	optional uint32 revision = 24;
-	optional fixed64 steam_id_gs = 1;
 	optional uint32 query_port = 3;
 	optional uint32 game_port = 4;
 	optional uint32 spectator_port = 5;
@@ -56,6 +56,7 @@ message CMsgGameServerData {
 	optional string game_description = 29;
 	optional string spectator_server_name = 27;
 	optional fixed32 fake_ip = 28;
+	optional string sdr_ping_location = 30;
 	optional uint32 app_id = 6;
 	optional string gamedir = 7;
 	optional string version = 8;
@@ -97,6 +98,7 @@ message CMsgGMSClientServerQueryResponse {
 		optional uint32 players = 8;
 		optional uint32 game_port = 9;
 		optional fixed32 sdr_popid = 10;
+		optional string sdr_ping_location = 32;
 		optional uint32 flags = 11;
 		optional uint32 app_id = 12;
 		optional uint32 max_players = 13;
diff --git a/protobufs/steammessages_clientserver_login.proto b/protobufs/steammessages_clientserver_login.proto
index 8e22eed..5278fbe 100644
--- a/protobufs/steammessages_clientserver_login.proto
+++ b/protobufs/steammessages_clientserver_login.proto
@@ -25,6 +25,10 @@ message CMsgClientSecret {
 	optional bytes hmac = 5;
 }
 
+message CMsgClientHello {
+	optional uint32 protocol_version = 1;
+}
+
 message CMsgClientLogon {
 	optional uint32 protocol_version = 1;
 	optional uint32 deprecated_obfustucated_private_ip = 2;
@@ -79,12 +83,14 @@ message CMsgClientLogon {
 	optional int32 priority_reason = 104;
 	optional .CMsgClientSecret embedded_client_secret = 105;
 	optional bool disable_partner_autogrants = 106;
+	optional bool is_steam_deck = 107;
+	optional string access_token = 108;
 }
 
 message CMsgClientLogonResponse {
 	optional int32 eresult = 1 [default = 2];
-	optional int32 out_of_game_heartbeat_seconds = 2;
-	optional int32 in_game_heartbeat_seconds = 3;
+	optional int32 legacy_out_of_game_heartbeat_seconds = 2;
+	optional int32 heartbeat_seconds = 3;
 	optional uint32 deprecated_public_ip = 4;
 	optional fixed32 rtime32_server_time = 5;
 	optional uint32 account_flags = 6;
@@ -107,6 +113,7 @@ message CMsgClientLogonResponse {
 	optional uint64 client_instance_id = 27;
 	optional bool force_client_update_check = 28;
 	optional string agreement_session_url = 29;
+	optional uint64 token_id = 30;
 }
 
 message CMsgClientRequestWebAPIAuthenticateUserNonce {
diff --git a/protobufs/steammessages_clientserver_uds.proto b/protobufs/steammessages_clientserver_uds.proto
index fa3427f..913e130 100644
--- a/protobufs/steammessages_clientserver_uds.proto
+++ b/protobufs/steammessages_clientserver_uds.proto
@@ -33,13 +33,14 @@ message CMsgClientGetClientDetailsResponse {
 	}
 
 	optional uint32 package_version = 1;
-	optional uint32 protocol_version = 8;
 	optional string os = 2;
 	optional string machine_name = 3;
 	optional string ip_public = 4;
 	optional string ip_private = 5;
-	optional uint64 bytes_available = 7;
 	repeated .CMsgClientGetClientDetailsResponse.Game games_running = 6;
+	optional uint64 bytes_available = 7;
+	optional uint32 protocol_version = 8;
+	optional uint32 clientcomm_version = 9;
 }
 
 message CMsgClientGetClientAppList {
@@ -49,6 +50,7 @@ message CMsgClientGetClientAppList {
 	optional bool only_installed = 4;
 	optional bool only_changing = 5;
 	optional bool comics = 6;
+	optional bool include_client_info = 7;
 }
 
 message CMsgClientGetClientAppListResponse {
@@ -65,18 +67,28 @@ message CMsgClientGetClientAppListResponse {
 		optional bool installed = 4;
 		optional bool auto_update = 5;
 		optional uint64 bytes_downloaded = 6;
-		optional uint64 bytes_needed = 7;
+		optional uint64 bytes_to_download = 7;
 		optional uint32 bytes_download_rate = 8;
+		repeated .CMsgClientGetClientAppListResponse.App.DLC dlcs = 9;
 		optional bool download_paused = 11;
 		optional uint32 num_downloading = 12;
 		optional uint32 num_paused = 13;
 		optional bool changing = 14;
 		optional bool available_on_platform = 15;
-		repeated .CMsgClientGetClientAppListResponse.App.DLC dlcs = 9;
+		optional uint64 bytes_staged = 16;
+		optional uint64 bytes_to_stage = 17;
+		optional uint64 bytes_required = 18;
+		optional uint32 source_buildid = 19;
+		optional uint32 target_buildid = 20;
+		optional uint32 estimated_seconds_remaining = 21;
+		optional int32 queue_position = 22;
+		optional bool uninstalling = 23;
+		optional uint32 rt_time_scheduled = 24;
 	}
 
 	repeated .CMsgClientGetClientAppListResponse.App apps = 1;
 	optional uint64 bytes_available = 2;
+	optional .CMsgClientGetClientDetailsResponse client_info = 3;
 }
 
 message CMsgClientInstallClientApp {
@@ -103,3 +115,11 @@ message CMsgClientSetClientAppUpdateState {
 message CMsgClientSetClientAppUpdateStateResponse {
 	optional uint32 result = 1;
 }
+
+message CMsgClientEnableOrDisableDownloads {
+	optional bool enable = 1;
+}
+
+message CMsgClientEnableOrDisableDownloadsResponse {
+	optional uint32 result = 1;
+}
diff --git a/protobufs/steammessages_cloud.proto b/protobufs/steammessages_cloud.proto
index 59e6cab..033b23f 100644
--- a/protobufs/steammessages_cloud.proto
+++ b/protobufs/steammessages_cloud.proto
@@ -1,10 +1,20 @@
 syntax = "proto2";
+import "steammessages_base.proto";
 import "steammessages_unified_base.proto";
 import "enums.proto";
 import "steammessages_client_objects.proto";
 
 option py_generic_services = true;
 
+message CCloud_ClientLogUploadCheck_Notification {
+	optional uint64 client_id = 1;
+}
+
+message CCloud_ClientLogUploadComplete_Notification {
+	optional uint64 client_id = 1;
+	optional uint64 request_id = 2;
+}
+
 message CCloud_GetUploadServerInfo_Request {
 	optional uint32 appid = 1 [(description) = "App ID to which a file will be uploaded to."];
 }
@@ -157,6 +167,10 @@ message CCloud_ExternalStorageTransferReport_Notification {
 	optional bool proxied = 10;
 	optional bool ipv6_local = 11;
 	optional bool ipv6_remote = 12;
+	optional uint32 time_to_connect_ms = 13;
+	optional uint32 time_to_send_req_ms = 14;
+	optional uint32 time_to_first_byte_ms = 15;
+	optional uint32 time_to_last_byte_ms = 16;
 }
 
 message CCloud_BeginAppUploadBatch_Request {
@@ -165,6 +179,7 @@ message CCloud_BeginAppUploadBatch_Request {
 	repeated string files_to_upload = 3 [(description) = "Filenames of files to upload in this batch"];
 	repeated string files_to_delete = 4 [(description) = "Filenames of files to delete in this batch"];
 	optional uint64 client_id = 5 [(description) = "Client ID number"];
+	optional uint64 app_build_id = 6 [(description) = "Current local build of the app which made these changes"];
 }
 
 message CCloud_BeginAppUploadBatch_Response {
@@ -310,6 +325,7 @@ message CCloud_GetAppFileChangelist_Response {
 	optional bool is_only_delta = 3 [(description) = "If true, 'files' omits any files that have not changed since client's change ID"];
 	repeated string path_prefixes = 4 [(description) = "string table of path prefixes"];
 	repeated string machine_names = 5 [(description) = "string table of machine names"];
+	optional uint64 app_buildid_hwm = 6 [(description) = "highest app build ID which has uploaded data"];
 }
 
 message CCloud_AppSessionSuspend_Request {
@@ -345,6 +361,18 @@ message CCloud_AppExitSyncDone_Notification {
 	optional uint32 appid = 1;
 	optional uint64 client_id = 2;
 	optional bool uploads_completed = 3;
+	optional bool uploads_required = 4;
+}
+
+message CCloud_ClientGetAppQuotaUsage_Request {
+	optional uint32 appid = 1;
+}
+
+message CCloud_ClientGetAppQuotaUsage_Response {
+	optional uint32 existing_files = 1;
+	optional uint64 existing_bytes = 2;
+	optional uint32 max_num_files = 3;
+	optional uint64 max_num_bytes = 4;
 }
 
 message CCloud_AppCloudStateChange_Notification {
@@ -352,9 +380,21 @@ message CCloud_AppCloudStateChange_Notification {
 	optional uint64 app_change_number = 2 [(description) = "New App Change Number"];
 }
 
+message CCloud_ClientLogUploadRequest_Notification {
+	optional uint64 request_id = 1;
+}
+
 service Cloud {
 	option (service_description) = "A service for Steam Cloud operations.";
 
+	rpc ClientLogUploadCheck (.CCloud_ClientLogUploadCheck_Notification) returns (.NoResponse) {
+		option (method_description) = "Client checking for pending log upload requests.";
+	}
+
+	rpc ClientLogUploadComplete (.CCloud_ClientLogUploadComplete_Notification) returns (.NoResponse) {
+		option (method_description) = "Client is flagging a log upload request as completed.";
+	}
+
 	rpc GetUploadServerInfo (.CCloud_GetUploadServerInfo_Request) returns (.CCloud_GetUploadServerInfo_Response) {
 		option (method_description) = "Returns the URL of the proper cloud server for a user.";
 	}
@@ -454,6 +494,10 @@ service Cloud {
 	rpc SignalAppExitSyncDone (.CCloud_AppExitSyncDone_Notification) returns (.NoResponse) {
 		option (method_description) = "Client is done trying to sync after a game session";
 	}
+
+	rpc ClientGetAppQuotaUsage (.CCloud_ClientGetAppQuotaUsage_Request) returns (.CCloud_ClientGetAppQuotaUsage_Response) {
+		option (method_description) = "Client is requesting quota usage for an app";
+	}
 }
 
 service CloudClient {
@@ -463,4 +507,8 @@ service CloudClient {
 	rpc NotifyAppStateChange (.CCloud_AppCloudStateChange_Notification) returns (.NoResponse) {
 		option (method_description) = "Cloud state for the given app has changed.";
 	}
+
+	rpc ClientLogUploadRequest (.CCloud_ClientLogUploadRequest_Notification) returns (.NoResponse) {
+		option (method_description) = "Server is requesting log file uploads from the given client.";
+	}
 }
diff --git a/protobufs/steammessages_contentsystem.proto b/protobufs/steammessages_contentsystem.proto
index 840a554..3d6d000 100644
--- a/protobufs/steammessages_contentsystem.proto
+++ b/protobufs/steammessages_contentsystem.proto
@@ -1,4 +1,5 @@
 syntax = "proto2";
+import "steammessages_base.proto";
 import "steammessages_unified_base.proto";
 
 option py_generic_services = true;
diff --git a/protobufs/steammessages_credentials.proto b/protobufs/steammessages_credentials.proto
index effa2df..be922a6 100644
--- a/protobufs/steammessages_credentials.proto
+++ b/protobufs/steammessages_credentials.proto
@@ -1,6 +1,6 @@
 syntax = "proto2";
-import "steammessages_unified_base.proto";
 import "steammessages_base.proto";
+import "steammessages_unified_base.proto";
 
 option py_generic_services = true;
 
diff --git a/protobufs/steammessages_datapublisher.proto b/protobufs/steammessages_datapublisher.proto
index 3edbedc..627ff54 100644
--- a/protobufs/steammessages_datapublisher.proto
+++ b/protobufs/steammessages_datapublisher.proto
@@ -1,4 +1,5 @@
 syntax = "proto2";
+import "steammessages_base.proto";
 import "steammessages_unified_base.proto";
 
 option py_generic_services = true;
diff --git a/protobufs/steammessages_depotbuilder.proto b/protobufs/steammessages_depotbuilder.proto
index a86432a..541933f 100644
--- a/protobufs/steammessages_depotbuilder.proto
+++ b/protobufs/steammessages_depotbuilder.proto
@@ -1,4 +1,5 @@
 syntax = "proto2";
+import "steammessages_base.proto";
 import "steammessages_unified_base.proto";
 
 option py_generic_services = true;
diff --git a/protobufs/steammessages_deviceauth.proto b/protobufs/steammessages_deviceauth.proto
index 639d5ba..dd87c9f 100644
--- a/protobufs/steammessages_deviceauth.proto
+++ b/protobufs/steammessages_deviceauth.proto
@@ -1,4 +1,5 @@
 syntax = "proto2";
+import "steammessages_base.proto";
 import "steammessages_unified_base.proto";
 
 option py_generic_services = true;
diff --git a/protobufs/steammessages_econ.proto b/protobufs/steammessages_econ.proto
index 952136d..84e73a8 100644
--- a/protobufs/steammessages_econ.proto
+++ b/protobufs/steammessages_econ.proto
@@ -1,33 +1,38 @@
 syntax = "proto2";
+import "steammessages_base.proto";
 import "steammessages_unified_base.proto";
 
 option py_generic_services = true;
 
-message CEcon_GetTradeOfferAccessToken_Request {
-	optional bool generate_new_token = 1;
-}
-
-message CEcon_GetTradeOfferAccessToken_Response {
-	optional string trade_offer_access_token = 1;
-}
-
-message CEcon_ClientGetItemShopOverlayAuthURL_Request {
-	optional string return_url = 1;
-}
-
-message CEcon_ClientGetItemShopOverlayAuthURL_Response {
-	optional string url = 1;
-}
-
-message CEcon_GetAssetClassInfo_Request {
-	message Class {
-		optional uint64 classid = 1;
-		optional uint64 instanceid = 2;
+message CEcon_GetInventoryItemsWithDescriptions_Request {
+	message FilterOptions {
+		repeated uint64 assetids = 1;
+		repeated uint32 currencyids = 2;
+		optional bool tradable_only = 3;
+		optional bool marketable_only = 4;
 	}
 
-	optional string language = 1;
+	optional fixed64 steamid = 1;
 	optional uint32 appid = 2;
-	repeated .CEcon_GetAssetClassInfo_Request.Class classes = 3;
+	optional uint64 contextid = 3;
+	optional bool get_descriptions = 4;
+	optional bool for_trade_offer_verification = 10;
+	optional string language = 5;
+	optional .CEcon_GetInventoryItemsWithDescriptions_Request.FilterOptions filters = 6;
+	optional uint64 start_assetid = 8;
+	optional int32 count = 9;
+}
+
+message CEcon_Asset {
+	optional uint32 appid = 1;
+	optional uint64 contextid = 2;
+	optional uint64 assetid = 3;
+	optional uint64 classid = 4;
+	optional uint64 instanceid = 5;
+	optional uint32 currencyid = 6 [(description) = "Set currencyid if it's a currency, assetid for an item"];
+	optional int64 amount = 7;
+	optional bool missing = 8;
+	optional int64 est_usd = 9;
 }
 
 message CEconItem_DescriptionLine {
@@ -84,6 +89,42 @@ message CEconItem_Tag {
 	optional string color = 6 [(description) = "The color to use when displaying the tag to the user"];
 }
 
+message CEcon_GetInventoryItemsWithDescriptions_Response {
+	repeated .CEcon_Asset assets = 1;
+	repeated .CEconItem_Description descriptions = 2;
+	repeated .CEcon_Asset missing_assets = 3 [(description) = "This list of assets in the original list we could not find in the users inventory"];
+	optional bool more_items = 4;
+	optional uint64 last_assetid = 5;
+	optional uint32 total_inventory_count = 6;
+}
+
+message CEcon_GetTradeOfferAccessToken_Request {
+	optional bool generate_new_token = 1;
+}
+
+message CEcon_GetTradeOfferAccessToken_Response {
+	optional string trade_offer_access_token = 1;
+}
+
+message CEcon_ClientGetItemShopOverlayAuthURL_Request {
+	optional string return_url = 1;
+}
+
+message CEcon_ClientGetItemShopOverlayAuthURL_Response {
+	optional string url = 1;
+}
+
+message CEcon_GetAssetClassInfo_Request {
+	message Class {
+		optional uint64 classid = 1;
+		optional uint64 instanceid = 2;
+	}
+
+	optional string language = 1;
+	optional uint32 appid = 2;
+	repeated .CEcon_GetAssetClassInfo_Request.Class classes = 3;
+}
+
 message CEcon_GetAssetClassInfo_Response {
 	repeated .CEconItem_Description descriptions = 1;
 }
@@ -91,6 +132,10 @@ message CEcon_GetAssetClassInfo_Response {
 service Econ {
 	option (service_description) = "A service that provides communication with the econ servers";
 
+	rpc GetInventoryItemsWithDescriptions (.CEcon_GetInventoryItemsWithDescriptions_Request) returns (.CEcon_GetInventoryItemsWithDescriptions_Response) {
+		option (method_description) = "Gets a set of items from a users inventory, along with descriptions";
+	}
+
 	rpc GetTradeOfferAccessToken (.CEcon_GetTradeOfferAccessToken_Request) returns (.CEcon_GetTradeOfferAccessToken_Response) {
 		option (method_description) = "Get the user's trade offer access token";
 	}
diff --git a/protobufs/steammessages_friendmessages.proto b/protobufs/steammessages_friendmessages.proto
index 3685eb4..f04126a 100644
--- a/protobufs/steammessages_friendmessages.proto
+++ b/protobufs/steammessages_friendmessages.proto
@@ -1,4 +1,5 @@
 syntax = "proto2";
+import "steammessages_base.proto";
 import "steammessages_unified_base.proto";
 
 option py_generic_services = true;
diff --git a/protobufs/steammessages_gamenotifications.proto b/protobufs/steammessages_gamenotifications.proto
index 2ce9a49..40c7443 100644
--- a/protobufs/steammessages_gamenotifications.proto
+++ b/protobufs/steammessages_gamenotifications.proto
@@ -1,4 +1,5 @@
 syntax = "proto2";
+import "steammessages_base.proto";
 import "steammessages_unified_base.proto";
 
 option py_generic_services = true;
diff --git a/protobufs/steammessages_gameservers.proto b/protobufs/steammessages_gameservers.proto
index 3dcc460..a128fa5 100644
--- a/protobufs/steammessages_gameservers.proto
+++ b/protobufs/steammessages_gameservers.proto
@@ -1,4 +1,5 @@
 syntax = "proto2";
+import "steammessages_base.proto";
 import "steammessages_unified_base.proto";
 
 option py_generic_services = true;
@@ -50,6 +51,78 @@ message CGameServers_GetServerIPsBySteamID_Request {
 	repeated fixed64 server_steamids = 1;
 }
 
+message CGameServers_QueryByFakeIP_Request {
+	enum EQueryType {
+		Query_Invalid = 0;
+		Query_Ping = 1;
+		Query_Players = 2;
+		Query_Rules = 3;
+	}
+
+	optional uint32 fake_ip = 1 [(description) = "FakeIP of server to query."];
+	optional uint32 fake_port = 2 [(description) = "Fake port of server to query."];
+	optional uint32 app_id = 3 [(description) = "AppID to use.  Each AppID has its own FakeIP address."];
+	optional .CGameServers_QueryByFakeIP_Request.EQueryType query_type = 4 [default = Query_Invalid, (description) = "What type of query?"];
+}
+
+message CMsgGameServerPingQueryData {
+	optional .CMsgIPAddress server_ip = 1;
+	optional uint32 query_port = 2;
+	optional uint32 game_port = 3;
+	optional uint32 spectator_port = 4;
+	optional string spectator_server_name = 5;
+	optional string server_name = 6;
+	optional fixed64 steamid = 7;
+	optional uint32 app_id = 8;
+	optional string gamedir = 9;
+	optional string map = 10;
+	optional string game_description = 11;
+	optional string gametype = 12;
+	optional uint32 num_players = 13;
+	optional uint32 max_players = 14;
+	optional uint32 num_bots = 15;
+	optional bool password = 16;
+	optional bool secure = 17;
+	optional bool dedicated = 18;
+	optional string version = 19;
+	optional fixed32 sdr_popid = 20;
+	optional string sdr_location_string = 21;
+}
+
+message CMsgGameServerPlayersQueryData {
+	message Player {
+		optional string name = 1;
+		optional uint32 score = 2;
+		optional uint32 time_played = 3;
+	}
+
+	repeated .CMsgGameServerPlayersQueryData.Player players = 1;
+}
+
+message CMsgGameServerRulesQueryData {
+	message Rule {
+		optional string rule = 1;
+		optional string value = 2;
+	}
+
+	repeated .CMsgGameServerRulesQueryData.Rule rules = 1;
+}
+
+message CGameServers_GameServerQuery_Response {
+	optional .CMsgGameServerPingQueryData ping_data = 1;
+	optional .CMsgGameServerPlayersQueryData players_data = 2;
+	optional .CMsgGameServerRulesQueryData rules_data = 3;
+}
+
+message GameServerClient_QueryServerData_Request {
+}
+
+message GameServerClient_QueryServerData_Response {
+	optional .CMsgGameServerPingQueryData ping_data = 1;
+	optional .CMsgGameServerPlayersQueryData players_data = 2;
+	optional .CMsgGameServerRulesQueryData rules_data = 3;
+}
+
 service GameServers {
 	option (service_description) = "A service for searching and managing game servers.";
 
@@ -64,4 +137,17 @@ service GameServers {
 	rpc GetServerIPsBySteamID (.CGameServers_GetServerIPsBySteamID_Request) returns (.CGameServers_IPsWithSteamIDs_Response) {
 		option (method_description) = "Gets a list of server IP addresses given a list of SteamIDs";
 	}
+
+	rpc QueryByFakeIP (.CGameServers_QueryByFakeIP_Request) returns (.CGameServers_GameServerQuery_Response) {
+		option (method_description) = "Perform a query on a specific server by FakeIP";
+	}
+}
+
+service GameServerClient {
+	option (service_description) = "Service methods exposed by GameServer Steam clients";
+	option (service_execution_site) = k_EProtoExecutionSiteSteamClient;
+
+	rpc QueryServerData (.GameServerClient_QueryServerData_Request) returns (.GameServerClient_QueryServerData_Response) {
+		option (method_description) = "Steam is asking a gameserver for its data";
+	}
 }
diff --git a/protobufs/steammessages_inventory.proto b/protobufs/steammessages_inventory.proto
index f2af867..35ff395 100644
--- a/protobufs/steammessages_inventory.proto
+++ b/protobufs/steammessages_inventory.proto
@@ -1,4 +1,5 @@
 syntax = "proto2";
+import "steammessages_base.proto";
 import "steammessages_unified_base.proto";
 
 option py_generic_services = true;
diff --git a/protobufs/steammessages_linkfilter.proto b/protobufs/steammessages_linkfilter.proto
index e8dfe86..3d5c8c1 100644
--- a/protobufs/steammessages_linkfilter.proto
+++ b/protobufs/steammessages_linkfilter.proto
@@ -1,4 +1,5 @@
 syntax = "proto2";
+import "steammessages_base.proto";
 import "steammessages_unified_base.proto";
 
 option py_generic_services = true;
diff --git a/protobufs/steammessages_lobbymatchmaking.proto b/protobufs/steammessages_lobbymatchmaking.proto
index da1efa4..58ddcb6 100644
--- a/protobufs/steammessages_lobbymatchmaking.proto
+++ b/protobufs/steammessages_lobbymatchmaking.proto
@@ -1,4 +1,5 @@
 syntax = "proto2";
+import "steammessages_base.proto";
 import "steammessages_unified_base.proto";
 
 option py_generic_services = true;
diff --git a/protobufs/steammessages_market.proto b/protobufs/steammessages_market.proto
index 96ed837..c780901 100644
--- a/protobufs/steammessages_market.proto
+++ b/protobufs/steammessages_market.proto
@@ -1,4 +1,5 @@
 syntax = "proto2";
+import "steammessages_base.proto";
 import "steammessages_unified_base.proto";
 
 option py_generic_services = true;
diff --git a/protobufs/steammessages_marketingmessages.proto b/protobufs/steammessages_marketingmessages.proto
new file mode 100644
index 0000000..b4fadc7
--- /dev/null
+++ b/protobufs/steammessages_marketingmessages.proto
@@ -0,0 +1,203 @@
+syntax = "proto2";
+import "steammessages_base.proto";
+import "steammessages_unified_base.proto";
+import "steammessages_storebrowse.proto";
+
+option py_generic_services = true;
+
+enum EMarketingMessageType {
+	k_EMarketingMessageInvalid = 0;
+	k_EMarketingMessageNowAvailable = 1;
+	k_EMarketingMessageWeekendDeal = 2;
+	k_EMarketingMessagePrePurchase = 3;
+	k_EMarketingMessagePlayNow = 4;
+	k_EMarketingMessagePreloadNow = 5;
+	k_EMarketingMessageGeneral = 6;
+	k_EMarketingMessageDemoQuit = 7;
+	k_EMarketingMessageGifting = 8;
+	k_EMarketingMessageEJsKorner = 9;
+}
+
+enum EMarketingMessageVisibility {
+	k_EMarketingMessageVisibleBeta = 1;
+	k_EMarketingMessageVisiblePublic = 2;
+}
+
+enum EMarketingMessageAssociationType {
+	k_EMarketingMessageNoAssociation = 0;
+	k_EMarketingMessageAppAssociation = 1;
+	k_EMarketingMessageSubscriptionAssociation = 2;
+	k_EMarketingMessagePublisherAssociation = 3;
+	k_EMarketingMessageGenreAssociation = 4;
+	k_EMarketingMessageBundleAssociation = 5;
+}
+
+enum EMarketingMessageLookupType {
+	k_EMarketingMessageLookupInvalid = 0;
+	k_EMarketingMessageLookupByGID = 1;
+	k_EMarketingMessageLookupActive = 2;
+	k_EMarketingMessageLookupByTitleWithType = 3;
+	k_EMarketingMessageLookupByGIDList = 4;
+}
+
+message CMarketingMessages_GetActiveMarketingMessages_Request {
+	optional string country = 1;
+}
+
+message CMarketingMessageProto {
+	optional fixed64 gid = 1;
+	optional string title = 2;
+	optional .EMarketingMessageType type = 3 [default = k_EMarketingMessageInvalid];
+	optional .EMarketingMessageVisibility visibility = 4 [default = k_EMarketingMessageVisibleBeta];
+	optional uint32 priority = 5;
+	optional .EMarketingMessageAssociationType association_type = 6 [default = k_EMarketingMessageNoAssociation];
+	optional uint32 associated_id = 7;
+	optional string associated_name = 8;
+	optional uint32 start_date = 9;
+	optional uint32 end_date = 10;
+	optional string country_allow = 11;
+	optional string country_deny = 12;
+	optional bool ownership_restrictions_overridden = 13;
+	optional uint32 must_own_appid = 14;
+	optional uint32 must_not_own_appid = 15;
+	optional uint32 must_own_packageid = 16;
+	optional uint32 must_not_own_packageid = 17;
+	optional uint32 must_have_launched_appid = 18;
+	optional string additional_restrictions = 19;
+	optional string template_type = 20;
+	optional string template_vars = 21;
+	optional uint32 flags = 22;
+	optional string creator_name = 23;
+}
+
+message CMarketingMessages_GetActiveMarketingMessages_Response {
+	repeated .CMarketingMessageProto messages = 1;
+	optional uint32 time_next_message_age = 2;
+}
+
+message CMarketingMessages_GetMarketingMessagesForUser_Request {
+	optional bool include_seen_messages = 1;
+	optional string country_code = 2;
+	optional int32 elanguage = 3;
+	optional int32 operating_system = 4 [(description) = "EOSType from client"];
+	optional int32 client_package_version = 5;
+	optional .StoreBrowseContext context = 6 [(description) = "Optional, server can fill in from country code/language if not set"];
+	optional .StoreBrowseItemDataRequest data_request = 7 [(description) = "If passed, item data will be returned"];
+}
+
+message CDisplayMarketingMessage {
+	optional fixed64 gid = 1;
+	optional string title = 2;
+	optional .EMarketingMessageType type = 3 [default = k_EMarketingMessageInvalid];
+	optional .StoreItemID associated_item_id = 4;
+	optional .StoreItem associated_item = 5;
+	optional string associated_name = 6;
+	optional string template_type = 10;
+	optional string template_vars_json = 11;
+}
+
+message CMarketingMessages_GetMarketingMessagesForUser_Response {
+	message MarketingMessageForUser {
+		optional bool already_seen = 1;
+		optional .CDisplayMarketingMessage message = 2;
+	}
+
+	repeated .CMarketingMessages_GetMarketingMessagesForUser_Response.MarketingMessageForUser messages = 1;
+}
+
+message CMarketingMessages_GetDisplayMarketingMessage_Request {
+	optional fixed64 gid = 1;
+	optional .StoreBrowseContext context = 2;
+	optional .StoreBrowseItemDataRequest data_request = 3 [(description) = "If passed, item data will be returned"];
+}
+
+message CMarketingMessages_GetDisplayMarketingMessage_Response {
+	optional .CDisplayMarketingMessage message = 1;
+}
+
+message CMarketingMessages_MarkMessageSeen_Notification {
+	optional fixed64 gid = 1;
+}
+
+message CMarketingMessages_GetMarketingMessage_Request {
+	optional fixed64 gid = 1;
+}
+
+message CMarketingMessages_GetMarketingMessage_Response {
+	optional .CMarketingMessageProto message = 1;
+}
+
+message CMarketingMessages_CreateMarketingMessage_Request {
+	optional .CMarketingMessageProto message = 1;
+}
+
+message CMarketingMessages_CreateMarketingMessage_Response {
+	optional fixed64 gid = 1;
+}
+
+message CMarketingMessages_UpdateMarketingMessage_Request {
+	optional fixed64 gid = 1;
+	optional .CMarketingMessageProto message = 2;
+}
+
+message CMarketingMessages_UpdateMarketingMessage_Response {
+}
+
+message CMarketingMessages_DeleteMarketingMessage_Request {
+	optional fixed64 gid = 1;
+}
+
+message CMarketingMessages_DeleteMarketingMessage_Response {
+}
+
+message CMarketingMessages_FindMarketingMessages_Request {
+	optional .EMarketingMessageLookupType lookup_type = 1 [default = k_EMarketingMessageLookupInvalid];
+	optional fixed64 gid = 2;
+	optional .EMarketingMessageType message_type = 3 [default = k_EMarketingMessageInvalid];
+	repeated fixed64 gidlist = 4;
+	optional string title = 5;
+}
+
+message CMarketingMessages_FindMarketingMessages_Response {
+	repeated .CMarketingMessageProto messages = 1;
+}
+
+service MarketingMessages {
+	option (service_description) = "Marketing message data (\"Steam News\" updates at client startup).";
+
+	rpc GetActiveMarketingMessages (.CMarketingMessages_GetActiveMarketingMessages_Request) returns (.CMarketingMessages_GetActiveMarketingMessages_Response) {
+		option (method_description) = "Get a list of active marketing messages.";
+	}
+
+	rpc GetMarketingMessagesForUser (.CMarketingMessages_GetMarketingMessagesForUser_Request) returns (.CMarketingMessages_GetMarketingMessagesForUser_Response) {
+		option (method_description) = "Get a list of active marketing messages filtered for a specific user.";
+	}
+
+	rpc GetDisplayMarketingMessage (.CMarketingMessages_GetDisplayMarketingMessage_Request) returns (.CMarketingMessages_GetDisplayMarketingMessage_Response) {
+		option (method_description) = "Get a single marketing message, cacheable.";
+	}
+
+	rpc MarkMessageSeen (.CMarketingMessages_MarkMessageSeen_Notification) returns (.NoResponse) {
+		option (method_description) = "Mark that a user has viewed a message (so we won't show it again)'.";
+	}
+
+	rpc GetMarketingMessage (.CMarketingMessages_GetMarketingMessage_Request) returns (.CMarketingMessages_GetMarketingMessage_Response) {
+		option (method_description) = "Get a single marketing message.  Admin account needed for non-active messages";
+	}
+
+	rpc CreateMarketingMessage (.CMarketingMessages_CreateMarketingMessage_Request) returns (.CMarketingMessages_CreateMarketingMessage_Response) {
+		option (method_description) = "Create a new marketing message.";
+	}
+
+	rpc UpdateMarketingMessage (.CMarketingMessages_UpdateMarketingMessage_Request) returns (.CMarketingMessages_UpdateMarketingMessage_Response) {
+		option (method_description) = "Modify a marketing message.";
+	}
+
+	rpc DeleteMarketingMessage (.CMarketingMessages_DeleteMarketingMessage_Request) returns (.CMarketingMessages_DeleteMarketingMessage_Response) {
+		option (method_description) = "Delete a marketing message.";
+	}
+
+	rpc FindMarketingMessages (.CMarketingMessages_FindMarketingMessages_Request) returns (.CMarketingMessages_FindMarketingMessages_Response) {
+		option (method_description) = "Search for marketing messages by name, type, etc.";
+	}
+}
diff --git a/protobufs/steammessages_offline.proto b/protobufs/steammessages_offline.proto
index 5ddd9ff..d915d06 100644
--- a/protobufs/steammessages_offline.proto
+++ b/protobufs/steammessages_offline.proto
@@ -1,15 +1,19 @@
 syntax = "proto2";
+import "steammessages_base.proto";
 import "steammessages_unified_base.proto";
+import "offline_ticket.proto";
 
 option py_generic_services = true;
 
 message COffline_GetOfflineLogonTicket_Request {
 	optional uint32 priority = 1;
+	optional bool perform_encryption = 2;
 }
 
 message COffline_GetOfflineLogonTicket_Response {
 	optional bytes serialized_ticket = 1;
 	optional bytes signature = 2;
+	optional .Offline_Ticket encrypted_ticket = 3;
 }
 
 message COffline_GetUnsignedOfflineLogonTicket_Request {
diff --git a/protobufs/steammessages_parental.proto b/protobufs/steammessages_parental.proto
index dbc9a0d..592440b 100644
--- a/protobufs/steammessages_parental.proto
+++ b/protobufs/steammessages_parental.proto
@@ -1,4 +1,5 @@
 syntax = "proto2";
+import "steammessages_base.proto";
 import "steammessages_unified_base.proto";
 
 option py_generic_services = true;
diff --git a/protobufs/steammessages_parties.proto b/protobufs/steammessages_parties.proto
index c974ba4..7cf7269 100644
--- a/protobufs/steammessages_parties.proto
+++ b/protobufs/steammessages_parties.proto
@@ -1,4 +1,5 @@
 syntax = "proto2";
+import "steammessages_base.proto";
 import "steammessages_unified_base.proto";
 
 option py_generic_services = true;
diff --git a/protobufs/steammessages_partnerapps.proto b/protobufs/steammessages_partnerapps.proto
index 72b7b10..6fdf1ac 100644
--- a/protobufs/steammessages_partnerapps.proto
+++ b/protobufs/steammessages_partnerapps.proto
@@ -1,4 +1,5 @@
 syntax = "proto2";
+import "steammessages_base.proto";
 import "steammessages_unified_base.proto";
 
 option py_generic_services = true;
diff --git a/protobufs/steammessages_player.proto b/protobufs/steammessages_player.proto
index 9faab10..95089db 100644
--- a/protobufs/steammessages_player.proto
+++ b/protobufs/steammessages_player.proto
@@ -1,4 +1,5 @@
 syntax = "proto2";
+import "steammessages_base.proto";
 import "steammessages_unified_base.proto";
 import "enums.proto";
 
@@ -51,6 +52,8 @@ message CPlayer_GetOwnedGames_Request {
 	repeated uint32 appids_filter = 4 [(description) = "if set, restricts result set to the passed in apps"];
 	optional bool include_free_sub = 5 [(description) = "Some games are in the free sub, which are excluded by default."];
 	optional bool skip_unvetted_apps = 6 [default = true, (description) = "if set, skip unvetted store apps"];
+	optional string language = 7 [(description) = "Will return appinfo in this language"];
+	optional bool include_extended_appinfo = 8 [(description) = "true if we want even more details (capsule, sortas, and capabilities) about each game.  include_appinfo must also be true."];
 }
 
 message CPlayer_GetOwnedGames_Response {
@@ -60,11 +63,16 @@ message CPlayer_GetOwnedGames_Response {
 		optional int32 playtime_2weeks = 3;
 		optional int32 playtime_forever = 4;
 		optional string img_icon_url = 5;
-		optional string img_logo_url = 6;
 		optional bool has_community_visible_stats = 7;
 		optional int32 playtime_windows_forever = 8;
 		optional int32 playtime_mac_forever = 9;
 		optional int32 playtime_linux_forever = 10;
+		optional uint32 rtime_last_played = 11;
+		optional string capsule_filename = 12;
+		optional string sort_as = 13;
+		optional bool has_workshop = 14;
+		optional bool has_market = 15;
+		optional bool has_dlc = 16;
 	}
 
 	optional uint32 game_count = 1;
@@ -108,37 +116,6 @@ message CPlayer_GetFriendsGameplayInfo_Response {
 	repeated .CPlayer_GetFriendsGameplayInfo_Response.FriendsGameplayInfo in_wishlist = 6;
 }
 
-message CPlayer_GetFriendsAppsActivity_Request {
-	optional string news_language = 1 [(description) = "Language for which to query about news items (for the being_discussed results). DEPRECATED AND UNUSED."];
-	optional uint32 request_flags = 2 [(description) = "Flags describing the request; see EGetFriendsAppsActivityFlags"];
-}
-
-message CPlayer_GetFriendsAppsActivity_Response {
-	message FriendPlayTime {
-		optional fixed64 steamid = 1;
-		optional uint32 minutes_played_this_week = 2 [(description) = "Minutes this friend played the game (from the enclosing structure) this week."];
-		optional uint32 minutes_played_two_weeks = 3 [(description) = "Minutes this friend played the game (from the enclosing structure) in the past 2 weeks."];
-		optional uint32 minutes_played_forever = 4 [(description) = "Minutes this friend played the game (from the enclosing structure) all time."];
-		optional uint32 event_count = 5 [(description) = "Number of events involving this user & app. (Only set for results in being_discussed.) DEPRECATED AND UNUSED."];
-	}
-
-	message AppFriendsInfo {
-		optional uint32 appid = 1;
-		repeated .CPlayer_GetFriendsAppsActivity_Response.FriendPlayTime friends = 2 [(description) = "Friends (w/ playtime) that meet a specific criteria -- e.g. for trending, only includes friends w/ more playtime this week."];
-		optional uint32 display_order = 3 [(description) = "Index indicating the order in which this app should be displayed, relative to other apps in the same response."];
-	}
-
-	repeated .CPlayer_GetFriendsAppsActivity_Response.AppFriendsInfo trending = 1 [(description) = "Apps that friends have played more this week than last, with list of friends who've played more this week"];
-	repeated .CPlayer_GetFriendsAppsActivity_Response.AppFriendsInfo recent_purchases = 2 [(description) = "Apps friends have played in the past two weeks for which the user recently acquired a license"];
-	repeated .CPlayer_GetFriendsAppsActivity_Response.AppFriendsInfo unowned = 3 [(description) = "Apps friends have played in the past two weeks for which the user has no license"];
-	repeated .CPlayer_GetFriendsAppsActivity_Response.AppFriendsInfo popular = 4 [(description) = "Apps friends have played in the past two weeks, for which the user has a license, sorted by count"];
-	repeated .CPlayer_GetFriendsAppsActivity_Response.AppFriendsInfo dont_forget = 5 [(description) = "Apps friends have played in the past two weeks which the user has neither purchased nor played in the past two weeks"];
-	repeated .CPlayer_GetFriendsAppsActivity_Response.AppFriendsInfo being_discussed = 6 [(description) = "Owned apps that friends have posted status or screenshots for in the past two weeks. DEPRECATED AND UNUSED."];
-	repeated .CPlayer_GetFriendsAppsActivity_Response.AppFriendsInfo new_to_group = 7 [(description) = "Owned apps that none of your friends had played prior to 2 weeks."];
-	repeated .CPlayer_GetFriendsAppsActivity_Response.AppFriendsInfo returned_to_group = 8 [(description) = "Owned apps that friends hadn't played for a while, but are again."];
-	optional uint32 active_friend_count = 9 [default = 0, (description) = "Number of friends with non-trivial activity in the past two weeks."];
-}
-
 message CPlayer_GetGameBadgeLevels_Request {
 	optional uint32 appid = 1;
 }
@@ -235,8 +212,25 @@ message CPlayer_SetAnimatedAvatar_Request {
 message CPlayer_SetAnimatedAvatar_Response {
 }
 
+message CPlayer_GetSteamDeckKeyboardSkin_Request {
+	optional fixed64 steamid = 1 [(description) = "The player we're asking about"];
+	optional string language = 2;
+}
+
+message CPlayer_GetSteamDeckKeyboardSkin_Response {
+	optional .ProfileItem steam_deck_keyboard_skin = 1;
+}
+
+message CPlayer_SetSteamDeckKeyboardSkin_Request {
+	optional uint64 communityitemid = 1;
+}
+
+message CPlayer_SetSteamDeckKeyboardSkin_Response {
+}
+
 message CPlayer_GetProfileItemsOwned_Request {
 	optional string language = 1;
+	repeated .ECommunityItemClass filters = 2;
 }
 
 message CPlayer_GetProfileItemsOwned_Response {
@@ -245,6 +239,7 @@ message CPlayer_GetProfileItemsOwned_Response {
 	repeated .ProfileItem avatar_frames = 3;
 	repeated .ProfileItem animated_avatars = 4;
 	repeated .ProfileItem profile_modifiers = 5;
+	repeated .ProfileItem steam_deck_keyboard_skins = 6;
 }
 
 message CPlayer_GetProfileItemsEquipped_Request {
@@ -258,6 +253,7 @@ message CPlayer_GetProfileItemsEquipped_Response {
 	optional .ProfileItem avatar_frame = 3;
 	optional .ProfileItem animated_avatar = 4;
 	optional .ProfileItem profile_modifier = 5;
+	optional .ProfileItem steam_deck_keyboard_skin = 6;
 }
 
 message CPlayer_SetEquippedProfileItemFlags_Request {
@@ -486,6 +482,15 @@ message CPlayer_GetLastPlayedTimes_Response {
 	repeated .CPlayer_GetLastPlayedTimes_Response.Game games = 1;
 }
 
+message CPlayer_GetTimeSSAAccepted_Request {
+}
+
+message CPlayer_GetTimeSSAAccepted_Response {
+	optional uint32 time_ssa_accepted = 1;
+	optional uint32 time_ssa_updated = 2;
+	optional uint32 time_chinassa_accepted = 3;
+}
+
 message CPlayer_AcceptSSA_Request {
 	optional .EAgreementType agreement_type = 1 [default = k_EAgreementType_Invalid];
 	optional uint32 time_signed_utc = 2;
@@ -705,10 +710,6 @@ service Player {
 		option (method_description) = "Get a list of friends who are playing, have played, own, or want a game";
 	}
 
-	rpc GetFriendsAppsActivity (.CPlayer_GetFriendsAppsActivity_Request) returns (.CPlayer_GetFriendsAppsActivity_Response) {
-		option (method_description) = "Get lists of apps friends are active in, in a variety of ways";
-	}
-
 	rpc GetGameBadgeLevels (.CPlayer_GetGameBadgeLevels_Request) returns (.CPlayer_GetGameBadgeLevels_Response) {
 		option (method_description) = "Returns the Steam Level of a user, the Badge level for the game, and if it's foil";
 	}
@@ -745,6 +746,14 @@ service Player {
 		option (method_description) = "Sets the user's animated avatar for their profile";
 	}
 
+	rpc GetSteamDeckKeyboardSkin (.CPlayer_GetSteamDeckKeyboardSkin_Request) returns (.CPlayer_GetSteamDeckKeyboardSkin_Response) {
+		option (method_description) = "Gets which Steam Deck keyboard skin is active for a specific user";
+	}
+
+	rpc SetSteamDeckKeyboardSkin (.CPlayer_SetSteamDeckKeyboardSkin_Request) returns (.CPlayer_SetSteamDeckKeyboardSkin_Response) {
+		option (method_description) = "Sets the user's current Steam Deck keyboard skin";
+	}
+
 	rpc GetProfileItemsOwned (.CPlayer_GetProfileItemsOwned_Request) returns (.CPlayer_GetProfileItemsOwned_Response) {
 		option (method_description) = "Returns the items the user can equip on their profile";
 	}
@@ -813,6 +822,10 @@ service Player {
 		option (method_description) = "Gets the last-played times for the account";
 	}
 
+	rpc GetTimeSSAAccepted (.CPlayer_GetTimeSSAAccepted_Request) returns (.CPlayer_GetTimeSSAAccepted_Response) {
+		option (method_description) = "Gets the time when the user accepted the SSA";
+	}
+
 	rpc AcceptSSA (.CPlayer_AcceptSSA_Request) returns (.CPlayer_AcceptSSA_Response) {
 		option (method_description) = "User is accepting the SSA";
 	}
diff --git a/protobufs/steammessages_publishedfile.proto b/protobufs/steammessages_publishedfile.proto
index 27629a6..a2ffac5 100644
--- a/protobufs/steammessages_publishedfile.proto
+++ b/protobufs/steammessages_publishedfile.proto
@@ -1,6 +1,6 @@
 syntax = "proto2";
+import "steammessages_base.proto";
 import "steammessages_unified_base.proto";
-import "enums.proto";
 
 option py_generic_services = true;
 
@@ -22,6 +22,14 @@ enum EPublishedFileForSaleStatus {
 	k_PFFSS_TentativeApproval = 5;
 }
 
+message CPublishedFile_Vote_Request {
+	optional uint64 publishedfileid = 1;
+	optional bool vote_up = 2;
+}
+
+message CPublishedFile_Vote_Response {
+}
+
 message CPublishedFile_Subscribe_Request {
 	optional uint64 publishedfileid = 1;
 	optional uint32 list_type = 2;
@@ -50,6 +58,24 @@ message CPublishedFile_CanSubscribe_Response {
 	optional bool can_subscribe = 1;
 }
 
+message CPublishedFile_GetSubSectionData_Request {
+	optional uint64 publishedfileid = 1;
+	optional bool for_table_of_contents = 2;
+	optional uint64 specific_sectionid = 3;
+	optional .EPublishedFileRevision desired_revision = 4 [default = k_EPublishedFileRevision_Default, (description) = "Return the data for the specified revision."];
+}
+
+message PublishedFileSubSection {
+	optional uint64 sectionid = 1;
+	optional string title = 2;
+	optional string description_text = 3;
+	optional uint32 sort_order = 4;
+}
+
+message CPublishedFile_GetSubSectionData_Response {
+	repeated .PublishedFileSubSection sub_sections = 1;
+}
+
 message CPublishedFile_Publish_Request {
 	optional uint32 appid = 1 [(description) = "App Id this file is being published FROM."];
 	optional uint32 consumer_appid = 2 [(description) = "App Id this file is being published TO."];
@@ -287,6 +313,7 @@ message CPublishedFile_GetUserFiles_Request {
 	optional bool return_reactions = 35 [default = false, (description) = "If true, then reactions to items will be returned."];
 	optional uint32 startindex_override = 25 [(description) = "Backwards compatible for the client."];
 	optional .EPublishedFileRevision desired_revision = 33 [default = k_EPublishedFileRevision_Default, (description) = "Return the data for the specified revision."];
+	optional bool return_apps = 36 [(description) = "Return list of apps the items belong to"];
 }
 
 message CPublishedFile_GetUserFiles_Response {
@@ -322,13 +349,14 @@ message CPublishedFile_AreFilesInSubscriptionList_Response {
 
 message CPublishedFile_Update_Request {
 	optional uint32 appid = 1 [(description) = "App Id this published file belongs to."];
-	optional fixed64 publishedfileid = 2 [(description) = "Published file id of the file we'd like update."];
+	optional fixed64 publishedfileid = 2 [(description) = "Published file id of the file we'd like to update."];
 	optional string title = 3 [(description) = "(Optional) Title of the published file."];
 	optional string file_description = 4 [(description) = "(Optional) Description of the published file."];
 	optional uint32 visibility = 5 [(description) = "(Optional) Visibility of the published file."];
 	repeated string tags = 6 [(description) = "(Optional) Set of tags for the published file."];
 	optional string filename = 7 [(description) = "(Optional) Filename for the published file."];
 	optional string preview_filename = 8 [(description) = "(Optional) Preview filename for the published file."];
+	optional bool spoiler_tag = 10 [(description) = "(Optional) Whether this published file should have a spoiler tag attached to it."];
 	optional uint32 image_width = 15 [(description) = "(Optional) If this is an image file, you can specify the image width."];
 	optional uint32 image_height = 16 [(description) = "(Optional) If this is an image file, you can specify the image height."];
 }
@@ -336,6 +364,13 @@ message CPublishedFile_Update_Request {
 message CPublishedFile_Update_Response {
 }
 
+message CPublishedFile_Delete_Request {
+	optional fixed64 publishedfileid = 1 [(description) = "Published file id of the file we'd like to delete."];
+}
+
+message CPublishedFile_Delete_Response {
+}
+
 message CPublishedFile_GetChangeHistoryEntry_Request {
 	optional fixed64 publishedfileid = 1 [(description) = "Published file id of the file we'd like to get the change history for."];
 	optional uint32 timestamp = 2;
@@ -584,6 +619,10 @@ message CPublishedFile_FileDeleted_Client_Notification {
 service PublishedFile {
 	option (service_description) = "A service to access published file data";
 
+	rpc Vote (.CPublishedFile_Vote_Request) returns (.CPublishedFile_Vote_Response) {
+		option (method_description) = "User wants to vote on the item";
+	}
+
 	rpc Subscribe (.CPublishedFile_Subscribe_Request) returns (.CPublishedFile_Subscribe_Response) {
 		option (method_description) = "Subscribes the user to the published file";
 	}
@@ -596,6 +635,10 @@ service PublishedFile {
 		option (method_description) = "Check if the user can subscribe to the published file";
 	}
 
+	rpc GetSubSectionData (.CPublishedFile_GetSubSectionData_Request) returns (.CPublishedFile_GetSubSectionData_Response) {
+		option (method_description) = "Get sub section data (for table of contents, a specific section, or all)";
+	}
+
 	rpc Publish (.CPublishedFile_Publish_Request) returns (.CPublishedFile_Publish_Response) {
 		option (method_description) = "Publishes a clouded user file to the Workshop.";
 	}
@@ -612,6 +655,10 @@ service PublishedFile {
 		option (method_description) = "Retrieves files published by a user.";
 	}
 
+	rpc GetUserFileCount (.CPublishedFile_GetUserFiles_Request) returns (.CPublishedFile_GetUserFiles_Response) {
+		option (method_description) = "Retrieves a count of files published by a user. Uses the same messages as GetUserFiles but totalonly must be true.";
+	}
+
 	rpc AreFilesInSubscriptionList (.CPublishedFile_AreFilesInSubscriptionList_Request) returns (.CPublishedFile_AreFilesInSubscriptionList_Response) {
 		option (method_description) = "Determines which files in the given list are in a user's subscription list";
 	}
@@ -620,6 +667,10 @@ service PublishedFile {
 		option (method_description) = "Updates information about a published file.";
 	}
 
+	rpc Delete (.CPublishedFile_Delete_Request) returns (.CPublishedFile_Delete_Response) {
+		option (method_description) = "Deletes a published file.";
+	}
+
 	rpc GetChangeHistoryEntry (.CPublishedFile_GetChangeHistoryEntry_Request) returns (.CPublishedFile_GetChangeHistoryEntry_Response) {
 		option (method_description) = "Returns data on a specific change history entry for a published file";
 	}
diff --git a/protobufs/steammessages_qms.proto b/protobufs/steammessages_qms.proto
index ad0b1bd..531a111 100644
--- a/protobufs/steammessages_qms.proto
+++ b/protobufs/steammessages_qms.proto
@@ -1,4 +1,5 @@
 syntax = "proto2";
+import "steammessages_base.proto";
 import "steammessages_unified_base.proto";
 
 option py_generic_services = true;
diff --git a/protobufs/steammessages_remoteplay.proto b/protobufs/steammessages_remoteplay.proto
index 68e7031..8cd47c5 100644
--- a/protobufs/steammessages_remoteplay.proto
+++ b/protobufs/steammessages_remoteplay.proto
@@ -104,6 +104,8 @@ enum EStreamControlMessage {
 	k_EStreamControlSetInputTemporarilyDisabled = 133;
 	k_EStreamControlSetQualityOverride = 134;
 	k_EStreamControlSetBitrateOverride = 135;
+	k_EStreamControlShowOnScreenKeyboard = 136;
+	k_EStreamControlControllerConfigMsg = 137;
 }
 
 enum EStreamVersion {
@@ -143,6 +145,14 @@ enum EStreamBitrate {
 	k_EStreamBitrateUnlimited = 0;
 }
 
+enum EStreamColorspace {
+	k_EStreamColorspace_Unknown = 0;
+	k_EStreamColorspace_BT601 = 1;
+	k_EStreamColorspace_BT601_Full = 2;
+	k_EStreamColorspace_BT709 = 3;
+	k_EStreamColorspace_BT709_Full = 4;
+}
+
 enum EStreamP2PScope {
 	k_EStreamP2PScopeAutomatic = 0;
 	k_EStreamP2PScopeDisabled = 1;
@@ -283,6 +293,14 @@ enum ELogFileType {
 	k_ELogFileSystemDebug = 2;
 }
 
+enum EStreamControllerConfigMsg {
+	k_EStreamControllerConfigMsg_RequestConfigsForApp = 0;
+	k_EStreamControllerConfigMsg_ConfigResponse = 1;
+	k_EStreamControllerConfigMsg_PersonalizationResponse = 2;
+	k_EStreamControllerConfigMsg_ActiveConfigChange = 3;
+	k_EStreamControllerConfigMsg_RequestActiveConfig = 4;
+}
+
 message CDiscoveryPingRequest {
 	optional uint32 sequence = 1;
 	optional uint32 packet_size_requested = 2;
@@ -356,6 +374,8 @@ message CStreamingClientCaps {
 	optional bool disable_amd_hardware_encoding = 9;
 	optional bool disable_nvidia_hardware_encoding = 10;
 	optional int32 form_factor = 11;
+	optional bool has_on_screen_keyboard = 12;
+	repeated .EStreamColorspace supported_colorspaces = 13;
 }
 
 message CStreamingClientConfig {
@@ -398,6 +418,7 @@ message CNegotiatedConfig {
 	repeated .CStreamVideoMode available_video_modes = 4;
 	optional bool enable_remote_hid = 5;
 	optional bool enable_touch_input = 6;
+	optional bool disable_client_cursor = 7;
 }
 
 message CNegotiationInitMsg {
@@ -685,6 +706,7 @@ message CSetSpectatorModeMsg {
 
 message CRemoteHIDMsg {
 	optional bytes data = 1;
+	optional bool active_input = 2;
 }
 
 message CTouchConfigActiveMsg {
@@ -766,6 +788,9 @@ message CSetBitrateOverrideMsg {
 	optional int32 value = 1;
 }
 
+message CShowOnScreenKeyboardMsg {
+}
+
 message CStreamDataLostMsg {
 	repeated uint32 packets = 1;
 }
@@ -855,3 +880,39 @@ message CTransportSignalMsg {
 	optional .CTransportSignalMsg.WebRTCMessage webrtc = 1;
 	repeated bytes sdr = 2;
 }
+
+message CControllerConfigMsg {
+	message ControllerConfigResponse {
+		optional uint32 appid = 1;
+		optional string configURL = 2;
+		optional uint32 controllerType = 3;
+		optional string controllerData = 4;
+		optional uint32 selectionOrder = 5;
+		optional bool actionBlock = 6;
+	}
+
+	message ControllerPersonalizationResponse {
+		optional string personalizationData = 1;
+	}
+
+	message ControllerActiveConfigChangeResponse {
+		optional string configURL = 2;
+		optional uint32 controllerType = 3;
+		optional string controllerData = 4;
+		optional uint32 selectionOrder = 5;
+	}
+
+	message ControllerActiveConfigMsg {
+		optional uint32 appid = 1;
+		optional string configURL = 2;
+		optional uint32 controllerType = 3;
+		optional string controllerData = 4;
+	}
+
+	required .EStreamControllerConfigMsg type = 1 [default = k_EStreamControllerConfigMsg_RequestConfigsForApp];
+	optional string controllerPath = 2;
+	optional uint32 appid = 3;
+	optional .CControllerConfigMsg.ControllerPersonalizationResponse personalizationResponse = 4;
+	repeated .CControllerConfigMsg.ControllerConfigResponse configResponse = 6;
+	optional .CControllerConfigMsg.ControllerActiveConfigMsg activeConfigChangeMsg = 7;
+}
diff --git a/protobufs/steammessages_secrets.proto b/protobufs/steammessages_secrets.proto
index ca76b85..bb3def0 100644
--- a/protobufs/steammessages_secrets.proto
+++ b/protobufs/steammessages_secrets.proto
@@ -1,4 +1,5 @@
 syntax = "proto2";
+import "steammessages_base.proto";
 import "steammessages_unified_base.proto";
 
 option py_generic_services = true;
diff --git a/protobufs/steammessages_shader.proto b/protobufs/steammessages_shader.proto
index d2a7a22..26ed10e 100644
--- a/protobufs/steammessages_shader.proto
+++ b/protobufs/steammessages_shader.proto
@@ -1,4 +1,5 @@
 syntax = "proto2";
+import "steammessages_base.proto";
 import "steammessages_unified_base.proto";
 
 option py_generic_services = true;
@@ -53,6 +54,9 @@ message CShader_GetStaleBucket_Response {
 	optional uint64 bucketid = 1;
 	optional uint32 appid = 2;
 	optional uint64 manifestid = 3;
+	optional string gpu_desc = 4;
+	optional string driver_desc = 5;
+	optional bytes depot_encryption_key = 6;
 }
 
 message CShader_ReportExternalBuild_Request {
diff --git a/protobufs/steammessages_site_license.proto b/protobufs/steammessages_site_license.proto
index ffa6051..93e2739 100644
--- a/protobufs/steammessages_site_license.proto
+++ b/protobufs/steammessages_site_license.proto
@@ -1,4 +1,5 @@
 syntax = "proto2";
+import "steammessages_base.proto";
 import "steammessages_unified_base.proto";
 
 option py_generic_services = true;
diff --git a/protobufs/steammessages_star.proto b/protobufs/steammessages_star.proto
new file mode 100644
index 0000000..d38d980
--- /dev/null
+++ b/protobufs/steammessages_star.proto
@@ -0,0 +1,65 @@
+syntax = "proto2";
+import "steammessages_base.proto";
+import "steammessages_unified_base.proto";
+
+option py_generic_services = true;
+
+enum E_STAR_GlyphWriteResult {
+	k_E_STAR_GlyphWriteResult_Success = 0;
+	k_E_STAR_GlyphWriteResult_InvalidMessage = 1;
+	k_E_STAR_GlyphWriteResult_InvalidJSON = 2;
+	k_E_STAR_GlyphWriteResult_SQLError = 3;
+}
+
+message CSTAR_KeyValueQuery {
+	optional string key = 1 [(description) = "key to search for in JSON path format (SQL subset)"];
+	optional string value = 2 [(description) = "the value to compare against (the JSON value will be compared for equality as a string)"];
+}
+
+message CSTAR_GlyphQueryParams {
+	optional uint64 bundle_id = 1 [(description) = "if provided, Bundle ID is used instead of the other query parameters (much faster SQL query)"];
+	repeated .CSTAR_KeyValueQuery queries = 2 [(description) = "key value queries"];
+}
+
+message CSTAR_ReadGlyphData_Request {
+	optional .CSTAR_GlyphQueryParams query_params = 1 [(description) = "parameters to identify the glyphs to read from SQL"];
+	optional string last_modified_time_lower_limit = 2 [(description) = "if provided, only return glyphs modified more recently than this timestamp  (RFC 3339 UTC format)"];
+}
+
+message CSTAR_GlyphData {
+	optional bytes glyph_guid = 1 [(description) = "GUID uniquely identifying this glyph"];
+	optional string glyph_last_modified = 2 [(description) = "timestamp of when this glyph was last modified (RFC 3339 UTC format)"];
+	optional string glyph_json_data = 3 [(description) = "JSON encoded glyph data"];
+}
+
+message CSTAR_WriteGlyphData_Request {
+	optional uint64 bundle_id = 1 [(description) = "the Bundle ID of the glyphs to be written"];
+	repeated .CSTAR_GlyphData glyph_data = 2 [(description) = "one or more items of glyph data to write"];
+}
+
+message CSTAR_Request {
+	optional .CSTAR_ReadGlyphData_Request read_glyph_data = 1;
+	optional .CSTAR_WriteGlyphData_Request write_glyph_data = 2;
+}
+
+message CSTAR_ReadGlyphData_Response {
+	optional uint64 bundle_id = 1 [(description) = "the Bundle ID of the returned glyphs; the client should send this back to optimize subsequent queries"];
+	repeated .CSTAR_GlyphData glyph_data = 2 [(description) = "zero or more items of returned glyph data"];
+}
+
+message CSTAR_WriteGlyphData_Response {
+	repeated .E_STAR_GlyphWriteResult result = 1 [(description) = "write result for each item of glyph data"];
+}
+
+message CSTAR_Response {
+	optional .CSTAR_ReadGlyphData_Response read_glyph_data = 1;
+	optional .CSTAR_WriteGlyphData_Response write_glyph_data = 2;
+}
+
+service STAR {
+	option (service_description) = "service for reading/writing STAR data";
+
+	rpc ProcessMessage (.CSTAR_Request) returns (.CSTAR_Response) {
+		option (method_description) = "processes a generic message";
+	}
+}
diff --git a/protobufs/steammessages_steamtv.proto b/protobufs/steammessages_steamtv.proto
new file mode 100644
index 0000000..f172f5d
--- /dev/null
+++ b/protobufs/steammessages_steamtv.proto
@@ -0,0 +1,631 @@
+syntax = "proto2";
+import "steammessages_base.proto";
+import "steammessages_unified_base.proto";
+
+option py_generic_services = true;
+
+enum EBroadcastImageType {
+	k_EBroadcastImageType_None = 0;
+	k_EBroadcastImageType_Offline = 1;
+	k_EBroadcastImageType_Standby = 2;
+	k_EBroadcastImageType_Avatar = 3;
+	k_EBroadcastImageType_Summary = 4;
+	k_EBroadcastImageType_Background = 5;
+	k_EBroadcastImageType_Emoticon = 6;
+}
+
+enum EGetGamesAlgorithm {
+	k_EGetGamesAlgorithm_Default = 1;
+	k_EGetGamesAlgorithm_MostPlayed = 2;
+	k_EGetGamesAlgorithm_PopularNew = 3;
+}
+
+enum EGetChannelsAlgorithm {
+	k_EGetChannelsAlgorithm_Default = 1;
+	k_EGetChannelsAlgorithm_Friends = 2;
+	k_EGetChannelsAlgorithm_Featured = 3;
+	k_EGetChannelsAlgorithm_Developer = 4;
+	k_EGetChannelsAlgorithm_Following = 5;
+}
+
+enum ESteamTVContentTemplate {
+	k_ESteamTVContentTemplate_Invalid = 0;
+	k_ESteamTVContentTemplate_Takeover = 1;
+	k_ESteamTVContentTemplate_SingleGame = 2;
+	k_ESteamTVContentTemplate_GameList = 3;
+	k_ESteamTVContentTemplate_QuickExplore = 4;
+	k_ESteamTVContentTemplate_ConveyorBelt = 5;
+	k_ESteamTVContentTemplate_WatchParty = 6;
+	k_ESteamTVContentTemplate_Developer = 7;
+	k_ESteamTVContentTemplate_Event = 8;
+}
+
+message CSteamTV_CreateBroadcastChannel_Request {
+	optional string unique_name = 1 [(description) = "Unique short broadcast channel name, part of Steam.TV URL"];
+}
+
+message CSteamTV_CreateBroadcastChannel_Response {
+	optional fixed64 broadcast_channel_id = 1 [(description) = "Broadcast channel ID or 0"];
+}
+
+message CSteamTV_GetBroadcastChannelID_Request {
+	optional string unique_name = 1 [(description) = "Channel short name)"];
+}
+
+message CSteamTV_GetBroadcastChannelID_Response {
+	optional fixed64 broadcast_channel_id = 1 [(description) = "Broadcast channel ID or 0"];
+	optional string unique_name = 2 [(description) = "Broadcast channel name"];
+	optional fixed64 steamid = 3 [(description) = "Broadcast channel owner"];
+}
+
+message CSteamTV_SetBroadcastChannelProfile_Request {
+	optional fixed64 broadcast_channel_id = 1 [(description) = "Broadcast channel ID"];
+	optional string name = 2 [(description) = "long channel name"];
+	optional string language = 3 [(description) = "primary channel language (Steam shortname)"];
+	optional string headline = 4 [(description) = "short channel desciption"];
+	optional string summary = 5 [(description) = "long channel desciption"];
+	optional string avatar_hash = 6 [(description) = "community avatar hash"];
+	optional string schedule = 7 [(description) = "broadcast channel schedule"];
+	optional string rules = 8 [(description) = "broadcast channel rules"];
+	optional string panels = 9 [(description) = "JSON data representing the channel panel layout"];
+}
+
+message CSteamTV_SetBroadcastChannelProfile_Response {
+}
+
+message CSteamTV_GetBroadcastChannelProfile_Request {
+	optional fixed64 broadcast_channel_id = 1 [(description) = "Broadcast channel ID"];
+}
+
+message CSteamTV_GetBroadcastChannelProfile_Response {
+	optional string unique_name = 1 [(description) = "Unique short broadcast channel name, part of Steam.TV URL"];
+	optional fixed64 owner_steamid = 2 [(description) = "Broadcast channel owner"];
+	optional string name = 3 [(description) = "long channel name"];
+	optional string language = 4 [(description) = "primary channel language (Steam shortname)"];
+	optional string headline = 5 [(description) = "short channel description"];
+	optional string summary = 6 [(description) = "long channel description"];
+	optional string schedule = 7 [(description) = "broadcast channel schedule"];
+	optional string rules = 8 [(description) = "broadcast channel rules"];
+	optional string panels = 9 [(description) = "JSON data representing the channel panel layout"];
+	optional bool is_partnered = 10;
+}
+
+message CSteamTV_SetBroadcastChannelImage_Request {
+	optional fixed64 broadcast_channel_id = 1 [(description) = "Broadcast channel ID"];
+	optional .EBroadcastImageType image_type = 2 [default = k_EBroadcastImageType_None, (description) = "EBroadcastImage"];
+	optional uint32 image_index = 3 [(description) = "Index of the image (for supporting multiple uploads of the same type"];
+	optional uint32 image_width = 4 [(description) = "width in pixels"];
+	optional uint32 image_height = 5 [(description) = "height in pixels"];
+	optional uint32 file_size = 6 [(description) = "in bytes"];
+	optional string file_extension = 7 [(description) = "eg .jpg"];
+	optional string file_hash = 8 [(description) = "image SHA"];
+	optional bool undo = 9 [(description) = "indicates this is a delete request"];
+}
+
+message CSteamTV_SetBroadcastChannelImage_Response {
+	optional string replace_image_hash = 1 [(description) = "set if caller should remove previous SHA file from cache"];
+}
+
+message CSteamTV_GetBroadcastChannelImages_Request {
+	optional fixed64 broadcast_channel_id = 1 [(description) = "Broadcast channel ID"];
+	repeated .EBroadcastImageType image_types = 2 [(description) = "list of EBroadcastImage"];
+}
+
+message CSteamTV_GetBroadcastChannelImages_Response {
+	message Images {
+		optional .EBroadcastImageType image_type = 1 [default = k_EBroadcastImageType_None, (description) = "Type of the image"];
+		optional string image_path = 2 [(description) = "Path to the uploaded image"];
+		optional uint32 image_index = 3 [(description) = "Index of the image"];
+	}
+
+	repeated .CSteamTV_GetBroadcastChannelImages_Response.Images images = 1;
+}
+
+message CSteamTV_SetBroadcastChannelLinkRegions_Request {
+	message Links {
+		optional uint32 link_index = 1 [(description) = "Index of the link (lower number has higher priority)"];
+		optional string url = 2 [(description) = "URL "];
+		optional string link_description = 3 [(description) = "URL description that will show in the link region"];
+		optional uint32 left = 4 [(description) = "Left X position in 100th of a % of the video width"];
+		optional uint32 top = 5 [(description) = "Top Y position in 100th of a % of the video height"];
+		optional uint32 width = 6 [(description) = "Region Width in 100th of a % of the video width"];
+		optional uint32 height = 7 [(description) = "Region Height in 100th of a % of the video height"];
+	}
+
+	optional fixed64 broadcast_channel_id = 1 [(description) = "Broadcast channel ID"];
+	repeated .CSteamTV_SetBroadcastChannelLinkRegions_Request.Links links = 2;
+}
+
+message CSteamTV_SetBroadcastChannelLinkRegions_Response {
+}
+
+message CSteamTV_GetBroadcastChannelLinks_Request {
+	optional fixed64 broadcast_channel_id = 1 [(description) = "Broadcast channel ID"];
+}
+
+message CSteamTV_GetBroadcastChannelLinks_Response {
+	message Links {
+		optional uint32 link_index = 1 [(description) = "Index of the link (lower number has higher priority)"];
+		optional string url = 2 [(description) = "URL "];
+		optional string link_description = 3 [(description) = "URL description that will show in the link region"];
+		optional uint32 left = 4 [(description) = "Left X position in 100th of a % of the video width"];
+		optional uint32 top = 5 [(description) = "Top Y position in 100th of a % of the video height"];
+		optional uint32 width = 6 [(description) = "Region Width in 100th of a % of the video width"];
+		optional uint32 height = 7 [(description) = "Region Height in 100th of a % of the video height"];
+	}
+
+	repeated .CSteamTV_GetBroadcastChannelLinks_Response.Links links = 1;
+}
+
+message CSteamTV_GetBroadcastChannelBroadcasters_Request {
+	optional fixed64 broadcast_channel_id = 1 [(description) = "Broadcast channel ID"];
+}
+
+message CSteamTV_GetBroadcastChannelBroadcasters_Response {
+	message Broadcaster {
+		optional fixed64 steamid = 1 [(description) = "Broadcaster Steam ID"];
+		optional string name = 2 [(description) = "Broadcaster name"];
+		optional string rtmp_token = 3 [(description) = "Broadcaster upload token"];
+	}
+
+	repeated .CSteamTV_GetBroadcastChannelBroadcasters_Response.Broadcaster broadcasters = 1;
+}
+
+message CSteamTV_GetFollowedChannels_Request {
+}
+
+message GetBroadcastChannelEntry {
+	optional fixed64 broadcast_channel_id = 1 [(description) = "Broadcast channel ID or 0"];
+	optional string unique_name = 2 [(description) = "Unique broadcast channel name for URL"];
+	optional string name = 3 [(description) = "Long broadcast channel name"];
+	optional uint32 appid = 4 [(description) = "The game ID the requested broadcaster is playing"];
+	optional uint64 viewers = 5 [(description) = "Number of viewers currently watching"];
+	optional uint64 views = 6 [(description) = "Number of total views of this channel"];
+	optional string thumbnail_url = 7 [(description) = "Current thumbnail URL"];
+	optional uint64 followers = 8 [(description) = "Number of followers of this channel"];
+	optional string headline = 9 [(description) = "short channel description"];
+	optional string avatar_url = 10 [(description) = "community avatar url"];
+	optional fixed64 broadcaster_steamid = 11 [(description) = "Current broadcaster streaming"];
+	optional uint64 subscribers = 12 [(description) = "Number of subscribers of this channel"];
+	optional string background_url = 13 [(description) = "Background image url"];
+	optional bool is_featured = 14 [(description) = "Whether the channel is featured"];
+	optional bool is_disabled = 15 [(description) = "Whether the channel is disabled"];
+	optional bool is_live = 16 [(description) = "Whether the channel is streaming"];
+	optional string language = 17 [(description) = "The language the stream is in"];
+	optional uint32 reports = 18 [(description) = "The number of reports the channel has"];
+	optional bool is_partnered = 19;
+}
+
+message CSteamTV_GetFollowedChannels_Response {
+	repeated .GetBroadcastChannelEntry results = 1 [(description) = "The list of broadcasters"];
+}
+
+message CSteamTV_GetSubscribedChannels_Request {
+}
+
+message CSteamTV_GetSubscribedChannels_Response {
+	repeated .GetBroadcastChannelEntry results = 1 [(description) = "The list of broadcasters"];
+}
+
+message CSteamTV_GetBroadcastChannelStatus_Request {
+	optional fixed64 broadcast_channel_id = 1 [(description) = "Broadcast channel ID"];
+}
+
+message CSteamTV_GetBroadcastChannelStatus_Response {
+	optional bool is_live = 1 [(description) = "Indicates whether the channel is streaming"];
+	optional bool is_disabled = 2 [(description) = "Indicates whether the channel has been disabled"];
+	optional uint32 appid = 3 [(description) = "The game ID the requested broadcaster is playing"];
+	optional uint64 viewers = 4 [(description) = "Number of viewers currently watching"];
+	optional uint64 views = 5 [(description) = "Number of total views of this channel"];
+	optional fixed64 broadcaster_steamid = 6 [(description) = "Current broadcaster streaming"];
+	optional string thumbnail_url = 7 [(description) = "Current thumbnail URL"];
+	optional uint64 followers = 8 [(description) = "Number of followers of this channel"];
+	optional uint64 subscribers = 9 [(description) = "Number of subscribers of this channel"];
+	optional string unique_name = 10;
+	optional uint64 broadcast_session_id = 11;
+}
+
+message CSteamTV_FollowBroadcastChannel_Request {
+	optional fixed64 broadcast_channel_id = 1 [(description) = "Broadcast channel ID"];
+	optional bool undo = 2 [(description) = "Indicates this is an unfollow request"];
+}
+
+message CSteamTV_FollowBroadcastChannel_Response {
+	optional bool is_followed = 1 [(description) = "Whether the user is now following"];
+}
+
+message CSteamTV_SubscribeBroadcastChannel_Request {
+	optional fixed64 broadcast_channel_id = 1 [(description) = "Broadcast channel ID"];
+}
+
+message CSteamTV_SubscribeBroadcastChannel_Response {
+	optional bool is_subscribed = 1 [(description) = "Whether the user is now subscribed"];
+}
+
+message CSteamTV_GetBroadcastChannelClips_Request {
+	optional fixed64 broadcast_channel_id = 1;
+}
+
+message CSteamTV_BroadcastClipInfo {
+	optional uint64 broadcast_clip_id = 1 [(description) = "broadcast clip ID"];
+	optional uint64 channel_id = 2 [(description) = "Broadcast Channel ID"];
+	optional uint32 app_id = 3 [(description) = "App ID stream is tagged with"];
+	optional fixed64 broadcaster_steamid = 4 [(description) = "Broadcaster SteamID"];
+	optional fixed64 creator_steamid = 5 [(description) = "Clip-maker SteamID"];
+	optional string video_description = 6 [(description) = "Short name or description of this clip"];
+	optional uint32 live_time = 7 [(description) = "GMT time clip was broadcasted live"];
+	optional uint32 length_ms = 8 [(description) = "length of video in MS"];
+	optional string thumbnail_path = 9 [(description) = "relative path for thumbnail URL on host"];
+}
+
+message CSteamTV_GetBroadcastChannelClips_Response {
+	repeated .CSteamTV_BroadcastClipInfo clips = 1;
+	optional string thumbnail_host = 2;
+}
+
+message CSteamTV_ReportBroadcastChannel_Request {
+	optional fixed64 broadcast_channel_id = 1 [(description) = "Broadcast channel ID"];
+	optional string reason = 2 [(description) = "The reason for the report"];
+}
+
+message CSteamTV_ReportBroadcastChannel_Response {
+}
+
+message CSteamTV_GetBroadcastChannelInteraction_Request {
+	optional fixed64 broadcast_channel_id = 1 [(description) = "Broadcast channel ID"];
+}
+
+message CSteamTV_GetBroadcastChannelInteraction_Response {
+	optional bool is_followed = 1 [(description) = "Whether the user has followed this channel"];
+	optional bool is_subscribed = 2 [(description) = "Whether the user has subscribed to this channel"];
+}
+
+message CSteamTV_GetGames_Request {
+	optional uint32 appid = 1 [(description) = "The ID for the game"];
+	optional .EGetGamesAlgorithm algorithm = 2 [default = k_EGetGamesAlgorithm_Default, (description) = "The algorithm to use when picking games to return"];
+	optional uint32 count = 3 [(description) = "The maximum number of results to return"];
+}
+
+message CSteamTV_Game {
+	optional uint32 appid = 1 [(description) = "The ID for the game"];
+	optional string name = 2 [(description) = "The name for the game"];
+	optional string image = 3 [(description) = "The image for the game"];
+	optional uint64 viewers = 4 [(description) = "Number of people watching this game"];
+	repeated .GetBroadcastChannelEntry channels = 5 [(description) = "Live channels streaming this game"];
+	optional string release_date = 6;
+	optional string developer = 7;
+	optional string publisher = 8;
+}
+
+message CSteamTV_GetGames_Response {
+	repeated .CSteamTV_Game results = 1 [(description) = "The list of games"];
+}
+
+message CSteamTV_GetChannels_Request {
+	optional .EGetChannelsAlgorithm algorithm = 1 [default = k_EGetChannelsAlgorithm_Default, (description) = "The algorithm to use when picking channels to return"];
+	optional uint32 count = 2 [(description) = "The maximum number of results to return"];
+	optional uint32 appid = 3 [(description) = "Filter results to only this appid"];
+}
+
+message CSteamTV_GetChannels_Response {
+	repeated .GetBroadcastChannelEntry results = 1 [(description) = "The list of featured broadcasters"];
+}
+
+message CSteamTV_AddChatBan_Request {
+	optional fixed64 broadcast_channel_id = 1;
+	optional fixed64 chatter_steamid = 2;
+	optional uint32 duration = 3;
+	optional bool permanent = 4;
+	optional bool undo = 5;
+}
+
+message CSteamTV_AddChatBan_Response {
+}
+
+message CSteamTV_GetChatBans_Request {
+	optional fixed64 broadcast_channel_id = 1;
+}
+
+message CSteamTV_ChatBan {
+	optional fixed64 issuer_steamid = 1;
+	optional fixed64 chatter_steamid = 2;
+	optional string time_expires = 3;
+	optional bool permanent = 4;
+	optional string name = 5;
+}
+
+message CSteamTV_GetChatBans_Response {
+	repeated .CSteamTV_ChatBan results = 1 [(description) = "The list of bans"];
+}
+
+message CSteamTV_AddChatModerator_Request {
+	optional fixed64 broadcast_channel_id = 1;
+	optional fixed64 moderator_steamid = 2;
+	optional bool undo = 3;
+}
+
+message CSteamTV_AddChatModerator_Response {
+}
+
+message CSteamTV_GetChatModerators_Request {
+	optional fixed64 broadcast_channel_id = 1;
+}
+
+message CSteamTV_ChatModerator {
+	optional fixed64 steamid = 1;
+	optional string name = 2;
+}
+
+message CSteamTV_GetChatModerators_Response {
+	repeated .CSteamTV_ChatModerator results = 1 [(description) = "The list of moderators"];
+}
+
+message CSteamTV_AddWordBan_Request {
+	optional fixed64 broadcast_channel_id = 1;
+	optional string word = 2;
+	optional bool undo = 3;
+}
+
+message CSteamTV_AddWordBan_Response {
+}
+
+message CSteamTV_GetWordBans_Request {
+	optional fixed64 broadcast_channel_id = 1;
+}
+
+message CSteamTV_GetWordBans_Response {
+	repeated string results = 1 [(description) = "The list of banned words"];
+}
+
+message CSteamTV_JoinChat_Request {
+	optional fixed64 broadcast_channel_id = 1;
+}
+
+message CSteamTV_JoinChat_Response {
+	optional fixed64 chat_id = 1;
+	optional string view_url_template = 2;
+	repeated uint64 flair_group_ids = 3;
+}
+
+message CSteamTV_Search_Request {
+	optional string term = 1;
+}
+
+message CSteamTV_Search_Response {
+	repeated .GetBroadcastChannelEntry results = 1 [(description) = "The list of broadcasters"];
+}
+
+message CSteamTV_GetSteamTVUserSettings_Request {
+}
+
+message CSteamTV_GetSteamTVUserSettings_Response {
+	optional bool stream_live_email = 1 [(description) = "Send email when followed stream starts"];
+	optional bool stream_live_notification = 2 [(description) = "Send Steam notification when followed stream starts"];
+}
+
+message CSteamTV_SetSteamTVUserSettings_Request {
+	optional bool stream_live_email = 1 [(description) = "Send email when followed stream starts"];
+	optional bool stream_live_notification = 2 [(description) = "Send Steam notification when followed stream starts"];
+}
+
+message CSteamTV_SetSteamTVUserSettings_Response {
+}
+
+message CSteamTV_GetMyBroadcastChannels_Request {
+}
+
+message CSteamTV_GetMyBroadcastChannels_Response {
+	repeated .GetBroadcastChannelEntry results = 1 [(description) = "The list of broadcasters"];
+}
+
+message CSteamTV_GetHomePageContents_Request {
+}
+
+message CSteamTV_HomePageTemplate_Takeover {
+	repeated .GetBroadcastChannelEntry broadcasts = 1;
+}
+
+message CSteamTV_HomePageTemplate_SingleGame {
+	repeated .GetBroadcastChannelEntry broadcasts = 1;
+	optional uint32 appid = 2;
+	optional string title = 3;
+}
+
+message GameListEntry {
+	optional uint32 appid = 1;
+	optional string game_name = 2;
+	optional .GetBroadcastChannelEntry broadcast = 3;
+}
+
+message CSteamTV_HomePageTemplate_GameList {
+	repeated .GameListEntry entries = 1;
+	optional string title = 2;
+}
+
+message CSteamTV_HomePageTemplate_QuickExplore {
+	repeated .GetBroadcastChannelEntry broadcasts = 1;
+	optional string title = 2;
+}
+
+message CSteamTV_HomePageTemplate_ConveyorBelt {
+	repeated .GetBroadcastChannelEntry broadcasts = 1;
+	optional string title = 2;
+}
+
+message CSteamTV_HomePageTemplate_WatchParty {
+	optional .GetBroadcastChannelEntry broadcast = 1;
+	optional string title = 2;
+	optional uint64 chat_group_id = 3;
+}
+
+message CSteamTV_HomePageTemplate_Developer {
+	optional .GetBroadcastChannelEntry broadcast = 1;
+	optional string title = 2;
+}
+
+message CSteamTV_HomePageTemplate_Event {
+	optional string title = 1;
+}
+
+message CSteamTV_HomePageContentRow {
+	optional .ESteamTVContentTemplate template_type = 1 [default = k_ESteamTVContentTemplate_Invalid];
+	optional .CSteamTV_HomePageTemplate_Takeover takeover = 2;
+	optional .CSteamTV_HomePageTemplate_SingleGame single_game = 3;
+	optional .CSteamTV_HomePageTemplate_GameList game_list = 4;
+	optional .CSteamTV_HomePageTemplate_QuickExplore quick_explore = 5;
+	optional .CSteamTV_HomePageTemplate_ConveyorBelt conveyor_belt = 6;
+	optional .CSteamTV_HomePageTemplate_WatchParty watch_party = 7;
+	optional .CSteamTV_HomePageTemplate_Developer developer = 8;
+	optional .CSteamTV_HomePageTemplate_Event event = 9;
+}
+
+message CSteamTV_GetHomePageContents_Response {
+	repeated .CSteamTV_HomePageContentRow rows = 1;
+}
+
+message CSteamTV_AppCheer_SingleCheerType {
+	optional uint32 cheer_type = 1 [(description) = "The type of cheer. App dependent (different teams, heroes, players, etc)"];
+	optional uint32 cheer_amount = 2 [(description) = "The amount of cheers."];
+}
+
+message CSteamTV_AppCheer_Request {
+	optional uint32 app_id = 1 [(description) = "App ID this cheer is for."];
+	optional fixed64 cheer_target_id = 2 [(description) = "The thing being cheered on. ID is app dependent (could be steam id, match id, lobby id, server id, etc)."];
+	repeated .CSteamTV_AppCheer_SingleCheerType cheers = 3 [(description) = "The set of cheers this request represents (could be multiple of different types)."];
+}
+
+message CSteamTV_AppCheer_Response {
+	optional uint32 aggregation_delay_ms = 1 [(description) = "The amount of time in milliseconds that the client should aggregate cheers before sending them. The server can control this dynamically to ask clients to slow down sending."];
+}
+
+service SteamTV {
+	option (service_description) = "Methods for Steam TV operations";
+
+	rpc CreateBroadcastChannel (.CSteamTV_CreateBroadcastChannel_Request) returns (.CSteamTV_CreateBroadcastChannel_Response) {
+		option (method_description) = "Create a channel on SteamTV";
+	}
+
+	rpc GetBroadcastChannelID (.CSteamTV_GetBroadcastChannelID_Request) returns (.CSteamTV_GetBroadcastChannelID_Response) {
+		option (method_description) = "Get a broadcast channel ID for a channel by name or owner SteamID";
+	}
+
+	rpc SetBroadcastChannelProfile (.CSteamTV_SetBroadcastChannelProfile_Request) returns (.CSteamTV_SetBroadcastChannelProfile_Response) {
+		option (method_description) = "Set broadcast channel profile data";
+	}
+
+	rpc GetBroadcastChannelProfile (.CSteamTV_GetBroadcastChannelProfile_Request) returns (.CSteamTV_GetBroadcastChannelProfile_Response) {
+		option (method_description) = "Get broadcast channel profile data";
+	}
+
+	rpc SetBroadcastChannelImage (.CSteamTV_SetBroadcastChannelImage_Request) returns (.CSteamTV_SetBroadcastChannelImage_Response) {
+		option (method_description) = "Set broadcast channel image hash";
+	}
+
+	rpc GetBroadcastChannelImages (.CSteamTV_GetBroadcastChannelImages_Request) returns (.CSteamTV_GetBroadcastChannelImages_Response) {
+		option (method_description) = "Get broadcast channel images";
+	}
+
+	rpc SetBroadcastChannelLinkRegions (.CSteamTV_SetBroadcastChannelLinkRegions_Request) returns (.CSteamTV_SetBroadcastChannelLinkRegions_Response) {
+		option (method_description) = "Set broadcast channel link regions";
+	}
+
+	rpc GetBroadcastChannelLinks (.CSteamTV_GetBroadcastChannelLinks_Request) returns (.CSteamTV_GetBroadcastChannelLinks_Response) {
+		option (method_description) = "Get broadcast channel link regions";
+	}
+
+	rpc GetBroadcastChannelBroadcasters (.CSteamTV_GetBroadcastChannelBroadcasters_Request) returns (.CSteamTV_GetBroadcastChannelBroadcasters_Response) {
+		option (method_description) = "Get list of broadcaster info for this channel";
+	}
+
+	rpc GetFollowedChannels (.CSteamTV_GetFollowedChannels_Request) returns (.CSteamTV_GetFollowedChannels_Response) {
+		option (method_description) = "Get list of followed channels by a viewer";
+	}
+
+	rpc GetSubscribedChannels (.CSteamTV_GetSubscribedChannels_Request) returns (.CSteamTV_GetSubscribedChannels_Response) {
+		option (method_description) = "Get list of channels a user is subscribed to";
+	}
+
+	rpc GetBroadcastChannelStatus (.CSteamTV_GetBroadcastChannelStatus_Request) returns (.CSteamTV_GetBroadcastChannelStatus_Response) {
+		option (method_description) = "Get broadcast channel live status";
+	}
+
+	rpc FollowBroadcastChannel (.CSteamTV_FollowBroadcastChannel_Request) returns (.CSteamTV_FollowBroadcastChannel_Response) {
+		option (method_description) = "Follow a broadcast channel";
+	}
+
+	rpc SubscribeBroadcastChannel (.CSteamTV_SubscribeBroadcastChannel_Request) returns (.CSteamTV_SubscribeBroadcastChannel_Response) {
+		option (method_description) = "Subscribe to a broadcast channel";
+	}
+
+	rpc GetBroadcastChannelClips (.CSteamTV_GetBroadcastChannelClips_Request) returns (.CSteamTV_GetBroadcastChannelClips_Response) {
+		option (method_description) = "Get broadcast channel clips";
+	}
+
+	rpc ReportBroadcastChannel (.CSteamTV_ReportBroadcastChannel_Request) returns (.CSteamTV_ReportBroadcastChannel_Response) {
+		option (method_description) = "Report a broadcast channel";
+	}
+
+	rpc GetBroadcastChannelInteraction (.CSteamTV_GetBroadcastChannelInteraction_Request) returns (.CSteamTV_GetBroadcastChannelInteraction_Response) {
+		option (method_description) = "Get user's interaction status with a broadcast channel";
+	}
+
+	rpc GetGames (.CSteamTV_GetGames_Request) returns (.CSteamTV_GetGames_Response) {
+		option (method_description) = "Get list of games with active broadcasters";
+	}
+
+	rpc GetChannels (.CSteamTV_GetChannels_Request) returns (.CSteamTV_GetChannels_Response) {
+		option (method_description) = "Get the list of featured broadcast channels";
+	}
+
+	rpc AddChatBan (.CSteamTV_AddChatBan_Request) returns (.CSteamTV_AddChatBan_Response) {
+		option (method_description) = "Set the ban for a specific broadcaster. The issuer is the logged in steam account";
+	}
+
+	rpc GetChatBans (.CSteamTV_GetChatBans_Request) returns (.CSteamTV_GetChatBans_Response) {
+		option (method_description) = "Get list of bans for a specific broadcaster. ";
+	}
+
+	rpc AddChatModerator (.CSteamTV_AddChatModerator_Request) returns (.CSteamTV_AddChatModerator_Response) {
+		option (method_description) = "Add or remove a moderator for this broadcast channel";
+	}
+
+	rpc GetChatModerators (.CSteamTV_GetChatModerators_Request) returns (.CSteamTV_GetChatModerators_Response) {
+		option (method_description) = "Returns the list of moderators for this broadcast channel";
+	}
+
+	rpc AddWordBan (.CSteamTV_AddWordBan_Request) returns (.CSteamTV_AddWordBan_Response) {
+		option (method_description) = "Add or remove a banned keyword in this broadcast channel chat";
+	}
+
+	rpc GetWordBans (.CSteamTV_GetWordBans_Request) returns (.CSteamTV_GetWordBans_Response) {
+		option (method_description) = "Returns the list of banned keywords for this broadcast channel";
+	}
+
+	rpc JoinChat (.CSteamTV_JoinChat_Request) returns (.CSteamTV_JoinChat_Response) {
+		option (method_description) = "Joins the chat channel for a broadcast";
+	}
+
+	rpc Search (.CSteamTV_Search_Request) returns (.CSteamTV_Search_Response) {
+		option (method_description) = "Searches for broadcast channels based on input keywords";
+	}
+
+	rpc GetSteamTVUserSettings (.CSteamTV_GetSteamTVUserSettings_Request) returns (.CSteamTV_GetSteamTVUserSettings_Response) {
+		option (method_description) = "Returns a user's SteamTV settings";
+	}
+
+	rpc SetSteamTVUserSettings (.CSteamTV_SetSteamTVUserSettings_Request) returns (.CSteamTV_SetSteamTVUserSettings_Response) {
+		option (method_description) = "Sets a user's SteamTV settings";
+	}
+
+	rpc GetMyBroadcastChannels (.CSteamTV_GetMyBroadcastChannels_Request) returns (.CSteamTV_GetMyBroadcastChannels_Response) {
+		option (method_description) = "Gets the broadcast channels that the current user owns";
+	}
+
+	rpc GetHomePageContents (.CSteamTV_GetHomePageContents_Request) returns (.CSteamTV_GetHomePageContents_Response) {
+		option (method_description) = "Returns homepage contents for user";
+	}
+
+	rpc AppCheer (.CSteamTV_AppCheer_Request) returns (.CSteamTV_AppCheer_Response) {
+		option (method_description) = "The user is cheering for a specific broadcast for a specific app.";
+	}
+}
diff --git a/protobufs/steammessages_store.proto b/protobufs/steammessages_store.proto
index 2ef3d87..6f0e29b 100644
--- a/protobufs/steammessages_store.proto
+++ b/protobufs/steammessages_store.proto
@@ -1,14 +1,79 @@
 syntax = "proto2";
+import "steammessages_base.proto";
 import "steammessages_unified_base.proto";
+import "enums.proto";
 
 option py_generic_services = true;
 
+enum EStoreDiscoveryQueueType {
+	k_EStoreDiscoveryQueueTypeNew = 0;
+	k_EStoreDiscoveryQueueTypeComingSoon = 1;
+	k_EStoreDiscoveryQueueTypeRecommended = 2;
+	k_EStoreDiscoveryQueueTypeEveryNewRelease = 3;
+	k_EStoreDiscoveryQueueTypeMLRecommender = 5;
+	k_EStoreDiscoveryQueueTypeWishlistOnSale = 6;
+	k_EStoreDiscoveryQueueTypeDLC = 7;
+	k_EStoreDiscoveryQueueTypeDLCOnSale = 8;
+	k_EStoreDiscoveryQueueTypeRecommendedComingSoon = 9;
+	k_EStoreDiscoveryQueueTypeRecommendedFree = 10;
+	k_EStoreDiscoveryQueueTypeRecommendedOnSale = 11;
+	k_EStoreDiscoveryQueueTypeRecommendedDemos = 12;
+	k_EStoreDiscoveryQueueTypeDLCNewReleases = 13;
+	k_EStoreDiscoveryQueueTypeDLCTopSellers = 14;
+	k_EStoreDiscoveryQueueTypeMAX = 15;
+}
+
+enum EPlaytestStatus {
+	k_ETesterStatusNone = 0;
+	k_ETesterStatusPending = 1;
+	k_ETesterStatusInvited = 2;
+	k_ETesterStatusGranted = 3;
+}
+
 enum EUserReviewScorePreference {
 	k_EUserReviewScorePreference_Unset = 0;
 	k_EUserReviewScorePreference_IncludeAll = 1;
 	k_EUserReviewScorePreference_ExcludeBombs = 2;
 }
 
+message CStore_RegisterCDKey_Request {
+	optional string activation_code = 1 [(description) = "Key string to register on the logged in user's account"];
+	optional int32 purchase_platform = 2 [(description) = "EPurchasePlatform for platform of request"];
+	optional bool is_request_from_client = 3 [(description) = "True if the request was initiated from inside the Steam client"];
+}
+
+message CStore_PurchaseReceiptInfo {
+	message LineItem {
+		optional uint32 packageid = 1;
+		optional uint32 appid = 2;
+		optional string line_item_description = 3;
+	}
+
+	optional uint64 transactionid = 1;
+	optional uint32 packageid = 2;
+	optional uint32 purchase_status = 3;
+	optional uint32 result_detail = 4;
+	optional uint32 transaction_time = 5;
+	optional uint32 payment_method = 6;
+	optional uint64 base_price = 7;
+	optional uint64 total_discount = 8;
+	optional uint64 tax = 9;
+	optional uint64 shipping = 10;
+	optional uint32 currency_code = 11;
+	optional string country_code = 12;
+	optional string error_headline = 13;
+	optional string error_string = 14;
+	optional string error_link_text = 15;
+	optional string error_link_url = 16;
+	optional uint32 error_appid = 17;
+	repeated .CStore_PurchaseReceiptInfo.LineItem line_items = 18;
+}
+
+message CStore_RegisterCDKey_Response {
+	optional int32 purchase_result_details = 1 [(description) = "EPurchaseResultDetails from key activation"];
+	optional .CStore_PurchaseReceiptInfo purchase_receipt_info = 2 [(description) = "Purchase receipt info"];
+}
+
 message CStore_GetMostPopularTags_Request {
 	optional string language = 1;
 }
@@ -32,16 +97,102 @@ message CStore_GetLocalizedNameForTags_Response {
 		optional uint32 tagid = 1;
 		optional string english_name = 2;
 		optional string name = 3;
+		optional string normalized_name = 4 [(description) = "english_name, lowercase, with homoglyphs replaced and spaces and some punctuation removed."];
 	}
 
 	repeated .CStore_GetLocalizedNameForTags_Response.Tag tags = 1;
 }
 
+message CStoreDiscoveryQueueSettings {
+	optional bool os_win = 4;
+	optional bool os_mac = 5;
+	optional bool os_linux = 6;
+	optional bool full_controller_support = 7;
+	optional bool native_steam_controller = 8;
+	optional bool include_coming_soon = 9;
+	repeated uint32 excluded_tagids = 10 [(description) = "Don't return any games with these tags."];
+	optional bool exclude_early_access = 11;
+	optional bool exclude_videos = 12;
+	optional bool exclude_software = 13;
+	optional bool exclude_dlc = 14;
+	optional bool exclude_soundtracks = 15;
+	repeated uint32 featured_tagids = 16 [(description) = "Must be marked with one of these featured tagids (for sale pages and events)"];
+}
+
+message CStore_GetDiscoveryQueue_Request {
+	optional .EStoreDiscoveryQueueType queue_type = 1 [default = k_EStoreDiscoveryQueueTypeNew];
+	optional string country_code = 2;
+	optional bool rebuild_queue = 3;
+	optional bool settings_changed = 4;
+	optional .CStoreDiscoveryQueueSettings settings = 5;
+	optional bool rebuild_queue_if_stale = 6;
+	optional bool ignore_user_preferences = 8;
+	optional bool no_experimental_results = 9;
+	optional uint32 experimental_cohort = 10;
+	optional bool debug_get_solr_query = 11;
+}
+
+message CStore_GetDiscoveryQueue_Response {
+	repeated uint32 appids = 1;
+	optional string country_code = 2;
+	optional .CStoreDiscoveryQueueSettings settings = 3;
+	optional int32 skipped = 4;
+	optional bool exhausted = 5;
+	optional uint32 experimental_cohort = 6;
+	optional string debug_solr_query = 7;
+}
+
+message CStore_GetDiscoveryQueueSettings_Request {
+	optional .EStoreDiscoveryQueueType queue_type = 1 [default = k_EStoreDiscoveryQueueTypeNew];
+}
+
+message CStore_GetDiscoveryQueueSettings_Response {
+	optional string country_code = 1;
+	optional .CStoreDiscoveryQueueSettings settings = 2;
+}
+
+message CStore_SkipDiscoveryQueueItem_Request {
+	optional .EStoreDiscoveryQueueType queue_type = 1 [default = k_EStoreDiscoveryQueueTypeNew];
+	optional uint32 appid = 2;
+}
+
+message CStore_SkipDiscoveryQueueItem_Response {
+}
+
+message CStore_GetUserGameInterestState_Request {
+	optional uint32 appid = 1;
+	optional uint32 store_appid = 2;
+	optional uint32 beta_appid = 3;
+}
+
+message CStore_GetUserGameInterestState_Response {
+	message InQueue {
+		optional .EStoreDiscoveryQueueType type = 1 [default = k_EStoreDiscoveryQueueTypeNew];
+		optional bool skipped = 2;
+		optional int32 items_remaining = 3;
+		optional uint32 next_appid = 4;
+		optional uint32 experimental_cohort = 5;
+	}
+
+	optional bool owned = 1;
+	optional bool wishlist = 2;
+	optional bool ignored = 3;
+	optional bool following = 4;
+	repeated .EStoreDiscoveryQueueType in_queues = 5;
+	repeated .EStoreDiscoveryQueueType queues_with_skip = 6 [(description) = "Discovery queue types where the user has skipped this game."];
+	repeated int32 queue_items_remaining = 7 [(description) = "# of items remaining in the discovery queue - matches the same order as in_queues"];
+	repeated uint32 queue_items_next_appid = 8 [(description) = "the next appid in the queue - matches the same order as in_queues"];
+	optional bool temporarily_owned = 9 [(description) = "The user owns the game temporarily, eg a rental or free weekend"];
+	repeated .CStore_GetUserGameInterestState_Response.InQueue queues = 10;
+	optional int32 ignored_reason = 11 [(description) = "The ERecommendationIgnoreReason why the user ignored the app"];
+	optional .EPlaytestStatus beta_status = 12 [default = k_ETesterStatusNone, (description) = "User interest or membership in the playtest for this app if any"];
+}
+
 message CStore_GetStorePreferences_Request {
 }
 
 message CStore_UserPreferences {
-	optional uint32 primary_language = 1;
+	optional int32 primary_language = 1;
 	optional uint32 secondary_languages = 2;
 	optional bool platform_windows = 3;
 	optional bool platform_mac = 4;
@@ -52,6 +203,7 @@ message CStore_UserPreferences {
 	optional bool hide_store_broadcast = 9;
 	optional .EUserReviewScorePreference review_score_preference = 10 [default = k_EUserReviewScorePreference_Unset];
 	optional int32 timestamp_content_descriptor_preferences_updated = 11;
+	optional .EProvideDeckFeedbackPreference provide_deck_feedback = 12 [default = k_EProvideDeckFeedbackPreference_Unset];
 }
 
 message CStore_UserTagPreferences {
@@ -79,6 +231,39 @@ message CStore_GetStorePreferences_Response {
 	optional .CStore_UserContentDescriptorPreferences content_descriptor_preferences = 3;
 }
 
+message CStore_GetTrendingAppsAmongFriends_Request {
+	optional uint32 num_apps = 1;
+	optional uint32 num_top_friends = 2;
+}
+
+message CStore_GetTrendingAppsAmongFriends_Response {
+	message TrendingAppData {
+		optional uint32 appid = 1;
+		repeated uint64 steamids_top_friends = 2;
+		optional uint32 total_friends = 3;
+	}
+
+	repeated .CStore_GetTrendingAppsAmongFriends_Response.TrendingAppData trending_apps = 1;
+}
+
+message CSteamDeckCompatibility_SetFeedback_Request {
+	optional uint32 appid = 1;
+	optional .ESteamDeckCompatibilityFeedback feedback = 2 [default = k_ESteamDeckCompatibilityFeedback_Unset];
+}
+
+message CSteamDeckCompatibility_SetFeedback_Response {
+}
+
+message CSteamDeckCompatibility_ShouldPrompt_Request {
+	optional uint32 appid = 1;
+}
+
+message CSteamDeckCompatibility_ShouldPrompt_Response {
+	optional bool prompt = 1;
+	optional bool feedback_eligible = 2;
+	optional .ESteamDeckCompatibilityFeedback existing_feedback = 3 [default = k_ESteamDeckCompatibilityFeedback_Unset];
+}
+
 message CStore_StorePreferencesChanged_Notification {
 	optional .CStore_UserPreferences preferences = 1;
 	optional .CStore_UserTagPreferences tag_preferences = 2;
@@ -88,6 +273,10 @@ message CStore_StorePreferencesChanged_Notification {
 service Store {
 	option (service_description) = "A service to access store data.";
 
+	rpc RegisterCDKey (.CStore_RegisterCDKey_Request) returns (.CStore_RegisterCDKey_Response) {
+		option (method_description) = "Registers a CD key with Steam on the logged in user's account";
+	}
+
 	rpc GetMostPopularTags (.CStore_GetMostPopularTags_Request) returns (.CStore_GetMostPopularTags_Response) {
 		option (method_description) = "Get all whitelisted tags, with localized names.";
 	}
@@ -96,9 +285,37 @@ service Store {
 		option (method_description) = "Gets tag names in a different language";
 	}
 
+	rpc GetDiscoveryQueue (.CStore_GetDiscoveryQueue_Request) returns (.CStore_GetDiscoveryQueue_Response) {
+		option (method_description) = "Get a list of games for the user to explore on the store.";
+	}
+
+	rpc GetDiscoveryQueueSettings (.CStore_GetDiscoveryQueueSettings_Request) returns (.CStore_GetDiscoveryQueueSettings_Response) {
+		option (method_description) = "Get the settings that were used to generate a user's discovery queue.";
+	}
+
+	rpc SkipDiscoveryQueueItem (.CStore_SkipDiscoveryQueueItem_Request) returns (.CStore_SkipDiscoveryQueueItem_Response) {
+		option (method_description) = "Skip an item in the user's queue.";
+	}
+
+	rpc GetUserGameInterestState (.CStore_GetUserGameInterestState_Request) returns (.CStore_GetUserGameInterestState_Response) {
+		option (method_description) = "Get information about a user's relationship to a game - ownership, wishlist, discovery queue state, etc.";
+	}
+
 	rpc GetStorePreferences (.CStore_GetStorePreferences_Request) returns (.CStore_GetStorePreferences_Response) {
 		option (method_description) = "Returns the desired ratings board and maximum rating to show on the store";
 	}
+
+	rpc GetTrendingAppsAmongFriends (.CStore_GetTrendingAppsAmongFriends_Request) returns (.CStore_GetTrendingAppsAmongFriends_Response) {
+		option (method_description) = "Get trending apps among friends";
+	}
+
+	rpc SetCompatibilityFeedback (.CSteamDeckCompatibility_SetFeedback_Request) returns (.CSteamDeckCompatibility_SetFeedback_Response) {
+		option (method_description) = "Upserts user feedback regarding the published Steam Deck Compatibility rating for a game";
+	}
+
+	rpc ShouldPromptForCompatibilityFeedback (.CSteamDeckCompatibility_ShouldPrompt_Request) returns (.CSteamDeckCompatibility_ShouldPrompt_Response) {
+		option (method_description) = "Returns whether we should ask the user if the compatibility rating is correct";
+	}
 }
 
 service StoreClient {
diff --git a/protobufs/steammessages_storebrowse.proto b/protobufs/steammessages_storebrowse.proto
new file mode 100644
index 0000000..e249f6e
--- /dev/null
+++ b/protobufs/steammessages_storebrowse.proto
@@ -0,0 +1,326 @@
+syntax = "proto2";
+import "steammessages_base.proto";
+import "steammessages_unified_base.proto";
+import "enums_productinfo.proto";
+import "enums.proto";
+
+option py_generic_services = true;
+
+enum EStoreItemType {
+	k_EStoreItemType_Invalid = -1;
+	k_EStoreItemType_App = 0;
+	k_EStoreItemType_Package = 1;
+	k_EStoreItemType_Bundle = 2;
+	k_EStoreItemType_Mtx = 3;
+}
+
+enum EStoreAppType {
+	k_EStoreAppType_Game = 0;
+	k_EStoreAppType_Demo = 1;
+	k_EStoreAppType_Mod = 2;
+	k_EStoreAppType_Movie = 3;
+	k_EStoreAppType_DLC = 4;
+	k_EStoreAppType_Guide = 5;
+	k_EStoreAppType_Software = 6;
+	k_EStoreAppType_Video = 7;
+	k_EStoreAppType_Series = 8;
+	k_EStoreAppType_Episode = 9;
+	k_EStoreAppType_Hardware = 10;
+	k_EStoreAppType_Music = 11;
+	k_EStoreAppType_Beta = 12;
+	k_EStoreAppType_Tool = 13;
+	k_EStoreAppType_Advertising = 14;
+}
+
+enum EUserReviewScore {
+	k_EUserReviewScore_None = 0;
+	k_EUserReviewScore_OverwhelminglyNegative = 1;
+	k_EUserReviewScore_VeryNegative = 2;
+	k_EUserReviewScore_Negative = 3;
+	k_EUserReviewScore_MostlyNegative = 4;
+	k_EUserReviewScore_Mixed = 5;
+	k_EUserReviewScore_MostlyPositive = 6;
+	k_EUserReviewScore_Positive = 7;
+	k_EUserReviewScore_VeryPositive = 8;
+	k_EUserReviewScore_OverwhelminglyPositive = 9;
+}
+
+enum EStoreCategoryType {
+	k_EStoreCategoryType_Category = 0;
+	k_EStoreCategoryType_SupportedPlayers = 1;
+	k_EStoreCategoryType_Feature = 2;
+	k_EStoreCategoryType_ControllerSupport = 3;
+	k_EStoreCategoryType_CloudGaming = 4;
+	k_EStoreCategoryType_MAX = 5;
+}
+
+message StoreItemID {
+	optional uint32 appid = 1;
+	optional uint32 packageid = 2;
+	optional uint32 bundleid = 3;
+}
+
+message StoreBrowseContext {
+	optional string language = 1;
+	optional int32 elanguage = 2 [(description) = "ELanguage"];
+	optional string country_code = 3 [(description) = "2-character country code; required"];
+	optional int32 steam_realm = 4 [(description) = "ESteamRealm"];
+}
+
+message StoreBrowseItemDataRequest {
+	optional bool include_assets = 1;
+	optional bool include_release = 2;
+	optional bool include_platforms = 3;
+	optional bool include_all_purchase_options = 4;
+	optional bool include_screenshots = 5;
+	optional bool include_trailers = 6;
+	optional bool include_ratings = 7;
+	optional int32 include_tag_count = 8 [(description) = "Count of tags to return, as tagids.  Maximum 20."];
+	optional bool include_reviews = 9;
+	optional bool include_basic_info = 10 [(description) = "Include short description, publisher, developers"];
+	optional bool include_supported_languages = 11 [(description) = "includes the games support for languages: supported, full_audio, subtitles"];
+}
+
+message CStoreBrowse_GetItems_Request {
+	repeated .StoreItemID ids = 1;
+	optional .StoreBrowseContext context = 2;
+	optional .StoreBrowseItemDataRequest data_request = 3;
+}
+
+message StoreGameRating {
+	optional string type = 1 [(description) = "'esrb', 'pegi', ..."];
+	optional string rating = 2 [(description) = "'t' for teen, 'm' for mature, ..."];
+	repeated string descriptors = 3 [(description) = "Additional descriptors like 'Intense Violence', 'Strong Language',..."];
+	optional string interactive_elements = 4 [(description) = "ESRB-specific"];
+	optional int32 required_age = 10 [(description) = "Age in years.  Store pages will prompt with an age gate"];
+	optional bool use_age_gate = 11;
+	optional string image_url = 20 [(description) = "An image corresponding to the rating."];
+	optional string image_target = 21 [(description) = "URL where the image should link for more information."];
+}
+
+message StoreItem {
+	message RelatedItems {
+		optional uint32 parent_appid = 1 [(description) = "For DLC, Demos, etc, this is the main app."];
+	}
+
+	message Categories {
+		repeated uint32 supported_player_categoryids = 2 [(description) = "Categories like Single Player, Multiplayer, MMO"];
+		repeated uint32 feature_categoryids = 3 [(description) = "Categories indicating supported features like Steam Cloud, VAC, Achievements, etc"];
+		repeated uint32 controller_categoryids = 4 [(description) = "Categories indicating controller support and full controller support."];
+	}
+
+	message Reviews {
+		message StoreReviewSummary {
+			optional uint32 review_count = 1;
+			optional int32 percent_positive = 2 [(description) = "0-100"];
+			optional .EUserReviewScore review_score = 3 [default = k_EUserReviewScore_None];
+			optional string review_score_label = 4 [(description) = "A string like 'Mixed', 'Negative', 'Overwhelmingly Positive'"];
+		}
+
+		optional .StoreItem.Reviews.StoreReviewSummary summary_filtered = 1 [(description) = "Review summary with review bombs removed (if any).  Always present (if include_reviews set in request)"];
+		optional .StoreItem.Reviews.StoreReviewSummary summary_unfiltered = 2 [(description) = "Review summary with review bombs included.  Only present if there are review bombs."];
+	}
+
+	message BasicInfo {
+		message CreatorHomeLink {
+			optional string name = 1;
+			optional uint32 creator_clan_account_id = 2 [(description) = "Optioanl field indicating this name is associated this the creator home via the clan account id"];
+		}
+
+		optional string short_description = 1;
+		repeated .StoreItem.BasicInfo.CreatorHomeLink publishers = 2;
+		repeated .StoreItem.BasicInfo.CreatorHomeLink developers = 3;
+		repeated .StoreItem.BasicInfo.CreatorHomeLink franchises = 4;
+		optional string capsule_headline = 5 [(description) = "A custom string specified by the partner for display on or around a capsule on the store, e.g. 'Just Updated!'"];
+	}
+
+	message Tag {
+		optional uint32 tagid = 1;
+		optional uint32 weight = 2;
+	}
+
+	message Assets {
+		optional string asset_url_format = 1 [(description) = "Format for URLs, should substitute the capsule name for ${FILENAME} in the URL."];
+		optional string main_capsule = 2;
+		optional string small_capsule = 3;
+		optional string header = 4 [(description) = "Equivalent to GetConstantRatioHeaderImage in PHP; apps will always have this, packages and bundles may not."];
+		optional string package_header = 5 [(description) = "A wider header used on package/bundle pages.  Not set for apps."];
+		optional string page_background = 6;
+		optional string hero_capsule = 7 [(description) = "374x448"];
+		optional string hero_capsule_2x = 8 [(description) = "748x896 version of hero capsule."];
+		optional string library_capsule = 9 [(description) = "300x450 - tall library asset"];
+		optional string library_capsule_2x = 10 [(description) = "600x900 - tall library asset"];
+		optional string library_hero = 11 [(description) = "960x310 or 1920x620 - library detail background asset"];
+		optional string library_hero_2x = 12 [(description) = "1920x620 or 3840x1240 - library detail background asset"];
+		optional string community_icon = 13 [(description) = "32x32 jpg uploading via steamworks under community assets"];
+	}
+
+	message ReleaseInfo {
+		optional uint32 steam_release_date = 1 [(description) = "The date this item first released on the Steam store.  For Early Access graduates, this is their graduation day."];
+		optional uint32 original_release_date = 2 [(description) = "Optional; the date this item first released elsewhere, typically back catalog items."];
+		optional uint32 original_steam_release_date = 3 [(description) = "For Early Access graduates, the date the game first appeared on Steam."];
+		optional bool is_coming_soon = 4 [(description) = "Is the app coming soon?  This flag should be preferred to doing time comparisons against steam_release_date."];
+		optional bool is_preload = 5 [(description) = "Can the app be preloaded?  Only applies to Coming Soon titles."];
+		optional string custom_release_date_message = 6 [(description) = "Custom release date string.  steam_release_date will be unset if this is set."];
+		optional bool is_abridged_release_date = 7 [(description) = "Release date should be displayed as month-year only.  steam_release_date is the last day of the month."];
+		optional string coming_soon_display = 8 [(description) = "One of 'date_full', 'date_month', 'date_quarter', 'date_year', 'text_comingsoon', 'text_tba'"];
+		optional bool is_early_access = 10;
+		optional uint32 mac_release_date = 20;
+		optional uint32 linux_release_date = 21;
+	}
+
+	message Platforms {
+		message VRSupport {
+			optional bool vrhmd = 1;
+			optional bool vrhmd_only = 2;
+			optional bool htc_vive = 40;
+			optional bool oculus_rift = 41;
+			optional bool windows_mr = 42;
+			optional bool valve_index = 43;
+		}
+
+		optional bool windows = 1;
+		optional bool mac = 2;
+		optional bool steamos_linux = 3;
+		optional .StoreItem.Platforms.VRSupport vr_support = 10;
+		optional .ESteamDeckCompatibilityCategory steam_deck_compat_category = 11 [default = k_ESteamDeckCompatibilityCategory_Unknown];
+	}
+
+	message PurchaseOption {
+		message Discount {
+			optional int64 discount_amount = 1;
+			optional string discount_description = 2;
+			optional uint32 discount_end_date = 3;
+		}
+
+		optional int32 packageid = 1;
+		optional int32 bundleid = 2;
+		optional string purchase_option_name = 3 [(description) = "The name of the package or bundle"];
+		optional int64 final_price_in_cents = 5 [(description) = "Always set.  Includes any applicable non user-specific discounts."];
+		optional int64 original_price_in_cents = 6 [(description) = "If discounted, this is the price the item would normally cost."];
+		optional int64 user_final_price_in_cents = 7;
+		optional string formatted_final_price = 8 [(description) = "Always set.  Formatted with currency symbol and decimal, like '$10.00'."];
+		optional string formatted_original_price = 9;
+		optional int32 discount_pct = 10 [(description) = "If discounted, calculated from final price and original price."];
+		optional int32 user_discount_pct = 11;
+		optional int32 bundle_discount_pct = 12 [(description) = "If this is a bundle, the savings from buying the bundle.  If no bundle items are on active discount, this will be the same as discount_pct."];
+		repeated .StoreItem.PurchaseOption.Discount active_discounts = 20 [(description) = "Discounts included in discounted_price_in_cents."];
+		repeated .StoreItem.PurchaseOption.Discount user_active_discounts = 21 [(description) = "Additional discounts included in user_discounted_price_in_cents."];
+		repeated .StoreItem.PurchaseOption.Discount inactive_discounts = 22 [(description) = "Additional user-specific discounts that do not apply to the current user."];
+		optional bool user_can_purchase = 30;
+		optional bool user_can_purchase_as_gift = 31;
+		optional bool is_commercial_license = 40 [(description) = "This is a commercial license"];
+		optional bool should_suppress_discount_pct = 41 [(description) = "Don't show the discount percentage on a store capsule for this item."];
+	}
+
+	message Screenshots {
+		message Screenshot {
+			optional string filename = 1 [(description) = "Path to file on media CDN.  Can access sized version by appending to SHA: '.1920x1080', '.600x338', '.116x65'"];
+			optional int32 ordinal = 2 [(description) = "Screenshots should be displayed in order of ascending ordinal; they are returned in-order but client may need to merge all_ages and mature_content_screenshots."];
+		}
+
+		repeated .StoreItem.Screenshots.Screenshot all_ages_screenshots = 2 [(description) = "Screenshots suitable for all ages."];
+		repeated .StoreItem.Screenshots.Screenshot mature_content_screenshots = 3 [(description) = "Screenshots that may contain mature content; these should only be shown after verifying age (age gate)."];
+	}
+
+	message Trailers {
+		message VideoSource {
+			optional string filename = 1 [(description) = "Substitute into trailer_url_format"];
+			optional string type = 2 [(description) = "'video/webm' or 'video/mp4'; can just put this directly in to a <source> tag."];
+		}
+
+		message Trailer {
+			optional string trailer_name = 1;
+			optional string trailer_url_format = 2 [(description) = "Format for URLs, should substitute filename for ${FILENAME} in the URL."];
+			repeated .StoreItem.Trailers.VideoSource trailer_480p = 3;
+			repeated .StoreItem.Trailers.VideoSource trailer_max = 4;
+			repeated .StoreItem.Trailers.VideoSource microtrailer = 5;
+			optional string screenshot_medium = 10 [(description) = "293x165px.  Use trailer_url_format."];
+			optional string screenshot_full = 11 [(description) = "Same size as trailer_max.  Use trailer_url_format."];
+			optional int32 trailer_base_id = 12 [(description) = "Trailer ID.  For localized trailers, this will be the original trailer's ID"];
+		}
+
+		repeated .StoreItem.Trailers.Trailer highlights = 1 [(description) = "Primary trailers for this app"];
+		repeated .StoreItem.Trailers.Trailer other_trailers = 2 [(description) = "Additional trailers; on the app page, these are shown after screenshots (highlights shown before)"];
+	}
+
+	message SupportedLanguage {
+		optional int32 elanguage = 1 [(description) = "ELanguage"];
+		optional bool supported = 2;
+		optional bool full_audio = 3;
+		optional bool subtitles = 4;
+	}
+
+	message FreeWeekend {
+		optional uint32 start_time = 1 [(description) = "When the free weekend starts."];
+		optional uint32 end_time = 2 [(description) = "When the free weekend ends."];
+		optional string text = 3 [(description) = "Text to show as a description of the free weekend."];
+	}
+
+	optional .EStoreItemType item_type = 1 [default = k_EStoreItemType_Invalid];
+	optional uint32 id = 2;
+	optional uint32 success = 3 [(description) = "EResult of this lookup action"];
+	optional bool visible = 4;
+	optional bool unvailable_for_country_restriction = 5 [(description) = "Indicates this app is visible in other regions, but not the requested reagion"];
+	optional string name = 6;
+	optional string store_url_path = 7 [(description) = "The URL of this item's store page, to be appended to STORE_BASE_URL."];
+	optional uint32 appid = 9 [(description) = "If this is an app, or a single-app package, the steamworks appid."];
+	optional .EStoreAppType type = 10 [default = k_EStoreAppType_Game, (description) = "Type of app (Game, Software, Music).  For packages/bundles, this will be the most interesting type (eg Game + Soundtrack bundle will have type Game)"];
+	repeated .EStoreAppType included_types = 11 [(description) = "For packages/bundles, all types of included items"];
+	repeated uint32 included_appids = 12 [(description) = "For packages/bundles, all included appids"];
+	optional bool is_free = 13;
+	optional bool is_early_access = 14;
+	optional .StoreItem.RelatedItems related_items = 15;
+	repeated .EContentDescriptorID content_descriptorids = 20;
+	repeated uint32 tagids = 21;
+	optional .StoreItem.Categories categories = 22;
+	optional .StoreItem.Reviews reviews = 23;
+	optional .StoreItem.BasicInfo basic_info = 24;
+	repeated .StoreItem.Tag tags = 25;
+	optional .StoreItem.Assets assets = 30;
+	optional .StoreItem.ReleaseInfo release = 31;
+	optional .StoreItem.Platforms platforms = 32;
+	optional .StoreGameRating game_rating = 33 [(description) = "Local ratings agency information, like ESRB or PEGI"];
+	optional .StoreItem.PurchaseOption best_purchase_option = 40 [(description) = "The cheapest way for the user to acquire this app or package (may be a bundle)."];
+	repeated .StoreItem.PurchaseOption purchase_options = 41 [(description) = "Different ways to buy this app or packages (packages can be purchased directly, but may also be included in bundles)."];
+	repeated .StoreItem.PurchaseOption accessories = 42 [(description) = "Additional packages or bundles associated with an app, but that do not contain the app."];
+	optional .StoreItem.Screenshots screenshots = 50;
+	optional .StoreItem.Trailers trailers = 51;
+	repeated .StoreItem.SupportedLanguage supported_languages = 52;
+	optional string store_url_path_override = 53 [(description) = "Navigate to this URL (relative to store home) when the store capsule for this item is clicked, instead of the default /app/... URL. Used by advertising apps that point to a sale page."];
+	optional .StoreItem.FreeWeekend free_weekend = 54 [(description) = "Information about a free weekend offer."];
+}
+
+message CStoreBrowse_GetItems_Response {
+	repeated .StoreItem store_items = 1;
+}
+
+message CStoreBrowse_GetStoreCategories_Request {
+	optional string language = 1;
+	optional int32 elanguage = 2 [default = -1, (description) = "ELanguage"];
+}
+
+message CStoreBrowse_GetStoreCategories_Response {
+	message Category {
+		optional uint32 categoryid = 1;
+		optional .EStoreCategoryType type = 2 [default = k_EStoreCategoryType_Category];
+		optional string internal_name = 3;
+		optional string display_name = 4;
+		optional string image_url = 5 [(description) = "Append to STORE_CDN_URL"];
+		optional bool show_in_search = 6 [(description) = "Indicates this category can link to search results showing all items in category."];
+	}
+
+	repeated .CStoreBrowse_GetStoreCategories_Response.Category categories = 1;
+}
+
+service StoreBrowse {
+	option (service_description) = "APIs for accessing store item data";
+
+	rpc GetItems (.CStoreBrowse_GetItems_Request) returns (.CStoreBrowse_GetItems_Response) {
+		option (method_description) = "Get information about items on the store";
+	}
+
+	rpc GetStoreCategories (.CStoreBrowse_GetStoreCategories_Request) returns (.CStoreBrowse_GetStoreCategories_Response) {
+		option (method_description) = "Get category definitions for store.  This is a public-facing API (as compared to StoreCatalog.GetCategories, which is intended for PHP)";
+	}
+}
diff --git a/protobufs/steammessages_timedtrial.proto b/protobufs/steammessages_timedtrial.proto
index cdc8724..4b77b76 100644
--- a/protobufs/steammessages_timedtrial.proto
+++ b/protobufs/steammessages_timedtrial.proto
@@ -1,4 +1,5 @@
 syntax = "proto2";
+import "steammessages_base.proto";
 import "steammessages_unified_base.proto";
 
 option py_generic_services = true;
diff --git a/protobufs/steammessages_twofactor.proto b/protobufs/steammessages_twofactor.proto
index 47bfd32..5022c8b 100644
--- a/protobufs/steammessages_twofactor.proto
+++ b/protobufs/steammessages_twofactor.proto
@@ -1,4 +1,5 @@
 syntax = "proto2";
+import "steammessages_base.proto";
 import "steammessages_unified_base.proto";
 
 option py_generic_services = true;
@@ -31,6 +32,7 @@ message CTwoFactor_AddAuthenticator_Request {
 	optional string device_identifier = 5 [(description) = "Authenticator identifier"];
 	optional string sms_phone_id = 6 [(description) = "ID of phone to use for SMS verification"];
 	repeated string http_headers = 7 [(description) = "HTTP headers alternating by K/V"];
+	optional uint32 version = 8 [default = 1, (description) = "What the version of our token should be"];
 }
 
 message CTwoFactor_AddAuthenticator_Response {
@@ -44,6 +46,7 @@ message CTwoFactor_AddAuthenticator_Response {
 	optional bytes identity_secret = 8 [(description) = "Secret used for identity attestation (e.g., for eventing)"];
 	optional bytes secret_1 = 9 [(description) = "Spare shared secret"];
 	optional int32 status = 10 [(description) = "Result code"];
+	optional string phone_number_hint = 11 [(description) = "a portion of the phone number the SMS code was sent to"];
 }
 
 message CTwoFactor_SendEmail_Request {
@@ -61,6 +64,7 @@ message CTwoFactor_FinalizeAddAuthenticator_Request {
 	optional uint64 authenticator_time = 3 [(description) = "Current authenticator time"];
 	optional string activation_code = 4 [(description) = "Activation code from out-of-band message"];
 	repeated string http_headers = 5 [(description) = "HTTP headers alternating by K/V"];
+	optional bool validate_sms_code = 6 [(description) = "When finalizing with an SMS code, pass the request on to the PhoneService to update its state too."];
 }
 
 message CTwoFactor_FinalizeAddAuthenticator_Response {
@@ -70,6 +74,15 @@ message CTwoFactor_FinalizeAddAuthenticator_Response {
 	optional int32 status = 4 [(description) = "Result code"];
 }
 
+message CTwoFactor_UpdateTokenVersion_Request {
+	optional fixed64 steamid = 1;
+	optional uint32 version = 2 [(description) = "What the version of our token should be"];
+	optional bytes signature = 3 [(description) = "HMAC digest over user's private key"];
+}
+
+message CTwoFactor_UpdateTokenVersion_Response {
+}
+
 message CTwoFactor_RemoveAuthenticator_Request {
 	optional string revocation_code = 2 [(description) = "Password needed to remove token"];
 	optional uint32 revocation_reason = 5 [(description) = "Reason the authenticator is being removed"];
@@ -106,6 +119,38 @@ message CTwoFactor_ValidateToken_Response {
 	optional bool valid = 1 [(description) = "result of validation"];
 }
 
+message CTwoFactor_RemoveAuthenticatorViaChallengeStart_Request {
+}
+
+message CTwoFactor_RemoveAuthenticatorViaChallengeStart_Response {
+	optional bool success = 1 [(description) = "True if succeeded, or want more tries with an authenticator_code"];
+}
+
+message CTwoFactor_RemoveAuthenticatorViaChallengeContinue_Request {
+	optional string sms_code = 1 [(description) = "Code from SMS"];
+	optional bool generate_new_token = 2 [(description) = "Generate new token (instead of removing old one)"];
+}
+
+message CRemoveAuthenticatorViaChallengeContinue_Replacement_Token {
+	optional bytes shared_secret = 1 [(description) = "Shared secret between server and authenticator"];
+	optional fixed64 serial_number = 2 [(description) = "Authenticator serial number (unique per token)"];
+	optional string revocation_code = 3 [(description) = "code used to revoke authenticator"];
+	optional string uri = 4 [(description) = "URI for QR code generation"];
+	optional uint64 server_time = 5 [(description) = "Current server time"];
+	optional string account_name = 6 [(description) = "Account name to display on token client"];
+	optional string token_gid = 7 [(description) = "Token GID assigned by server"];
+	optional bytes identity_secret = 8 [(description) = "Secret used for identity attestation (e.g., for eventing)"];
+	optional bytes secret_1 = 9 [(description) = "Spare shared secret"];
+	optional int32 status = 10 [(description) = "Result code"];
+	optional uint32 steamguard_scheme = 11 [(description) = "Type of Steam Guard to use once token is removed"];
+	optional fixed64 steamid = 12 [(description) = "steamid that owns the secret"];
+}
+
+message CTwoFactor_RemoveAuthenticatorViaChallengeContinue_Response {
+	optional bool success = 1 [(description) = "True if succeeded, or want more tries with an authenticator_code"];
+	optional .CRemoveAuthenticatorViaChallengeContinue_Replacement_Token replacement_token = 2 [(description) = "Fresh secret to install"];
+}
+
 service TwoFactor {
 	option (service_description) = "Two Factor Authentication Service";
 
@@ -125,6 +170,10 @@ service TwoFactor {
 		option (method_description) = "Finalize two-factor authentication addition to the logged-in account";
 	}
 
+	rpc UpdateTokenVersion (.CTwoFactor_UpdateTokenVersion_Request) returns (.CTwoFactor_UpdateTokenVersion_Response) {
+		option (method_description) = "Update the version for my token";
+	}
+
 	rpc RemoveAuthenticator (.CTwoFactor_RemoveAuthenticator_Request) returns (.CTwoFactor_RemoveAuthenticator_Response) {
 		option (method_description) = "Remove two-factor authentication addition from the logged-in account";
 	}
@@ -140,4 +189,12 @@ service TwoFactor {
 	rpc ValidateToken (.CTwoFactor_ValidateToken_Request) returns (.CTwoFactor_ValidateToken_Response) {
 		option (method_description) = "Validate (and consume) a token";
 	}
+
+	rpc RemoveAuthenticatorViaChallengeStart (.CTwoFactor_RemoveAuthenticatorViaChallengeStart_Request) returns (.CTwoFactor_RemoveAuthenticatorViaChallengeStart_Response) {
+		option (method_description) = "Start challenge-based authenticator removal";
+	}
+
+	rpc RemoveAuthenticatorViaChallengeContinue (.CTwoFactor_RemoveAuthenticatorViaChallengeContinue_Request) returns (.CTwoFactor_RemoveAuthenticatorViaChallengeContinue_Response) {
+		option (method_description) = "Continue challenge-based authenticator removal";
+	}
 }
diff --git a/protobufs/steammessages_unified_test.proto b/protobufs/steammessages_unified_test.proto
index 014a65d..ae54760 100644
--- a/protobufs/steammessages_unified_test.proto
+++ b/protobufs/steammessages_unified_test.proto
@@ -1,4 +1,5 @@
 syntax = "proto2";
+import "steammessages_base.proto";
 import "steammessages_unified_base.proto";
 
 option py_generic_services = true;
diff --git a/protobufs/steammessages_useraccount.proto b/protobufs/steammessages_useraccount.proto
index d6636f0..cb51d2c 100644
--- a/protobufs/steammessages_useraccount.proto
+++ b/protobufs/steammessages_useraccount.proto
@@ -1,4 +1,5 @@
 syntax = "proto2";
+import "steammessages_base.proto";
 import "steammessages_unified_base.proto";
 
 option py_generic_services = true;
@@ -43,6 +44,29 @@ message CUserAccount_GetAvailableValveDiscountPromotions_Response {
 	repeated .CUserAccount_GetAvailableValveDiscountPromotions_Response.ValveDiscountPromotionDetails promotions = 1;
 }
 
+message CUserAccount_GetClientWalletDetails_Request {
+	optional bool include_balance_in_usd = 1;
+	optional int32 wallet_region = 2 [default = 1];
+	optional bool include_formatted_balance = 3;
+}
+
+message CUserAccount_GetWalletDetails_Response {
+	optional bool has_wallet = 1;
+	optional string user_country_code = 2;
+	optional string wallet_country_code = 3;
+	optional string wallet_state = 4;
+	optional int64 balance = 5;
+	optional int64 delayed_balance = 6;
+	optional int32 currency_code = 7;
+	optional uint32 time_most_recent_txn = 8;
+	optional uint64 most_recent_txnid = 9;
+	optional int64 balance_in_usd = 10;
+	optional int64 delayed_balance_in_usd = 11;
+	optional bool has_wallet_in_other_regions = 12;
+	repeated int32 other_regions = 13;
+	optional string formatted_balance = 14;
+}
+
 message CUserAccount_GetAccountLinkStatus_Request {
 }
 
@@ -59,6 +83,14 @@ message CUserAccount_CancelLicenseForApp_Request {
 message CUserAccount_CancelLicenseForApp_Response {
 }
 
+message CUserAccount_GetUserCountry_Request {
+	optional fixed64 steamid = 1;
+}
+
+message CUserAccount_GetUserCountry_Response {
+	optional string country = 1;
+}
+
 message CUserAccount_CreateFriendInviteToken_Request {
 	optional uint32 invite_limit = 1;
 	optional uint32 invite_duration = 2;
@@ -160,6 +192,10 @@ service UserAccount {
 		option (method_description) = "Gets the available promotional discounts available to the user";
 	}
 
+	rpc GetClientWalletDetails (.CUserAccount_GetClientWalletDetails_Request) returns (.CUserAccount_GetWalletDetails_Response) {
+		option (method_description) = "Returns balance and details about any users wallet";
+	}
+
 	rpc GetAccountLinkStatus (.CUserAccount_GetAccountLinkStatus_Request) returns (.CUserAccount_GetAccountLinkStatus_Response) {
 		option (method_description) = "Fetches account link status";
 	}
@@ -168,6 +204,10 @@ service UserAccount {
 		option (method_description) = "Cancels a free license for a user";
 	}
 
+	rpc GetUserCountry (.CUserAccount_GetUserCountry_Request) returns (.CUserAccount_GetUserCountry_Response) {
+		option (method_description) = "Get the country code associated with the passed steamid (only available for logged-in user or support)";
+	}
+
 	rpc CreateFriendInviteToken (.CUserAccount_CreateFriendInviteToken_Request) returns (.CUserAccount_CreateFriendInviteToken_Response) {
 		option (method_description) = "Create a limited-use token that can be used to create a friend request";
 	}
diff --git a/protobufs/steammessages_video.proto b/protobufs/steammessages_video.proto
index bd33673..a4fae87 100644
--- a/protobufs/steammessages_video.proto
+++ b/protobufs/steammessages_video.proto
@@ -1,4 +1,5 @@
 syntax = "proto2";
+import "steammessages_base.proto";
 import "steammessages_unified_base.proto";
 
 option py_generic_services = true;
diff --git a/protobufs/steammessages_workshop.proto b/protobufs/steammessages_workshop.proto
new file mode 100644
index 0000000..b4009ed
--- /dev/null
+++ b/protobufs/steammessages_workshop.proto
@@ -0,0 +1,24 @@
+syntax = "proto2";
+import "steammessages_base.proto";
+import "steammessages_unified_base.proto";
+
+option py_generic_services = true;
+
+message CWorkshop_GetEULAStatus_Request {
+	optional uint32 appid = 1;
+}
+
+message CWorkshop_GetEULAStatus_Response {
+	optional uint32 version = 1;
+	optional uint32 timestamp_action = 2;
+	optional bool accepted = 3;
+	optional bool needs_action = 4;
+}
+
+service Workshop {
+	option (service_description) = "A service to access published file data";
+
+	rpc GetEULAStatus (.CWorkshop_GetEULAStatus_Request) returns (.CWorkshop_GetEULAStatus_Response) {
+		option (method_description) = "Retrieve the status of the user's EULA acceptance.";
+	}
+}
diff --git a/steam/core/msg/unified.py b/steam/core/msg/unified.py
index 48b53a2..6d52c24 100644
--- a/steam/core/msg/unified.py
+++ b/steam/core/msg/unified.py
@@ -2,6 +2,9 @@ import re
 from importlib import import_module
 
 service_lookup = {  # MARK_SERVICE_START
+    'Authentication':                   'steam.protobufs.steammessages_auth_pb2',
+    'AuthenticationSupport':            'steam.protobufs.steammessages_auth_pb2',
+    'CloudGaming':                      'steam.protobufs.steammessages_auth_pb2',
     'Broadcast':                        'steam.protobufs.steammessages_broadcast_pb2',
     'BroadcastClient':                  'steam.protobufs.steammessages_broadcast_pb2',
     'Chat':                             'steam.protobufs.steammessages_chat_pb2',
@@ -24,10 +27,12 @@ service_lookup = {  # MARK_SERVICE_START
     'GameNotifications':                'steam.protobufs.steammessages_gamenotifications_pb2',
     'GameNotificationsClient':          'steam.protobufs.steammessages_gamenotifications_pb2',
     'GameServers':                      'steam.protobufs.steammessages_gameservers_pb2',
+    'GameServerClient':                 'steam.protobufs.steammessages_gameservers_pb2',
     'Inventory':                        'steam.protobufs.steammessages_inventory_pb2',
     'InventoryClient':                  'steam.protobufs.steammessages_inventory_pb2',
     'CommunityLinkFilter':              'steam.protobufs.steammessages_linkfilter_pb2',
     'LobbyMatchmakingLegacy':           'steam.protobufs.steammessages_lobbymatchmaking_pb2',
+    'MarketingMessages':                'steam.protobufs.steammessages_marketingmessages_pb2',
     'EconMarket':                       'steam.protobufs.steammessages_market_pb2',
     'Offline':                          'steam.protobufs.steammessages_offline_pb2',
     'Parental':                         'steam.protobufs.steammessages_parental_pb2',
@@ -45,6 +50,9 @@ service_lookup = {  # MARK_SERVICE_START
     'Shader':                           'steam.protobufs.steammessages_shader_pb2',
     'SiteManagerClient':                'steam.protobufs.steammessages_site_license_pb2',
     'SiteLicense':                      'steam.protobufs.steammessages_site_license_pb2',
+    'STAR':                             'steam.protobufs.steammessages_star_pb2',
+    'SteamTV':                          'steam.protobufs.steammessages_steamtv_pb2',
+    'StoreBrowse':                      'steam.protobufs.steammessages_storebrowse_pb2',
     'Store':                            'steam.protobufs.steammessages_store_pb2',
     'StoreClient':                      'steam.protobufs.steammessages_store_pb2',
     'TimedTrial':                       'steam.protobufs.steammessages_timedtrial_pb2',
@@ -69,6 +77,7 @@ service_lookup = {  # MARK_SERVICE_START
     'WebRTCClientNotifications':        'steam.protobufs.steammessages_webui_friends_pb2',
     'MobilePerAccount':                 'steam.protobufs.steammessages_webui_friends_pb2',
     'MobileDevice':                     'steam.protobufs.steammessages_webui_friends_pb2',
+    'Workshop':                         'steam.protobufs.steammessages_workshop_pb2',
 }  # MARK_SERVICE_END
 
 method_lookup = {}
diff --git a/steam/protobufs/content_manifest_pb2.py b/steam/protobufs/content_manifest_pb2.py
index 81084f1..36b87d5 100644
--- a/steam/protobufs/content_manifest_pb2.py
+++ b/steam/protobufs/content_manifest_pb2.py
@@ -1,9 +1,7 @@
 # -*- coding: utf-8 -*-
 # Generated by the protocol buffer compiler.  DO NOT EDIT!
 # source: content_manifest.proto
-
-import sys
-_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1'))
+"""Generated protocol buffer code."""
 from google.protobuf.internal import enum_type_wrapper
 from google.protobuf import descriptor as _descriptor
 from google.protobuf import message as _message
@@ -20,8 +18,9 @@ DESCRIPTOR = _descriptor.FileDescriptor(
   name='content_manifest.proto',
   package='',
   syntax='proto2',
-  serialized_options=_b('H\001\220\001\000'),
-  serialized_pb=_b('\n\x16\x63ontent_manifest.proto\"\xef\x02\n\x16\x43ontentManifestPayload\x12\x35\n\x08mappings\x18\x01 \x03(\x0b\x32#.ContentManifestPayload.FileMapping\x1a\x9d\x02\n\x0b\x46ileMapping\x12\x10\n\x08\x66ilename\x18\x01 \x01(\t\x12\x0c\n\x04size\x18\x02 \x01(\x04\x12\r\n\x05\x66lags\x18\x03 \x01(\r\x12\x14\n\x0csha_filename\x18\x04 \x01(\x0c\x12\x13\n\x0bsha_content\x18\x05 \x01(\x0c\x12=\n\x06\x63hunks\x18\x06 \x03(\x0b\x32-.ContentManifestPayload.FileMapping.ChunkData\x12\x12\n\nlinktarget\x18\x07 \x01(\t\x1a\x61\n\tChunkData\x12\x0b\n\x03sha\x18\x01 \x01(\x0c\x12\x0b\n\x03\x63rc\x18\x02 \x01(\x07\x12\x0e\n\x06offset\x18\x03 \x01(\x04\x12\x13\n\x0b\x63\x62_original\x18\x04 \x01(\r\x12\x15\n\rcb_compressed\x18\x05 \x01(\r\"\xec\x01\n\x17\x43ontentManifestMetadata\x12\x10\n\x08\x64\x65pot_id\x18\x01 \x01(\r\x12\x14\n\x0cgid_manifest\x18\x02 \x01(\x04\x12\x15\n\rcreation_time\x18\x03 \x01(\r\x12\x1b\n\x13\x66ilenames_encrypted\x18\x04 \x01(\x08\x12\x18\n\x10\x63\x62_disk_original\x18\x05 \x01(\x04\x12\x1a\n\x12\x63\x62_disk_compressed\x18\x06 \x01(\x04\x12\x15\n\runique_chunks\x18\x07 \x01(\r\x12\x15\n\rcrc_encrypted\x18\x08 \x01(\r\x12\x11\n\tcrc_clear\x18\t \x01(\r\"-\n\x18\x43ontentManifestSignature\x12\x11\n\tsignature\x18\x01 \x01(\x0c\"\x84\x03\n\x12\x43ontentDeltaChunks\x12\x10\n\x08\x64\x65pot_id\x18\x01 \x01(\r\x12\x1a\n\x12manifest_id_source\x18\x02 \x01(\x04\x12\x1a\n\x12manifest_id_target\x18\x03 \x01(\x04\x12\x33\n\x0b\x64\x65ltaChunks\x18\x04 \x03(\x0b\x32\x1e.ContentDeltaChunks.DeltaChunk\x12h\n\x13\x63hunk_data_location\x18\x05 \x01(\x0e\x32\x1f.EContentDeltaChunkDataLocation:*k_EContentDeltaChunkDataLocationInProtobuf\x1a\x84\x01\n\nDeltaChunk\x12\x12\n\nsha_source\x18\x01 \x01(\x0c\x12\x12\n\nsha_target\x18\x02 \x01(\x0c\x12\x15\n\rsize_original\x18\x03 \x01(\r\x12\x14\n\x0cpatch_method\x18\x04 \x01(\r\x12\r\n\x05\x63hunk\x18\x05 \x01(\x0c\x12\x12\n\nsize_delta\x18\x06 \x01(\r*\x83\x01\n\x1e\x45\x43ontentDeltaChunkDataLocation\x12.\n*k_EContentDeltaChunkDataLocationInProtobuf\x10\x00\x12\x31\n-k_EContentDeltaChunkDataLocationAfterProtobuf\x10\x01\x42\x05H\x01\x90\x01\x00')
+  serialized_options=b'H\001\220\001\000',
+  create_key=_descriptor._internal_create_key,
+  serialized_pb=b'\n\x16\x63ontent_manifest.proto\"\xef\x02\n\x16\x43ontentManifestPayload\x12\x35\n\x08mappings\x18\x01 \x03(\x0b\x32#.ContentManifestPayload.FileMapping\x1a\x9d\x02\n\x0b\x46ileMapping\x12\x10\n\x08\x66ilename\x18\x01 \x01(\t\x12\x0c\n\x04size\x18\x02 \x01(\x04\x12\r\n\x05\x66lags\x18\x03 \x01(\r\x12\x14\n\x0csha_filename\x18\x04 \x01(\x0c\x12\x13\n\x0bsha_content\x18\x05 \x01(\x0c\x12=\n\x06\x63hunks\x18\x06 \x03(\x0b\x32-.ContentManifestPayload.FileMapping.ChunkData\x12\x12\n\nlinktarget\x18\x07 \x01(\t\x1a\x61\n\tChunkData\x12\x0b\n\x03sha\x18\x01 \x01(\x0c\x12\x0b\n\x03\x63rc\x18\x02 \x01(\x07\x12\x0e\n\x06offset\x18\x03 \x01(\x04\x12\x13\n\x0b\x63\x62_original\x18\x04 \x01(\r\x12\x15\n\rcb_compressed\x18\x05 \x01(\r\"\xec\x01\n\x17\x43ontentManifestMetadata\x12\x10\n\x08\x64\x65pot_id\x18\x01 \x01(\r\x12\x14\n\x0cgid_manifest\x18\x02 \x01(\x04\x12\x15\n\rcreation_time\x18\x03 \x01(\r\x12\x1b\n\x13\x66ilenames_encrypted\x18\x04 \x01(\x08\x12\x18\n\x10\x63\x62_disk_original\x18\x05 \x01(\x04\x12\x1a\n\x12\x63\x62_disk_compressed\x18\x06 \x01(\x04\x12\x15\n\runique_chunks\x18\x07 \x01(\r\x12\x15\n\rcrc_encrypted\x18\x08 \x01(\r\x12\x11\n\tcrc_clear\x18\t \x01(\r\"-\n\x18\x43ontentManifestSignature\x12\x11\n\tsignature\x18\x01 \x01(\x0c\"\x84\x03\n\x12\x43ontentDeltaChunks\x12\x10\n\x08\x64\x65pot_id\x18\x01 \x01(\r\x12\x1a\n\x12manifest_id_source\x18\x02 \x01(\x04\x12\x1a\n\x12manifest_id_target\x18\x03 \x01(\x04\x12\x33\n\x0b\x64\x65ltaChunks\x18\x04 \x03(\x0b\x32\x1e.ContentDeltaChunks.DeltaChunk\x12h\n\x13\x63hunk_data_location\x18\x05 \x01(\x0e\x32\x1f.EContentDeltaChunkDataLocation:*k_EContentDeltaChunkDataLocationInProtobuf\x1a\x84\x01\n\nDeltaChunk\x12\x12\n\nsha_source\x18\x01 \x01(\x0c\x12\x12\n\nsha_target\x18\x02 \x01(\x0c\x12\x15\n\rsize_original\x18\x03 \x01(\r\x12\x14\n\x0cpatch_method\x18\x04 \x01(\r\x12\r\n\x05\x63hunk\x18\x05 \x01(\x0c\x12\x12\n\nsize_delta\x18\x06 \x01(\r*\x83\x01\n\x1e\x45\x43ontentDeltaChunkDataLocation\x12.\n*k_EContentDeltaChunkDataLocationInProtobuf\x10\x00\x12\x31\n-k_EContentDeltaChunkDataLocationAfterProtobuf\x10\x01\x42\x05H\x01\x90\x01\x00'
 )
 
 _ECONTENTDELTACHUNKDATALOCATION = _descriptor.EnumDescriptor(
@@ -29,15 +28,18 @@ _ECONTENTDELTACHUNKDATALOCATION = _descriptor.EnumDescriptor(
   full_name='EContentDeltaChunkDataLocation',
   filename=None,
   file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
   values=[
     _descriptor.EnumValueDescriptor(
       name='k_EContentDeltaChunkDataLocationInProtobuf', index=0, number=0,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EContentDeltaChunkDataLocationAfterProtobuf', index=1, number=1,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
   ],
   containing_type=None,
   serialized_options=None,
@@ -58,42 +60,43 @@ _CONTENTMANIFESTPAYLOAD_FILEMAPPING_CHUNKDATA = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='sha', full_name='ContentManifestPayload.FileMapping.ChunkData.sha', index=0,
       number=1, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='crc', full_name='ContentManifestPayload.FileMapping.ChunkData.crc', index=1,
       number=2, type=7, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='offset', full_name='ContentManifestPayload.FileMapping.ChunkData.offset', index=2,
       number=3, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='cb_original', full_name='ContentManifestPayload.FileMapping.ChunkData.cb_original', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='cb_compressed', full_name='ContentManifestPayload.FileMapping.ChunkData.cb_compressed', index=4,
       number=5, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -116,56 +119,57 @@ _CONTENTMANIFESTPAYLOAD_FILEMAPPING = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='filename', full_name='ContentManifestPayload.FileMapping.filename', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='size', full_name='ContentManifestPayload.FileMapping.size', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='flags', full_name='ContentManifestPayload.FileMapping.flags', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='sha_filename', full_name='ContentManifestPayload.FileMapping.sha_filename', index=3,
       number=4, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='sha_content', full_name='ContentManifestPayload.FileMapping.sha_content', index=4,
       number=5, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='chunks', full_name='ContentManifestPayload.FileMapping.chunks', index=5,
       number=6, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='linktarget', full_name='ContentManifestPayload.FileMapping.linktarget', index=6,
       number=7, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -188,6 +192,7 @@ _CONTENTMANIFESTPAYLOAD = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='mappings', full_name='ContentManifestPayload.mappings', index=0,
@@ -195,7 +200,7 @@ _CONTENTMANIFESTPAYLOAD = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -219,6 +224,7 @@ _CONTENTMANIFESTMETADATA = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='depot_id', full_name='ContentManifestMetadata.depot_id', index=0,
@@ -226,63 +232,63 @@ _CONTENTMANIFESTMETADATA = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='gid_manifest', full_name='ContentManifestMetadata.gid_manifest', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='creation_time', full_name='ContentManifestMetadata.creation_time', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='filenames_encrypted', full_name='ContentManifestMetadata.filenames_encrypted', index=3,
       number=4, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='cb_disk_original', full_name='ContentManifestMetadata.cb_disk_original', index=4,
       number=5, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='cb_disk_compressed', full_name='ContentManifestMetadata.cb_disk_compressed', index=5,
       number=6, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='unique_chunks', full_name='ContentManifestMetadata.unique_chunks', index=6,
       number=7, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='crc_encrypted', full_name='ContentManifestMetadata.crc_encrypted', index=7,
       number=8, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='crc_clear', full_name='ContentManifestMetadata.crc_clear', index=8,
       number=9, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -306,14 +312,15 @@ _CONTENTMANIFESTSIGNATURE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='signature', full_name='ContentManifestSignature.signature', index=0,
       number=1, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -337,49 +344,50 @@ _CONTENTDELTACHUNKS_DELTACHUNK = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='sha_source', full_name='ContentDeltaChunks.DeltaChunk.sha_source', index=0,
       number=1, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='sha_target', full_name='ContentDeltaChunks.DeltaChunk.sha_target', index=1,
       number=2, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='size_original', full_name='ContentDeltaChunks.DeltaChunk.size_original', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='patch_method', full_name='ContentDeltaChunks.DeltaChunk.patch_method', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='chunk', full_name='ContentDeltaChunks.DeltaChunk.chunk', index=4,
       number=5, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='size_delta', full_name='ContentDeltaChunks.DeltaChunk.size_delta', index=5,
       number=6, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -402,6 +410,7 @@ _CONTENTDELTACHUNKS = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='depot_id', full_name='ContentDeltaChunks.depot_id', index=0,
@@ -409,35 +418,35 @@ _CONTENTDELTACHUNKS = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='manifest_id_source', full_name='ContentDeltaChunks.manifest_id_source', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='manifest_id_target', full_name='ContentDeltaChunks.manifest_id_target', index=2,
       number=3, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='deltaChunks', full_name='ContentDeltaChunks.deltaChunks', index=3,
       number=4, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='chunk_data_location', full_name='ContentDeltaChunks.chunk_data_location', index=4,
       number=5, type=14, cpp_type=8, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -468,55 +477,55 @@ DESCRIPTOR.message_types_by_name['ContentDeltaChunks'] = _CONTENTDELTACHUNKS
 DESCRIPTOR.enum_types_by_name['EContentDeltaChunkDataLocation'] = _ECONTENTDELTACHUNKDATALOCATION
 _sym_db.RegisterFileDescriptor(DESCRIPTOR)
 
-ContentManifestPayload = _reflection.GeneratedProtocolMessageType('ContentManifestPayload', (_message.Message,), dict(
+ContentManifestPayload = _reflection.GeneratedProtocolMessageType('ContentManifestPayload', (_message.Message,), {
 
-  FileMapping = _reflection.GeneratedProtocolMessageType('FileMapping', (_message.Message,), dict(
+  'FileMapping' : _reflection.GeneratedProtocolMessageType('FileMapping', (_message.Message,), {
 
-    ChunkData = _reflection.GeneratedProtocolMessageType('ChunkData', (_message.Message,), dict(
-      DESCRIPTOR = _CONTENTMANIFESTPAYLOAD_FILEMAPPING_CHUNKDATA,
-      __module__ = 'content_manifest_pb2'
+    'ChunkData' : _reflection.GeneratedProtocolMessageType('ChunkData', (_message.Message,), {
+      'DESCRIPTOR' : _CONTENTMANIFESTPAYLOAD_FILEMAPPING_CHUNKDATA,
+      '__module__' : 'content_manifest_pb2'
       # @@protoc_insertion_point(class_scope:ContentManifestPayload.FileMapping.ChunkData)
-      ))
+      })
     ,
-    DESCRIPTOR = _CONTENTMANIFESTPAYLOAD_FILEMAPPING,
-    __module__ = 'content_manifest_pb2'
+    'DESCRIPTOR' : _CONTENTMANIFESTPAYLOAD_FILEMAPPING,
+    '__module__' : 'content_manifest_pb2'
     # @@protoc_insertion_point(class_scope:ContentManifestPayload.FileMapping)
-    ))
+    })
   ,
-  DESCRIPTOR = _CONTENTMANIFESTPAYLOAD,
-  __module__ = 'content_manifest_pb2'
+  'DESCRIPTOR' : _CONTENTMANIFESTPAYLOAD,
+  '__module__' : 'content_manifest_pb2'
   # @@protoc_insertion_point(class_scope:ContentManifestPayload)
-  ))
+  })
 _sym_db.RegisterMessage(ContentManifestPayload)
 _sym_db.RegisterMessage(ContentManifestPayload.FileMapping)
 _sym_db.RegisterMessage(ContentManifestPayload.FileMapping.ChunkData)
 
-ContentManifestMetadata = _reflection.GeneratedProtocolMessageType('ContentManifestMetadata', (_message.Message,), dict(
-  DESCRIPTOR = _CONTENTMANIFESTMETADATA,
-  __module__ = 'content_manifest_pb2'
+ContentManifestMetadata = _reflection.GeneratedProtocolMessageType('ContentManifestMetadata', (_message.Message,), {
+  'DESCRIPTOR' : _CONTENTMANIFESTMETADATA,
+  '__module__' : 'content_manifest_pb2'
   # @@protoc_insertion_point(class_scope:ContentManifestMetadata)
-  ))
+  })
 _sym_db.RegisterMessage(ContentManifestMetadata)
 
-ContentManifestSignature = _reflection.GeneratedProtocolMessageType('ContentManifestSignature', (_message.Message,), dict(
-  DESCRIPTOR = _CONTENTMANIFESTSIGNATURE,
-  __module__ = 'content_manifest_pb2'
+ContentManifestSignature = _reflection.GeneratedProtocolMessageType('ContentManifestSignature', (_message.Message,), {
+  'DESCRIPTOR' : _CONTENTMANIFESTSIGNATURE,
+  '__module__' : 'content_manifest_pb2'
   # @@protoc_insertion_point(class_scope:ContentManifestSignature)
-  ))
+  })
 _sym_db.RegisterMessage(ContentManifestSignature)
 
-ContentDeltaChunks = _reflection.GeneratedProtocolMessageType('ContentDeltaChunks', (_message.Message,), dict(
+ContentDeltaChunks = _reflection.GeneratedProtocolMessageType('ContentDeltaChunks', (_message.Message,), {
 
-  DeltaChunk = _reflection.GeneratedProtocolMessageType('DeltaChunk', (_message.Message,), dict(
-    DESCRIPTOR = _CONTENTDELTACHUNKS_DELTACHUNK,
-    __module__ = 'content_manifest_pb2'
+  'DeltaChunk' : _reflection.GeneratedProtocolMessageType('DeltaChunk', (_message.Message,), {
+    'DESCRIPTOR' : _CONTENTDELTACHUNKS_DELTACHUNK,
+    '__module__' : 'content_manifest_pb2'
     # @@protoc_insertion_point(class_scope:ContentDeltaChunks.DeltaChunk)
-    ))
+    })
   ,
-  DESCRIPTOR = _CONTENTDELTACHUNKS,
-  __module__ = 'content_manifest_pb2'
+  'DESCRIPTOR' : _CONTENTDELTACHUNKS,
+  '__module__' : 'content_manifest_pb2'
   # @@protoc_insertion_point(class_scope:ContentDeltaChunks)
-  ))
+  })
 _sym_db.RegisterMessage(ContentDeltaChunks)
 _sym_db.RegisterMessage(ContentDeltaChunks.DeltaChunk)
 
diff --git a/steam/protobufs/encrypted_app_ticket_pb2.py b/steam/protobufs/encrypted_app_ticket_pb2.py
index 7f007d4..6e71f2c 100644
--- a/steam/protobufs/encrypted_app_ticket_pb2.py
+++ b/steam/protobufs/encrypted_app_ticket_pb2.py
@@ -1,9 +1,7 @@
 # -*- coding: utf-8 -*-
 # Generated by the protocol buffer compiler.  DO NOT EDIT!
 # source: encrypted_app_ticket.proto
-
-import sys
-_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1'))
+"""Generated protocol buffer code."""
 from google.protobuf import descriptor as _descriptor
 from google.protobuf import message as _message
 from google.protobuf import reflection as _reflection
@@ -19,8 +17,9 @@ DESCRIPTOR = _descriptor.FileDescriptor(
   name='encrypted_app_ticket.proto',
   package='',
   syntax='proto2',
-  serialized_options=_b('H\001\220\001\000'),
-  serialized_pb=_b('\n\x1a\x65ncrypted_app_ticket.proto\"\xad\x01\n\x12\x45ncryptedAppTicket\x12\x19\n\x11ticket_version_no\x18\x01 \x01(\r\x12\x1b\n\x13\x63rc_encryptedticket\x18\x02 \x01(\r\x12\x1c\n\x14\x63\x62_encrypteduserdata\x18\x03 \x01(\r\x12\'\n\x1f\x63\x62_encrypted_appownershipticket\x18\x04 \x01(\r\x12\x18\n\x10\x65ncrypted_ticket\x18\x05 \x01(\x0c\x42\x05H\x01\x90\x01\x00')
+  serialized_options=b'H\001\220\001\000',
+  create_key=_descriptor._internal_create_key,
+  serialized_pb=b'\n\x1a\x65ncrypted_app_ticket.proto\"\xad\x01\n\x12\x45ncryptedAppTicket\x12\x19\n\x11ticket_version_no\x18\x01 \x01(\r\x12\x1b\n\x13\x63rc_encryptedticket\x18\x02 \x01(\r\x12\x1c\n\x14\x63\x62_encrypteduserdata\x18\x03 \x01(\r\x12\'\n\x1f\x63\x62_encrypted_appownershipticket\x18\x04 \x01(\r\x12\x18\n\x10\x65ncrypted_ticket\x18\x05 \x01(\x0c\x42\x05H\x01\x90\x01\x00'
 )
 
 
@@ -32,6 +31,7 @@ _ENCRYPTEDAPPTICKET = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='ticket_version_no', full_name='EncryptedAppTicket.ticket_version_no', index=0,
@@ -39,35 +39,35 @@ _ENCRYPTEDAPPTICKET = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='crc_encryptedticket', full_name='EncryptedAppTicket.crc_encryptedticket', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='cb_encrypteduserdata', full_name='EncryptedAppTicket.cb_encrypteduserdata', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='cb_encrypted_appownershipticket', full_name='EncryptedAppTicket.cb_encrypted_appownershipticket', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='encrypted_ticket', full_name='EncryptedAppTicket.encrypted_ticket', index=4,
       number=5, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -87,11 +87,11 @@ _ENCRYPTEDAPPTICKET = _descriptor.Descriptor(
 DESCRIPTOR.message_types_by_name['EncryptedAppTicket'] = _ENCRYPTEDAPPTICKET
 _sym_db.RegisterFileDescriptor(DESCRIPTOR)
 
-EncryptedAppTicket = _reflection.GeneratedProtocolMessageType('EncryptedAppTicket', (_message.Message,), dict(
-  DESCRIPTOR = _ENCRYPTEDAPPTICKET,
-  __module__ = 'encrypted_app_ticket_pb2'
+EncryptedAppTicket = _reflection.GeneratedProtocolMessageType('EncryptedAppTicket', (_message.Message,), {
+  'DESCRIPTOR' : _ENCRYPTEDAPPTICKET,
+  '__module__' : 'encrypted_app_ticket_pb2'
   # @@protoc_insertion_point(class_scope:EncryptedAppTicket)
-  ))
+  })
 _sym_db.RegisterMessage(EncryptedAppTicket)
 
 
diff --git a/steam/protobufs/enums_clientserver_pb2.py b/steam/protobufs/enums_clientserver_pb2.py
index 8b35c92..07aa293 100644
--- a/steam/protobufs/enums_clientserver_pb2.py
+++ b/steam/protobufs/enums_clientserver_pb2.py
@@ -1,9 +1,7 @@
 # -*- coding: utf-8 -*-
 # Generated by the protocol buffer compiler.  DO NOT EDIT!
 # source: enums_clientserver.proto
-
-import sys
-_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1'))
+"""Generated protocol buffer code."""
 from google.protobuf.internal import enum_type_wrapper
 from google.protobuf import descriptor as _descriptor
 from google.protobuf import message as _message
@@ -20,8 +18,9 @@ DESCRIPTOR = _descriptor.FileDescriptor(
   name='enums_clientserver.proto',
   package='',
   syntax='proto2',
-  serialized_options=_b('H\001\220\001\000'),
-  serialized_pb=_b('\n\x18\x65nums_clientserver.proto*\xfe\x9e\x03\n\x04\x45Msg\x12\x11\n\rk_EMsgInvalid\x10\x00\x12\x0f\n\x0bk_EMsgMulti\x10\x01\x12\x19\n\x15k_EMsgProtobufWrapped\x10\x02\x12\x15\n\x11k_EMsgBaseGeneral\x10\x64\x12\x16\n\x12k_EMsgGenericReply\x10\x64\x12\x17\n\x13k_EMsgDestJobFailed\x10q\x12\x0f\n\x0bk_EMsgAlert\x10s\x12\x15\n\x11k_EMsgSCIDRequest\x10x\x12\x16\n\x12k_EMsgSCIDResponse\x10y\x12\x16\n\x12k_EMsgJobHeartbeat\x10{\x12\x14\n\x10k_EMsgHubConnect\x10|\x12\x13\n\x0fk_EMsgSubscribe\x10~\x12\x14\n\x10k_EMRouteMessage\x10\x7f\x12\x14\n\x0fk_EMsgWGRequest\x10\x82\x01\x12\x15\n\x10k_EMsgWGResponse\x10\x83\x01\x12\x14\n\x0fk_EMsgKeepAlive\x10\x84\x01\x12\x1b\n\x16k_EMsgWebAPIJobRequest\x10\x85\x01\x12\x1c\n\x17k_EMsgWebAPIJobResponse\x10\x86\x01\x12\x1d\n\x18k_EMsgClientSessionStart\x10\x87\x01\x12\x1b\n\x16k_EMsgClientSessionEnd\x10\x88\x01\x12\x1e\n\x19k_EMsgClientSessionUpdate\x10\x89\x01\x12\x1a\n\x15k_EMsgStatsDeprecated\x10\x8a\x01\x12\x0f\n\nk_EMsgPing\x10\x8b\x01\x12\x17\n\x12k_EMsgPingResponse\x10\x8c\x01\x12\x10\n\x0bk_EMsgStats\x10\x8d\x01\x12 \n\x1bk_EMsgRequestFullStatsBlock\x10\x8e\x01\x12\x1b\n\x16k_EMsgLoadDBOCacheItem\x10\x8f\x01\x12#\n\x1ek_EMsgLoadDBOCacheItemResponse\x10\x90\x01\x12\"\n\x1dk_EMsgInvalidateDBOCacheItems\x10\x91\x01\x12\x18\n\x13k_EMsgServiceMethod\x10\x92\x01\x12 \n\x1bk_EMsgServiceMethodResponse\x10\x93\x01\x12 \n\x1bk_EMsgClientPackageVersions\x10\x94\x01\x12\x1b\n\x16k_EMsgTimestampRequest\x10\x95\x01\x12\x1c\n\x17k_EMsgTimestampResponse\x10\x96\x01\x12&\n!k_EMsgServiceMethodCallFromClient\x10\x97\x01\x12$\n\x1fk_EMsgServiceMethodSendToClient\x10\x98\x01\x12\x14\n\x0fk_EMsgBaseShell\x10\xc8\x01\x12\x16\n\x11k_EMsgAssignSysID\x10\xc8\x01\x12\x0f\n\nk_EMsgExit\x10\xc9\x01\x12\x15\n\x10k_EMsgDirRequest\x10\xca\x01\x12\x16\n\x11k_EMsgDirResponse\x10\xcb\x01\x12\x15\n\x10k_EMsgZipRequest\x10\xcc\x01\x12\x16\n\x11k_EMsgZipResponse\x10\xcd\x01\x12\x1f\n\x1ak_EMsgUpdateRecordResponse\x10\xd7\x01\x12\"\n\x1dk_EMsgUpdateCreditCardRequest\x10\xdd\x01\x12 \n\x1bk_EMsgUpdateUserBanResponse\x10\xe1\x01\x12\x18\n\x13k_EMsgPrepareToExit\x10\xe2\x01\x12#\n\x1ek_EMsgContentDescriptionUpdate\x10\xe3\x01\x12\x1a\n\x15k_EMsgTestResetServer\x10\xe4\x01\x12\x1a\n\x15k_EMsgUniverseChanged\x10\xe5\x01\x12 \n\x1bk_EMsgShellConfigInfoUpdate\x10\xe6\x01\x12(\n#k_EMsgRequestWindowsEventLogEntries\x10\xe9\x01\x12(\n#k_EMsgProvideWindowsEventLogEntries\x10\xea\x01\x12\x1a\n\x15k_EMsgShellSearchLogs\x10\xeb\x01\x12\"\n\x1dk_EMsgShellSearchLogsResponse\x10\xec\x01\x12#\n\x1ek_EMsgShellCheckWindowsUpdates\x10\xed\x01\x12+\n&k_EMsgShellCheckWindowsUpdatesResponse\x10\xee\x01\x12\x1e\n\x19k_EMsgTestFlushDelayedSQL\x10\xf0\x01\x12&\n!k_EMsgTestFlushDelayedSQLResponse\x10\xf1\x01\x12*\n%k_EMsgEnsureExecuteScheduledTask_TEST\x10\xf2\x01\x12\x32\n-k_EMsgEnsureExecuteScheduledTaskResponse_TEST\x10\xf3\x01\x12.\n)k_EMsgUpdateScheduledTaskEnableState_TEST\x10\xf4\x01\x12\x36\n1k_EMsgUpdateScheduledTaskEnableStateResponse_TEST\x10\xf5\x01\x12(\n#k_EMsgContentDescriptionDeltaUpdate\x10\xf6\x01\x12)\n$k_EMsgGMShellAndServerAddressUpdates\x10\xf7\x01\x12\x11\n\x0ck_EMsgBaseGM\x10\xac\x02\x12\x14\n\x0fk_EMsgHeartbeat\x10\xac\x02\x12\x16\n\x11k_EMsgShellFailed\x10\xad\x02\x12\x15\n\x10k_EMsgExitShells\x10\xb3\x02\x12\x14\n\x0fk_EMsgExitShell\x10\xb4\x02\x12\x1c\n\x17k_EMsgGracefulExitShell\x10\xb5\x02\x12$\n\x1fk_EMsgLicenseProcessingComplete\x10\xbc\x02\x12\x16\n\x11k_EMsgSetTestFlag\x10\xbd\x02\x12\x1f\n\x1ak_EMsgQueuedEmailsComplete\x10\xbe\x02\x12\x1b\n\x16k_EMsgGMReportPHPError\x10\xbf\x02\x12\x14\n\x0fk_EMsgGMDRMSync\x10\xc0\x02\x12\x1f\n\x1ak_EMsgPhysicalBoxInventory\x10\xc1\x02\x12\x1b\n\x16k_EMsgUpdateConfigFile\x10\xc2\x02\x12\x15\n\x10k_EMsgTestInitDB\x10\xc3\x02\x12\x1d\n\x18k_EMsgGMWriteConfigToSQL\x10\xc4\x02\x12 \n\x1bk_EMsgGMLoadActivationCodes\x10\xc5\x02\x12\x18\n\x13k_EMsgGMQueueForFBS\x10\xc6\x02\x12$\n\x1fk_EMsgGMSchemaConversionResults\x10\xc7\x02\x12#\n\x1ek_EMsgGMWriteShellFailureToSQL\x10\xc9\x02\x12\x1c\n\x17k_EMsgGMWriteStatsToSOS\x10\xca\x02\x12$\n\x1fk_EMsgGMGetServiceMethodRouting\x10\xcb\x02\x12,\n\'k_EMsgGMGetServiceMethodRoutingResponse\x10\xcc\x02\x12*\n%k_EMsgGMTestNextBuildSchemaConversion\x10\xce\x02\x12\x32\n-k_EMsgGMTestNextBuildSchemaConversionResponse\x10\xcf\x02\x12\x1d\n\x18k_EMsgExpectShellRestart\x10\xd0\x02\x12\x19\n\x14k_EMsgHotFixProgress\x10\xd1\x02\x12+\n&k_EMsgGMStatsForwardToAdminConnections\x10\xd2\x02\x12\x12\n\rk_EMsgBaseAIS\x10\x90\x03\x12\'\n\"k_EMsgAISRequestContentDescription\x10\x92\x03\x12\x1b\n\x16k_EMsgAISUpdateAppInfo\x10\x93\x03\x12$\n\x1fk_EMsgAISGetPackageChangeNumber\x10\x95\x03\x12,\n\'k_EMsgAISGetPackageChangeNumberResponse\x10\x96\x03\x12\x1a\n\x15k_EMsgAIGetAppGCFlags\x10\xa7\x03\x12\"\n\x1dk_EMsgAIGetAppGCFlagsResponse\x10\xa8\x03\x12\x17\n\x12k_EMsgAIGetAppList\x10\xa9\x03\x12\x1f\n\x1ak_EMsgAIGetAppListResponse\x10\xaa\x03\x12!\n\x1ck_EMsgAISGetCouponDefinition\x10\xad\x03\x12)\n$k_EMsgAISGetCouponDefinitionResponse\x10\xae\x03\x12+\n&k_EMsgAISUpdateSlaveContentDescription\x10\xaf\x03\x12\x33\n.k_EMsgAISUpdateSlaveContentDescriptionResponse\x10\xb0\x03\x12\x1a\n\x15k_EMsgAISTestEnableGC\x10\xb1\x03\x12\x11\n\x0ck_EMsgBaseAM\x10\xf4\x03\x12!\n\x1ck_EMsgAMUpdateUserBanRequest\x10\xf8\x03\x12\x17\n\x12k_EMsgAMAddLicense\x10\xf9\x03\x12\x1f\n\x1ak_EMsgAMSendSystemIMToUser\x10\xfc\x03\x12\x1a\n\x15k_EMsgAMExtendLicense\x10\xfd\x03\x12 \n\x1bk_EMsgAMAddMinutesToLicense\x10\xfe\x03\x12\x1a\n\x15k_EMsgAMCancelLicense\x10\xff\x03\x12\x19\n\x14k_EMsgAMInitPurchase\x10\x80\x04\x12\x1d\n\x18k_EMsgAMPurchaseResponse\x10\x81\x04\x12\x1a\n\x15k_EMsgAMGetFinalPrice\x10\x82\x04\x12\"\n\x1dk_EMsgAMGetFinalPriceResponse\x10\x83\x04\x12\x1d\n\x18k_EMsgAMGetLegacyGameKey\x10\x84\x04\x12%\n k_EMsgAMGetLegacyGameKeyResponse\x10\x85\x04\x12!\n\x1ck_EMsgAMFindHungTransactions\x10\x86\x04\x12%\n k_EMsgAMSetAccountTrustedRequest\x10\x87\x04\x12\x1b\n\x16k_EMsgAMCancelPurchase\x10\x8a\x04\x12\x19\n\x14k_EMsgAMNewChallenge\x10\x8b\x04\x12\x1b\n\x16k_EMsgAMLoadOEMTickets\x10\x8c\x04\x12\x1f\n\x1ak_EMsgAMFixPendingPurchase\x10\x8d\x04\x12\'\n\"k_EMsgAMFixPendingPurchaseResponse\x10\x8e\x04\x12\x19\n\x14k_EMsgAMIsUserBanned\x10\x8f\x04\x12\x18\n\x13k_EMsgAMRegisterKey\x10\x90\x04\x12 \n\x1bk_EMsgAMLoadActivationCodes\x10\x91\x04\x12(\n#k_EMsgAMLoadActivationCodesResponse\x10\x92\x04\x12\x1e\n\x19k_EMsgAMLookupKeyResponse\x10\x93\x04\x12\x16\n\x11k_EMsgAMLookupKey\x10\x94\x04\x12\x18\n\x13k_EMsgAMChatCleanup\x10\x95\x04\x12\x18\n\x13k_EMsgAMClanCleanup\x10\x96\x04\x12\x1d\n\x18k_EMsgAMFixPendingRefund\x10\x97\x04\x12\x1e\n\x19k_EMsgAMReverseChargeback\x10\x98\x04\x12&\n!k_EMsgAMReverseChargebackResponse\x10\x99\x04\x12\x1c\n\x17k_EMsgAMClanCleanupList\x10\x9a\x04\x12\x18\n\x13k_EMsgAMGetLicenses\x10\x9b\x04\x12 \n\x1bk_EMsgAMGetLicensesResponse\x10\x9c\x04\x12\x1f\n\x1ak_EMsgAMSendCartRepurchase\x10\x9d\x04\x12\'\n\"k_EMsgAMSendCartRepurchaseResponse\x10\x9e\x04\x12\x1f\n\x1ak_EMsgAllowUserToPlayQuery\x10\xa6\x04\x12\"\n\x1dk_EMsgAllowUserToPlayResponse\x10\xa7\x04\x12\x17\n\x12k_EMsgAMVerfiyUser\x10\xa8\x04\x12\x1d\n\x18k_EMsgAMClientNotPlaying\x10\xa9\x04\x12$\n\x1fk_EMsgAMClientRequestFriendship\x10\xaa\x04\x12\x1f\n\x1ak_EMsgAMRelayPublishStatus\x10\xab\x04\x12!\n\x1ck_EMsgAMInitPurchaseResponse\x10\xb0\x04\x12#\n\x1ek_EMsgAMRevokePurchaseResponse\x10\xb1\x04\x12\x1f\n\x1ak_EMsgAMRefreshGuestPasses\x10\xb3\x04\x12\x1d\n\x18k_EMsgAMGrantGuestPasses\x10\xb6\x04\x12\x1c\n\x17k_EMsgAMClanDataUpdated\x10\xb7\x04\x12\x1a\n\x15k_EMsgAMReloadAccount\x10\xb8\x04\x12\x1f\n\x1ak_EMsgAMClientChatMsgRelay\x10\xb9\x04\x12\x16\n\x11k_EMsgAMChatMulti\x10\xba\x04\x12\"\n\x1dk_EMsgAMClientChatInviteRelay\x10\xbb\x04\x12\x17\n\x12k_EMsgAMChatInvite\x10\xbc\x04\x12 \n\x1bk_EMsgAMClientJoinChatRelay\x10\xbd\x04\x12&\n!k_EMsgAMClientChatMemberInfoRelay\x10\xbe\x04\x12\"\n\x1dk_EMsgAMPublishChatMemberInfo\x10\xbf\x04\x12%\n k_EMsgAMClientAcceptFriendInvite\x10\xc0\x04\x12\x16\n\x11k_EMsgAMChatEnter\x10\xc1\x04\x12+\n&k_EMsgAMClientPublishRemovalFromSource\x10\xc2\x04\x12\x1d\n\x18k_EMsgAMChatActionResult\x10\xc3\x04\x12\x19\n\x14k_EMsgAMFindAccounts\x10\xc4\x04\x12!\n\x1ck_EMsgAMFindAccountsResponse\x10\xc5\x04\x12\x1f\n\x1ak_EMsgAMIsAccountNameInUse\x10\xc6\x04\x12\'\n\"k_EMsgAMIsAccountNameInUseResponse\x10\xc7\x04\x12\x1c\n\x17k_EMsgAMSetAccountFlags\x10\xc8\x04\x12\x17\n\x12k_EMsgAMCreateClan\x10\xca\x04\x12\x1f\n\x1ak_EMsgAMCreateClanResponse\x10\xcb\x04\x12\x1b\n\x16k_EMsgAMGetClanDetails\x10\xcc\x04\x12#\n\x1ek_EMsgAMGetClanDetailsResponse\x10\xcd\x04\x12\x1b\n\x16k_EMsgAMSetPersonaName\x10\xce\x04\x12\x16\n\x11k_EMsgAMSetAvatar\x10\xcf\x04\x12\x1d\n\x18k_EMsgAMAuthenticateUser\x10\xd0\x04\x12%\n k_EMsgAMAuthenticateUserResponse\x10\xd1\x04\x12!\n\x1ck_EMsgAMP2PIntroducerMessage\x10\xd4\x04\x12\x1b\n\x16k_EMsgClientChatAction\x10\xd5\x04\x12\"\n\x1dk_EMsgAMClientChatActionRelay\x10\xd6\x04\x12\x11\n\x0ck_EMsgBaseVS\x10\xd8\x04\x12\x17\n\x12k_EMsgReqChallenge\x10\xd8\x04\x12\x16\n\x11k_EMsgVACResponse\x10\xd9\x04\x12\x1b\n\x16k_EMsgReqChallengeTest\x10\xda\x04\x12\x16\n\x11k_EMsgVSMarkCheat\x10\xdc\x04\x12\x15\n\x10k_EMsgVSAddCheat\x10\xdd\x04\x12\x1b\n\x16k_EMsgVSPurgeCodeModDB\x10\xde\x04\x12 \n\x1bk_EMsgVSGetChallengeResults\x10\xdf\x04\x12 \n\x1bk_EMsgVSChallengeResultText\x10\xe0\x04\x12\x1b\n\x16k_EMsgVSReportLingerer\x10\xe1\x04\x12$\n\x1fk_EMsgVSRequestManagedChallenge\x10\xe2\x04\x12\x1b\n\x16k_EMsgVSLoadDBFinished\x10\xe3\x04\x12\x13\n\x0ek_EMsgBaseDRMS\x10\xf1\x04\x12\x1e\n\x19k_EMsgDRMBuildBlobRequest\x10\xf4\x04\x12\x1f\n\x1ak_EMsgDRMBuildBlobResponse\x10\xf5\x04\x12 \n\x1bk_EMsgDRMResolveGuidRequest\x10\xf6\x04\x12!\n\x1ck_EMsgDRMResolveGuidResponse\x10\xf7\x04\x12\x1f\n\x1ak_EMsgDRMVariabilityReport\x10\xf9\x04\x12\'\n\"k_EMsgDRMVariabilityReportResponse\x10\xfa\x04\x12\x1d\n\x18k_EMsgDRMStabilityReport\x10\xfb\x04\x12%\n k_EMsgDRMStabilityReportResponse\x10\xfc\x04\x12\"\n\x1dk_EMsgDRMDetailsReportRequest\x10\xfd\x04\x12#\n\x1ek_EMsgDRMDetailsReportResponse\x10\xfe\x04\x12\x19\n\x14k_EMsgDRMProcessFile\x10\xff\x04\x12\x19\n\x14k_EMsgDRMAdminUpdate\x10\x80\x05\x12!\n\x1ck_EMsgDRMAdminUpdateResponse\x10\x81\x05\x12\x12\n\rk_EMsgDRMSync\x10\x82\x05\x12\x1a\n\x15k_EMsgDRMSyncResponse\x10\x83\x05\x12!\n\x1ck_EMsgDRMProcessFileResponse\x10\x84\x05\x12\x1c\n\x17k_EMsgDRMEmptyGuidCache\x10\x85\x05\x12$\n\x1fk_EMsgDRMEmptyGuidCacheResponse\x10\x86\x05\x12\x11\n\x0ck_EMsgBaseCS\x10\x8a\x05\x12\x15\n\x10k_EMsgBaseClient\x10\xbc\x05\x12!\n\x1ck_EMsgClientLogOn_Deprecated\x10\xbd\x05\x12%\n k_EMsgClientAnonLogOn_Deprecated\x10\xbe\x05\x12\x1a\n\x15k_EMsgClientHeartBeat\x10\xbf\x05\x12\x1c\n\x17k_EMsgClientVACResponse\x10\xc0\x05\x12%\n k_EMsgClientGamesPlayed_obsolete\x10\xc1\x05\x12\x17\n\x12k_EMsgClientLogOff\x10\xc2\x05\x12\"\n\x1dk_EMsgClientNoUDPConnectivity\x10\xc3\x05\x12 \n\x1bk_EMsgClientConnectionStats\x10\xc6\x05\x12\x1d\n\x18k_EMsgClientPingResponse\x10\xc8\x05\x12\x1d\n\x18k_EMsgClientRemoveFriend\x10\xca\x05\x12&\n!k_EMsgClientGamesPlayedNoDataBlob\x10\xcb\x05\x12\x1d\n\x18k_EMsgClientChangeStatus\x10\xcc\x05\x12\"\n\x1dk_EMsgClientVacStatusResponse\x10\xcd\x05\x12\x1a\n\x15k_EMsgClientFriendMsg\x10\xce\x05\x12%\n k_EMsgClientGameConnect_obsolete\x10\xcf\x05\x12&\n!k_EMsgClientGamesPlayed2_obsolete\x10\xd0\x05\x12#\n\x1ek_EMsgClientGameEnded_obsolete\x10\xd1\x05\x12\x19\n\x14k_EMsgClientSystemIM\x10\xd6\x05\x12\x1c\n\x17k_EMsgClientSystemIMAck\x10\xd7\x05\x12\x1c\n\x17k_EMsgClientGetLicenses\x10\xd8\x05\x12!\n\x1ck_EMsgClientGetLegacyGameKey\x10\xda\x05\x12.\n)k_EMsgClientContentServerLogOn_Deprecated\x10\xdb\x05\x12\x1b\n\x16k_EMsgClientAckVACBan2\x10\xdc\x05\x12$\n\x1fk_EMsgClientGetPurchaseReceipts\x10\xe0\x05\x12&\n!k_EMsgClientGamesPlayed3_obsolete\x10\xe2\x05\x12\x1d\n\x18k_EMsgClientAckGuestPass\x10\xe4\x05\x12 \n\x1bk_EMsgClientRedeemGuestPass\x10\xe5\x05\x12\x1c\n\x17k_EMsgClientGamesPlayed\x10\xe6\x05\x12\x1c\n\x17k_EMsgClientRegisterKey\x10\xe7\x05\x12!\n\x1ck_EMsgClientInviteUserToClan\x10\xe8\x05\x12&\n!k_EMsgClientAcknowledgeClanInvite\x10\xe9\x05\x12&\n!k_EMsgClientPurchaseWithMachineID\x10\xea\x05\x12\x1e\n\x19k_EMsgClientAppUsageEvent\x10\xeb\x05\x12\x1e\n\x19k_EMsgClientLogOnResponse\x10\xef\x05\x12!\n\x1ck_EMsgClientSetHeartbeatRate\x10\xf3\x05\x12&\n!k_EMsgClientNotLoggedOnDeprecated\x10\xf4\x05\x12\x1a\n\x15k_EMsgClientLoggedOff\x10\xf5\x05\x12\x14\n\x0fk_EMsgGSApprove\x10\xf6\x05\x12\x11\n\x0ck_EMsgGSDeny\x10\xf7\x05\x12\x11\n\x0ck_EMsgGSKick\x10\xf8\x05\x12#\n\x1ek_EMsgClientCreateAcctResponse\x10\xf9\x05\x12!\n\x1ck_EMsgClientPurchaseResponse\x10\xfb\x05\x12\x15\n\x10k_EMsgClientPing\x10\xfc\x05\x12\x14\n\x0fk_EMsgClientNOP\x10\xfd\x05\x12\x1d\n\x18k_EMsgClientPersonaState\x10\xfe\x05\x12\x1c\n\x17k_EMsgClientFriendsList\x10\xff\x05\x12\x1c\n\x17k_EMsgClientAccountInfo\x10\x80\x06\x12\x1b\n\x16k_EMsgClientNewsUpdate\x10\x83\x06\x12 \n\x1bk_EMsgClientGameConnectDeny\x10\x85\x06\x12\x18\n\x13k_EMsgGSStatusReply\x10\x86\x06\x12\"\n\x1dk_EMsgClientGameConnectTokens\x10\x8b\x06\x12\x1c\n\x17k_EMsgClientLicenseList\x10\x8c\x06\x12\x1d\n\x18k_EMsgClientVACBanStatus\x10\x8e\x06\x12\x17\n\x12k_EMsgClientCMList\x10\x8f\x06\x12\x1b\n\x16k_EMsgClientEncryptPct\x10\x90\x06\x12)\n$k_EMsgClientGetLegacyGameKeyResponse\x10\x91\x06\x12\x1a\n\x15k_EMsgClientAddFriend\x10\x97\x06\x12\"\n\x1dk_EMsgClientAddFriendResponse\x10\x98\x06\x12%\n k_EMsgClientAckGuestPassResponse\x10\x9c\x06\x12(\n#k_EMsgClientRedeemGuestPassResponse\x10\x9d\x06\x12&\n!k_EMsgClientUpdateGuestPassesList\x10\x9e\x06\x12\x18\n\x13k_EMsgClientChatMsg\x10\x9f\x06\x12\x1b\n\x16k_EMsgClientChatInvite\x10\xa0\x06\x12\x19\n\x14k_EMsgClientJoinChat\x10\xa1\x06\x12\x1f\n\x1ak_EMsgClientChatMemberInfo\x10\xa2\x06\x12\x30\n+k_EMsgClientLogOnWithCredentials_Deprecated\x10\xa3\x06\x12\'\n\"k_EMsgClientPasswordChangeResponse\x10\xa5\x06\x12\x1a\n\x15k_EMsgClientChatEnter\x10\xa7\x06\x12(\n#k_EMsgClientFriendRemovedFromSource\x10\xa8\x06\x12\x1b\n\x16k_EMsgClientCreateChat\x10\xa9\x06\x12#\n\x1ek_EMsgClientCreateChatResponse\x10\xaa\x06\x12%\n k_EMsgClientP2PIntroducerMessage\x10\xad\x06\x12!\n\x1ck_EMsgClientChatActionResult\x10\xae\x06\x12\"\n\x1dk_EMsgClientRequestFriendData\x10\xaf\x06\x12\x1d\n\x18k_EMsgClientGetUserStats\x10\xb2\x06\x12%\n k_EMsgClientGetUserStatsResponse\x10\xb3\x06\x12\x1f\n\x1ak_EMsgClientStoreUserStats\x10\xb4\x06\x12\'\n\"k_EMsgClientStoreUserStatsResponse\x10\xb5\x06\x12\x1a\n\x15k_EMsgClientClanState\x10\xb6\x06\x12\x1e\n\x19k_EMsgClientServiceModule\x10\xbe\x06\x12\x1c\n\x17k_EMsgClientServiceCall\x10\xbf\x06\x12$\n\x1fk_EMsgClientServiceCallResponse\x10\xc0\x06\x12&\n!k_EMsgClientNatTraversalStatEvent\x10\xc7\x06\x12 \n\x1bk_EMsgClientSteamUsageEvent\x10\xca\x06\x12\x1e\n\x19k_EMsgClientCheckPassword\x10\xcd\x06\x12\x1e\n\x19k_EMsgClientResetPassword\x10\xce\x06\x12&\n!k_EMsgClientCheckPasswordResponse\x10\xd0\x06\x12&\n!k_EMsgClientResetPasswordResponse\x10\xd1\x06\x12\x1d\n\x18k_EMsgClientSessionToken\x10\xd2\x06\x12!\n\x1ck_EMsgClientDRMProblemReport\x10\xd3\x06\x12 \n\x1bk_EMsgClientSetIgnoreFriend\x10\xd7\x06\x12(\n#k_EMsgClientSetIgnoreFriendResponse\x10\xd8\x06\x12&\n!k_EMsgClientGetAppOwnershipTicket\x10\xd9\x06\x12.\n)k_EMsgClientGetAppOwnershipTicketResponse\x10\xda\x06\x12%\n k_EMsgClientGetLobbyListResponse\x10\xdc\x06\x12\x1b\n\x16k_EMsgClientServerList\x10\xf0\x06\x12\x1f\n\x1ak_EMsgClientDRMBlobRequest\x10\x80\x07\x12 \n\x1bk_EMsgClientDRMBlobResponse\x10\x81\x07\x12\x19\n\x14k_EMsgBaseGameServer\x10\x84\x07\x12\x1d\n\x18k_EMsgGSDisconnectNotice\x10\x85\x07\x12\x13\n\x0ek_EMsgGSStatus\x10\x87\x07\x12\x18\n\x13k_EMsgGSUserPlaying\x10\x89\x07\x12\x14\n\x0fk_EMsgGSStatus2\x10\x8a\x07\x12 \n\x1bk_EMsgGSStatusUpdate_Unused\x10\x8b\x07\x12\x17\n\x12k_EMsgGSServerType\x10\x8c\x07\x12\x17\n\x12k_EMsgGSPlayerList\x10\x8d\x07\x12%\n k_EMsgGSGetUserAchievementStatus\x10\x8e\x07\x12-\n(k_EMsgGSGetUserAchievementStatusResponse\x10\x8f\x07\x12\x19\n\x14k_EMsgGSGetPlayStats\x10\x96\x07\x12!\n\x1ck_EMsgGSGetPlayStatsResponse\x10\x97\x07\x12\x1f\n\x1ak_EMsgGSGetUserGroupStatus\x10\x98\x07\x12\x1f\n\x1ak_EMsgAMGetUserGroupStatus\x10\x99\x07\x12\'\n\"k_EMsgAMGetUserGroupStatusResponse\x10\x9a\x07\x12\'\n\"k_EMsgGSGetUserGroupStatusResponse\x10\x9b\x07\x12\x1a\n\x15k_EMsgGSGetReputation\x10\xa8\x07\x12\"\n\x1dk_EMsgGSGetReputationResponse\x10\xa9\x07\x12\x1e\n\x19k_EMsgGSAssociateWithClan\x10\xaa\x07\x12&\n!k_EMsgGSAssociateWithClanResponse\x10\xab\x07\x12*\n%k_EMsgGSComputeNewPlayerCompatibility\x10\xac\x07\x12\x32\n-k_EMsgGSComputeNewPlayerCompatibilityResponse\x10\xad\x07\x12\x14\n\x0fk_EMsgBaseAdmin\x10\xe8\x07\x12\x13\n\x0ek_EMsgAdminCmd\x10\xe8\x07\x12\x1b\n\x16k_EMsgAdminCmdResponse\x10\xec\x07\x12 \n\x1bk_EMsgAdminLogListenRequest\x10\xed\x07\x12\x18\n\x13k_EMsgAdminLogEvent\x10\xee\x07\x12\x17\n\x12k_EMsgUniverseData\x10\xf2\x07\x12\x14\n\x0fk_EMsgAdminSpew\x10\xfb\x07\x12\x1c\n\x17k_EMsgAdminConsoleTitle\x10\xfc\x07\x12\x16\n\x11k_EMsgAdminGCSpew\x10\xff\x07\x12\x19\n\x14k_EMsgAdminGCCommand\x10\x80\x08\x12 \n\x1bk_EMsgAdminGCGetCommandList\x10\x81\x08\x12(\n#k_EMsgAdminGCGetCommandListResponse\x10\x82\x08\x12\x1c\n\x17k_EMsgFBSConnectionData\x10\x83\x08\x12\x17\n\x12k_EMsgAdminMsgSpew\x10\x84\x08\x12\x12\n\rk_EMsgBaseFBS\x10\xcc\x08\x12\x18\n\x13k_EMsgFBSReqVersion\x10\xcc\x08\x12\x19\n\x14k_EMsgFBSVersionInfo\x10\xcd\x08\x12\x1a\n\x15k_EMsgFBSForceRefresh\x10\xce\x08\x12\x19\n\x14k_EMsgFBSForceBounce\x10\xcf\x08\x12\x1b\n\x16k_EMsgFBSDeployPackage\x10\xd0\x08\x12\x1c\n\x17k_EMsgFBSDeployResponse\x10\xd1\x08\x12 \n\x1bk_EMsgFBSUpdateBootstrapper\x10\xd2\x08\x12\x16\n\x11k_EMsgFBSSetState\x10\xd3\x08\x12\x1c\n\x17k_EMsgFBSApplyOSUpdates\x10\xd4\x08\x12\x1a\n\x15k_EMsgFBSRunCMDScript\x10\xd5\x08\x12\x17\n\x12k_EMsgFBSRebootBox\x10\xd6\x08\x12\x1f\n\x1ak_EMsgFBSSetBigBrotherMode\x10\xd7\x08\x12\x1c\n\x17k_EMsgFBSMinidumpServer\x10\xd8\x08\x12!\n\x1ck_EMsgFBSDeployHotFixPackage\x10\xda\x08\x12\"\n\x1dk_EMsgFBSDeployHotFixResponse\x10\xdb\x08\x12\x1c\n\x17k_EMsgFBSDownloadHotFix\x10\xdc\x08\x12$\n\x1fk_EMsgFBSDownloadHotFixResponse\x10\xdd\x08\x12$\n\x1fk_EMsgFBSUpdateTargetConfigFile\x10\xde\x08\x12\x1e\n\x19k_EMsgFBSApplyAccountCred\x10\xdf\x08\x12&\n!k_EMsgFBSApplyAccountCredResponse\x10\xe0\x08\x12\x1b\n\x16k_EMsgFBSSetShellCount\x10\xe1\x08\x12\x1c\n\x17k_EMsgFBSTerminateShell\x10\xe2\x08\x12\x1f\n\x1ak_EMsgFBSQueryGMForRequest\x10\xe3\x08\x12\x1d\n\x18k_EMsgFBSQueryGMResponse\x10\xe4\x08\x12\x1e\n\x19k_EMsgFBSTerminateZombies\x10\xe5\x08\x12\"\n\x1dk_EMsgFBSInfoFromBootstrapper\x10\xe6\x08\x12\x1f\n\x1ak_EMsgFBSRebootBoxResponse\x10\xe7\x08\x12(\n#k_EMsgFBSBootstrapperPackageRequest\x10\xe8\x08\x12)\n$k_EMsgFBSBootstrapperPackageResponse\x10\xe9\x08\x12)\n$k_EMsgFBSBootstrapperGetPackageChunk\x10\xea\x08\x12\x31\n,k_EMsgFBSBootstrapperGetPackageChunkResponse\x10\xeb\x08\x12\x31\n,k_EMsgFBSBootstrapperPackageTransferProgress\x10\xec\x08\x12!\n\x1ck_EMsgFBSRestartBootstrapper\x10\xed\x08\x12\x1e\n\x19k_EMsgFBSPauseFrozenDumps\x10\xee\x08\x12\x17\n\x12k_EMsgBaseFileXfer\x10\xb0\t\x12\x1a\n\x15k_EMsgFileXferRequest\x10\xb0\t\x12\x1b\n\x16k_EMsgFileXferResponse\x10\xb1\t\x12\x17\n\x12k_EMsgFileXferData\x10\xb2\t\x12\x16\n\x11k_EMsgFileXferEnd\x10\xb3\t\x12\x1a\n\x15k_EMsgFileXferDataAck\x10\xb4\t\x12\x1a\n\x15k_EMsgBaseChannelAuth\x10\x94\n\x12\x1f\n\x1ak_EMsgChannelAuthChallenge\x10\x94\n\x12\x1e\n\x19k_EMsgChannelAuthResponse\x10\x95\n\x12\x1c\n\x17k_EMsgChannelAuthResult\x10\x96\n\x12 \n\x1bk_EMsgChannelEncryptRequest\x10\x97\n\x12!\n\x1ck_EMsgChannelEncryptResponse\x10\x98\n\x12\x1f\n\x1ak_EMsgChannelEncryptResult\x10\x99\n\x12\x11\n\x0ck_EMsgBaseBS\x10\xf8\n\x12\x1a\n\x15k_EMsgBSPurchaseStart\x10\xf9\n\x12\x1d\n\x18k_EMsgBSPurchaseResponse\x10\xfa\n\x12 \n\x1bk_EMsgBSAuthenticateCCTrans\x10\xfb\n\x12(\n#k_EMsgBSAuthenticateCCTransResponse\x10\xfc\n\x12\x1b\n\x16k_EMsgBSSettleComplete\x10\xfe\n\x12\x1a\n\x15k_EMsgBSInitPayPalTxn\x10\x80\x0b\x12\"\n\x1dk_EMsgBSInitPayPalTxnResponse\x10\x81\x0b\x12\x1e\n\x19k_EMsgBSGetPayPalUserInfo\x10\x82\x0b\x12&\n!k_EMsgBSGetPayPalUserInfoResponse\x10\x83\x0b\x12\x1c\n\x17k_EMsgBSPaymentInstrBan\x10\x89\x0b\x12$\n\x1fk_EMsgBSPaymentInstrBanResponse\x10\x8a\x0b\x12\x1e\n\x19k_EMsgBSInitGCBankXferTxn\x10\x8d\x0b\x12&\n!k_EMsgBSInitGCBankXferTxnResponse\x10\x8e\x0b\x12\x18\n\x13k_EMsgBSCommitGCTxn\x10\x91\x0b\x12#\n\x1ek_EMsgBSQueryTransactionStatus\x10\x92\x0b\x12+\n&k_EMsgBSQueryTransactionStatusResponse\x10\x93\x0b\x12\"\n\x1dk_EMsgBSQueryPaymentInstUsage\x10\x97\x0b\x12%\n k_EMsgBSQueryPaymentInstResponse\x10\x98\x0b\x12!\n\x1ck_EMsgBSQueryTxnExtendedInfo\x10\x99\x0b\x12)\n$k_EMsgBSQueryTxnExtendedInfoResponse\x10\x9a\x0b\x12\"\n\x1dk_EMsgBSUpdateConversionRates\x10\x9b\x0b\x12#\n\x1ek_EMsgBSPurchaseRunFraudChecks\x10\x9d\x0b\x12+\n&k_EMsgBSPurchaseRunFraudChecksResponse\x10\x9e\x0b\x12!\n\x1ck_EMsgBSQueryBankInformation\x10\xa0\x0b\x12)\n$k_EMsgBSQueryBankInformationResponse\x10\xa1\x0b\x12$\n\x1fk_EMsgBSValidateXsollaSignature\x10\xa5\x0b\x12,\n\'k_EMsgBSValidateXsollaSignatureResponse\x10\xa6\x0b\x12\x1e\n\x19k_EMsgBSQiwiWalletInvoice\x10\xa8\x0b\x12&\n!k_EMsgBSQiwiWalletInvoiceResponse\x10\xa9\x0b\x12\'\n\"k_EMsgBSUpdateInventoryFromProPack\x10\xaa\x0b\x12/\n*k_EMsgBSUpdateInventoryFromProPackResponse\x10\xab\x0b\x12 \n\x1bk_EMsgBSSendShippingRequest\x10\xac\x0b\x12(\n#k_EMsgBSSendShippingRequestResponse\x10\xad\x0b\x12\"\n\x1dk_EMsgBSGetProPackOrderStatus\x10\xae\x0b\x12*\n%k_EMsgBSGetProPackOrderStatusResponse\x10\xaf\x0b\x12\x1c\n\x17k_EMsgBSCheckJobRunning\x10\xb0\x0b\x12$\n\x1fk_EMsgBSCheckJobRunningResponse\x10\xb1\x0b\x12*\n%k_EMsgBSResetPackagePurchaseRateLimit\x10\xb2\x0b\x12\x32\n-k_EMsgBSResetPackagePurchaseRateLimitResponse\x10\xb3\x0b\x12\x1e\n\x19k_EMsgBSUpdatePaymentData\x10\xb4\x0b\x12&\n!k_EMsgBSUpdatePaymentDataResponse\x10\xb5\x0b\x12\x1e\n\x19k_EMsgBSGetBillingAddress\x10\xb6\x0b\x12&\n!k_EMsgBSGetBillingAddressResponse\x10\xb7\x0b\x12\x1e\n\x19k_EMsgBSGetCreditCardInfo\x10\xb8\x0b\x12&\n!k_EMsgBSGetCreditCardInfoResponse\x10\xb9\x0b\x12%\n k_EMsgBSRemoveExpiredPaymentData\x10\xbc\x0b\x12-\n(k_EMsgBSRemoveExpiredPaymentDataResponse\x10\xbd\x0b\x12!\n\x1ck_EMsgBSConvertToCurrentKeys\x10\xbe\x0b\x12)\n$k_EMsgBSConvertToCurrentKeysResponse\x10\xbf\x0b\x12\x19\n\x14k_EMsgBSInitPurchase\x10\xc0\x0b\x12!\n\x1ck_EMsgBSInitPurchaseResponse\x10\xc1\x0b\x12\x1d\n\x18k_EMsgBSCompletePurchase\x10\xc2\x0b\x12%\n k_EMsgBSCompletePurchaseResponse\x10\xc3\x0b\x12 \n\x1bk_EMsgBSPruneCardUsageStats\x10\xc4\x0b\x12(\n#k_EMsgBSPruneCardUsageStatsResponse\x10\xc5\x0b\x12!\n\x1ck_EMsgBSStoreBankInformation\x10\xc6\x0b\x12)\n$k_EMsgBSStoreBankInformationResponse\x10\xc7\x0b\x12\x1a\n\x15k_EMsgBSVerifyPOSAKey\x10\xc8\x0b\x12\"\n\x1dk_EMsgBSVerifyPOSAKeyResponse\x10\xc9\x0b\x12!\n\x1ck_EMsgBSReverseRedeemPOSAKey\x10\xca\x0b\x12)\n$k_EMsgBSReverseRedeemPOSAKeyResponse\x10\xcb\x0b\x12 \n\x1bk_EMsgBSQueryFindCreditCard\x10\xcc\x0b\x12(\n#k_EMsgBSQueryFindCreditCardResponse\x10\xcd\x0b\x12!\n\x1ck_EMsgBSStatusInquiryPOSAKey\x10\xce\x0b\x12)\n$k_EMsgBSStatusInquiryPOSAKeyResponse\x10\xcf\x0b\x12,\n\'k_EMsgBSBoaCompraConfirmProductDelivery\x10\xd6\x0b\x12\x34\n/k_EMsgBSBoaCompraConfirmProductDeliveryResponse\x10\xd7\x0b\x12!\n\x1ck_EMsgBSGenerateBoaCompraMD5\x10\xd8\x0b\x12)\n$k_EMsgBSGenerateBoaCompraMD5Response\x10\xd9\x0b\x12\x18\n\x13k_EMsgBSCommitWPTxn\x10\xda\x0b\x12\x1b\n\x16k_EMsgBSCommitAdyenTxn\x10\xdb\x0b\x12\x12\n\rk_EMsgBaseATS\x10\xdc\x0b\x12\x1d\n\x18k_EMsgATSStartStressTest\x10\xdd\x0b\x12\x1c\n\x17k_EMsgATSStopStressTest\x10\xde\x0b\x12\x1f\n\x1ak_EMsgATSRunFailServerTest\x10\xdf\x0b\x12\x1d\n\x18k_EMsgATSUFSPerfTestTask\x10\xe0\x0b\x12!\n\x1ck_EMsgATSUFSPerfTestResponse\x10\xe1\x0b\x12\x16\n\x11k_EMsgATSCycleTCM\x10\xe2\x0b\x12 \n\x1bk_EMsgATSInitDRMSStressTest\x10\xe3\x0b\x12\x16\n\x11k_EMsgATSCallTest\x10\xe4\x0b\x12\x1b\n\x16k_EMsgATSCallTestReply\x10\xe5\x0b\x12!\n\x1ck_EMsgATSStartExternalStress\x10\xe6\x0b\x12$\n\x1fk_EMsgATSExternalStressJobStart\x10\xe7\x0b\x12%\n k_EMsgATSExternalStressJobQueued\x10\xe8\x0b\x12&\n!k_EMsgATSExternalStressJobRunning\x10\xe9\x0b\x12&\n!k_EMsgATSExternalStressJobStopped\x10\xea\x0b\x12&\n!k_EMsgATSExternalStressJobStopAll\x10\xeb\x0b\x12(\n#k_EMsgATSExternalStressActionResult\x10\xec\x0b\x12\x15\n\x10k_EMsgATSStarted\x10\xed\x0b\x12\x1c\n\x17k_EMsgATSCSPerfTestTask\x10\xee\x0b\x12 \n\x1bk_EMsgATSCSPerfTestResponse\x10\xef\x0b\x12\x11\n\x0ck_EMsgBaseDP\x10\xc0\x0c\x12\x1f\n\x1ak_EMsgDPSetPublishingState\x10\xc1\x0c\x12\x1e\n\x19k_EMsgDPUniquePlayersStat\x10\xc3\x0c\x12\'\n\"k_EMsgDPStreamingUniquePlayersStat\x10\xc4\x0c\x12\x1a\n\x15k_EMsgDPBlockingStats\x10\xc7\x0c\x12\x1e\n\x19k_EMsgDPNatTraversalStats\x10\xc8\x0c\x12\x17\n\x12k_EMsgDPCloudStats\x10\xcc\x0c\x12\x1b\n\x16k_EMsgDPGetPlayerCount\x10\xcf\x0c\x12#\n\x1ek_EMsgDPGetPlayerCountResponse\x10\xd0\x0c\x12$\n\x1fk_EMsgDPGameServersPlayersStats\x10\xd1\x0c\x12%\n k_EMsgClientDPCheckSpecialSurvey\x10\xd4\x0c\x12-\n(k_EMsgClientDPCheckSpecialSurveyResponse\x10\xd5\x0c\x12,\n\'k_EMsgClientDPSendSpecialSurveyResponse\x10\xd6\x0c\x12\x31\n,k_EMsgClientDPSendSpecialSurveyResponseReply\x10\xd7\x0c\x12 \n\x1bk_EMsgDPStoreSaleStatistics\x10\xd8\x0c\x12%\n k_EMsgClientDPUpdateAppJobReport\x10\xd9\x0c\x12(\n#k_EMsgClientDPUnsignedInstallScript\x10\xdb\x0c\x12\x1d\n\x18k_EMsgDPPartnerMicroTxns\x10\xdc\x0c\x12%\n k_EMsgDPPartnerMicroTxnsResponse\x10\xdd\x0c\x12%\n k_EMsgClientDPContentStatsReport\x10\xde\x0c\x12 \n\x1bk_EMsgDPVRUniquePlayersStat\x10\xdf\x0c\x12\x11\n\x0ck_EMsgBaseCM\x10\xa4\r\x12\x1a\n\x15k_EMsgCMSetAllowState\x10\xa5\r\x12\x1b\n\x16k_EMsgCMSpewAllowState\x10\xa6\r\x12\x1c\n\x17k_EMsgCMSessionRejected\x10\xa7\r\x12\x17\n\x12k_EMsgCMSetSecrets\x10\xa8\r\x12\x17\n\x12k_EMsgCMGetSecrets\x10\xa9\r\x12\x11\n\x0ck_EMsgBaseGC\x10\x98\x11\x12\x16\n\x11k_EMsgGCCmdRevive\x10\x9b\x11\x12\x14\n\x0fk_EMsgGCCmdDown\x10\x9e\x11\x12\x16\n\x11k_EMsgGCCmdDeploy\x10\x9f\x11\x12\x1e\n\x19k_EMsgGCCmdDeployResponse\x10\xa0\x11\x12\x16\n\x11k_EMsgGCCmdSwitch\x10\xa1\x11\x12\x1c\n\x17k_EMsgAMRefreshSessions\x10\xa2\x11\x12\x1f\n\x1ak_EMsgGCAchievementAwarded\x10\xa4\x11\x12\x1a\n\x15k_EMsgGCSystemMessage\x10\xa5\x11\x12\x16\n\x11k_EMsgGCCmdStatus\x10\xa8\x11\x12-\n(k_EMsgGCRegisterWebInterfaces_Deprecated\x10\xa9\x11\x12)\n$k_EMsgGCGetAccountDetails_DEPRECATED\x10\xaa\x11\x12\x1c\n\x17k_EMsgGCInterAppMessage\x10\xab\x11\x12\x1d\n\x18k_EMsgGCGetEmailTemplate\x10\xac\x11\x12%\n k_EMsgGCGetEmailTemplateResponse\x10\xad\x11\x12\x13\n\x0ek_EMsgGCHRelay\x10\xae\x11\x12\x1b\n\x16k_EMsgGCHRelayToClient\x10\xaf\x11\x12\x1b\n\x16k_EMsgGCHUpdateSession\x10\xb0\x11\x12\"\n\x1dk_EMsgGCHRequestUpdateSession\x10\xb1\x11\x12\x1b\n\x16k_EMsgGCHRequestStatus\x10\xb2\x11\x12#\n\x1ek_EMsgGCHRequestStatusResponse\x10\xb3\x11\x12$\n\x1fk_EMsgGCHAccountVacStatusChange\x10\xb4\x11\x12\x15\n\x10k_EMsgGCHSpawnGC\x10\xb5\x11\x12\x1d\n\x18k_EMsgGCHSpawnGCResponse\x10\xb6\x11\x12\x14\n\x0fk_EMsgGCHKillGC\x10\xb7\x11\x12\x1c\n\x17k_EMsgGCHKillGCResponse\x10\xb8\x11\x12)\n$k_EMsgGCHAccountTradeBanStatusChange\x10\xb9\x11\x12%\n k_EMsgGCHAccountLockStatusChange\x10\xba\x11\x12#\n\x1ek_EMsgGCHVacVerificationChange\x10\xbb\x11\x12&\n!k_EMsgGCHAccountPhoneNumberChange\x10\xbc\x11\x12$\n\x1fk_EMsgGCHAccountTwoFactorChange\x10\xbd\x11\x12\x1f\n\x1ak_EMsgGCHInviteUserToLobby\x10\xbe\x11\x12$\n\x1fk_EMsgGCHUpdateMultipleSessions\x10\xbf\x11\x12*\n%k_EMsgGCHMarkAppSessionsAuthoritative\x10\xc0\x11\x12/\n*k_EMsgGCHRecurringSubscriptionStatusChange\x10\xc1\x11\x12\x1f\n\x1ak_EMsgGCHAppCheersReceived\x10\xc2\x11\x12&\n!k_EMsgGCHAppCheersGetAllowedTypes\x10\xc3\x11\x12.\n)k_EMsgGCHAppCheersGetAllowedTypesResponse\x10\xc4\x11\x12\x12\n\rk_EMsgBaseP2P\x10\xc4\x13\x12\x1f\n\x1ak_EMsgP2PIntroducerMessage\x10\xc6\x13\x12\x11\n\x0ck_EMsgBaseSM\x10\xd4\x16\x12\x1c\n\x17k_EMsgSMExpensiveReport\x10\xd6\x16\x12\x19\n\x14k_EMsgSMHourlyReport\x10\xd7\x16\x12\x1d\n\x18k_EMsgSMPartitionRenames\x10\xd9\x16\x12\x19\n\x14k_EMsgSMMonitorSpace\x10\xda\x16\x12*\n%k_EMsgSMTestNextBuildSchemaConversion\x10\xdb\x16\x12\x32\n-k_EMsgSMTestNextBuildSchemaConversionResponse\x10\xdc\x16\x12\x13\n\x0ek_EMsgBaseTest\x10\xb8\x17\x12\x15\n\x10k_EMsgFailServer\x10\xb8\x17\x12\x1b\n\x16k_EMsgJobHeartbeatTest\x10\xb9\x17\x12#\n\x1ek_EMsgJobHeartbeatTestResponse\x10\xba\x17\x12\x17\n\x12k_EMsgBaseFTSRange\x10\x9c\x18\x12\x17\n\x12k_EMsgBaseCCSRange\x10\xce\x18\x12\'\n\"k_EMsgCCSDeleteAllCommentsByAuthor\x10\xd9\x18\x12/\n*k_EMsgCCSDeleteAllCommentsByAuthorResponse\x10\xda\x18\x12\x17\n\x12k_EMsgBaseLBSRange\x10\x80\x19\x12\x16\n\x11k_EMsgLBSSetScore\x10\x81\x19\x12\x1e\n\x19k_EMsgLBSSetScoreResponse\x10\x82\x19\x12\x1c\n\x17k_EMsgLBSFindOrCreateLB\x10\x83\x19\x12$\n\x1fk_EMsgLBSFindOrCreateLBResponse\x10\x84\x19\x12\x1a\n\x15k_EMsgLBSGetLBEntries\x10\x85\x19\x12\"\n\x1dk_EMsgLBSGetLBEntriesResponse\x10\x86\x19\x12\x17\n\x12k_EMsgLBSGetLBList\x10\x87\x19\x12\x1f\n\x1ak_EMsgLBSGetLBListResponse\x10\x88\x19\x12\x1a\n\x15k_EMsgLBSSetLBDetails\x10\x89\x19\x12\x16\n\x11k_EMsgLBSDeleteLB\x10\x8a\x19\x12\x1b\n\x16k_EMsgLBSDeleteLBEntry\x10\x8b\x19\x12\x15\n\x10k_EMsgLBSResetLB\x10\x8c\x19\x12\x1d\n\x18k_EMsgLBSResetLBResponse\x10\x8d\x19\x12\x1e\n\x19k_EMsgLBSDeleteLBResponse\x10\x8e\x19\x12\x12\n\rk_EMsgBaseOGS\x10\xc8\x1a\x12\x1a\n\x15k_EMsgOGSBeginSession\x10\xc9\x1a\x12\"\n\x1dk_EMsgOGSBeginSessionResponse\x10\xca\x1a\x12\x18\n\x13k_EMsgOGSEndSession\x10\xcb\x1a\x12 \n\x1bk_EMsgOGSEndSessionResponse\x10\xcc\x1a\x12 \n\x1bk_EMsgOGSWriteAppSessionRow\x10\xce\x1a\x12\x12\n\rk_EMsgBaseBRP\x10\x90\x1c\x12 \n\x1bk_EMsgBRPPostTransactionTax\x10\xad\x1c\x12(\n#k_EMsgBRPPostTransactionTaxResponse\x10\xae\x1c\x12\x17\n\x12k_EMsgBaseAMRange2\x10\xa0\x1f\x12\x17\n\x12k_EMsgAMCreateChat\x10\xa1\x1f\x12\x1f\n\x1ak_EMsgAMCreateChatResponse\x10\xa2\x1f\x12\x1a\n\x15k_EMsgAMSetProfileURL\x10\xa5\x1f\x12#\n\x1ek_EMsgAMGetAccountEmailAddress\x10\xa6\x1f\x12+\n&k_EMsgAMGetAccountEmailAddressResponse\x10\xa7\x1f\x12\x1c\n\x17k_EMsgAMRequestClanData\x10\xa8\x1f\x12\x1b\n\x16k_EMsgAMRouteToClients\x10\xa9\x1f\x12\x16\n\x11k_EMsgAMLeaveClan\x10\xaa\x1f\x12\x1c\n\x17k_EMsgAMClanPermissions\x10\xab\x1f\x12$\n\x1fk_EMsgAMClanPermissionsResponse\x10\xac\x1f\x12\x30\n+k_EMsgAMCreateClanEventDummyForRateLimiting\x10\xad\x1f\x12\x30\n+k_EMsgAMUpdateClanEventDummyForRateLimiting\x10\xaf\x1f\x12&\n!k_EMsgAMSetClanPermissionSettings\x10\xb5\x1f\x12.\n)k_EMsgAMSetClanPermissionSettingsResponse\x10\xb6\x1f\x12&\n!k_EMsgAMGetClanPermissionSettings\x10\xb7\x1f\x12.\n)k_EMsgAMGetClanPermissionSettingsResponse\x10\xb8\x1f\x12 \n\x1bk_EMsgAMPublishChatRoomInfo\x10\xb9\x1f\x12\x1d\n\x18k_EMsgClientChatRoomInfo\x10\xba\x1f\x12\x1b\n\x16k_EMsgAMGetClanHistory\x10\xc7\x1f\x12#\n\x1ek_EMsgAMGetClanHistoryResponse\x10\xc8\x1f\x12\"\n\x1dk_EMsgAMGetClanPermissionBits\x10\xc9\x1f\x12*\n%k_EMsgAMGetClanPermissionBitsResponse\x10\xca\x1f\x12\"\n\x1dk_EMsgAMSetClanPermissionBits\x10\xcb\x1f\x12*\n%k_EMsgAMSetClanPermissionBitsResponse\x10\xcc\x1f\x12\x1f\n\x1ak_EMsgAMSessionInfoRequest\x10\xcd\x1f\x12 \n\x1bk_EMsgAMSessionInfoResponse\x10\xce\x1f\x12\x1c\n\x17k_EMsgAMValidateWGToken\x10\xcf\x1f\x12\x18\n\x13k_EMsgAMGetClanRank\x10\xd2\x1f\x12 \n\x1bk_EMsgAMGetClanRankResponse\x10\xd3\x1f\x12\x18\n\x13k_EMsgAMSetClanRank\x10\xd4\x1f\x12 \n\x1bk_EMsgAMSetClanRankResponse\x10\xd5\x1f\x12\x18\n\x13k_EMsgAMGetClanPOTW\x10\xd6\x1f\x12 \n\x1bk_EMsgAMGetClanPOTWResponse\x10\xd7\x1f\x12\x18\n\x13k_EMsgAMSetClanPOTW\x10\xd8\x1f\x12 \n\x1bk_EMsgAMSetClanPOTWResponse\x10\xd9\x1f\x12\x15\n\x10k_EMsgAMDumpUser\x10\xdb\x1f\x12\x1d\n\x18k_EMsgAMKickUserFromClan\x10\xdc\x1f\x12\x1d\n\x18k_EMsgAMAddFounderToClan\x10\xdd\x1f\x12$\n\x1fk_EMsgAMValidateWGTokenResponse\x10\xde\x1f\x12\x1e\n\x19k_EMsgAMSetAccountDetails\x10\xe0\x1f\x12\x1b\n\x16k_EMsgAMGetChatBanList\x10\xe1\x1f\x12#\n\x1ek_EMsgAMGetChatBanListResponse\x10\xe2\x1f\x12\x1a\n\x15k_EMsgAMUnBanFromChat\x10\xe3\x1f\x12\x1b\n\x16k_EMsgAMSetClanDetails\x10\xe4\x1f\x12\x1c\n\x17k_EMsgAMGetAccountLinks\x10\xe5\x1f\x12$\n\x1fk_EMsgAMGetAccountLinksResponse\x10\xe6\x1f\x12\x1c\n\x17k_EMsgAMSetAccountLinks\x10\xe7\x1f\x12$\n\x1fk_EMsgAMSetAccountLinksResponse\x10\xe8\x1f\x12\x1e\n\x19k_EMsgUGSGetUserGameStats\x10\xe9\x1f\x12&\n!k_EMsgUGSGetUserGameStatsResponse\x10\xea\x1f\x12 \n\x1bk_EMsgAMCheckClanMembership\x10\xeb\x1f\x12\x1b\n\x16k_EMsgAMGetClanMembers\x10\xec\x1f\x12#\n\x1ek_EMsgAMGetClanMembersResponse\x10\xed\x1f\x12#\n\x1ek_EMsgAMNotifyChatOfClanChange\x10\xef\x1f\x12\x1d\n\x18k_EMsgAMResubmitPurchase\x10\xf0\x1f\x12\x16\n\x11k_EMsgAMAddFriend\x10\xf1\x1f\x12\x1e\n\x19k_EMsgAMAddFriendResponse\x10\xf2\x1f\x12\x19\n\x14k_EMsgAMRemoveFriend\x10\xf3\x1f\x12\x15\n\x10k_EMsgAMDumpClan\x10\xf4\x1f\x12\x1c\n\x17k_EMsgAMChangeClanOwner\x10\xf5\x1f\x12\x1e\n\x19k_EMsgAMCancelEasyCollect\x10\xf6\x1f\x12&\n!k_EMsgAMCancelEasyCollectResponse\x10\xf7\x1f\x12\x1a\n\x15k_EMsgAMClansInCommon\x10\xfa\x1f\x12\"\n\x1dk_EMsgAMClansInCommonResponse\x10\xfb\x1f\x12\x1d\n\x18k_EMsgAMIsValidAccountID\x10\xfc\x1f\x12\x1c\n\x17k_EMsgAMWipeFriendsList\x10\xff\x1f\x12\x17\n\x12k_EMsgAMSetIgnored\x10\x80 \x12\'\n\"k_EMsgAMClansInCommonCountResponse\x10\x81 \x12\x18\n\x13k_EMsgAMFriendsList\x10\x82 \x12 \n\x1bk_EMsgAMFriendsListResponse\x10\x83 \x12\x1c\n\x17k_EMsgAMFriendsInCommon\x10\x84 \x12$\n\x1fk_EMsgAMFriendsInCommonResponse\x10\x85 \x12)\n$k_EMsgAMFriendsInCommonCountResponse\x10\x86 \x12\x1f\n\x1ak_EMsgAMClansInCommonCount\x10\x87 \x12\x1d\n\x18k_EMsgAMChallengeVerdict\x10\x88 \x12\"\n\x1dk_EMsgAMChallengeNotification\x10\x89 \x12\x17\n\x12k_EMsgAMFindGSByIP\x10\x8a \x12\x18\n\x13k_EMsgAMFoundGSByIP\x10\x8b \x12\x18\n\x13k_EMsgAMGiftRevoked\x10\x8c \x12\x19\n\x14k_EMsgAMUserClanList\x10\x8e \x12!\n\x1ck_EMsgAMUserClanListResponse\x10\x8f \x12\x1f\n\x1ak_EMsgAMGetAccountDetails2\x10\x90 \x12\'\n\"k_EMsgAMGetAccountDetailsResponse2\x10\x91 \x12(\n#k_EMsgAMSetCommunityProfileSettings\x10\x92 \x12\x30\n+k_EMsgAMSetCommunityProfileSettingsResponse\x10\x93 \x12%\n k_EMsgAMGetCommunityPrivacyState\x10\x94 \x12-\n(k_EMsgAMGetCommunityPrivacyStateResponse\x10\x95 \x12(\n#k_EMsgAMCheckClanInviteRateLimiting\x10\x96 \x12&\n!k_EMsgUGSGetUserAchievementStatus\x10\x97 \x12\x17\n\x12k_EMsgAMGetIgnored\x10\x98 \x12\x1f\n\x1ak_EMsgAMGetIgnoredResponse\x10\x99 \x12\x1f\n\x1ak_EMsgAMSetIgnoredResponse\x10\x9a \x12&\n!k_EMsgAMSetFriendRelationshipNone\x10\x9b \x12\"\n\x1dk_EMsgAMGetFriendRelationship\x10\x9c \x12*\n%k_EMsgAMGetFriendRelationshipResponse\x10\x9d \x12 \n\x1bk_EMsgAMServiceModulesCache\x10\x9e \x12\x1f\n\x1ak_EMsgAMServiceModulesCall\x10\x9f \x12\'\n\"k_EMsgAMServiceModulesCallResponse\x10\xa0 \x12!\n\x1ck_EMsgCommunityAddFriendNews\x10\xac \x12\x19\n\x14k_EMsgAMFindClanUser\x10\xaf \x12!\n\x1ck_EMsgAMFindClanUserResponse\x10\xb0 \x12\x18\n\x13k_EMsgAMBanFromChat\x10\xb1 \x12%\n k_EMsgAMGetUserNewsSubscriptions\x10\xb3 \x12-\n(k_EMsgAMGetUserNewsSubscriptionsResponse\x10\xb4 \x12%\n k_EMsgAMSetUserNewsSubscriptions\x10\xb5 \x12\x1d\n\x18k_EMsgAMSendQueuedEmails\x10\xb8 \x12\x1c\n\x17k_EMsgAMSetLicenseFlags\x10\xb9 \x12\"\n\x1dk_EMsgCommunityDeleteUserNews\x10\xbb \x12\"\n\x1dk_EMsgAMAllowUserFilesRequest\x10\xbc \x12#\n\x1ek_EMsgAMAllowUserFilesResponse\x10\xbd \x12\x1d\n\x18k_EMsgAMGetAccountStatus\x10\xbe \x12%\n k_EMsgAMGetAccountStatusResponse\x10\xbf \x12\x1a\n\x15k_EMsgAMEditBanReason\x10\xc0 \x12(\n#k_EMsgAMCheckClanMembershipResponse\x10\xc1 \x12$\n\x1fk_EMsgAMProbeClanMembershipList\x10\xc2 \x12,\n\'k_EMsgAMProbeClanMembershipListResponse\x10\xc3 \x12.\n)k_EMsgUGSGetUserAchievementStatusResponse\x10\xc4 \x12\x1e\n\x19k_EMsgAMGetFriendsLobbies\x10\xc5 \x12&\n!k_EMsgAMGetFriendsLobbiesResponse\x10\xc6 \x12&\n!k_EMsgAMGetUserFriendNewsResponse\x10\xcc \x12%\n k_EMsgCommunityGetUserFriendNews\x10\xcd \x12%\n k_EMsgAMGetUserClansNewsResponse\x10\xce \x12\x1d\n\x18k_EMsgAMGetUserClansNews\x10\xcf \x12!\n\x1ck_EMsgAMGetPreviousCBAccount\x10\xd8 \x12)\n$k_EMsgAMGetPreviousCBAccountResponse\x10\xd9 \x12\"\n\x1dk_EMsgAMGetUserLicenseHistory\x10\xde \x12*\n%k_EMsgAMGetUserLicenseHistoryResponse\x10\xdf \x12\"\n\x1dk_EMsgAMSupportChangePassword\x10\xe2 \x12\x1f\n\x1ak_EMsgAMSupportChangeEmail\x10\xe3 \x12(\n#k_EMsgAMResetUserVerificationGSByIP\x10\xe5 \x12\x1e\n\x19k_EMsgAMUpdateGSPlayStats\x10\xe6 \x12#\n\x1ek_EMsgAMSupportEnableOrDisable\x10\xe7 \x12\x1e\n\x19k_EMsgAMGetPurchaseStatus\x10\xee \x12$\n\x1fk_EMsgAMSupportIsAccountEnabled\x10\xf1 \x12,\n\'k_EMsgAMSupportIsAccountEnabledResponse\x10\xf2 \x12\x1a\n\x15k_EMsgUGSGetUserStats\x10\xf3 \x12\x1f\n\x1ak_EMsgAMSupportKickSession\x10\xf4 \x12\x15\n\x10k_EMsgAMGSSearch\x10\xf5 \x12!\n\x1ck_EMsgMarketingMessageUpdate\x10\xf8 \x12#\n\x1ek_EMsgChatServerRouteFriendMsg\x10\xfb \x12(\n#k_EMsgAMTicketAuthRequestOrResponse\x10\xfc \x12\x1b\n\x16k_EMsgAMAddFreeLicense\x10\x80!\x12\x1e\n\x19k_EMsgAMValidateEmailLink\x10\x87!\x12&\n!k_EMsgAMValidateEmailLinkResponse\x10\x88!\x12\x1c\n\x17k_EMsgUGSStoreUserStats\x10\x8c!\x12\x1d\n\x18k_EMsgAMDeleteStoredCard\x10\x91!\x12!\n\x1ck_EMsgAMRevokeLegacyGameKeys\x10\x92!\x12\x1d\n\x18k_EMsgAMGetWalletDetails\x10\x94!\x12%\n k_EMsgAMGetWalletDetailsResponse\x10\x95!\x12$\n\x1fk_EMsgAMDeleteStoredPaymentInfo\x10\x96!\x12$\n\x1fk_EMsgAMGetStoredPaymentSummary\x10\x97!\x12,\n\'k_EMsgAMGetStoredPaymentSummaryResponse\x10\x98!\x12$\n\x1fk_EMsgAMGetWalletConversionRate\x10\x99!\x12,\n\'k_EMsgAMGetWalletConversionRateResponse\x10\x9a!\x12\x1a\n\x15k_EMsgAMConvertWallet\x10\x9b!\x12\"\n\x1dk_EMsgAMConvertWalletResponse\x10\x9c!\x12\x1b\n\x16k_EMsgAMSetPreApproval\x10\x9f!\x12#\n\x1ek_EMsgAMSetPreApprovalResponse\x10\xa0!\x12\x19\n\x14k_EMsgAMCreateRefund\x10\xa2!\x12\x1d\n\x18k_EMsgAMCreateChargeback\x10\xa4!\x12\x1a\n\x15k_EMsgAMCreateDispute\x10\xa6!\x12\x19\n\x14k_EMsgAMClearDispute\x10\xa8!\x12&\n!k_EMsgAMCreateFinancialAdjustment\x10\xa9!\x12\x1f\n\x1ak_EMsgAMPlayerNicknameList\x10\xaa!\x12\'\n\"k_EMsgAMPlayerNicknameListResponse\x10\xab!\x12\x1d\n\x18k_EMsgAMSetDRMTestConfig\x10\xac!\x12#\n\x1ek_EMsgAMGetUserCurrentGameInfo\x10\xad!\x12+\n&k_EMsgAMGetUserCurrentGameInfoResponse\x10\xae!\x12\x1c\n\x17k_EMsgAMGetGSPlayerList\x10\xaf!\x12$\n\x1fk_EMsgAMGetGSPlayerListResponse\x10\xb0!\x12\"\n\x1dk_EMsgAMGetSteamIDForMicroTxn\x10\xb6!\x12*\n%k_EMsgAMGetSteamIDForMicroTxnResponse\x10\xb7!\x12\x1d\n\x18k_EMsgAMSetPartnerMember\x10\xb8!\x12 \n\x1bk_EMsgAMRemovePublisherUser\x10\xb9!\x12\x1f\n\x1ak_EMsgAMGetUserLicenseList\x10\xba!\x12\'\n\"k_EMsgAMGetUserLicenseListResponse\x10\xbb!\x12\"\n\x1dk_EMsgAMReloadGameGroupPolicy\x10\xbc!\x12#\n\x1ek_EMsgAMAddFreeLicenseResponse\x10\xbd!\x12\x1c\n\x17k_EMsgAMVACStatusUpdate\x10\xbe!\x12\x1e\n\x19k_EMsgAMGetAccountDetails\x10\xbf!\x12&\n!k_EMsgAMGetAccountDetailsResponse\x10\xc0!\x12!\n\x1ck_EMsgAMGetPlayerLinkDetails\x10\xc1!\x12)\n$k_EMsgAMGetPlayerLinkDetailsResponse\x10\xc2!\x12)\n$k_EMsgAMGetAccountFlagsForWGSpoofing\x10\xc6!\x12\x31\n,k_EMsgAMGetAccountFlagsForWGSpoofingResponse\x10\xc7!\x12\x1c\n\x17k_EMsgAMGetClanOfficers\x10\xca!\x12$\n\x1fk_EMsgAMGetClanOfficersResponse\x10\xcb!\x12\x17\n\x12k_EMsgAMNameChange\x10\xcc!\x12\x1b\n\x16k_EMsgAMGetNameHistory\x10\xcd!\x12#\n\x1ek_EMsgAMGetNameHistoryResponse\x10\xce!\x12!\n\x1ck_EMsgAMUpdateProviderStatus\x10\xd1!\x12)\n$k_EMsgAMSupportRemoveAccountSecurity\x10\xd3!\x12*\n%k_EMsgAMIsAccountInCaptchaGracePeriod\x10\xd4!\x12\x32\n-k_EMsgAMIsAccountInCaptchaGracePeriodResponse\x10\xd5!\x12\x1d\n\x18k_EMsgAMAccountPS3Unlink\x10\xd6!\x12%\n k_EMsgAMAccountPS3UnlinkResponse\x10\xd7!\x12$\n\x1fk_EMsgUGSStoreUserStatsResponse\x10\xd8!\x12\x1e\n\x19k_EMsgAMGetAccountPSNInfo\x10\xd9!\x12&\n!k_EMsgAMGetAccountPSNInfoResponse\x10\xda!\x12$\n\x1fk_EMsgAMAuthenticatedPlayerList\x10\xdb!\x12\x19\n\x14k_EMsgAMGetUserGifts\x10\xdc!\x12!\n\x1ck_EMsgAMGetUserGiftsResponse\x10\xdd!\x12 \n\x1bk_EMsgAMTransferLockedGifts\x10\xe0!\x12(\n#k_EMsgAMTransferLockedGiftsResponse\x10\xe1!\x12%\n k_EMsgAMPlayerHostedOnGameServer\x10\xe2!\x12\x1e\n\x19k_EMsgAMGetAccountBanInfo\x10\xe3!\x12&\n!k_EMsgAMGetAccountBanInfoResponse\x10\xe4!\x12!\n\x1ck_EMsgAMRecordBanEnforcement\x10\xe5!\x12!\n\x1ck_EMsgAMRollbackGiftTransfer\x10\xe6!\x12)\n$k_EMsgAMRollbackGiftTransferResponse\x10\xe7!\x12%\n k_EMsgAMHandlePendingTransaction\x10\xe8!\x12\x1f\n\x1ak_EMsgAMRequestClanDetails\x10\xe9!\x12(\n#k_EMsgAMDeleteStoredPaypalAgreement\x10\xea!\x12\x1d\n\x18k_EMsgAMGameServerUpdate\x10\xeb!\x12\x1d\n\x18k_EMsgAMGameServerRemove\x10\xec!\x12 \n\x1bk_EMsgAMGetPaypalAgreements\x10\xed!\x12(\n#k_EMsgAMGetPaypalAgreementsResponse\x10\xee!\x12/\n*k_EMsgAMGameServerPlayerCompatibilityCheck\x10\xef!\x12\x37\n2k_EMsgAMGameServerPlayerCompatibilityCheckResponse\x10\xf0!\x12\x19\n\x14k_EMsgAMRenewLicense\x10\xf1!\x12\'\n\"k_EMsgAMGetAccountCommunityBanInfo\x10\xf2!\x12/\n*k_EMsgAMGetAccountCommunityBanInfoResponse\x10\xf3!\x12,\n\'k_EMsgAMGameServerAccountChangePassword\x10\xf4!\x12+\n&k_EMsgAMGameServerAccountDeleteAccount\x10\xf5!\x12\x1b\n\x16k_EMsgAMRenewAgreement\x10\xf6!\x12\x1a\n\x15k_EMsgAMXsollaPayment\x10\xf8!\x12\"\n\x1dk_EMsgAMXsollaPaymentResponse\x10\xf9!\x12\"\n\x1dk_EMsgAMAcctAllowedToPurchase\x10\xfa!\x12*\n%k_EMsgAMAcctAllowedToPurchaseResponse\x10\xfb!\x12\x1d\n\x18k_EMsgAMSwapKioskDeposit\x10\xfc!\x12%\n k_EMsgAMSwapKioskDepositResponse\x10\xfd!\x12\x1f\n\x1ak_EMsgAMSetUserGiftUnowned\x10\xfe!\x12\'\n\"k_EMsgAMSetUserGiftUnownedResponse\x10\xff!\x12!\n\x1ck_EMsgAMClaimUnownedUserGift\x10\x80\"\x12)\n$k_EMsgAMClaimUnownedUserGiftResponse\x10\x81\"\x12\x18\n\x13k_EMsgAMSetClanName\x10\x82\"\x12 \n\x1bk_EMsgAMSetClanNameResponse\x10\x83\"\x12\x18\n\x13k_EMsgAMGrantCoupon\x10\x84\"\x12 \n\x1bk_EMsgAMGrantCouponResponse\x10\x85\"\x12-\n(k_EMsgAMIsPackageRestrictedInUserCountry\x10\x86\"\x12\x35\n0k_EMsgAMIsPackageRestrictedInUserCountryResponse\x10\x87\"\x12-\n(k_EMsgAMHandlePendingTransactionResponse\x10\x88\"\x12\x1e\n\x19k_EMsgAMGrantGuestPasses2\x10\x89\"\x12&\n!k_EMsgAMGrantGuestPasses2Response\x10\x8a\"\x12 \n\x1bk_EMsgAMGetPlayerBanDetails\x10\x8d\"\x12(\n#k_EMsgAMGetPlayerBanDetailsResponse\x10\x8e\"\x12\x1d\n\x18k_EMsgAMFinalizePurchase\x10\x8f\"\x12%\n k_EMsgAMFinalizePurchaseResponse\x10\x90\"\x12\"\n\x1dk_EMsgAMPersonaChangeResponse\x10\x94\"\x12+\n&k_EMsgAMGetClanDetailsForForumCreation\x10\x95\"\x12\x33\n.k_EMsgAMGetClanDetailsForForumCreationResponse\x10\x96\"\x12(\n#k_EMsgAMGetPendingNotificationCount\x10\x97\"\x12\x30\n+k_EMsgAMGetPendingNotificationCountResponse\x10\x98\"\x12 \n\x1bk_EMsgAMPasswordHashUpgrade\x10\x99\"\x12\x1d\n\x18k_EMsgAMBoaCompraPayment\x10\x9c\"\x12%\n k_EMsgAMBoaCompraPaymentResponse\x10\x9d\"\x12%\n k_EMsgAMCompleteExternalPurchase\x10\x9f\"\x12-\n(k_EMsgAMCompleteExternalPurchaseResponse\x10\xa0\"\x12)\n$k_EMsgAMResolveNegativeWalletCredits\x10\xa1\"\x12\x31\n,k_EMsgAMResolveNegativeWalletCreditsResponse\x10\xa2\"\x12&\n!k_EMsgAMPlayerGetClanBasicDetails\x10\xa5\"\x12.\n)k_EMsgAMPlayerGetClanBasicDetailsResponse\x10\xa6\"\x12\x17\n\x12k_EMsgAMMOLPayment\x10\xa7\"\x12\x1f\n\x1ak_EMsgAMMOLPaymentResponse\x10\xa8\"\x12\x1b\n\x16k_EMsgGetUserIPCountry\x10\xa9\"\x12#\n\x1ek_EMsgGetUserIPCountryResponse\x10\xaa\"\x12+\n&k_EMsgNotificationOfSuspiciousActivity\x10\xab\"\x12\x1a\n\x15k_EMsgAMDegicaPayment\x10\xac\"\x12\"\n\x1dk_EMsgAMDegicaPaymentResponse\x10\xad\"\x12\x19\n\x14k_EMsgAMEClubPayment\x10\xae\"\x12!\n\x1ck_EMsgAMEClubPaymentResponse\x10\xaf\"\x12%\n k_EMsgAMPayPalPaymentsHubPayment\x10\xb0\"\x12-\n(k_EMsgAMPayPalPaymentsHubPaymentResponse\x10\xb1\"\x12\x31\n,k_EMsgAMTwoFactorRecoverAuthenticatorRequest\x10\xb2\"\x12\x32\n-k_EMsgAMTwoFactorRecoverAuthenticatorResponse\x10\xb3\"\x12\x1d\n\x18k_EMsgAMSmart2PayPayment\x10\xb4\"\x12%\n k_EMsgAMSmart2PayPaymentResponse\x10\xb5\"\x12\x37\n2k_EMsgAMValidatePasswordResetCodeAndSendSmsRequest\x10\xb6\"\x12\x38\n3k_EMsgAMValidatePasswordResetCodeAndSendSmsResponse\x10\xb7\"\x12*\n%k_EMsgAMGetAccountResetDetailsRequest\x10\xb8\"\x12+\n&k_EMsgAMGetAccountResetDetailsResponse\x10\xb9\"\x12\x1a\n\x15k_EMsgAMBitPayPayment\x10\xba\"\x12\"\n\x1dk_EMsgAMBitPayPaymentResponse\x10\xbb\"\x12\"\n\x1dk_EMsgAMSendAccountInfoUpdate\x10\xbc\"\x12\x1e\n\x19k_EMsgAMSendScheduledGift\x10\xbd\"\x12\x1a\n\x15k_EMsgAMNodwinPayment\x10\xbe\"\x12\"\n\x1dk_EMsgAMNodwinPaymentResponse\x10\xbf\"\x12 \n\x1bk_EMsgAMResolveWalletRevoke\x10\xc0\"\x12\'\n\"k_EMsgAMResolveWalletReverseRevoke\x10\xc1\"\x12\x1a\n\x15k_EMsgAMFundedPayment\x10\xc2\"\x12\"\n\x1dk_EMsgAMFundedPaymentResponse\x10\xc3\"\x12.\n)k_EMsgAMRequestPersonaUpdateForChatServer\x10\xc4\"\x12 \n\x1bk_EMsgAMPerfectWorldPayment\x10\xc5\"\x12(\n#k_EMsgAMPerfectWorldPaymentResponse\x10\xc6\"\x12\x16\n\x11k_EMsgBasePSRange\x10\x88\'\x12\x1f\n\x1ak_EMsgPSCreateShoppingCart\x10\x89\'\x12\'\n\"k_EMsgPSCreateShoppingCartResponse\x10\x8a\'\x12 \n\x1bk_EMsgPSIsValidShoppingCart\x10\x8b\'\x12(\n#k_EMsgPSIsValidShoppingCartResponse\x10\x8c\'\x12+\n&k_EMsgPSRemoveLineItemFromShoppingCart\x10\x8f\'\x12\x33\n.k_EMsgPSRemoveLineItemFromShoppingCartResponse\x10\x90\'\x12$\n\x1fk_EMsgPSGetShoppingCartContents\x10\x91\'\x12,\n\'k_EMsgPSGetShoppingCartContentsResponse\x10\x92\'\x12*\n%k_EMsgPSAddWalletCreditToShoppingCart\x10\x93\'\x12\x32\n-k_EMsgPSAddWalletCreditToShoppingCartResponse\x10\x94\'\x12\x17\n\x12k_EMsgBaseUFSRange\x10\xd0(\x12%\n k_EMsgClientUFSUploadFileRequest\x10\xd2(\x12&\n!k_EMsgClientUFSUploadFileResponse\x10\xd3(\x12#\n\x1ek_EMsgClientUFSUploadFileChunk\x10\xd4(\x12&\n!k_EMsgClientUFSUploadFileFinished\x10\xd5(\x12%\n k_EMsgClientUFSGetFileListForApp\x10\xd6(\x12-\n(k_EMsgClientUFSGetFileListForAppResponse\x10\xd7(\x12#\n\x1ek_EMsgClientUFSDownloadRequest\x10\xda(\x12$\n\x1fk_EMsgClientUFSDownloadResponse\x10\xdb(\x12!\n\x1ck_EMsgClientUFSDownloadChunk\x10\xdc(\x12 \n\x1bk_EMsgClientUFSLoginRequest\x10\xdd(\x12!\n\x1ck_EMsgClientUFSLoginResponse\x10\xde(\x12!\n\x1ck_EMsgUFSReloadPartitionInfo\x10\xdf(\x12%\n k_EMsgClientUFSTransferHeartbeat\x10\xe0(\x12\x1d\n\x18k_EMsgUFSSynchronizeFile\x10\xe1(\x12%\n k_EMsgUFSSynchronizeFileResponse\x10\xe2(\x12%\n k_EMsgClientUFSDeleteFileRequest\x10\xe3(\x12&\n!k_EMsgClientUFSDeleteFileResponse\x10\xe4(\x12!\n\x1ck_EMsgClientUFSGetUGCDetails\x10\xea(\x12)\n$k_EMsgClientUFSGetUGCDetailsResponse\x10\xeb(\x12\x1d\n\x18k_EMsgUFSUpdateFileFlags\x10\xec(\x12%\n k_EMsgUFSUpdateFileFlagsResponse\x10\xed(\x12%\n k_EMsgClientUFSGetSingleFileInfo\x10\xee(\x12-\n(k_EMsgClientUFSGetSingleFileInfoResponse\x10\xef(\x12\x1d\n\x18k_EMsgClientUFSShareFile\x10\xf0(\x12%\n k_EMsgClientUFSShareFileResponse\x10\xf1(\x12\x1b\n\x16k_EMsgUFSReloadAccount\x10\xf2(\x12#\n\x1ek_EMsgUFSReloadAccountResponse\x10\xf3(\x12!\n\x1ck_EMsgUFSUpdateRecordBatched\x10\xf4(\x12)\n$k_EMsgUFSUpdateRecordBatchedResponse\x10\xf5(\x12\x19\n\x14k_EMsgUFSMigrateFile\x10\xf6(\x12!\n\x1ck_EMsgUFSMigrateFileResponse\x10\xf7(\x12\x18\n\x13k_EMsgUFSGetUGCURLs\x10\xf8(\x12 \n\x1bk_EMsgUFSGetUGCURLsResponse\x10\xf9(\x12)\n$k_EMsgUFSHttpUploadFileFinishRequest\x10\xfa(\x12*\n%k_EMsgUFSHttpUploadFileFinishResponse\x10\xfb(\x12\"\n\x1dk_EMsgUFSDownloadStartRequest\x10\xfc(\x12#\n\x1ek_EMsgUFSDownloadStartResponse\x10\xfd(\x12\"\n\x1dk_EMsgUFSDownloadChunkRequest\x10\xfe(\x12#\n\x1ek_EMsgUFSDownloadChunkResponse\x10\xff(\x12#\n\x1ek_EMsgUFSDownloadFinishRequest\x10\x80)\x12$\n\x1fk_EMsgUFSDownloadFinishResponse\x10\x81)\x12\x1b\n\x16k_EMsgUFSFlushURLCache\x10\x82)\x12 \n\x1bk_EMsgClientUFSUploadCommit\x10\x83)\x12(\n#k_EMsgClientUFSUploadCommitResponse\x10\x84)\x12\x1e\n\x19k_EMsgUFSMigrateFileAppID\x10\x85)\x12&\n!k_EMsgUFSMigrateFileAppIDResponse\x10\x86)\x12\x16\n\x11k_EMsgBaseClient2\x10\x98*\x12.\n)k_EMsgClientRequestForgottenPasswordEmail\x10\x99*\x12\x36\n1k_EMsgClientRequestForgottenPasswordEmailResponse\x10\x9a*\x12&\n!k_EMsgClientCreateAccountResponse\x10\x9b*\x12\'\n\"k_EMsgClientResetForgottenPassword\x10\x9c*\x12/\n*k_EMsgClientResetForgottenPasswordResponse\x10\x9d*\x12/\n*k_EMsgClientInformOfResetForgottenPassword\x10\x9f*\x12\x37\n2k_EMsgClientInformOfResetForgottenPasswordResponse\x10\xa0*\x12)\n$k_EMsgClientAnonUserLogOn_Deprecated\x10\xa1*\x12(\n#k_EMsgClientGamesPlayedWithDataBlob\x10\xa2*\x12#\n\x1ek_EMsgClientUpdateUserGameInfo\x10\xa3*\x12\x1f\n\x1ak_EMsgClientFileToDownload\x10\xa4*\x12\'\n\"k_EMsgClientFileToDownloadResponse\x10\xa5*\x12\x1c\n\x17k_EMsgClientLBSSetScore\x10\xa6*\x12$\n\x1fk_EMsgClientLBSSetScoreResponse\x10\xa7*\x12\"\n\x1dk_EMsgClientLBSFindOrCreateLB\x10\xa8*\x12*\n%k_EMsgClientLBSFindOrCreateLBResponse\x10\xa9*\x12 \n\x1bk_EMsgClientLBSGetLBEntries\x10\xaa*\x12(\n#k_EMsgClientLBSGetLBEntriesResponse\x10\xab*\x12\x1d\n\x18k_EMsgClientChatDeclined\x10\xb2*\x12\"\n\x1dk_EMsgClientFriendMsgIncoming\x10\xb3*\x12$\n\x1fk_EMsgClientAuthList_Deprecated\x10\xb4*\x12#\n\x1ek_EMsgClientTicketAuthComplete\x10\xb5*\x12!\n\x1ck_EMsgClientIsLimitedAccount\x10\xb6*\x12 \n\x1bk_EMsgClientRequestAuthList\x10\xb7*\x12\x19\n\x14k_EMsgClientAuthList\x10\xb8*\x12\x15\n\x10k_EMsgClientStat\x10\xb9*\x12\"\n\x1dk_EMsgClientP2PConnectionInfo\x10\xba*\x12&\n!k_EMsgClientP2PConnectionFailInfo\x10\xbb*\x12&\n!k_EMsgClientGetDepotDecryptionKey\x10\xbe*\x12.\n)k_EMsgClientGetDepotDecryptionKeyResponse\x10\xbf*\x12\"\n\x1dk_EMsgGSPerformHardwareSurvey\x10\xc0*\x12\"\n\x1dk_EMsgClientEnableTestLicense\x10\xc3*\x12*\n%k_EMsgClientEnableTestLicenseResponse\x10\xc4*\x12#\n\x1ek_EMsgClientDisableTestLicense\x10\xc5*\x12+\n&k_EMsgClientDisableTestLicenseResponse\x10\xc6*\x12&\n!k_EMsgClientRequestValidationMail\x10\xc8*\x12.\n)k_EMsgClientRequestValidationMailResponse\x10\xc9*\x12%\n k_EMsgClientCheckAppBetaPassword\x10\xca*\x12-\n(k_EMsgClientCheckAppBetaPasswordResponse\x10\xcb*\x12\x15\n\x10k_EMsgClientToGC\x10\xcc*\x12\x17\n\x12k_EMsgClientFromGC\x10\xcd*\x12\x1e\n\x19k_EMsgClientEmailAddrInfo\x10\xd0*\x12 \n\x1bk_EMsgClientPasswordChange3\x10\xd1*\x12\x1d\n\x18k_EMsgClientEmailChange3\x10\xd2*\x12\"\n\x1dk_EMsgClientPersonalQAChange3\x10\xd3*\x12(\n#k_EMsgClientResetForgottenPassword3\x10\xd4*\x12/\n*k_EMsgClientRequestForgottenPasswordEmail3\x10\xd5*\x12\x1c\n\x17k_EMsgClientNewLoginKey\x10\xd7*\x12$\n\x1fk_EMsgClientNewLoginKeyAccepted\x10\xd8*\x12)\n$k_EMsgClientLogOnWithHash_Deprecated\x10\xd9*\x12 \n\x1bk_EMsgClientStoreUserStats2\x10\xda*\x12\x1d\n\x18k_EMsgClientStatsUpdated\x10\xdb*\x12#\n\x1ek_EMsgClientActivateOEMLicense\x10\xdc*\x12#\n\x1ek_EMsgClientRegisterOEMMachine\x10\xdd*\x12+\n&k_EMsgClientRegisterOEMMachineResponse\x10\xde*\x12%\n k_EMsgClientRequestedClientStats\x10\xe8*\x12\x1b\n\x16k_EMsgClientStat2Int32\x10\xe9*\x12\x16\n\x11k_EMsgClientStat2\x10\xea*\x12\x1f\n\x1ak_EMsgClientVerifyPassword\x10\xeb*\x12\'\n\"k_EMsgClientVerifyPasswordResponse\x10\xec*\x12#\n\x1ek_EMsgClientDRMDownloadRequest\x10\xed*\x12$\n\x1fk_EMsgClientDRMDownloadResponse\x10\xee*\x12\x1f\n\x1ak_EMsgClientDRMFinalResult\x10\xef*\x12&\n!k_EMsgClientGetFriendsWhoPlayGame\x10\xf0*\x12.\n)k_EMsgClientGetFriendsWhoPlayGameResponse\x10\xf1*\x12 \n\x1bk_EMsgClientOGSBeginSession\x10\xf2*\x12(\n#k_EMsgClientOGSBeginSessionResponse\x10\xf3*\x12\x1e\n\x19k_EMsgClientOGSEndSession\x10\xf4*\x12&\n!k_EMsgClientOGSEndSessionResponse\x10\xf5*\x12\x1c\n\x17k_EMsgClientOGSWriteRow\x10\xf6*\x12\x18\n\x13k_EMsgClientDRMTest\x10\xf7*\x12\x1e\n\x19k_EMsgClientDRMTestResult\x10\xf8*\x12\"\n\x1dk_EMsgClientServerUnavailable\x10\xfc*\x12!\n\x1ck_EMsgClientServersAvailable\x10\xfd*\x12)\n$k_EMsgClientRegisterAuthTicketWithCM\x10\xfe*\x12\x1c\n\x17k_EMsgClientGCMsgFailed\x10\xff*\x12$\n\x1fk_EMsgClientMicroTxnAuthRequest\x10\x80+\x12\"\n\x1dk_EMsgClientMicroTxnAuthorize\x10\x81+\x12*\n%k_EMsgClientMicroTxnAuthorizeResponse\x10\x82+\x12 \n\x1bk_EMsgClientGetMicroTxnInfo\x10\x84+\x12(\n#k_EMsgClientGetMicroTxnInfoResponse\x10\x85+\x12(\n#k_EMsgClientMarketingMessageUpdate2\x10\x86+\x12%\n k_EMsgClientDeregisterWithServer\x10\x87+\x12\'\n\"k_EMsgClientSubscribeToPersonaFeed\x10\x88+\x12\x16\n\x11k_EMsgClientLogon\x10\x8a+\x12!\n\x1ck_EMsgClientGetClientDetails\x10\x8b+\x12)\n$k_EMsgClientGetClientDetailsResponse\x10\x8c+\x12+\n&k_EMsgClientReportOverlayDetourFailure\x10\x8d+\x12!\n\x1ck_EMsgClientGetClientAppList\x10\x8e+\x12)\n$k_EMsgClientGetClientAppListResponse\x10\x8f+\x12!\n\x1ck_EMsgClientInstallClientApp\x10\x90+\x12)\n$k_EMsgClientInstallClientAppResponse\x10\x91+\x12#\n\x1ek_EMsgClientUninstallClientApp\x10\x92+\x12+\n&k_EMsgClientUninstallClientAppResponse\x10\x93+\x12(\n#k_EMsgClientSetClientAppUpdateState\x10\x94+\x12\x30\n+k_EMsgClientSetClientAppUpdateStateResponse\x10\x95+\x12*\n%k_EMsgClientRequestEncryptedAppTicket\x10\x96+\x12\x32\n-k_EMsgClientRequestEncryptedAppTicketResponse\x10\x97+\x12!\n\x1ck_EMsgClientWalletInfoUpdate\x10\x98+\x12\x1a\n\x15k_EMsgClientLBSSetUGC\x10\x99+\x12\"\n\x1dk_EMsgClientLBSSetUGCResponse\x10\x9a+\x12\"\n\x1dk_EMsgClientAMGetClanOfficers\x10\x9b+\x12*\n%k_EMsgClientAMGetClanOfficersResponse\x10\x9c+\x12\"\n\x1dk_EMsgClientFriendProfileInfo\x10\x9f+\x12*\n%k_EMsgClientFriendProfileInfoResponse\x10\xa0+\x12\"\n\x1dk_EMsgClientUpdateMachineAuth\x10\xa1+\x12*\n%k_EMsgClientUpdateMachineAuthResponse\x10\xa2+\x12 \n\x1bk_EMsgClientReadMachineAuth\x10\xa3+\x12(\n#k_EMsgClientReadMachineAuthResponse\x10\xa4+\x12#\n\x1ek_EMsgClientRequestMachineAuth\x10\xa5+\x12+\n&k_EMsgClientRequestMachineAuthResponse\x10\xa6+\x12#\n\x1ek_EMsgClientScreenshotsChanged\x10\xa7+\x12 \n\x1bk_EMsgClientGetCDNAuthToken\x10\xaa+\x12(\n#k_EMsgClientGetCDNAuthTokenResponse\x10\xab+\x12\'\n\"k_EMsgClientDownloadRateStatistics\x10\xac+\x12#\n\x1ek_EMsgClientRequestAccountData\x10\xad+\x12+\n&k_EMsgClientRequestAccountDataResponse\x10\xae+\x12(\n#k_EMsgClientResetForgottenPassword4\x10\xaf+\x12\x1b\n\x16k_EMsgClientHideFriend\x10\xb0+\x12\"\n\x1dk_EMsgClientFriendsGroupsList\x10\xb1+\x12&\n!k_EMsgClientGetClanActivityCounts\x10\xb2+\x12.\n)k_EMsgClientGetClanActivityCountsResponse\x10\xb3+\x12 \n\x1bk_EMsgClientOGSReportString\x10\xb4+\x12\x1d\n\x18k_EMsgClientOGSReportBug\x10\xb5+\x12\x19\n\x14k_EMsgClientSentLogs\x10\xb6+\x12 \n\x1bk_EMsgClientLogonGameServer\x10\xb7+\x12%\n k_EMsgAMClientCreateFriendsGroup\x10\xb8+\x12-\n(k_EMsgAMClientCreateFriendsGroupResponse\x10\xb9+\x12%\n k_EMsgAMClientDeleteFriendsGroup\x10\xba+\x12-\n(k_EMsgAMClientDeleteFriendsGroupResponse\x10\xbb+\x12%\n k_EMsgAMClientManageFriendsGroup\x10\xbc+\x12-\n(k_EMsgAMClientManageFriendsGroupResponse\x10\xbd+\x12#\n\x1ek_EMsgAMClientAddFriendToGroup\x10\xbe+\x12+\n&k_EMsgAMClientAddFriendToGroupResponse\x10\xbf+\x12(\n#k_EMsgAMClientRemoveFriendFromGroup\x10\xc0+\x12\x30\n+k_EMsgAMClientRemoveFriendFromGroupResponse\x10\xc1+\x12(\n#k_EMsgClientAMGetPersonaNameHistory\x10\xc2+\x12\x30\n+k_EMsgClientAMGetPersonaNameHistoryResponse\x10\xc3+\x12#\n\x1ek_EMsgClientRequestFreeLicense\x10\xc4+\x12+\n&k_EMsgClientRequestFreeLicenseResponse\x10\xc5+\x12\x30\n+k_EMsgClientDRMDownloadRequestWithCrashData\x10\xc6+\x12\x1c\n\x17k_EMsgClientAuthListAck\x10\xc7+\x12\"\n\x1dk_EMsgClientItemAnnouncements\x10\xc8+\x12)\n$k_EMsgClientRequestItemAnnouncements\x10\xc9+\x12&\n!k_EMsgClientFriendMsgEchoToSender\x10\xca+\x12%\n k_EMsgClientCommentNotifications\x10\xce+\x12,\n\'k_EMsgClientRequestCommentNotifications\x10\xcf+\x12&\n!k_EMsgClientPersonaChangeResponse\x10\xd0+\x12\x33\n.k_EMsgClientRequestWebAPIAuthenticateUserNonce\x10\xd1+\x12;\n6k_EMsgClientRequestWebAPIAuthenticateUserNonceResponse\x10\xd2+\x12#\n\x1ek_EMsgClientPlayerNicknameList\x10\xd3+\x12$\n\x1fk_EMsgAMClientSetPlayerNickname\x10\xd4+\x12,\n\'k_EMsgAMClientSetPlayerNicknameResponse\x10\xd5+\x12,\n\'k_EMsgClientGetNumberOfCurrentPlayersDP\x10\xd8+\x12\x34\n/k_EMsgClientGetNumberOfCurrentPlayersDPResponse\x10\xd9+\x12$\n\x1fk_EMsgClientServiceMethodLegacy\x10\xda+\x12,\n\'k_EMsgClientServiceMethodLegacyResponse\x10\xdb+\x12*\n%k_EMsgClientFriendUserStatusPublished\x10\xdc+\x12\x1e\n\x19k_EMsgClientCurrentUIMode\x10\xdd+\x12-\n(k_EMsgClientVanityURLChangedNotification\x10\xde+\x12\"\n\x1dk_EMsgClientUserNotifications\x10\xdf+\x12\x12\n\rk_EMsgBaseDFS\x10\xe0+\x12\x15\n\x10k_EMsgDFSGetFile\x10\xe1+\x12\x1e\n\x19k_EMsgDFSInstallLocalFile\x10\xe2+\x12\x18\n\x13k_EMsgDFSConnection\x10\xe3+\x12\x1d\n\x18k_EMsgDFSConnectionReply\x10\xe4+\x12\'\n\"k_EMsgClientDFSAuthenticateRequest\x10\xe5+\x12(\n#k_EMsgClientDFSAuthenticateResponse\x10\xe6+\x12\x1e\n\x19k_EMsgClientDFSEndSession\x10\xe7+\x12\x17\n\x12k_EMsgDFSPurgeFile\x10\xe8+\x12\x17\n\x12k_EMsgDFSRouteFile\x10\xe9+\x12\x1f\n\x1ak_EMsgDFSGetFileFromServer\x10\xea+\x12\x1e\n\x19k_EMsgDFSAcceptedResponse\x10\xeb+\x12\x1d\n\x18k_EMsgDFSRequestPingback\x10\xec+\x12\x1e\n\x19k_EMsgDFSRecvTransmitFile\x10\xed+\x12\x1e\n\x19k_EMsgDFSSendTransmitFile\x10\xee+\x12\x1e\n\x19k_EMsgDFSRequestPingback2\x10\xef+\x12\x1f\n\x1ak_EMsgDFSResponsePingback2\x10\xf0+\x12\"\n\x1dk_EMsgClientDFSDownloadStatus\x10\xf1+\x12\x1b\n\x16k_EMsgDFSStartTransfer\x10\xf2+\x12\x1e\n\x19k_EMsgDFSTransferComplete\x10\xf3+\x12\x1f\n\x1ak_EMsgDFSRouteFileResponse\x10\xf4+\x12&\n!k_EMsgClientNetworkingCertRequest\x10\xf5+\x12.\n)k_EMsgClientNetworkingCertRequestResponse\x10\xf6+\x12!\n\x1ck_EMsgClientChallengeRequest\x10\xf7+\x12\"\n\x1dk_EMsgClientChallengeResponse\x10\xf8+\x12#\n\x1ek_EMsgBadgeCraftedNotification\x10\xf9+\x12,\n\'k_EMsgClientNetworkingMobileCertRequest\x10\xfa+\x12\x34\n/k_EMsgClientNetworkingMobileCertRequestResponse\x10\xfb+\x12\x12\n\rk_EMsgBaseMDS\x10\xa8-\x12\'\n\"k_EMsgAMToMDSGetDepotDecryptionKey\x10\xb4-\x12/\n*k_EMsgMDSToAMGetDepotDecryptionKeyResponse\x10\xb5-\x12(\n#k_EMsgMDSContentServerConfigRequest\x10\xc3-\x12!\n\x1ck_EMsgMDSContentServerConfig\x10\xc4-\x12\x1e\n\x19k_EMsgMDSGetDepotManifest\x10\xc5-\x12&\n!k_EMsgMDSGetDepotManifestResponse\x10\xc6-\x12#\n\x1ek_EMsgMDSGetDepotManifestChunk\x10\xc7-\x12\x1b\n\x16k_EMsgMDSGetDepotChunk\x10\xc8-\x12#\n\x1ek_EMsgMDSGetDepotChunkResponse\x10\xc9-\x12 \n\x1bk_EMsgMDSGetDepotChunkChunk\x10\xca-\x12\x1c\n\x17k_EMsgMDSToCSFlushChunk\x10\xd4-\x12\x1a\n\x15k_EMsgMDSMigrateChunk\x10\xd7-\x12\"\n\x1dk_EMsgMDSMigrateChunkResponse\x10\xd8-\x12\x1f\n\x1ak_EMsgMDSToCSFlushManifest\x10\xd9-\x12\x11\n\x0ck_EMsgCSBase\x10\xb8\x30\x12\x11\n\x0ck_EMsgCSPing\x10\xb9\x30\x12\x19\n\x14k_EMsgCSPingResponse\x10\xba\x30\x12\x12\n\rk_EMsgGMSBase\x10\x80\x32\x12!\n\x1ck_EMsgGMSGameServerReplicate\x10\x81\x32\x12\x1f\n\x1ak_EMsgClientGMSServerQuery\x10\x83\x32\x12\'\n\"k_EMsgGMSClientServerQueryResponse\x10\x84\x32\x12 \n\x1bk_EMsgAMGMSGameServerUpdate\x10\x85\x32\x12 \n\x1bk_EMsgAMGMSGameServerRemove\x10\x86\x32\x12\x1e\n\x19k_EMsgGameServerOutOfDate\x10\x87\x32\x12\"\n\x1dk_EMsgDeviceAuthorizationBase\x10\xe4\x32\x12,\n\'k_EMsgClientAuthorizeLocalDeviceRequest\x10\xe5\x32\x12-\n(k_EMsgClientAuthorizeLocalDeviceResponse\x10\xe6\x32\x12)\n$k_EMsgClientDeauthorizeDeviceRequest\x10\xe7\x32\x12\"\n\x1dk_EMsgClientDeauthorizeDevice\x10\xe8\x32\x12-\n(k_EMsgClientUseLocalDeviceAuthorizations\x10\xe9\x32\x12%\n k_EMsgClientGetAuthorizedDevices\x10\xea\x32\x12-\n(k_EMsgClientGetAuthorizedDevicesResponse\x10\xeb\x32\x12*\n%k_EMsgAMNotifySessionDeviceAuthorized\x10\xec\x32\x12\x31\n,k_EMsgClientAuthorizeLocalDeviceNotification\x10\xed\x32\x12\x12\n\rk_EMsgMMSBase\x10\xc8\x33\x12\x1f\n\x1ak_EMsgClientMMSCreateLobby\x10\xc9\x33\x12\'\n\"k_EMsgClientMMSCreateLobbyResponse\x10\xca\x33\x12\x1d\n\x18k_EMsgClientMMSJoinLobby\x10\xcb\x33\x12%\n k_EMsgClientMMSJoinLobbyResponse\x10\xcc\x33\x12\x1e\n\x19k_EMsgClientMMSLeaveLobby\x10\xcd\x33\x12&\n!k_EMsgClientMMSLeaveLobbyResponse\x10\xce\x33\x12 \n\x1bk_EMsgClientMMSGetLobbyList\x10\xcf\x33\x12(\n#k_EMsgClientMMSGetLobbyListResponse\x10\xd0\x33\x12 \n\x1bk_EMsgClientMMSSetLobbyData\x10\xd1\x33\x12(\n#k_EMsgClientMMSSetLobbyDataResponse\x10\xd2\x33\x12 \n\x1bk_EMsgClientMMSGetLobbyData\x10\xd3\x33\x12\x1d\n\x18k_EMsgClientMMSLobbyData\x10\xd4\x33\x12$\n\x1fk_EMsgClientMMSSendLobbyChatMsg\x10\xd5\x33\x12 \n\x1bk_EMsgClientMMSLobbyChatMsg\x10\xd6\x33\x12!\n\x1ck_EMsgClientMMSSetLobbyOwner\x10\xd7\x33\x12)\n$k_EMsgClientMMSSetLobbyOwnerResponse\x10\xd8\x33\x12&\n!k_EMsgClientMMSSetLobbyGameServer\x10\xd9\x33\x12&\n!k_EMsgClientMMSLobbyGameServerSet\x10\xda\x33\x12#\n\x1ek_EMsgClientMMSUserJoinedLobby\x10\xdb\x33\x12!\n\x1ck_EMsgClientMMSUserLeftLobby\x10\xdc\x33\x12!\n\x1ck_EMsgClientMMSInviteToLobby\x10\xdd\x33\x12)\n$k_EMsgClientMMSFlushFrenemyListCache\x10\xde\x33\x12\x31\n,k_EMsgClientMMSFlushFrenemyListCacheResponse\x10\xdf\x33\x12\"\n\x1dk_EMsgClientMMSSetLobbyLinked\x10\xe0\x33\x12.\n)k_EMsgClientMMSSetRatelimitPolicyOnClient\x10\xe1\x33\x12\"\n\x1dk_EMsgClientMMSGetLobbyStatus\x10\xe2\x33\x12*\n%k_EMsgClientMMSGetLobbyStatusResponse\x10\xe3\x33\x12\x1a\n\x15k_EMsgMMSGetLobbyList\x10\xe4\x33\x12\"\n\x1dk_EMsgMMSGetLobbyListResponse\x10\xe5\x33\x12\x18\n\x13k_EMsgNonStdMsgBase\x10\x90\x35\x12\x1d\n\x18k_EMsgNonStdMsgMemcached\x10\x91\x35\x12\x1e\n\x19k_EMsgNonStdMsgHTTPServer\x10\x92\x35\x12\x1e\n\x19k_EMsgNonStdMsgHTTPClient\x10\x93\x35\x12\x1e\n\x19k_EMsgNonStdMsgWGResponse\x10\x94\x35\x12 \n\x1bk_EMsgNonStdMsgPHPSimulator\x10\x95\x35\x12\x19\n\x14k_EMsgNonStdMsgChase\x10\x96\x35\x12\x1f\n\x1ak_EMsgNonStdMsgDFSTransfer\x10\x97\x35\x12\x19\n\x14k_EMsgNonStdMsgTests\x10\x98\x35\x12\x1f\n\x1ak_EMsgNonStdMsgUMQpipeAAPL\x10\x99\x35\x12\x1a\n\x15k_EMSgNonStdMsgSyslog\x10\x9a\x35\x12\x1b\n\x16k_EMsgNonStdMsgLogsink\x10\x9b\x35\x12\"\n\x1dk_EMsgNonStdMsgSteam2Emulator\x10\x9c\x35\x12\x1e\n\x19k_EMsgNonStdMsgRTMPServer\x10\x9d\x35\x12\x1d\n\x18k_EMsgNonStdMsgWebSocket\x10\x9e\x35\x12\x19\n\x14k_EMsgNonStdMsgRedis\x10\x9f\x35\x12\x12\n\rk_EMsgUDSBase\x10\xd8\x36\x12%\n k_EMsgClientUDSP2PSessionStarted\x10\xd9\x36\x12#\n\x1ek_EMsgClientUDSP2PSessionEnded\x10\xda\x36\x12\x1c\n\x17k_EMsgUDSRenderUserAuth\x10\xdb\x36\x12$\n\x1fk_EMsgUDSRenderUserAuthResponse\x10\xdc\x36\x12\x1d\n\x18k_EMsgClientInviteToGame\x10\xdd\x36\x12\x18\n\x13k_EMsgUDSHasSession\x10\xde\x36\x12 \n\x1bk_EMsgUDSHasSessionResponse\x10\xdf\x36\x12\x13\n\x0ek_EMsgMPASBase\x10\xbc\x37\x12\x1a\n\x15k_EMsgMPASVacBanReset\x10\xbd\x37\x12\x12\n\rk_EMsgKGSBase\x10\xa0\x38\x12\x12\n\rk_EMsgUCMBase\x10\x84\x39\x12!\n\x1ck_EMsgClientUCMAddScreenshot\x10\x85\x39\x12)\n$k_EMsgClientUCMAddScreenshotResponse\x10\x86\x39\x12#\n\x1ek_EMsgUCMResetCommunityContent\x10\x8b\x39\x12+\n&k_EMsgUCMResetCommunityContentResponse\x10\x8c\x39\x12$\n\x1fk_EMsgClientUCMDeleteScreenshot\x10\x8d\x39\x12,\n\'k_EMsgClientUCMDeleteScreenshotResponse\x10\x8e\x39\x12\x1f\n\x1ak_EMsgClientUCMPublishFile\x10\x8f\x39\x12\'\n\"k_EMsgClientUCMPublishFileResponse\x10\x90\x39\x12\'\n\"k_EMsgClientUCMDeletePublishedFile\x10\x93\x39\x12/\n*k_EMsgClientUCMDeletePublishedFileResponse\x10\x94\x39\x12\'\n\"k_EMsgClientUCMUpdatePublishedFile\x10\x9d\x39\x12/\n*k_EMsgClientUCMUpdatePublishedFileResponse\x10\x9e\x39\x12!\n\x1ck_EMsgUCMUpdatePublishedFile\x10\x9f\x39\x12)\n$k_EMsgUCMUpdatePublishedFileResponse\x10\xa0\x39\x12!\n\x1ck_EMsgUCMDeletePublishedFile\x10\xa1\x39\x12)\n$k_EMsgUCMDeletePublishedFileResponse\x10\xa2\x39\x12%\n k_EMsgUCMUpdatePublishedFileStat\x10\xa3\x39\x12!\n\x1ck_EMsgUCMReloadPublishedFile\x10\xa9\x39\x12&\n!k_EMsgUCMReloadUserFileListCaches\x10\xaa\x39\x12#\n\x1ek_EMsgUCMPublishedFileReported\x10\xab\x39\x12%\n k_EMsgUCMPublishedFilePreviewAdd\x10\xad\x39\x12-\n(k_EMsgUCMPublishedFilePreviewAddResponse\x10\xae\x39\x12(\n#k_EMsgUCMPublishedFilePreviewRemove\x10\xaf\x39\x12\x30\n+k_EMsgUCMPublishedFilePreviewRemoveResponse\x10\xb0\x39\x12%\n k_EMsgUCMPublishedFileSubscribed\x10\xb5\x39\x12\'\n\"k_EMsgUCMPublishedFileUnsubscribed\x10\xb6\x39\x12\x19\n\x14k_EMsgUCMPublishFile\x10\xb7\x39\x12!\n\x1ck_EMsgUCMPublishFileResponse\x10\xb8\x39\x12#\n\x1ek_EMsgUCMPublishedFileChildAdd\x10\xb9\x39\x12+\n&k_EMsgUCMPublishedFileChildAddResponse\x10\xba\x39\x12&\n!k_EMsgUCMPublishedFileChildRemove\x10\xbb\x39\x12.\n)k_EMsgUCMPublishedFileChildRemoveResponse\x10\xbc\x39\x12(\n#k_EMsgUCMPublishedFileParentChanged\x10\xbf\x39\x12.\n)k_EMsgClientUCMSetUserPublishedFileAction\x10\xc4\x39\x12\x36\n1k_EMsgClientUCMSetUserPublishedFileActionResponse\x10\xc5\x39\x12\x37\n2k_EMsgClientUCMEnumeratePublishedFilesByUserAction\x10\xc6\x39\x12?\n:k_EMsgClientUCMEnumeratePublishedFilesByUserActionResponse\x10\xc7\x39\x12$\n\x1fk_EMsgUCMGetUserSubscribedFiles\x10\xc9\x39\x12,\n\'k_EMsgUCMGetUserSubscribedFilesResponse\x10\xca\x39\x12#\n\x1ek_EMsgUCMFixStatsPublishedFile\x10\xcb\x39\x12;\n6k_EMsgClientUCMEnumerateUserSubscribedFilesWithUpdates\x10\xd2\x39\x12\x43\n>k_EMsgClientUCMEnumerateUserSubscribedFilesWithUpdatesResponse\x10\xd3\x39\x12)\n$k_EMsgUCMPublishedFileContentUpdated\x10\xd4\x39\x12(\n#k_EMsgClientUCMPublishedFileUpdated\x10\xd5\x39\x12+\n&k_EMsgClientWorkshopItemChangesRequest\x10\xd6\x39\x12,\n\'k_EMsgClientWorkshopItemChangesResponse\x10\xd7\x39\x12\x11\n\x0ck_EMsgFSBase\x10\xcc:\x12#\n\x1ek_EMsgClientRichPresenceUpload\x10\xcd:\x12$\n\x1fk_EMsgClientRichPresenceRequest\x10\xce:\x12!\n\x1ck_EMsgClientRichPresenceInfo\x10\xcf:\x12 \n\x1bk_EMsgFSRichPresenceRequest\x10\xd0:\x12!\n\x1ck_EMsgFSRichPresenceResponse\x10\xd1:\x12\x1f\n\x1ak_EMsgFSComputeFrenematrix\x10\xd2:\x12\'\n\"k_EMsgFSComputeFrenematrixResponse\x10\xd3:\x12#\n\x1ek_EMsgFSPlayStatusNotification\x10\xd4:\x12 \n\x1bk_EMsgFSAddOrRemoveFollower\x10\xd6:\x12(\n#k_EMsgFSAddOrRemoveFollowerResponse\x10\xd7:\x12 \n\x1bk_EMsgFSUpdateFollowingList\x10\xd8:\x12 \n\x1bk_EMsgFSCommentNotification\x10\xd9:\x12&\n!k_EMsgFSCommentNotificationViewed\x10\xda:\x12#\n\x1ek_EMsgClientFSGetFollowerCount\x10\xdb:\x12+\n&k_EMsgClientFSGetFollowerCountResponse\x10\xdc:\x12!\n\x1ck_EMsgClientFSGetIsFollowing\x10\xdd:\x12)\n$k_EMsgClientFSGetIsFollowingResponse\x10\xde:\x12)\n$k_EMsgClientFSEnumerateFollowingList\x10\xdf:\x12\x31\n,k_EMsgClientFSEnumerateFollowingListResponse\x10\xe0:\x12(\n#k_EMsgFSGetPendingNotificationCount\x10\xe1:\x12\x30\n+k_EMsgFSGetPendingNotificationCountResponse\x10\xe2:\x12/\n*k_EMsgClientChatOfflineMessageNotification\x10\xe3:\x12/\n*k_EMsgClientChatRequestOfflineMessageCount\x10\xe4:\x12,\n\'k_EMsgClientChatGetFriendMessageHistory\x10\xe5:\x12\x34\n/k_EMsgClientChatGetFriendMessageHistoryResponse\x10\xe6:\x12>\n9k_EMsgClientChatGetFriendMessageHistoryForOfflineMessages\x10\xe7:\x12(\n#k_EMsgClientFSGetFriendsSteamLevels\x10\xe8:\x12\x30\n+k_EMsgClientFSGetFriendsSteamLevelsResponse\x10\xe9:\x12\x1e\n\x19k_EMsgAMRequestFriendData\x10\xea:\x12\x14\n\x0fk_EMsgDRMRange2\x10\xb0;\x12,\n\'k_EMsgCEGVersionSetEnableDisableRequest\x10\xb0;\x12-\n(k_EMsgCEGVersionSetEnableDisableResponse\x10\xb1;\x12#\n\x1ek_EMsgCEGPropStatusDRMSRequest\x10\xb2;\x12$\n\x1fk_EMsgCEGPropStatusDRMSResponse\x10\xb3;\x12\'\n\"k_EMsgCEGWhackFailureReportRequest\x10\xb4;\x12(\n#k_EMsgCEGWhackFailureReportResponse\x10\xb5;\x12\x1e\n\x19k_EMsgDRMSFetchVersionSet\x10\xb6;\x12&\n!k_EMsgDRMSFetchVersionSetResponse\x10\xb7;\x12\x13\n\x0ek_EMsgEconBase\x10\x94<\x12+\n&k_EMsgEconTrading_InitiateTradeRequest\x10\x95<\x12,\n\'k_EMsgEconTrading_InitiateTradeProposed\x10\x96<\x12,\n\'k_EMsgEconTrading_InitiateTradeResponse\x10\x97<\x12*\n%k_EMsgEconTrading_InitiateTradeResult\x10\x98<\x12#\n\x1ek_EMsgEconTrading_StartSession\x10\x99<\x12)\n$k_EMsgEconTrading_CancelTradeRequest\x10\x9a<\x12\"\n\x1dk_EMsgEconFlushInventoryCache\x10\x9b<\x12*\n%k_EMsgEconFlushInventoryCacheResponse\x10\x9c<\x12&\n!k_EMsgEconCDKeyProcessTransaction\x10\x9f<\x12.\n)k_EMsgEconCDKeyProcessTransactionResponse\x10\xa0<\x12\x1b\n\x16k_EMsgEconGetErrorLogs\x10\xa1<\x12#\n\x1ek_EMsgEconGetErrorLogsResponse\x10\xa2<\x12\x12\n\rk_EMsgRMRange\x10\xf8<\x12\x1c\n\x17k_EMsgRMTestVerisignOTP\x10\xf8<\x12$\n\x1fk_EMsgRMTestVerisignOTPResponse\x10\xf9<\x12 \n\x1bk_EMsgRMDeleteMemcachedKeys\x10\xfb<\x12\x19\n\x14k_EMsgRMRemoteInvoke\x10\xfc<\x12\x19\n\x14k_EMsgBadLoginIPList\x10\xfd<\x12\x1f\n\x1ak_EMsgRMMsgTraceAddTrigger\x10\xfe<\x12\"\n\x1dk_EMsgRMMsgTraceRemoveTrigger\x10\xff<\x12\x1a\n\x15k_EMsgRMMsgTraceEvent\x10\x80=\x12\x12\n\rk_EMsgUGSBase\x10\xdc=\x12\x1f\n\x1ak_EMsgUGSUpdateGlobalStats\x10\xdc=\x12\"\n\x1dk_EMsgClientUGSGetGlobalStats\x10\xdd=\x12*\n%k_EMsgClientUGSGetGlobalStatsResponse\x10\xde=\x12\x14\n\x0fk_EMsgStoreBase\x10\xc0>\x12\x12\n\rk_EMsgUMQBase\x10\xa4?\x12\x1a\n\x15k_EMsgUMQLogonRequest\x10\xa4?\x12\x1b\n\x16k_EMsgUMQLogonResponse\x10\xa5?\x12\x1b\n\x16k_EMsgUMQLogoffRequest\x10\xa6?\x12\x1c\n\x17k_EMsgUMQLogoffResponse\x10\xa7?\x12\x1d\n\x18k_EMsgUMQSendChatMessage\x10\xa8?\x12!\n\x1ck_EMsgUMQIncomingChatMessage\x10\xa9?\x12\x12\n\rk_EMsgUMQPoll\x10\xaa?\x12\x19\n\x14k_EMsgUMQPollResults\x10\xab?\x12 \n\x1bk_EMsgUMQ2AM_ClientMsgBatch\x10\xac?\x12\x17\n\x12k_EMsgWorkshopBase\x10\x88@\x12\x15\n\x10k_EMsgWebAPIBase\x10\xec@\x12$\n\x1fk_EMsgWebAPIValidateOAuth2Token\x10\xec@\x12,\n\'k_EMsgWebAPIValidateOAuth2TokenResponse\x10\xed@\x12%\n k_EMsgWebAPIRegisterGCInterfaces\x10\xef@\x12+\n&k_EMsgWebAPIInvalidateOAuthClientCache\x10\xf0@\x12*\n%k_EMsgWebAPIInvalidateOAuthTokenCache\x10\xf1@\x12\x1b\n\x16k_EMsgWebAPISetSecrets\x10\xf2@\x12\x17\n\x12k_EMsgBackpackBase\x10\xd0\x41\x12 \n\x1bk_EMsgBackpackAddToCurrency\x10\xd1\x41\x12(\n#k_EMsgBackpackAddToCurrencyResponse\x10\xd2\x41\x12\x12\n\rk_EMsgCREBase\x10\xb4\x42\x12\x1d\n\x18k_EMsgCREItemVoteSummary\x10\xb7\x42\x12%\n k_EMsgCREItemVoteSummaryResponse\x10\xb8\x42\x12)\n$k_EMsgCREUpdateUserPublishedItemVote\x10\xbb\x42\x12\x31\n,k_EMsgCREUpdateUserPublishedItemVoteResponse\x10\xbc\x42\x12-\n(k_EMsgCREGetUserPublishedItemVoteDetails\x10\xbd\x42\x12\x35\n0k_EMsgCREGetUserPublishedItemVoteDetailsResponse\x10\xbe\x42\x12\x16\n\x11k_EMsgSecretsBase\x10\x98\x43\x12\'\n\"k_EMsgSecretsRequestCredentialPair\x10\x98\x43\x12(\n#k_EMsgSecretsCredentialPairResponse\x10\x99\x43\x12\x19\n\x14k_EMsgBoxMonitorBase\x10\xfc\x43\x12\"\n\x1dk_EMsgBoxMonitorReportRequest\x10\xfc\x43\x12#\n\x1ek_EMsgBoxMonitorReportResponse\x10\xfd\x43\x12\x16\n\x11k_EMsgLogsinkBase\x10\xe0\x44\x12\x1d\n\x18k_EMsgLogsinkWriteReport\x10\xe0\x44\x12\x13\n\x0ek_EMsgPICSBase\x10\xc4\x45\x12(\n#k_EMsgClientPICSChangesSinceRequest\x10\xc5\x45\x12)\n$k_EMsgClientPICSChangesSinceResponse\x10\xc6\x45\x12\'\n\"k_EMsgClientPICSProductInfoRequest\x10\xc7\x45\x12(\n#k_EMsgClientPICSProductInfoResponse\x10\xc8\x45\x12\'\n\"k_EMsgClientPICSAccessTokenRequest\x10\xc9\x45\x12(\n#k_EMsgClientPICSAccessTokenResponse\x10\xca\x45\x12\x18\n\x13k_EMsgWorkerProcess\x10\xa8\x46\x12#\n\x1ek_EMsgWorkerProcessPingRequest\x10\xa8\x46\x12$\n\x1fk_EMsgWorkerProcessPingResponse\x10\xa9\x46\x12 \n\x1bk_EMsgWorkerProcessShutdown\x10\xaa\x46\x12\x1b\n\x16k_EMsgDRMWorkerProcess\x10\x8cG\x12%\n k_EMsgDRMWorkerProcessDRMAndSign\x10\x8cG\x12-\n(k_EMsgDRMWorkerProcessDRMAndSignResponse\x10\x8dG\x12\x30\n+k_EMsgDRMWorkerProcessSteamworksInfoRequest\x10\x8eG\x12\x31\n,k_EMsgDRMWorkerProcessSteamworksInfoResponse\x10\x8fG\x12/\n*k_EMsgDRMWorkerProcessInstallDRMDLLRequest\x10\x90G\x12\x30\n+k_EMsgDRMWorkerProcessInstallDRMDLLResponse\x10\x91G\x12\x30\n+k_EMsgDRMWorkerProcessSecretIdStringRequest\x10\x92G\x12\x31\n,k_EMsgDRMWorkerProcessSecretIdStringResponse\x10\x93G\x12\x37\n2k_EMsgDRMWorkerProcessInstallProcessedFilesRequest\x10\x96G\x12\x38\n3k_EMsgDRMWorkerProcessInstallProcessedFilesResponse\x10\x97G\x12-\n(k_EMsgDRMWorkerProcessExamineBlobRequest\x10\x98G\x12.\n)k_EMsgDRMWorkerProcessExamineBlobResponse\x10\x99G\x12\x30\n+k_EMsgDRMWorkerProcessDescribeSecretRequest\x10\x9aG\x12\x31\n,k_EMsgDRMWorkerProcessDescribeSecretResponse\x10\x9bG\x12\x32\n-k_EMsgDRMWorkerProcessBackfillOriginalRequest\x10\x9cG\x12\x33\n.k_EMsgDRMWorkerProcessBackfillOriginalResponse\x10\x9dG\x12\x30\n+k_EMsgDRMWorkerProcessValidateDRMDLLRequest\x10\x9eG\x12\x31\n,k_EMsgDRMWorkerProcessValidateDRMDLLResponse\x10\x9fG\x12.\n)k_EMsgDRMWorkerProcessValidateFileRequest\x10\xa0G\x12/\n*k_EMsgDRMWorkerProcessValidateFileResponse\x10\xa1G\x12\x31\n,k_EMsgDRMWorkerProcessSplitAndInstallRequest\x10\xa2G\x12\x32\n-k_EMsgDRMWorkerProcessSplitAndInstallResponse\x10\xa3G\x12)\n$k_EMsgDRMWorkerProcessGetBlobRequest\x10\xa4G\x12*\n%k_EMsgDRMWorkerProcessGetBlobResponse\x10\xa5G\x12/\n*k_EMsgDRMWorkerProcessEvaluateCrashRequest\x10\xa6G\x12\x30\n+k_EMsgDRMWorkerProcessEvaluateCrashResponse\x10\xa7G\x12-\n(k_EMsgDRMWorkerProcessAnalyzeFileRequest\x10\xa8G\x12.\n)k_EMsgDRMWorkerProcessAnalyzeFileResponse\x10\xa9G\x12,\n\'k_EMsgDRMWorkerProcessUnpackBlobRequest\x10\xaaG\x12-\n(k_EMsgDRMWorkerProcessUnpackBlobResponse\x10\xabG\x12,\n\'k_EMsgDRMWorkerProcessInstallAllRequest\x10\xacG\x12-\n(k_EMsgDRMWorkerProcessInstallAllResponse\x10\xadG\x12\x1c\n\x17k_EMsgTestWorkerProcess\x10\xf0G\x12\x33\n.k_EMsgTestWorkerProcessLoadUnloadModuleRequest\x10\xf0G\x12\x34\n/k_EMsgTestWorkerProcessLoadUnloadModuleResponse\x10\xf1G\x12\x34\n/k_EMsgTestWorkerProcessServiceModuleCallRequest\x10\xf2G\x12\x35\n0k_EMsgTestWorkerProcessServiceModuleCallResponse\x10\xf3G\x12\x1a\n\x15k_EMsgQuestServerBase\x10\xd4H\x12 \n\x1bk_EMsgClientGetEmoticonList\x10\xf2H\x12\x1d\n\x18k_EMsgClientEmoticonList\x10\xf3H\x12\x12\n\rk_EMsgSLCBase\x10\xb8I\x12\x1f\n\x1ak_EMsgSLCUserSessionStatus\x10\xb8I\x12&\n!k_EMsgSLCRequestUserSessionStatus\x10\xb9I\x12&\n!k_EMsgSLCSharedLicensesLockStatus\x10\xbaI\x12(\n#k_EMsgClientSharedLibraryLockStatus\x10\xbdI\x12)\n$k_EMsgClientSharedLibraryStopPlaying\x10\xbeI\x12!\n\x1ck_EMsgSLCOwnerLibraryChanged\x10\xbfI\x12\"\n\x1dk_EMsgSLCSharedLibraryChanged\x10\xc0I\x12\x1b\n\x16k_EMsgRemoteClientBase\x10\x9cJ\x12$\n\x1fk_EMsgRemoteClientAuth_OBSOLETE\x10\x9cJ\x12,\n\'k_EMsgRemoteClientAuthResponse_OBSOLETE\x10\x9dJ\x12 \n\x1bk_EMsgRemoteClientAppStatus\x10\x9eJ\x12\"\n\x1dk_EMsgRemoteClientStartStream\x10\x9fJ\x12*\n%k_EMsgRemoteClientStartStreamResponse\x10\xa0J\x12\x1b\n\x16k_EMsgRemoteClientPing\x10\xa1J\x12#\n\x1ek_EMsgRemoteClientPingResponse\x10\xa2J\x12 \n\x1bk_EMsgClientUnlockStreaming\x10\xa3J\x12(\n#k_EMsgClientUnlockStreamingResponse\x10\xa4J\x12!\n\x1ck_EMsgRemoteClientAcceptEULA\x10\xa5J\x12*\n%k_EMsgRemoteClientGetControllerConfig\x10\xa6J\x12\x32\n-k_EMsgRemoteClientGetControllerConfigResponse\x10\xa7J\x12\'\n\"k_EMsgRemoteClientStreamingEnabled\x10\xa8J\x12\x1b\n\x16k_EMsgClientUnlockHEVC\x10\xa9J\x12#\n\x1ek_EMsgClientUnlockHEVCResponse\x10\xaaJ\x12$\n\x1fk_EMsgRemoteClientStatusRequest\x10\xabJ\x12%\n k_EMsgRemoteClientStatusResponse\x10\xacJ\x12\'\n\"k_EMsgClientConcurrentSessionsBase\x10\x80K\x12$\n\x1fk_EMsgClientPlayingSessionState\x10\x80K\x12#\n\x1ek_EMsgClientKickPlayingSession\x10\x81K\x12\x1e\n\x19k_EMsgClientBroadcastBase\x10\xe4K\x12\x1e\n\x19k_EMsgClientBroadcastInit\x10\xe4K\x12 \n\x1bk_EMsgClientBroadcastFrames\x10\xe5K\x12$\n\x1fk_EMsgClientBroadcastDisconnect\x10\xe6K\x12$\n\x1fk_EMsgClientBroadcastScreenshot\x10\xe7K\x12&\n!k_EMsgClientBroadcastUploadConfig\x10\xe8K\x12\x16\n\x11k_EMsgBaseClient3\x10\xc8L\x12&\n!k_EMsgClientVoiceCallPreAuthorize\x10\xc8L\x12.\n)k_EMsgClientVoiceCallPreAuthorizeResponse\x10\xc9L\x12\'\n\"k_EMsgClientServerTimestampRequest\x10\xcaL\x12(\n#k_EMsgClientServerTimestampResponse\x10\xcbL\x12\x1b\n\x16k_EMsgClientLANP2PBase\x10\xacM\x12#\n\x1ek_EMsgClientLANP2PRequestChunk\x10\xacM\x12+\n&k_EMsgClientLANP2PRequestChunkResponse\x10\xadM\x12\x1a\n\x15k_EMsgClientLANP2PMax\x10\x8fN\x12\x1d\n\x18k_EMsgBaseWatchdogServer\x10\x90N\x12\x19\n\x14k_EMsgNotifyWatchdog\x10\x90N\x12 \n\x1bk_EMsgClientSiteLicenseBase\x10\xf4N\x12\x30\n+k_EMsgClientSiteLicenseSiteInfoNotification\x10\xf4N\x12$\n\x1fk_EMsgClientSiteLicenseCheckout\x10\xf5N\x12,\n\'k_EMsgClientSiteLicenseCheckoutResponse\x10\xf6N\x12-\n(k_EMsgClientSiteLicenseGetAvailableSeats\x10\xf7N\x12\x35\n0k_EMsgClientSiteLicenseGetAvailableSeatsResponse\x10\xf8N\x12/\n*k_EMsgClientSiteLicenseGetContentCacheInfo\x10\xf9N\x12\x37\n2k_EMsgClientSiteLicenseGetContentCacheInfoResponse\x10\xfaN\x12\x19\n\x14k_EMsgBaseChatServer\x10\xe0]\x12\x30\n+k_EMsgChatServerGetPendingNotificationCount\x10\xe0]\x12\x38\n3k_EMsgChatServerGetPendingNotificationCountResponse\x10\xe1]\x12\x1b\n\x16k_EMsgBaseSecretServer\x10\xc4^\x12\x1e\n\x19k_EMsgServerSecretChanged\x10\xc4^\x1a\x02\x10\x01*\xcf\x04\n\x17\x45\x43lientPersonaStateFlag\x12#\n\x1fk_EClientPersonaStateFlagStatus\x10\x01\x12\'\n#k_EClientPersonaStateFlagPlayerName\x10\x02\x12&\n\"k_EClientPersonaStateFlagQueryPort\x10\x04\x12%\n!k_EClientPersonaStateFlagSourceID\x10\x08\x12%\n!k_EClientPersonaStateFlagPresence\x10\x10\x12%\n!k_EClientPersonaStateFlagLastSeen\x10@\x12*\n%k_EClientPersonaStateFlagUserClanRank\x10\x80\x01\x12\'\n\"k_EClientPersonaStateGameExtraInfo\x10\x80\x02\x12&\n!k_EClientPersonaStateGameDataBlob\x10\x80\x04\x12&\n!k_EClientPersonaStateFlagClanData\x10\x80\x08\x12&\n!k_EClientPersonaStateFlagFacebook\x10\x80\x10\x12*\n%k_EClientPersonaStateFlagRichPresence\x10\x80 \x12\'\n\"k_EClientPersonaStateFlagBroadcast\x10\x80@\x12\'\n!k_EClientPersonaStateFlagWatching\x10\x80\x80\x01*\xb9\x01\n\x14\x45MsgClanAccountFlags\x12\x1f\n\x1bk_EMsgClanAccountFlagPublic\x10\x01\x12\x1e\n\x1ak_EMsgClanAccountFlagLarge\x10\x02\x12\x1f\n\x1bk_EMsgClanAccountFlagLocked\x10\x04\x12!\n\x1dk_EMsgClanAccountFlagDisabled\x10\x08\x12\x1c\n\x18k_EMsgClanAccountFlagOGG\x10\x10*\x90\x03\n\x11\x45SteamReviewScore\x12.\n*k_ESteamReviewScore_OverwhelminglyPositive\x10\t\x12$\n k_ESteamReviewScore_VeryPositive\x10\x08\x12 \n\x1ck_ESteamReviewScore_Positive\x10\x07\x12&\n\"k_ESteamReviewScore_MostlyPositive\x10\x06\x12\x1d\n\x19k_ESteamReviewScore_Mixed\x10\x05\x12&\n\"k_ESteamReviewScore_MostlyNegative\x10\x04\x12 \n\x1ck_ESteamReviewScore_Negative\x10\x03\x12$\n k_ESteamReviewScore_VeryNegative\x10\x02\x12.\n*k_ESteamReviewScore_OverwhelminglyNegative\x10\x01\x12\x1c\n\x18k_ESteamReviewScore_None\x10\x00\x42\x05H\x01\x90\x01\x00')
+  serialized_options=b'H\001\220\001\000',
+  create_key=_descriptor._internal_create_key,
+  serialized_pb=b'\n\x18\x65nums_clientserver.proto*\xd4\x9e\x03\n\x04\x45Msg\x12\x11\n\rk_EMsgInvalid\x10\x00\x12\x0f\n\x0bk_EMsgMulti\x10\x01\x12\x19\n\x15k_EMsgProtobufWrapped\x10\x02\x12\x15\n\x11k_EMsgBaseGeneral\x10\x64\x12\x16\n\x12k_EMsgGenericReply\x10\x64\x12\x17\n\x13k_EMsgDestJobFailed\x10q\x12\x0f\n\x0bk_EMsgAlert\x10s\x12\x15\n\x11k_EMsgSCIDRequest\x10x\x12\x16\n\x12k_EMsgSCIDResponse\x10y\x12\x16\n\x12k_EMsgJobHeartbeat\x10{\x12\x14\n\x10k_EMsgHubConnect\x10|\x12\x13\n\x0fk_EMsgSubscribe\x10~\x12\x14\n\x10k_EMRouteMessage\x10\x7f\x12\x14\n\x0fk_EMsgWGRequest\x10\x82\x01\x12\x15\n\x10k_EMsgWGResponse\x10\x83\x01\x12\x14\n\x0fk_EMsgKeepAlive\x10\x84\x01\x12\x1b\n\x16k_EMsgWebAPIJobRequest\x10\x85\x01\x12\x1c\n\x17k_EMsgWebAPIJobResponse\x10\x86\x01\x12\x1d\n\x18k_EMsgClientSessionStart\x10\x87\x01\x12\x1b\n\x16k_EMsgClientSessionEnd\x10\x88\x01\x12\x1e\n\x19k_EMsgClientSessionUpdate\x10\x89\x01\x12\x1a\n\x15k_EMsgStatsDeprecated\x10\x8a\x01\x12\x0f\n\nk_EMsgPing\x10\x8b\x01\x12\x17\n\x12k_EMsgPingResponse\x10\x8c\x01\x12\x10\n\x0bk_EMsgStats\x10\x8d\x01\x12 \n\x1bk_EMsgRequestFullStatsBlock\x10\x8e\x01\x12\x1b\n\x16k_EMsgLoadDBOCacheItem\x10\x8f\x01\x12#\n\x1ek_EMsgLoadDBOCacheItemResponse\x10\x90\x01\x12\"\n\x1dk_EMsgInvalidateDBOCacheItems\x10\x91\x01\x12\x18\n\x13k_EMsgServiceMethod\x10\x92\x01\x12 \n\x1bk_EMsgServiceMethodResponse\x10\x93\x01\x12 \n\x1bk_EMsgClientPackageVersions\x10\x94\x01\x12\x1b\n\x16k_EMsgTimestampRequest\x10\x95\x01\x12\x1c\n\x17k_EMsgTimestampResponse\x10\x96\x01\x12&\n!k_EMsgServiceMethodCallFromClient\x10\x97\x01\x12$\n\x1fk_EMsgServiceMethodSendToClient\x10\x98\x01\x12\x14\n\x0fk_EMsgBaseShell\x10\xc8\x01\x12\x16\n\x11k_EMsgAssignSysID\x10\xc8\x01\x12\x0f\n\nk_EMsgExit\x10\xc9\x01\x12\x15\n\x10k_EMsgDirRequest\x10\xca\x01\x12\x16\n\x11k_EMsgDirResponse\x10\xcb\x01\x12\x15\n\x10k_EMsgZipRequest\x10\xcc\x01\x12\x16\n\x11k_EMsgZipResponse\x10\xcd\x01\x12\x1f\n\x1ak_EMsgUpdateRecordResponse\x10\xd7\x01\x12\"\n\x1dk_EMsgUpdateCreditCardRequest\x10\xdd\x01\x12 \n\x1bk_EMsgUpdateUserBanResponse\x10\xe1\x01\x12\x18\n\x13k_EMsgPrepareToExit\x10\xe2\x01\x12#\n\x1ek_EMsgContentDescriptionUpdate\x10\xe3\x01\x12\x1a\n\x15k_EMsgTestResetServer\x10\xe4\x01\x12\x1a\n\x15k_EMsgUniverseChanged\x10\xe5\x01\x12 \n\x1bk_EMsgShellConfigInfoUpdate\x10\xe6\x01\x12(\n#k_EMsgRequestWindowsEventLogEntries\x10\xe9\x01\x12(\n#k_EMsgProvideWindowsEventLogEntries\x10\xea\x01\x12\x1a\n\x15k_EMsgShellSearchLogs\x10\xeb\x01\x12\"\n\x1dk_EMsgShellSearchLogsResponse\x10\xec\x01\x12#\n\x1ek_EMsgShellCheckWindowsUpdates\x10\xed\x01\x12+\n&k_EMsgShellCheckWindowsUpdatesResponse\x10\xee\x01\x12\x1e\n\x19k_EMsgTestFlushDelayedSQL\x10\xf0\x01\x12&\n!k_EMsgTestFlushDelayedSQLResponse\x10\xf1\x01\x12*\n%k_EMsgEnsureExecuteScheduledTask_TEST\x10\xf2\x01\x12\x32\n-k_EMsgEnsureExecuteScheduledTaskResponse_TEST\x10\xf3\x01\x12.\n)k_EMsgUpdateScheduledTaskEnableState_TEST\x10\xf4\x01\x12\x36\n1k_EMsgUpdateScheduledTaskEnableStateResponse_TEST\x10\xf5\x01\x12(\n#k_EMsgContentDescriptionDeltaUpdate\x10\xf6\x01\x12)\n$k_EMsgGMShellAndServerAddressUpdates\x10\xf7\x01\x12\x11\n\x0ck_EMsgBaseGM\x10\xac\x02\x12\x14\n\x0fk_EMsgHeartbeat\x10\xac\x02\x12\x16\n\x11k_EMsgShellFailed\x10\xad\x02\x12\x15\n\x10k_EMsgExitShells\x10\xb3\x02\x12\x14\n\x0fk_EMsgExitShell\x10\xb4\x02\x12\x1c\n\x17k_EMsgGracefulExitShell\x10\xb5\x02\x12$\n\x1fk_EMsgLicenseProcessingComplete\x10\xbc\x02\x12\x16\n\x11k_EMsgSetTestFlag\x10\xbd\x02\x12\x1f\n\x1ak_EMsgQueuedEmailsComplete\x10\xbe\x02\x12\x1b\n\x16k_EMsgGMReportPHPError\x10\xbf\x02\x12\x14\n\x0fk_EMsgGMDRMSync\x10\xc0\x02\x12\x1f\n\x1ak_EMsgPhysicalBoxInventory\x10\xc1\x02\x12\x1b\n\x16k_EMsgUpdateConfigFile\x10\xc2\x02\x12\x15\n\x10k_EMsgTestInitDB\x10\xc3\x02\x12\x1d\n\x18k_EMsgGMWriteConfigToSQL\x10\xc4\x02\x12 \n\x1bk_EMsgGMLoadActivationCodes\x10\xc5\x02\x12\x18\n\x13k_EMsgGMQueueForFBS\x10\xc6\x02\x12$\n\x1fk_EMsgGMSchemaConversionResults\x10\xc7\x02\x12#\n\x1ek_EMsgGMWriteShellFailureToSQL\x10\xc9\x02\x12\x1c\n\x17k_EMsgGMWriteStatsToSOS\x10\xca\x02\x12$\n\x1fk_EMsgGMGetServiceMethodRouting\x10\xcb\x02\x12,\n\'k_EMsgGMGetServiceMethodRoutingResponse\x10\xcc\x02\x12*\n%k_EMsgGMTestNextBuildSchemaConversion\x10\xce\x02\x12\x32\n-k_EMsgGMTestNextBuildSchemaConversionResponse\x10\xcf\x02\x12\x1d\n\x18k_EMsgExpectShellRestart\x10\xd0\x02\x12\x19\n\x14k_EMsgHotFixProgress\x10\xd1\x02\x12+\n&k_EMsgGMStatsForwardToAdminConnections\x10\xd2\x02\x12\x12\n\rk_EMsgBaseAIS\x10\x90\x03\x12\'\n\"k_EMsgAISRequestContentDescription\x10\x92\x03\x12\x1b\n\x16k_EMsgAISUpdateAppInfo\x10\x93\x03\x12$\n\x1fk_EMsgAISGetPackageChangeNumber\x10\x95\x03\x12,\n\'k_EMsgAISGetPackageChangeNumberResponse\x10\x96\x03\x12\x1a\n\x15k_EMsgAIGetAppGCFlags\x10\xa7\x03\x12\"\n\x1dk_EMsgAIGetAppGCFlagsResponse\x10\xa8\x03\x12\x17\n\x12k_EMsgAIGetAppList\x10\xa9\x03\x12\x1f\n\x1ak_EMsgAIGetAppListResponse\x10\xaa\x03\x12!\n\x1ck_EMsgAISGetCouponDefinition\x10\xad\x03\x12)\n$k_EMsgAISGetCouponDefinitionResponse\x10\xae\x03\x12\x31\n,k_EMsgAISUpdateSubordinateContentDescription\x10\xaf\x03\x12\x39\n4k_EMsgAISUpdateSubordinateContentDescriptionResponse\x10\xb0\x03\x12\x1a\n\x15k_EMsgAISTestEnableGC\x10\xb1\x03\x12\x11\n\x0ck_EMsgBaseAM\x10\xf4\x03\x12!\n\x1ck_EMsgAMUpdateUserBanRequest\x10\xf8\x03\x12\x17\n\x12k_EMsgAMAddLicense\x10\xf9\x03\x12\x1f\n\x1ak_EMsgAMSendSystemIMToUser\x10\xfc\x03\x12\x1a\n\x15k_EMsgAMExtendLicense\x10\xfd\x03\x12 \n\x1bk_EMsgAMAddMinutesToLicense\x10\xfe\x03\x12\x1a\n\x15k_EMsgAMCancelLicense\x10\xff\x03\x12\x19\n\x14k_EMsgAMInitPurchase\x10\x80\x04\x12\x1d\n\x18k_EMsgAMPurchaseResponse\x10\x81\x04\x12\x1a\n\x15k_EMsgAMGetFinalPrice\x10\x82\x04\x12\"\n\x1dk_EMsgAMGetFinalPriceResponse\x10\x83\x04\x12\x1d\n\x18k_EMsgAMGetLegacyGameKey\x10\x84\x04\x12%\n k_EMsgAMGetLegacyGameKeyResponse\x10\x85\x04\x12!\n\x1ck_EMsgAMFindHungTransactions\x10\x86\x04\x12%\n k_EMsgAMSetAccountTrustedRequest\x10\x87\x04\x12\x1b\n\x16k_EMsgAMCancelPurchase\x10\x8a\x04\x12\x19\n\x14k_EMsgAMNewChallenge\x10\x8b\x04\x12\x1b\n\x16k_EMsgAMLoadOEMTickets\x10\x8c\x04\x12\x1f\n\x1ak_EMsgAMFixPendingPurchase\x10\x8d\x04\x12\'\n\"k_EMsgAMFixPendingPurchaseResponse\x10\x8e\x04\x12\x19\n\x14k_EMsgAMIsUserBanned\x10\x8f\x04\x12\x18\n\x13k_EMsgAMRegisterKey\x10\x90\x04\x12 \n\x1bk_EMsgAMLoadActivationCodes\x10\x91\x04\x12(\n#k_EMsgAMLoadActivationCodesResponse\x10\x92\x04\x12\x1e\n\x19k_EMsgAMLookupKeyResponse\x10\x93\x04\x12\x16\n\x11k_EMsgAMLookupKey\x10\x94\x04\x12\x18\n\x13k_EMsgAMChatCleanup\x10\x95\x04\x12\x18\n\x13k_EMsgAMClanCleanup\x10\x96\x04\x12\x1d\n\x18k_EMsgAMFixPendingRefund\x10\x97\x04\x12\x1e\n\x19k_EMsgAMReverseChargeback\x10\x98\x04\x12&\n!k_EMsgAMReverseChargebackResponse\x10\x99\x04\x12\x1c\n\x17k_EMsgAMClanCleanupList\x10\x9a\x04\x12\x18\n\x13k_EMsgAMGetLicenses\x10\x9b\x04\x12 \n\x1bk_EMsgAMGetLicensesResponse\x10\x9c\x04\x12\x1f\n\x1ak_EMsgAMSendCartRepurchase\x10\x9d\x04\x12\'\n\"k_EMsgAMSendCartRepurchaseResponse\x10\x9e\x04\x12\x1f\n\x1ak_EMsgAllowUserToPlayQuery\x10\xa6\x04\x12\"\n\x1dk_EMsgAllowUserToPlayResponse\x10\xa7\x04\x12\x17\n\x12k_EMsgAMVerfiyUser\x10\xa8\x04\x12\x1d\n\x18k_EMsgAMClientNotPlaying\x10\xa9\x04\x12$\n\x1fk_EMsgAMClientRequestFriendship\x10\xaa\x04\x12\x1f\n\x1ak_EMsgAMRelayPublishStatus\x10\xab\x04\x12!\n\x1ck_EMsgAMInitPurchaseResponse\x10\xb0\x04\x12#\n\x1ek_EMsgAMRevokePurchaseResponse\x10\xb1\x04\x12\x1f\n\x1ak_EMsgAMRefreshGuestPasses\x10\xb3\x04\x12\x1d\n\x18k_EMsgAMGrantGuestPasses\x10\xb6\x04\x12\x1c\n\x17k_EMsgAMClanDataUpdated\x10\xb7\x04\x12\x1a\n\x15k_EMsgAMReloadAccount\x10\xb8\x04\x12\x1f\n\x1ak_EMsgAMClientChatMsgRelay\x10\xb9\x04\x12\x16\n\x11k_EMsgAMChatMulti\x10\xba\x04\x12\"\n\x1dk_EMsgAMClientChatInviteRelay\x10\xbb\x04\x12\x17\n\x12k_EMsgAMChatInvite\x10\xbc\x04\x12 \n\x1bk_EMsgAMClientJoinChatRelay\x10\xbd\x04\x12&\n!k_EMsgAMClientChatMemberInfoRelay\x10\xbe\x04\x12\"\n\x1dk_EMsgAMPublishChatMemberInfo\x10\xbf\x04\x12%\n k_EMsgAMClientAcceptFriendInvite\x10\xc0\x04\x12\x16\n\x11k_EMsgAMChatEnter\x10\xc1\x04\x12+\n&k_EMsgAMClientPublishRemovalFromSource\x10\xc2\x04\x12\x1d\n\x18k_EMsgAMChatActionResult\x10\xc3\x04\x12\x19\n\x14k_EMsgAMFindAccounts\x10\xc4\x04\x12!\n\x1ck_EMsgAMFindAccountsResponse\x10\xc5\x04\x12\x1f\n\x1ak_EMsgAMIsAccountNameInUse\x10\xc6\x04\x12\'\n\"k_EMsgAMIsAccountNameInUseResponse\x10\xc7\x04\x12\x1c\n\x17k_EMsgAMSetAccountFlags\x10\xc8\x04\x12\x17\n\x12k_EMsgAMCreateClan\x10\xca\x04\x12\x1f\n\x1ak_EMsgAMCreateClanResponse\x10\xcb\x04\x12\x1b\n\x16k_EMsgAMGetClanDetails\x10\xcc\x04\x12#\n\x1ek_EMsgAMGetClanDetailsResponse\x10\xcd\x04\x12\x1b\n\x16k_EMsgAMSetPersonaName\x10\xce\x04\x12\x16\n\x11k_EMsgAMSetAvatar\x10\xcf\x04\x12\x1d\n\x18k_EMsgAMAuthenticateUser\x10\xd0\x04\x12%\n k_EMsgAMAuthenticateUserResponse\x10\xd1\x04\x12!\n\x1ck_EMsgAMP2PIntroducerMessage\x10\xd4\x04\x12\x1b\n\x16k_EMsgClientChatAction\x10\xd5\x04\x12\"\n\x1dk_EMsgAMClientChatActionRelay\x10\xd6\x04\x12\x11\n\x0ck_EMsgBaseVS\x10\xd8\x04\x12\x17\n\x12k_EMsgReqChallenge\x10\xd8\x04\x12\x16\n\x11k_EMsgVACResponse\x10\xd9\x04\x12\x1b\n\x16k_EMsgReqChallengeTest\x10\xda\x04\x12\x16\n\x11k_EMsgVSMarkCheat\x10\xdc\x04\x12\x15\n\x10k_EMsgVSAddCheat\x10\xdd\x04\x12\x1b\n\x16k_EMsgVSPurgeCodeModDB\x10\xde\x04\x12 \n\x1bk_EMsgVSGetChallengeResults\x10\xdf\x04\x12 \n\x1bk_EMsgVSChallengeResultText\x10\xe0\x04\x12\x1b\n\x16k_EMsgVSReportLingerer\x10\xe1\x04\x12$\n\x1fk_EMsgVSRequestManagedChallenge\x10\xe2\x04\x12\x1b\n\x16k_EMsgVSLoadDBFinished\x10\xe3\x04\x12\x13\n\x0ek_EMsgBaseDRMS\x10\xf1\x04\x12\x1e\n\x19k_EMsgDRMBuildBlobRequest\x10\xf4\x04\x12\x1f\n\x1ak_EMsgDRMBuildBlobResponse\x10\xf5\x04\x12 \n\x1bk_EMsgDRMResolveGuidRequest\x10\xf6\x04\x12!\n\x1ck_EMsgDRMResolveGuidResponse\x10\xf7\x04\x12\x1f\n\x1ak_EMsgDRMVariabilityReport\x10\xf9\x04\x12\'\n\"k_EMsgDRMVariabilityReportResponse\x10\xfa\x04\x12\x1d\n\x18k_EMsgDRMStabilityReport\x10\xfb\x04\x12%\n k_EMsgDRMStabilityReportResponse\x10\xfc\x04\x12\"\n\x1dk_EMsgDRMDetailsReportRequest\x10\xfd\x04\x12#\n\x1ek_EMsgDRMDetailsReportResponse\x10\xfe\x04\x12\x19\n\x14k_EMsgDRMProcessFile\x10\xff\x04\x12\x19\n\x14k_EMsgDRMAdminUpdate\x10\x80\x05\x12!\n\x1ck_EMsgDRMAdminUpdateResponse\x10\x81\x05\x12\x12\n\rk_EMsgDRMSync\x10\x82\x05\x12\x1a\n\x15k_EMsgDRMSyncResponse\x10\x83\x05\x12!\n\x1ck_EMsgDRMProcessFileResponse\x10\x84\x05\x12\x1c\n\x17k_EMsgDRMEmptyGuidCache\x10\x85\x05\x12$\n\x1fk_EMsgDRMEmptyGuidCacheResponse\x10\x86\x05\x12\x11\n\x0ck_EMsgBaseCS\x10\x8a\x05\x12\x15\n\x10k_EMsgBaseClient\x10\xbc\x05\x12!\n\x1ck_EMsgClientLogOn_Deprecated\x10\xbd\x05\x12%\n k_EMsgClientAnonLogOn_Deprecated\x10\xbe\x05\x12\x1a\n\x15k_EMsgClientHeartBeat\x10\xbf\x05\x12\x1c\n\x17k_EMsgClientVACResponse\x10\xc0\x05\x12%\n k_EMsgClientGamesPlayed_obsolete\x10\xc1\x05\x12\x17\n\x12k_EMsgClientLogOff\x10\xc2\x05\x12\"\n\x1dk_EMsgClientNoUDPConnectivity\x10\xc3\x05\x12 \n\x1bk_EMsgClientConnectionStats\x10\xc6\x05\x12\x1d\n\x18k_EMsgClientPingResponse\x10\xc8\x05\x12\x1d\n\x18k_EMsgClientRemoveFriend\x10\xca\x05\x12&\n!k_EMsgClientGamesPlayedNoDataBlob\x10\xcb\x05\x12\x1d\n\x18k_EMsgClientChangeStatus\x10\xcc\x05\x12\"\n\x1dk_EMsgClientVacStatusResponse\x10\xcd\x05\x12\x1a\n\x15k_EMsgClientFriendMsg\x10\xce\x05\x12%\n k_EMsgClientGameConnect_obsolete\x10\xcf\x05\x12&\n!k_EMsgClientGamesPlayed2_obsolete\x10\xd0\x05\x12#\n\x1ek_EMsgClientGameEnded_obsolete\x10\xd1\x05\x12\x19\n\x14k_EMsgClientSystemIM\x10\xd6\x05\x12\x1c\n\x17k_EMsgClientSystemIMAck\x10\xd7\x05\x12\x1c\n\x17k_EMsgClientGetLicenses\x10\xd8\x05\x12!\n\x1ck_EMsgClientGetLegacyGameKey\x10\xda\x05\x12.\n)k_EMsgClientContentServerLogOn_Deprecated\x10\xdb\x05\x12\x1b\n\x16k_EMsgClientAckVACBan2\x10\xdc\x05\x12$\n\x1fk_EMsgClientGetPurchaseReceipts\x10\xe0\x05\x12&\n!k_EMsgClientGamesPlayed3_obsolete\x10\xe2\x05\x12\x1d\n\x18k_EMsgClientAckGuestPass\x10\xe4\x05\x12 \n\x1bk_EMsgClientRedeemGuestPass\x10\xe5\x05\x12\x1c\n\x17k_EMsgClientGamesPlayed\x10\xe6\x05\x12\x1c\n\x17k_EMsgClientRegisterKey\x10\xe7\x05\x12!\n\x1ck_EMsgClientInviteUserToClan\x10\xe8\x05\x12&\n!k_EMsgClientAcknowledgeClanInvite\x10\xe9\x05\x12&\n!k_EMsgClientPurchaseWithMachineID\x10\xea\x05\x12\x1e\n\x19k_EMsgClientAppUsageEvent\x10\xeb\x05\x12\x1e\n\x19k_EMsgClientLogOnResponse\x10\xef\x05\x12!\n\x1ck_EMsgClientSetHeartbeatRate\x10\xf3\x05\x12&\n!k_EMsgClientNotLoggedOnDeprecated\x10\xf4\x05\x12\x1a\n\x15k_EMsgClientLoggedOff\x10\xf5\x05\x12\x14\n\x0fk_EMsgGSApprove\x10\xf6\x05\x12\x11\n\x0ck_EMsgGSDeny\x10\xf7\x05\x12\x11\n\x0ck_EMsgGSKick\x10\xf8\x05\x12!\n\x1ck_EMsgClientPurchaseResponse\x10\xfb\x05\x12\x15\n\x10k_EMsgClientPing\x10\xfc\x05\x12\x14\n\x0fk_EMsgClientNOP\x10\xfd\x05\x12\x1d\n\x18k_EMsgClientPersonaState\x10\xfe\x05\x12\x1c\n\x17k_EMsgClientFriendsList\x10\xff\x05\x12\x1c\n\x17k_EMsgClientAccountInfo\x10\x80\x06\x12\x1b\n\x16k_EMsgClientNewsUpdate\x10\x83\x06\x12 \n\x1bk_EMsgClientGameConnectDeny\x10\x85\x06\x12\x18\n\x13k_EMsgGSStatusReply\x10\x86\x06\x12\"\n\x1dk_EMsgClientGameConnectTokens\x10\x8b\x06\x12\x1c\n\x17k_EMsgClientLicenseList\x10\x8c\x06\x12\x1d\n\x18k_EMsgClientVACBanStatus\x10\x8e\x06\x12\x17\n\x12k_EMsgClientCMList\x10\x8f\x06\x12\x1b\n\x16k_EMsgClientEncryptPct\x10\x90\x06\x12)\n$k_EMsgClientGetLegacyGameKeyResponse\x10\x91\x06\x12\x1a\n\x15k_EMsgClientAddFriend\x10\x97\x06\x12\"\n\x1dk_EMsgClientAddFriendResponse\x10\x98\x06\x12%\n k_EMsgClientAckGuestPassResponse\x10\x9c\x06\x12(\n#k_EMsgClientRedeemGuestPassResponse\x10\x9d\x06\x12&\n!k_EMsgClientUpdateGuestPassesList\x10\x9e\x06\x12\x18\n\x13k_EMsgClientChatMsg\x10\x9f\x06\x12\x1b\n\x16k_EMsgClientChatInvite\x10\xa0\x06\x12\x19\n\x14k_EMsgClientJoinChat\x10\xa1\x06\x12\x1f\n\x1ak_EMsgClientChatMemberInfo\x10\xa2\x06\x12\x30\n+k_EMsgClientLogOnWithCredentials_Deprecated\x10\xa3\x06\x12\'\n\"k_EMsgClientPasswordChangeResponse\x10\xa5\x06\x12\x1a\n\x15k_EMsgClientChatEnter\x10\xa7\x06\x12(\n#k_EMsgClientFriendRemovedFromSource\x10\xa8\x06\x12\x1b\n\x16k_EMsgClientCreateChat\x10\xa9\x06\x12#\n\x1ek_EMsgClientCreateChatResponse\x10\xaa\x06\x12%\n k_EMsgClientP2PIntroducerMessage\x10\xad\x06\x12!\n\x1ck_EMsgClientChatActionResult\x10\xae\x06\x12\"\n\x1dk_EMsgClientRequestFriendData\x10\xaf\x06\x12\x1d\n\x18k_EMsgClientGetUserStats\x10\xb2\x06\x12%\n k_EMsgClientGetUserStatsResponse\x10\xb3\x06\x12\x1f\n\x1ak_EMsgClientStoreUserStats\x10\xb4\x06\x12\'\n\"k_EMsgClientStoreUserStatsResponse\x10\xb5\x06\x12\x1a\n\x15k_EMsgClientClanState\x10\xb6\x06\x12\x1e\n\x19k_EMsgClientServiceModule\x10\xbe\x06\x12\x1c\n\x17k_EMsgClientServiceCall\x10\xbf\x06\x12$\n\x1fk_EMsgClientServiceCallResponse\x10\xc0\x06\x12&\n!k_EMsgClientNatTraversalStatEvent\x10\xc7\x06\x12 \n\x1bk_EMsgClientSteamUsageEvent\x10\xca\x06\x12\x1e\n\x19k_EMsgClientCheckPassword\x10\xcd\x06\x12\x1e\n\x19k_EMsgClientResetPassword\x10\xce\x06\x12&\n!k_EMsgClientCheckPasswordResponse\x10\xd0\x06\x12&\n!k_EMsgClientResetPasswordResponse\x10\xd1\x06\x12\x1d\n\x18k_EMsgClientSessionToken\x10\xd2\x06\x12!\n\x1ck_EMsgClientDRMProblemReport\x10\xd3\x06\x12 \n\x1bk_EMsgClientSetIgnoreFriend\x10\xd7\x06\x12(\n#k_EMsgClientSetIgnoreFriendResponse\x10\xd8\x06\x12&\n!k_EMsgClientGetAppOwnershipTicket\x10\xd9\x06\x12.\n)k_EMsgClientGetAppOwnershipTicketResponse\x10\xda\x06\x12%\n k_EMsgClientGetLobbyListResponse\x10\xdc\x06\x12\x1b\n\x16k_EMsgClientServerList\x10\xf0\x06\x12\x1f\n\x1ak_EMsgClientDRMBlobRequest\x10\x80\x07\x12 \n\x1bk_EMsgClientDRMBlobResponse\x10\x81\x07\x12\x19\n\x14k_EMsgBaseGameServer\x10\x84\x07\x12\x1d\n\x18k_EMsgGSDisconnectNotice\x10\x85\x07\x12\x13\n\x0ek_EMsgGSStatus\x10\x87\x07\x12\x18\n\x13k_EMsgGSUserPlaying\x10\x89\x07\x12\x14\n\x0fk_EMsgGSStatus2\x10\x8a\x07\x12 \n\x1bk_EMsgGSStatusUpdate_Unused\x10\x8b\x07\x12\x17\n\x12k_EMsgGSServerType\x10\x8c\x07\x12\x17\n\x12k_EMsgGSPlayerList\x10\x8d\x07\x12%\n k_EMsgGSGetUserAchievementStatus\x10\x8e\x07\x12-\n(k_EMsgGSGetUserAchievementStatusResponse\x10\x8f\x07\x12\x19\n\x14k_EMsgGSGetPlayStats\x10\x96\x07\x12!\n\x1ck_EMsgGSGetPlayStatsResponse\x10\x97\x07\x12\x1f\n\x1ak_EMsgGSGetUserGroupStatus\x10\x98\x07\x12\x1f\n\x1ak_EMsgAMGetUserGroupStatus\x10\x99\x07\x12\'\n\"k_EMsgAMGetUserGroupStatusResponse\x10\x9a\x07\x12\'\n\"k_EMsgGSGetUserGroupStatusResponse\x10\x9b\x07\x12\x1a\n\x15k_EMsgGSGetReputation\x10\xa8\x07\x12\"\n\x1dk_EMsgGSGetReputationResponse\x10\xa9\x07\x12\x1e\n\x19k_EMsgGSAssociateWithClan\x10\xaa\x07\x12&\n!k_EMsgGSAssociateWithClanResponse\x10\xab\x07\x12*\n%k_EMsgGSComputeNewPlayerCompatibility\x10\xac\x07\x12\x32\n-k_EMsgGSComputeNewPlayerCompatibilityResponse\x10\xad\x07\x12\x14\n\x0fk_EMsgBaseAdmin\x10\xe8\x07\x12\x13\n\x0ek_EMsgAdminCmd\x10\xe8\x07\x12\x1b\n\x16k_EMsgAdminCmdResponse\x10\xec\x07\x12 \n\x1bk_EMsgAdminLogListenRequest\x10\xed\x07\x12\x18\n\x13k_EMsgAdminLogEvent\x10\xee\x07\x12\x17\n\x12k_EMsgUniverseData\x10\xf2\x07\x12\x14\n\x0fk_EMsgAdminSpew\x10\xfb\x07\x12\x1c\n\x17k_EMsgAdminConsoleTitle\x10\xfc\x07\x12\x16\n\x11k_EMsgAdminGCSpew\x10\xff\x07\x12\x19\n\x14k_EMsgAdminGCCommand\x10\x80\x08\x12 \n\x1bk_EMsgAdminGCGetCommandList\x10\x81\x08\x12(\n#k_EMsgAdminGCGetCommandListResponse\x10\x82\x08\x12\x1c\n\x17k_EMsgFBSConnectionData\x10\x83\x08\x12\x17\n\x12k_EMsgAdminMsgSpew\x10\x84\x08\x12\x12\n\rk_EMsgBaseFBS\x10\xcc\x08\x12\x18\n\x13k_EMsgFBSReqVersion\x10\xcc\x08\x12\x19\n\x14k_EMsgFBSVersionInfo\x10\xcd\x08\x12\x1a\n\x15k_EMsgFBSForceRefresh\x10\xce\x08\x12\x19\n\x14k_EMsgFBSForceBounce\x10\xcf\x08\x12\x1b\n\x16k_EMsgFBSDeployPackage\x10\xd0\x08\x12\x1c\n\x17k_EMsgFBSDeployResponse\x10\xd1\x08\x12 \n\x1bk_EMsgFBSUpdateBootstrapper\x10\xd2\x08\x12\x16\n\x11k_EMsgFBSSetState\x10\xd3\x08\x12\x1c\n\x17k_EMsgFBSApplyOSUpdates\x10\xd4\x08\x12\x1a\n\x15k_EMsgFBSRunCMDScript\x10\xd5\x08\x12\x17\n\x12k_EMsgFBSRebootBox\x10\xd6\x08\x12\x1f\n\x1ak_EMsgFBSSetBigBrotherMode\x10\xd7\x08\x12\x1c\n\x17k_EMsgFBSMinidumpServer\x10\xd8\x08\x12!\n\x1ck_EMsgFBSDeployHotFixPackage\x10\xda\x08\x12\"\n\x1dk_EMsgFBSDeployHotFixResponse\x10\xdb\x08\x12\x1c\n\x17k_EMsgFBSDownloadHotFix\x10\xdc\x08\x12$\n\x1fk_EMsgFBSDownloadHotFixResponse\x10\xdd\x08\x12$\n\x1fk_EMsgFBSUpdateTargetConfigFile\x10\xde\x08\x12\x1e\n\x19k_EMsgFBSApplyAccountCred\x10\xdf\x08\x12&\n!k_EMsgFBSApplyAccountCredResponse\x10\xe0\x08\x12\x1b\n\x16k_EMsgFBSSetShellCount\x10\xe1\x08\x12\x1c\n\x17k_EMsgFBSTerminateShell\x10\xe2\x08\x12\x1f\n\x1ak_EMsgFBSQueryGMForRequest\x10\xe3\x08\x12\x1d\n\x18k_EMsgFBSQueryGMResponse\x10\xe4\x08\x12\x1e\n\x19k_EMsgFBSTerminateZombies\x10\xe5\x08\x12\"\n\x1dk_EMsgFBSInfoFromBootstrapper\x10\xe6\x08\x12\x1f\n\x1ak_EMsgFBSRebootBoxResponse\x10\xe7\x08\x12(\n#k_EMsgFBSBootstrapperPackageRequest\x10\xe8\x08\x12)\n$k_EMsgFBSBootstrapperPackageResponse\x10\xe9\x08\x12)\n$k_EMsgFBSBootstrapperGetPackageChunk\x10\xea\x08\x12\x31\n,k_EMsgFBSBootstrapperGetPackageChunkResponse\x10\xeb\x08\x12\x31\n,k_EMsgFBSBootstrapperPackageTransferProgress\x10\xec\x08\x12!\n\x1ck_EMsgFBSRestartBootstrapper\x10\xed\x08\x12\x1e\n\x19k_EMsgFBSPauseFrozenDumps\x10\xee\x08\x12\x17\n\x12k_EMsgBaseFileXfer\x10\xb0\t\x12\x1a\n\x15k_EMsgFileXferRequest\x10\xb0\t\x12\x1b\n\x16k_EMsgFileXferResponse\x10\xb1\t\x12\x17\n\x12k_EMsgFileXferData\x10\xb2\t\x12\x16\n\x11k_EMsgFileXferEnd\x10\xb3\t\x12\x1a\n\x15k_EMsgFileXferDataAck\x10\xb4\t\x12\x1a\n\x15k_EMsgBaseChannelAuth\x10\x94\n\x12\x1f\n\x1ak_EMsgChannelAuthChallenge\x10\x94\n\x12\x1e\n\x19k_EMsgChannelAuthResponse\x10\x95\n\x12\x1c\n\x17k_EMsgChannelAuthResult\x10\x96\n\x12 \n\x1bk_EMsgChannelEncryptRequest\x10\x97\n\x12!\n\x1ck_EMsgChannelEncryptResponse\x10\x98\n\x12\x1f\n\x1ak_EMsgChannelEncryptResult\x10\x99\n\x12\x11\n\x0ck_EMsgBaseBS\x10\xf8\n\x12\x1a\n\x15k_EMsgBSPurchaseStart\x10\xf9\n\x12\x1d\n\x18k_EMsgBSPurchaseResponse\x10\xfa\n\x12 \n\x1bk_EMsgBSAuthenticateCCTrans\x10\xfb\n\x12(\n#k_EMsgBSAuthenticateCCTransResponse\x10\xfc\n\x12\x1b\n\x16k_EMsgBSSettleComplete\x10\xfe\n\x12\x1a\n\x15k_EMsgBSInitPayPalTxn\x10\x80\x0b\x12\"\n\x1dk_EMsgBSInitPayPalTxnResponse\x10\x81\x0b\x12\x1e\n\x19k_EMsgBSGetPayPalUserInfo\x10\x82\x0b\x12&\n!k_EMsgBSGetPayPalUserInfoResponse\x10\x83\x0b\x12\x1c\n\x17k_EMsgBSPaymentInstrBan\x10\x89\x0b\x12$\n\x1fk_EMsgBSPaymentInstrBanResponse\x10\x8a\x0b\x12\x1e\n\x19k_EMsgBSInitGCBankXferTxn\x10\x8d\x0b\x12&\n!k_EMsgBSInitGCBankXferTxnResponse\x10\x8e\x0b\x12\x18\n\x13k_EMsgBSCommitGCTxn\x10\x91\x0b\x12#\n\x1ek_EMsgBSQueryTransactionStatus\x10\x92\x0b\x12+\n&k_EMsgBSQueryTransactionStatusResponse\x10\x93\x0b\x12!\n\x1ck_EMsgBSQueryTxnExtendedInfo\x10\x99\x0b\x12)\n$k_EMsgBSQueryTxnExtendedInfoResponse\x10\x9a\x0b\x12\"\n\x1dk_EMsgBSUpdateConversionRates\x10\x9b\x0b\x12#\n\x1ek_EMsgBSPurchaseRunFraudChecks\x10\x9d\x0b\x12+\n&k_EMsgBSPurchaseRunFraudChecksResponse\x10\x9e\x0b\x12!\n\x1ck_EMsgBSQueryBankInformation\x10\xa0\x0b\x12)\n$k_EMsgBSQueryBankInformationResponse\x10\xa1\x0b\x12$\n\x1fk_EMsgBSValidateXsollaSignature\x10\xa5\x0b\x12,\n\'k_EMsgBSValidateXsollaSignatureResponse\x10\xa6\x0b\x12\x1e\n\x19k_EMsgBSQiwiWalletInvoice\x10\xa8\x0b\x12&\n!k_EMsgBSQiwiWalletInvoiceResponse\x10\xa9\x0b\x12\'\n\"k_EMsgBSUpdateInventoryFromProPack\x10\xaa\x0b\x12/\n*k_EMsgBSUpdateInventoryFromProPackResponse\x10\xab\x0b\x12 \n\x1bk_EMsgBSSendShippingRequest\x10\xac\x0b\x12(\n#k_EMsgBSSendShippingRequestResponse\x10\xad\x0b\x12\"\n\x1dk_EMsgBSGetProPackOrderStatus\x10\xae\x0b\x12*\n%k_EMsgBSGetProPackOrderStatusResponse\x10\xaf\x0b\x12\x1c\n\x17k_EMsgBSCheckJobRunning\x10\xb0\x0b\x12$\n\x1fk_EMsgBSCheckJobRunningResponse\x10\xb1\x0b\x12*\n%k_EMsgBSResetPackagePurchaseRateLimit\x10\xb2\x0b\x12\x32\n-k_EMsgBSResetPackagePurchaseRateLimitResponse\x10\xb3\x0b\x12\x1e\n\x19k_EMsgBSUpdatePaymentData\x10\xb4\x0b\x12&\n!k_EMsgBSUpdatePaymentDataResponse\x10\xb5\x0b\x12\x1e\n\x19k_EMsgBSGetBillingAddress\x10\xb6\x0b\x12&\n!k_EMsgBSGetBillingAddressResponse\x10\xb7\x0b\x12\x1e\n\x19k_EMsgBSGetCreditCardInfo\x10\xb8\x0b\x12&\n!k_EMsgBSGetCreditCardInfoResponse\x10\xb9\x0b\x12%\n k_EMsgBSRemoveExpiredPaymentData\x10\xbc\x0b\x12-\n(k_EMsgBSRemoveExpiredPaymentDataResponse\x10\xbd\x0b\x12!\n\x1ck_EMsgBSConvertToCurrentKeys\x10\xbe\x0b\x12)\n$k_EMsgBSConvertToCurrentKeysResponse\x10\xbf\x0b\x12\x19\n\x14k_EMsgBSInitPurchase\x10\xc0\x0b\x12!\n\x1ck_EMsgBSInitPurchaseResponse\x10\xc1\x0b\x12\x1d\n\x18k_EMsgBSCompletePurchase\x10\xc2\x0b\x12%\n k_EMsgBSCompletePurchaseResponse\x10\xc3\x0b\x12 \n\x1bk_EMsgBSPruneCardUsageStats\x10\xc4\x0b\x12(\n#k_EMsgBSPruneCardUsageStatsResponse\x10\xc5\x0b\x12!\n\x1ck_EMsgBSStoreBankInformation\x10\xc6\x0b\x12)\n$k_EMsgBSStoreBankInformationResponse\x10\xc7\x0b\x12\x1a\n\x15k_EMsgBSVerifyPOSAKey\x10\xc8\x0b\x12\"\n\x1dk_EMsgBSVerifyPOSAKeyResponse\x10\xc9\x0b\x12!\n\x1ck_EMsgBSReverseRedeemPOSAKey\x10\xca\x0b\x12)\n$k_EMsgBSReverseRedeemPOSAKeyResponse\x10\xcb\x0b\x12 \n\x1bk_EMsgBSQueryFindCreditCard\x10\xcc\x0b\x12(\n#k_EMsgBSQueryFindCreditCardResponse\x10\xcd\x0b\x12!\n\x1ck_EMsgBSStatusInquiryPOSAKey\x10\xce\x0b\x12)\n$k_EMsgBSStatusInquiryPOSAKeyResponse\x10\xcf\x0b\x12,\n\'k_EMsgBSBoaCompraConfirmProductDelivery\x10\xd6\x0b\x12\x34\n/k_EMsgBSBoaCompraConfirmProductDeliveryResponse\x10\xd7\x0b\x12!\n\x1ck_EMsgBSGenerateBoaCompraMD5\x10\xd8\x0b\x12)\n$k_EMsgBSGenerateBoaCompraMD5Response\x10\xd9\x0b\x12\x18\n\x13k_EMsgBSCommitWPTxn\x10\xda\x0b\x12\x1b\n\x16k_EMsgBSCommitAdyenTxn\x10\xdb\x0b\x12\x12\n\rk_EMsgBaseATS\x10\xdc\x0b\x12\x1d\n\x18k_EMsgATSStartStressTest\x10\xdd\x0b\x12\x1c\n\x17k_EMsgATSStopStressTest\x10\xde\x0b\x12\x1f\n\x1ak_EMsgATSRunFailServerTest\x10\xdf\x0b\x12\x1d\n\x18k_EMsgATSUFSPerfTestTask\x10\xe0\x0b\x12!\n\x1ck_EMsgATSUFSPerfTestResponse\x10\xe1\x0b\x12\x16\n\x11k_EMsgATSCycleTCM\x10\xe2\x0b\x12 \n\x1bk_EMsgATSInitDRMSStressTest\x10\xe3\x0b\x12\x16\n\x11k_EMsgATSCallTest\x10\xe4\x0b\x12\x1b\n\x16k_EMsgATSCallTestReply\x10\xe5\x0b\x12!\n\x1ck_EMsgATSStartExternalStress\x10\xe6\x0b\x12$\n\x1fk_EMsgATSExternalStressJobStart\x10\xe7\x0b\x12%\n k_EMsgATSExternalStressJobQueued\x10\xe8\x0b\x12&\n!k_EMsgATSExternalStressJobRunning\x10\xe9\x0b\x12&\n!k_EMsgATSExternalStressJobStopped\x10\xea\x0b\x12&\n!k_EMsgATSExternalStressJobStopAll\x10\xeb\x0b\x12(\n#k_EMsgATSExternalStressActionResult\x10\xec\x0b\x12\x15\n\x10k_EMsgATSStarted\x10\xed\x0b\x12\x1c\n\x17k_EMsgATSCSPerfTestTask\x10\xee\x0b\x12 \n\x1bk_EMsgATSCSPerfTestResponse\x10\xef\x0b\x12\x11\n\x0ck_EMsgBaseDP\x10\xc0\x0c\x12\x1f\n\x1ak_EMsgDPSetPublishingState\x10\xc1\x0c\x12\x1e\n\x19k_EMsgDPUniquePlayersStat\x10\xc3\x0c\x12\'\n\"k_EMsgDPStreamingUniquePlayersStat\x10\xc4\x0c\x12\x1a\n\x15k_EMsgDPBlockingStats\x10\xc7\x0c\x12\x1e\n\x19k_EMsgDPNatTraversalStats\x10\xc8\x0c\x12\x17\n\x12k_EMsgDPCloudStats\x10\xcc\x0c\x12\x1b\n\x16k_EMsgDPGetPlayerCount\x10\xcf\x0c\x12#\n\x1ek_EMsgDPGetPlayerCountResponse\x10\xd0\x0c\x12$\n\x1fk_EMsgDPGameServersPlayersStats\x10\xd1\x0c\x12%\n k_EMsgClientDPCheckSpecialSurvey\x10\xd4\x0c\x12-\n(k_EMsgClientDPCheckSpecialSurveyResponse\x10\xd5\x0c\x12,\n\'k_EMsgClientDPSendSpecialSurveyResponse\x10\xd6\x0c\x12\x31\n,k_EMsgClientDPSendSpecialSurveyResponseReply\x10\xd7\x0c\x12 \n\x1bk_EMsgDPStoreSaleStatistics\x10\xd8\x0c\x12%\n k_EMsgClientDPUpdateAppJobReport\x10\xd9\x0c\x12(\n#k_EMsgClientDPUnsignedInstallScript\x10\xdb\x0c\x12\x1d\n\x18k_EMsgDPPartnerMicroTxns\x10\xdc\x0c\x12%\n k_EMsgDPPartnerMicroTxnsResponse\x10\xdd\x0c\x12%\n k_EMsgClientDPContentStatsReport\x10\xde\x0c\x12 \n\x1bk_EMsgDPVRUniquePlayersStat\x10\xdf\x0c\x12\x11\n\x0ck_EMsgBaseCM\x10\xa4\r\x12\x1a\n\x15k_EMsgCMSetAllowState\x10\xa5\r\x12\x1b\n\x16k_EMsgCMSpewAllowState\x10\xa6\r\x12\x1c\n\x17k_EMsgCMSessionRejected\x10\xa7\r\x12\x17\n\x12k_EMsgCMSetSecrets\x10\xa8\r\x12\x17\n\x12k_EMsgCMGetSecrets\x10\xa9\r\x12\x11\n\x0ck_EMsgBaseGC\x10\x98\x11\x12\x16\n\x11k_EMsgGCCmdRevive\x10\x9b\x11\x12\x14\n\x0fk_EMsgGCCmdDown\x10\x9e\x11\x12\x16\n\x11k_EMsgGCCmdDeploy\x10\x9f\x11\x12\x1e\n\x19k_EMsgGCCmdDeployResponse\x10\xa0\x11\x12\x16\n\x11k_EMsgGCCmdSwitch\x10\xa1\x11\x12\x1c\n\x17k_EMsgAMRefreshSessions\x10\xa2\x11\x12\x1f\n\x1ak_EMsgGCAchievementAwarded\x10\xa4\x11\x12\x1a\n\x15k_EMsgGCSystemMessage\x10\xa5\x11\x12\x16\n\x11k_EMsgGCCmdStatus\x10\xa8\x11\x12-\n(k_EMsgGCRegisterWebInterfaces_Deprecated\x10\xa9\x11\x12)\n$k_EMsgGCGetAccountDetails_DEPRECATED\x10\xaa\x11\x12\x1c\n\x17k_EMsgGCInterAppMessage\x10\xab\x11\x12\x1d\n\x18k_EMsgGCGetEmailTemplate\x10\xac\x11\x12%\n k_EMsgGCGetEmailTemplateResponse\x10\xad\x11\x12\x13\n\x0ek_EMsgGCHRelay\x10\xae\x11\x12\x1b\n\x16k_EMsgGCHRelayToClient\x10\xaf\x11\x12\x1b\n\x16k_EMsgGCHUpdateSession\x10\xb0\x11\x12\"\n\x1dk_EMsgGCHRequestUpdateSession\x10\xb1\x11\x12\x1b\n\x16k_EMsgGCHRequestStatus\x10\xb2\x11\x12#\n\x1ek_EMsgGCHRequestStatusResponse\x10\xb3\x11\x12$\n\x1fk_EMsgGCHAccountVacStatusChange\x10\xb4\x11\x12\x15\n\x10k_EMsgGCHSpawnGC\x10\xb5\x11\x12\x1d\n\x18k_EMsgGCHSpawnGCResponse\x10\xb6\x11\x12\x14\n\x0fk_EMsgGCHKillGC\x10\xb7\x11\x12\x1c\n\x17k_EMsgGCHKillGCResponse\x10\xb8\x11\x12)\n$k_EMsgGCHAccountTradeBanStatusChange\x10\xb9\x11\x12%\n k_EMsgGCHAccountLockStatusChange\x10\xba\x11\x12#\n\x1ek_EMsgGCHVacVerificationChange\x10\xbb\x11\x12&\n!k_EMsgGCHAccountPhoneNumberChange\x10\xbc\x11\x12$\n\x1fk_EMsgGCHAccountTwoFactorChange\x10\xbd\x11\x12\x1f\n\x1ak_EMsgGCHInviteUserToLobby\x10\xbe\x11\x12$\n\x1fk_EMsgGCHUpdateMultipleSessions\x10\xbf\x11\x12*\n%k_EMsgGCHMarkAppSessionsAuthoritative\x10\xc0\x11\x12/\n*k_EMsgGCHRecurringSubscriptionStatusChange\x10\xc1\x11\x12\x1f\n\x1ak_EMsgGCHAppCheersReceived\x10\xc2\x11\x12&\n!k_EMsgGCHAppCheersGetAllowedTypes\x10\xc3\x11\x12.\n)k_EMsgGCHAppCheersGetAllowedTypesResponse\x10\xc4\x11\x12\x12\n\rk_EMsgBaseP2P\x10\xc4\x13\x12\x1f\n\x1ak_EMsgP2PIntroducerMessage\x10\xc6\x13\x12\x11\n\x0ck_EMsgBaseSM\x10\xd4\x16\x12\x1c\n\x17k_EMsgSMExpensiveReport\x10\xd6\x16\x12\x19\n\x14k_EMsgSMHourlyReport\x10\xd7\x16\x12\x1d\n\x18k_EMsgSMPartitionRenames\x10\xd9\x16\x12\x19\n\x14k_EMsgSMMonitorSpace\x10\xda\x16\x12*\n%k_EMsgSMTestNextBuildSchemaConversion\x10\xdb\x16\x12\x32\n-k_EMsgSMTestNextBuildSchemaConversionResponse\x10\xdc\x16\x12\x13\n\x0ek_EMsgBaseTest\x10\xb8\x17\x12\x15\n\x10k_EMsgFailServer\x10\xb8\x17\x12\x1b\n\x16k_EMsgJobHeartbeatTest\x10\xb9\x17\x12#\n\x1ek_EMsgJobHeartbeatTestResponse\x10\xba\x17\x12\x17\n\x12k_EMsgBaseFTSRange\x10\x9c\x18\x12\x17\n\x12k_EMsgBaseCCSRange\x10\xce\x18\x12\'\n\"k_EMsgCCSDeleteAllCommentsByAuthor\x10\xd9\x18\x12/\n*k_EMsgCCSDeleteAllCommentsByAuthorResponse\x10\xda\x18\x12\x17\n\x12k_EMsgBaseLBSRange\x10\x80\x19\x12\x16\n\x11k_EMsgLBSSetScore\x10\x81\x19\x12\x1e\n\x19k_EMsgLBSSetScoreResponse\x10\x82\x19\x12\x1c\n\x17k_EMsgLBSFindOrCreateLB\x10\x83\x19\x12$\n\x1fk_EMsgLBSFindOrCreateLBResponse\x10\x84\x19\x12\x1a\n\x15k_EMsgLBSGetLBEntries\x10\x85\x19\x12\"\n\x1dk_EMsgLBSGetLBEntriesResponse\x10\x86\x19\x12\x17\n\x12k_EMsgLBSGetLBList\x10\x87\x19\x12\x1f\n\x1ak_EMsgLBSGetLBListResponse\x10\x88\x19\x12\x1a\n\x15k_EMsgLBSSetLBDetails\x10\x89\x19\x12\x16\n\x11k_EMsgLBSDeleteLB\x10\x8a\x19\x12\x1b\n\x16k_EMsgLBSDeleteLBEntry\x10\x8b\x19\x12\x15\n\x10k_EMsgLBSResetLB\x10\x8c\x19\x12\x1d\n\x18k_EMsgLBSResetLBResponse\x10\x8d\x19\x12\x1e\n\x19k_EMsgLBSDeleteLBResponse\x10\x8e\x19\x12\x12\n\rk_EMsgBaseOGS\x10\xc8\x1a\x12\x1a\n\x15k_EMsgOGSBeginSession\x10\xc9\x1a\x12\"\n\x1dk_EMsgOGSBeginSessionResponse\x10\xca\x1a\x12\x18\n\x13k_EMsgOGSEndSession\x10\xcb\x1a\x12 \n\x1bk_EMsgOGSEndSessionResponse\x10\xcc\x1a\x12 \n\x1bk_EMsgOGSWriteAppSessionRow\x10\xce\x1a\x12\x12\n\rk_EMsgBaseBRP\x10\x90\x1c\x12 \n\x1bk_EMsgBRPPostTransactionTax\x10\xad\x1c\x12(\n#k_EMsgBRPPostTransactionTaxResponse\x10\xae\x1c\x12\x17\n\x12k_EMsgBaseAMRange2\x10\xa0\x1f\x12\x17\n\x12k_EMsgAMCreateChat\x10\xa1\x1f\x12\x1f\n\x1ak_EMsgAMCreateChatResponse\x10\xa2\x1f\x12\x1a\n\x15k_EMsgAMSetProfileURL\x10\xa5\x1f\x12#\n\x1ek_EMsgAMGetAccountEmailAddress\x10\xa6\x1f\x12+\n&k_EMsgAMGetAccountEmailAddressResponse\x10\xa7\x1f\x12\x1c\n\x17k_EMsgAMRequestClanData\x10\xa8\x1f\x12\x1b\n\x16k_EMsgAMRouteToClients\x10\xa9\x1f\x12\x16\n\x11k_EMsgAMLeaveClan\x10\xaa\x1f\x12\x1c\n\x17k_EMsgAMClanPermissions\x10\xab\x1f\x12$\n\x1fk_EMsgAMClanPermissionsResponse\x10\xac\x1f\x12\x30\n+k_EMsgAMCreateClanEventDummyForRateLimiting\x10\xad\x1f\x12\x30\n+k_EMsgAMUpdateClanEventDummyForRateLimiting\x10\xaf\x1f\x12&\n!k_EMsgAMSetClanPermissionSettings\x10\xb5\x1f\x12.\n)k_EMsgAMSetClanPermissionSettingsResponse\x10\xb6\x1f\x12&\n!k_EMsgAMGetClanPermissionSettings\x10\xb7\x1f\x12.\n)k_EMsgAMGetClanPermissionSettingsResponse\x10\xb8\x1f\x12 \n\x1bk_EMsgAMPublishChatRoomInfo\x10\xb9\x1f\x12\x1d\n\x18k_EMsgClientChatRoomInfo\x10\xba\x1f\x12\x1b\n\x16k_EMsgAMGetClanHistory\x10\xc7\x1f\x12#\n\x1ek_EMsgAMGetClanHistoryResponse\x10\xc8\x1f\x12\"\n\x1dk_EMsgAMGetClanPermissionBits\x10\xc9\x1f\x12*\n%k_EMsgAMGetClanPermissionBitsResponse\x10\xca\x1f\x12\"\n\x1dk_EMsgAMSetClanPermissionBits\x10\xcb\x1f\x12*\n%k_EMsgAMSetClanPermissionBitsResponse\x10\xcc\x1f\x12\x1f\n\x1ak_EMsgAMSessionInfoRequest\x10\xcd\x1f\x12 \n\x1bk_EMsgAMSessionInfoResponse\x10\xce\x1f\x12\x1c\n\x17k_EMsgAMValidateWGToken\x10\xcf\x1f\x12\x18\n\x13k_EMsgAMGetClanRank\x10\xd2\x1f\x12 \n\x1bk_EMsgAMGetClanRankResponse\x10\xd3\x1f\x12\x18\n\x13k_EMsgAMSetClanRank\x10\xd4\x1f\x12 \n\x1bk_EMsgAMSetClanRankResponse\x10\xd5\x1f\x12\x18\n\x13k_EMsgAMGetClanPOTW\x10\xd6\x1f\x12 \n\x1bk_EMsgAMGetClanPOTWResponse\x10\xd7\x1f\x12\x18\n\x13k_EMsgAMSetClanPOTW\x10\xd8\x1f\x12 \n\x1bk_EMsgAMSetClanPOTWResponse\x10\xd9\x1f\x12\x15\n\x10k_EMsgAMDumpUser\x10\xdb\x1f\x12\x1d\n\x18k_EMsgAMKickUserFromClan\x10\xdc\x1f\x12\x1d\n\x18k_EMsgAMAddFounderToClan\x10\xdd\x1f\x12$\n\x1fk_EMsgAMValidateWGTokenResponse\x10\xde\x1f\x12\x1e\n\x19k_EMsgAMSetAccountDetails\x10\xe0\x1f\x12\x1b\n\x16k_EMsgAMGetChatBanList\x10\xe1\x1f\x12#\n\x1ek_EMsgAMGetChatBanListResponse\x10\xe2\x1f\x12\x1a\n\x15k_EMsgAMUnBanFromChat\x10\xe3\x1f\x12\x1b\n\x16k_EMsgAMSetClanDetails\x10\xe4\x1f\x12\x1e\n\x19k_EMsgUGSGetUserGameStats\x10\xe9\x1f\x12&\n!k_EMsgUGSGetUserGameStatsResponse\x10\xea\x1f\x12 \n\x1bk_EMsgAMCheckClanMembership\x10\xeb\x1f\x12\x1b\n\x16k_EMsgAMGetClanMembers\x10\xec\x1f\x12#\n\x1ek_EMsgAMGetClanMembersResponse\x10\xed\x1f\x12#\n\x1ek_EMsgAMNotifyChatOfClanChange\x10\xef\x1f\x12\x1d\n\x18k_EMsgAMResubmitPurchase\x10\xf0\x1f\x12\x16\n\x11k_EMsgAMAddFriend\x10\xf1\x1f\x12\x1e\n\x19k_EMsgAMAddFriendResponse\x10\xf2\x1f\x12\x19\n\x14k_EMsgAMRemoveFriend\x10\xf3\x1f\x12\x15\n\x10k_EMsgAMDumpClan\x10\xf4\x1f\x12\x1c\n\x17k_EMsgAMChangeClanOwner\x10\xf5\x1f\x12\x1e\n\x19k_EMsgAMCancelEasyCollect\x10\xf6\x1f\x12&\n!k_EMsgAMCancelEasyCollectResponse\x10\xf7\x1f\x12\x1a\n\x15k_EMsgAMClansInCommon\x10\xfa\x1f\x12\"\n\x1dk_EMsgAMClansInCommonResponse\x10\xfb\x1f\x12\x1d\n\x18k_EMsgAMIsValidAccountID\x10\xfc\x1f\x12\x1c\n\x17k_EMsgAMWipeFriendsList\x10\xff\x1f\x12\x17\n\x12k_EMsgAMSetIgnored\x10\x80 \x12\'\n\"k_EMsgAMClansInCommonCountResponse\x10\x81 \x12\x18\n\x13k_EMsgAMFriendsList\x10\x82 \x12 \n\x1bk_EMsgAMFriendsListResponse\x10\x83 \x12\x1c\n\x17k_EMsgAMFriendsInCommon\x10\x84 \x12$\n\x1fk_EMsgAMFriendsInCommonResponse\x10\x85 \x12)\n$k_EMsgAMFriendsInCommonCountResponse\x10\x86 \x12\x1f\n\x1ak_EMsgAMClansInCommonCount\x10\x87 \x12\x1d\n\x18k_EMsgAMChallengeVerdict\x10\x88 \x12\"\n\x1dk_EMsgAMChallengeNotification\x10\x89 \x12\x17\n\x12k_EMsgAMFindGSByIP\x10\x8a \x12\x18\n\x13k_EMsgAMFoundGSByIP\x10\x8b \x12\x18\n\x13k_EMsgAMGiftRevoked\x10\x8c \x12\x19\n\x14k_EMsgAMUserClanList\x10\x8e \x12!\n\x1ck_EMsgAMUserClanListResponse\x10\x8f \x12\x1f\n\x1ak_EMsgAMGetAccountDetails2\x10\x90 \x12\'\n\"k_EMsgAMGetAccountDetailsResponse2\x10\x91 \x12(\n#k_EMsgAMSetCommunityProfileSettings\x10\x92 \x12\x30\n+k_EMsgAMSetCommunityProfileSettingsResponse\x10\x93 \x12%\n k_EMsgAMGetCommunityPrivacyState\x10\x94 \x12-\n(k_EMsgAMGetCommunityPrivacyStateResponse\x10\x95 \x12(\n#k_EMsgAMCheckClanInviteRateLimiting\x10\x96 \x12&\n!k_EMsgUGSGetUserAchievementStatus\x10\x97 \x12\x17\n\x12k_EMsgAMGetIgnored\x10\x98 \x12\x1f\n\x1ak_EMsgAMGetIgnoredResponse\x10\x99 \x12\x1f\n\x1ak_EMsgAMSetIgnoredResponse\x10\x9a \x12&\n!k_EMsgAMSetFriendRelationshipNone\x10\x9b \x12\"\n\x1dk_EMsgAMGetFriendRelationship\x10\x9c \x12*\n%k_EMsgAMGetFriendRelationshipResponse\x10\x9d \x12 \n\x1bk_EMsgAMServiceModulesCache\x10\x9e \x12\x1f\n\x1ak_EMsgAMServiceModulesCall\x10\x9f \x12\'\n\"k_EMsgAMServiceModulesCallResponse\x10\xa0 \x12!\n\x1ck_EMsgCommunityAddFriendNews\x10\xac \x12\x19\n\x14k_EMsgAMFindClanUser\x10\xaf \x12!\n\x1ck_EMsgAMFindClanUserResponse\x10\xb0 \x12\x18\n\x13k_EMsgAMBanFromChat\x10\xb1 \x12%\n k_EMsgAMGetUserNewsSubscriptions\x10\xb3 \x12-\n(k_EMsgAMGetUserNewsSubscriptionsResponse\x10\xb4 \x12%\n k_EMsgAMSetUserNewsSubscriptions\x10\xb5 \x12\x1d\n\x18k_EMsgAMSendQueuedEmails\x10\xb8 \x12\x1c\n\x17k_EMsgAMSetLicenseFlags\x10\xb9 \x12\"\n\x1dk_EMsgCommunityDeleteUserNews\x10\xbb \x12\"\n\x1dk_EMsgAMAllowUserFilesRequest\x10\xbc \x12#\n\x1ek_EMsgAMAllowUserFilesResponse\x10\xbd \x12\x1d\n\x18k_EMsgAMGetAccountStatus\x10\xbe \x12%\n k_EMsgAMGetAccountStatusResponse\x10\xbf \x12\x1a\n\x15k_EMsgAMEditBanReason\x10\xc0 \x12(\n#k_EMsgAMCheckClanMembershipResponse\x10\xc1 \x12$\n\x1fk_EMsgAMProbeClanMembershipList\x10\xc2 \x12,\n\'k_EMsgAMProbeClanMembershipListResponse\x10\xc3 \x12.\n)k_EMsgUGSGetUserAchievementStatusResponse\x10\xc4 \x12\x1e\n\x19k_EMsgAMGetFriendsLobbies\x10\xc5 \x12&\n!k_EMsgAMGetFriendsLobbiesResponse\x10\xc6 \x12&\n!k_EMsgAMGetUserFriendNewsResponse\x10\xcc \x12%\n k_EMsgCommunityGetUserFriendNews\x10\xcd \x12%\n k_EMsgAMGetUserClansNewsResponse\x10\xce \x12\x1d\n\x18k_EMsgAMGetUserClansNews\x10\xcf \x12!\n\x1ck_EMsgAMGetPreviousCBAccount\x10\xd8 \x12)\n$k_EMsgAMGetPreviousCBAccountResponse\x10\xd9 \x12\"\n\x1dk_EMsgAMGetUserLicenseHistory\x10\xde \x12*\n%k_EMsgAMGetUserLicenseHistoryResponse\x10\xdf \x12\"\n\x1dk_EMsgAMSupportChangePassword\x10\xe2 \x12\x1f\n\x1ak_EMsgAMSupportChangeEmail\x10\xe3 \x12(\n#k_EMsgAMResetUserVerificationGSByIP\x10\xe5 \x12\x1e\n\x19k_EMsgAMUpdateGSPlayStats\x10\xe6 \x12#\n\x1ek_EMsgAMSupportEnableOrDisable\x10\xe7 \x12\x1e\n\x19k_EMsgAMGetPurchaseStatus\x10\xee \x12$\n\x1fk_EMsgAMSupportIsAccountEnabled\x10\xf1 \x12,\n\'k_EMsgAMSupportIsAccountEnabledResponse\x10\xf2 \x12\x1a\n\x15k_EMsgUGSGetUserStats\x10\xf3 \x12\x15\n\x10k_EMsgAMGSSearch\x10\xf5 \x12!\n\x1ck_EMsgMarketingMessageUpdate\x10\xf8 \x12#\n\x1ek_EMsgChatServerRouteFriendMsg\x10\xfb \x12(\n#k_EMsgAMTicketAuthRequestOrResponse\x10\xfc \x12\x1b\n\x16k_EMsgAMAddFreeLicense\x10\x80!\x12\x1e\n\x19k_EMsgAMValidateEmailLink\x10\x87!\x12&\n!k_EMsgAMValidateEmailLinkResponse\x10\x88!\x12\x1c\n\x17k_EMsgUGSStoreUserStats\x10\x8c!\x12\x1d\n\x18k_EMsgAMDeleteStoredCard\x10\x91!\x12!\n\x1ck_EMsgAMRevokeLegacyGameKeys\x10\x92!\x12\x1d\n\x18k_EMsgAMGetWalletDetails\x10\x94!\x12%\n k_EMsgAMGetWalletDetailsResponse\x10\x95!\x12$\n\x1fk_EMsgAMDeleteStoredPaymentInfo\x10\x96!\x12$\n\x1fk_EMsgAMGetStoredPaymentSummary\x10\x97!\x12,\n\'k_EMsgAMGetStoredPaymentSummaryResponse\x10\x98!\x12$\n\x1fk_EMsgAMGetWalletConversionRate\x10\x99!\x12,\n\'k_EMsgAMGetWalletConversionRateResponse\x10\x9a!\x12\x1a\n\x15k_EMsgAMConvertWallet\x10\x9b!\x12\"\n\x1dk_EMsgAMConvertWalletResponse\x10\x9c!\x12\x1b\n\x16k_EMsgAMSetPreApproval\x10\x9f!\x12#\n\x1ek_EMsgAMSetPreApprovalResponse\x10\xa0!\x12\x19\n\x14k_EMsgAMCreateRefund\x10\xa2!\x12\x1d\n\x18k_EMsgAMCreateChargeback\x10\xa4!\x12\x1a\n\x15k_EMsgAMCreateDispute\x10\xa6!\x12\x19\n\x14k_EMsgAMClearDispute\x10\xa8!\x12&\n!k_EMsgAMCreateFinancialAdjustment\x10\xa9!\x12\x1f\n\x1ak_EMsgAMPlayerNicknameList\x10\xaa!\x12\'\n\"k_EMsgAMPlayerNicknameListResponse\x10\xab!\x12\x1d\n\x18k_EMsgAMSetDRMTestConfig\x10\xac!\x12#\n\x1ek_EMsgAMGetUserCurrentGameInfo\x10\xad!\x12+\n&k_EMsgAMGetUserCurrentGameInfoResponse\x10\xae!\x12\x1c\n\x17k_EMsgAMGetGSPlayerList\x10\xaf!\x12$\n\x1fk_EMsgAMGetGSPlayerListResponse\x10\xb0!\x12\"\n\x1dk_EMsgAMGetSteamIDForMicroTxn\x10\xb6!\x12*\n%k_EMsgAMGetSteamIDForMicroTxnResponse\x10\xb7!\x12\x1d\n\x18k_EMsgAMSetPartnerMember\x10\xb8!\x12 \n\x1bk_EMsgAMRemovePublisherUser\x10\xb9!\x12\x1f\n\x1ak_EMsgAMGetUserLicenseList\x10\xba!\x12\'\n\"k_EMsgAMGetUserLicenseListResponse\x10\xbb!\x12\"\n\x1dk_EMsgAMReloadGameGroupPolicy\x10\xbc!\x12#\n\x1ek_EMsgAMAddFreeLicenseResponse\x10\xbd!\x12\x1c\n\x17k_EMsgAMVACStatusUpdate\x10\xbe!\x12\x1e\n\x19k_EMsgAMGetAccountDetails\x10\xbf!\x12&\n!k_EMsgAMGetAccountDetailsResponse\x10\xc0!\x12!\n\x1ck_EMsgAMGetPlayerLinkDetails\x10\xc1!\x12)\n$k_EMsgAMGetPlayerLinkDetailsResponse\x10\xc2!\x12)\n$k_EMsgAMGetAccountFlagsForWGSpoofing\x10\xc6!\x12\x31\n,k_EMsgAMGetAccountFlagsForWGSpoofingResponse\x10\xc7!\x12\x1c\n\x17k_EMsgAMGetClanOfficers\x10\xca!\x12$\n\x1fk_EMsgAMGetClanOfficersResponse\x10\xcb!\x12\x17\n\x12k_EMsgAMNameChange\x10\xcc!\x12\x1b\n\x16k_EMsgAMGetNameHistory\x10\xcd!\x12#\n\x1ek_EMsgAMGetNameHistoryResponse\x10\xce!\x12!\n\x1ck_EMsgAMUpdateProviderStatus\x10\xd1!\x12)\n$k_EMsgAMSupportRemoveAccountSecurity\x10\xd3!\x12*\n%k_EMsgAMIsAccountInCaptchaGracePeriod\x10\xd4!\x12\x32\n-k_EMsgAMIsAccountInCaptchaGracePeriodResponse\x10\xd5!\x12\x1d\n\x18k_EMsgAMAccountPS3Unlink\x10\xd6!\x12%\n k_EMsgAMAccountPS3UnlinkResponse\x10\xd7!\x12$\n\x1fk_EMsgUGSStoreUserStatsResponse\x10\xd8!\x12\x1e\n\x19k_EMsgAMGetAccountPSNInfo\x10\xd9!\x12&\n!k_EMsgAMGetAccountPSNInfoResponse\x10\xda!\x12$\n\x1fk_EMsgAMAuthenticatedPlayerList\x10\xdb!\x12\x19\n\x14k_EMsgAMGetUserGifts\x10\xdc!\x12!\n\x1ck_EMsgAMGetUserGiftsResponse\x10\xdd!\x12 \n\x1bk_EMsgAMTransferLockedGifts\x10\xe0!\x12(\n#k_EMsgAMTransferLockedGiftsResponse\x10\xe1!\x12%\n k_EMsgAMPlayerHostedOnGameServer\x10\xe2!\x12\x1e\n\x19k_EMsgAMGetAccountBanInfo\x10\xe3!\x12&\n!k_EMsgAMGetAccountBanInfoResponse\x10\xe4!\x12!\n\x1ck_EMsgAMRecordBanEnforcement\x10\xe5!\x12!\n\x1ck_EMsgAMRollbackGiftTransfer\x10\xe6!\x12)\n$k_EMsgAMRollbackGiftTransferResponse\x10\xe7!\x12%\n k_EMsgAMHandlePendingTransaction\x10\xe8!\x12\x1f\n\x1ak_EMsgAMRequestClanDetails\x10\xe9!\x12(\n#k_EMsgAMDeleteStoredPaypalAgreement\x10\xea!\x12\x1d\n\x18k_EMsgAMGameServerUpdate\x10\xeb!\x12\x1d\n\x18k_EMsgAMGameServerRemove\x10\xec!\x12 \n\x1bk_EMsgAMGetPaypalAgreements\x10\xed!\x12(\n#k_EMsgAMGetPaypalAgreementsResponse\x10\xee!\x12/\n*k_EMsgAMGameServerPlayerCompatibilityCheck\x10\xef!\x12\x37\n2k_EMsgAMGameServerPlayerCompatibilityCheckResponse\x10\xf0!\x12\x19\n\x14k_EMsgAMRenewLicense\x10\xf1!\x12\'\n\"k_EMsgAMGetAccountCommunityBanInfo\x10\xf2!\x12/\n*k_EMsgAMGetAccountCommunityBanInfoResponse\x10\xf3!\x12,\n\'k_EMsgAMGameServerAccountChangePassword\x10\xf4!\x12+\n&k_EMsgAMGameServerAccountDeleteAccount\x10\xf5!\x12\x1b\n\x16k_EMsgAMRenewAgreement\x10\xf6!\x12\x1a\n\x15k_EMsgAMXsollaPayment\x10\xf8!\x12\"\n\x1dk_EMsgAMXsollaPaymentResponse\x10\xf9!\x12\"\n\x1dk_EMsgAMAcctAllowedToPurchase\x10\xfa!\x12*\n%k_EMsgAMAcctAllowedToPurchaseResponse\x10\xfb!\x12\x1d\n\x18k_EMsgAMSwapKioskDeposit\x10\xfc!\x12%\n k_EMsgAMSwapKioskDepositResponse\x10\xfd!\x12\x1f\n\x1ak_EMsgAMSetUserGiftUnowned\x10\xfe!\x12\'\n\"k_EMsgAMSetUserGiftUnownedResponse\x10\xff!\x12!\n\x1ck_EMsgAMClaimUnownedUserGift\x10\x80\"\x12)\n$k_EMsgAMClaimUnownedUserGiftResponse\x10\x81\"\x12\x18\n\x13k_EMsgAMSetClanName\x10\x82\"\x12 \n\x1bk_EMsgAMSetClanNameResponse\x10\x83\"\x12\x18\n\x13k_EMsgAMGrantCoupon\x10\x84\"\x12 \n\x1bk_EMsgAMGrantCouponResponse\x10\x85\"\x12-\n(k_EMsgAMIsPackageRestrictedInUserCountry\x10\x86\"\x12\x35\n0k_EMsgAMIsPackageRestrictedInUserCountryResponse\x10\x87\"\x12-\n(k_EMsgAMHandlePendingTransactionResponse\x10\x88\"\x12\x1e\n\x19k_EMsgAMGrantGuestPasses2\x10\x89\"\x12&\n!k_EMsgAMGrantGuestPasses2Response\x10\x8a\"\x12 \n\x1bk_EMsgAMGetPlayerBanDetails\x10\x8d\"\x12(\n#k_EMsgAMGetPlayerBanDetailsResponse\x10\x8e\"\x12\x1d\n\x18k_EMsgAMFinalizePurchase\x10\x8f\"\x12%\n k_EMsgAMFinalizePurchaseResponse\x10\x90\"\x12\"\n\x1dk_EMsgAMPersonaChangeResponse\x10\x94\"\x12+\n&k_EMsgAMGetClanDetailsForForumCreation\x10\x95\"\x12\x33\n.k_EMsgAMGetClanDetailsForForumCreationResponse\x10\x96\"\x12(\n#k_EMsgAMGetPendingNotificationCount\x10\x97\"\x12\x30\n+k_EMsgAMGetPendingNotificationCountResponse\x10\x98\"\x12 \n\x1bk_EMsgAMPasswordHashUpgrade\x10\x99\"\x12\x1d\n\x18k_EMsgAMBoaCompraPayment\x10\x9c\"\x12%\n k_EMsgAMBoaCompraPaymentResponse\x10\x9d\"\x12%\n k_EMsgAMCompleteExternalPurchase\x10\x9f\"\x12-\n(k_EMsgAMCompleteExternalPurchaseResponse\x10\xa0\"\x12)\n$k_EMsgAMResolveNegativeWalletCredits\x10\xa1\"\x12\x31\n,k_EMsgAMResolveNegativeWalletCreditsResponse\x10\xa2\"\x12&\n!k_EMsgAMPlayerGetClanBasicDetails\x10\xa5\"\x12.\n)k_EMsgAMPlayerGetClanBasicDetailsResponse\x10\xa6\"\x12\x17\n\x12k_EMsgAMMOLPayment\x10\xa7\"\x12\x1f\n\x1ak_EMsgAMMOLPaymentResponse\x10\xa8\"\x12\x1b\n\x16k_EMsgGetUserIPCountry\x10\xa9\"\x12#\n\x1ek_EMsgGetUserIPCountryResponse\x10\xaa\"\x12+\n&k_EMsgNotificationOfSuspiciousActivity\x10\xab\"\x12\x1a\n\x15k_EMsgAMDegicaPayment\x10\xac\"\x12\"\n\x1dk_EMsgAMDegicaPaymentResponse\x10\xad\"\x12\x19\n\x14k_EMsgAMEClubPayment\x10\xae\"\x12!\n\x1ck_EMsgAMEClubPaymentResponse\x10\xaf\"\x12%\n k_EMsgAMPayPalPaymentsHubPayment\x10\xb0\"\x12-\n(k_EMsgAMPayPalPaymentsHubPaymentResponse\x10\xb1\"\x12\x31\n,k_EMsgAMTwoFactorRecoverAuthenticatorRequest\x10\xb2\"\x12\x32\n-k_EMsgAMTwoFactorRecoverAuthenticatorResponse\x10\xb3\"\x12\x1d\n\x18k_EMsgAMSmart2PayPayment\x10\xb4\"\x12%\n k_EMsgAMSmart2PayPaymentResponse\x10\xb5\"\x12\x37\n2k_EMsgAMValidatePasswordResetCodeAndSendSmsRequest\x10\xb6\"\x12\x38\n3k_EMsgAMValidatePasswordResetCodeAndSendSmsResponse\x10\xb7\"\x12*\n%k_EMsgAMGetAccountResetDetailsRequest\x10\xb8\"\x12+\n&k_EMsgAMGetAccountResetDetailsResponse\x10\xb9\"\x12\x1a\n\x15k_EMsgAMBitPayPayment\x10\xba\"\x12\"\n\x1dk_EMsgAMBitPayPaymentResponse\x10\xbb\"\x12\"\n\x1dk_EMsgAMSendAccountInfoUpdate\x10\xbc\"\x12\x1e\n\x19k_EMsgAMSendScheduledGift\x10\xbd\"\x12\x1a\n\x15k_EMsgAMNodwinPayment\x10\xbe\"\x12\"\n\x1dk_EMsgAMNodwinPaymentResponse\x10\xbf\"\x12 \n\x1bk_EMsgAMResolveWalletRevoke\x10\xc0\"\x12\'\n\"k_EMsgAMResolveWalletReverseRevoke\x10\xc1\"\x12\x1a\n\x15k_EMsgAMFundedPayment\x10\xc2\"\x12\"\n\x1dk_EMsgAMFundedPaymentResponse\x10\xc3\"\x12.\n)k_EMsgAMRequestPersonaUpdateForChatServer\x10\xc4\"\x12 \n\x1bk_EMsgAMPerfectWorldPayment\x10\xc5\"\x12(\n#k_EMsgAMPerfectWorldPaymentResponse\x10\xc6\"\x12\x1c\n\x17k_EMsgAMECommPayPayment\x10\xc7\"\x12$\n\x1fk_EMsgAMECommPayPaymentResponse\x10\xc8\"\x12\x16\n\x11k_EMsgBasePSRange\x10\x88\'\x12\x1f\n\x1ak_EMsgPSCreateShoppingCart\x10\x89\'\x12\'\n\"k_EMsgPSCreateShoppingCartResponse\x10\x8a\'\x12 \n\x1bk_EMsgPSIsValidShoppingCart\x10\x8b\'\x12(\n#k_EMsgPSIsValidShoppingCartResponse\x10\x8c\'\x12+\n&k_EMsgPSRemoveLineItemFromShoppingCart\x10\x8f\'\x12\x33\n.k_EMsgPSRemoveLineItemFromShoppingCartResponse\x10\x90\'\x12$\n\x1fk_EMsgPSGetShoppingCartContents\x10\x91\'\x12,\n\'k_EMsgPSGetShoppingCartContentsResponse\x10\x92\'\x12*\n%k_EMsgPSAddWalletCreditToShoppingCart\x10\x93\'\x12\x32\n-k_EMsgPSAddWalletCreditToShoppingCartResponse\x10\x94\'\x12\x17\n\x12k_EMsgBaseUFSRange\x10\xd0(\x12%\n k_EMsgClientUFSUploadFileRequest\x10\xd2(\x12&\n!k_EMsgClientUFSUploadFileResponse\x10\xd3(\x12#\n\x1ek_EMsgClientUFSUploadFileChunk\x10\xd4(\x12&\n!k_EMsgClientUFSUploadFileFinished\x10\xd5(\x12%\n k_EMsgClientUFSGetFileListForApp\x10\xd6(\x12-\n(k_EMsgClientUFSGetFileListForAppResponse\x10\xd7(\x12#\n\x1ek_EMsgClientUFSDownloadRequest\x10\xda(\x12$\n\x1fk_EMsgClientUFSDownloadResponse\x10\xdb(\x12!\n\x1ck_EMsgClientUFSDownloadChunk\x10\xdc(\x12 \n\x1bk_EMsgClientUFSLoginRequest\x10\xdd(\x12!\n\x1ck_EMsgClientUFSLoginResponse\x10\xde(\x12!\n\x1ck_EMsgUFSReloadPartitionInfo\x10\xdf(\x12%\n k_EMsgClientUFSTransferHeartbeat\x10\xe0(\x12\x1d\n\x18k_EMsgUFSSynchronizeFile\x10\xe1(\x12%\n k_EMsgUFSSynchronizeFileResponse\x10\xe2(\x12%\n k_EMsgClientUFSDeleteFileRequest\x10\xe3(\x12&\n!k_EMsgClientUFSDeleteFileResponse\x10\xe4(\x12!\n\x1ck_EMsgClientUFSGetUGCDetails\x10\xea(\x12)\n$k_EMsgClientUFSGetUGCDetailsResponse\x10\xeb(\x12\x1d\n\x18k_EMsgUFSUpdateFileFlags\x10\xec(\x12%\n k_EMsgUFSUpdateFileFlagsResponse\x10\xed(\x12%\n k_EMsgClientUFSGetSingleFileInfo\x10\xee(\x12-\n(k_EMsgClientUFSGetSingleFileInfoResponse\x10\xef(\x12\x1d\n\x18k_EMsgClientUFSShareFile\x10\xf0(\x12%\n k_EMsgClientUFSShareFileResponse\x10\xf1(\x12\x1b\n\x16k_EMsgUFSReloadAccount\x10\xf2(\x12#\n\x1ek_EMsgUFSReloadAccountResponse\x10\xf3(\x12!\n\x1ck_EMsgUFSUpdateRecordBatched\x10\xf4(\x12)\n$k_EMsgUFSUpdateRecordBatchedResponse\x10\xf5(\x12\x19\n\x14k_EMsgUFSMigrateFile\x10\xf6(\x12!\n\x1ck_EMsgUFSMigrateFileResponse\x10\xf7(\x12\x18\n\x13k_EMsgUFSGetUGCURLs\x10\xf8(\x12 \n\x1bk_EMsgUFSGetUGCURLsResponse\x10\xf9(\x12)\n$k_EMsgUFSHttpUploadFileFinishRequest\x10\xfa(\x12*\n%k_EMsgUFSHttpUploadFileFinishResponse\x10\xfb(\x12\"\n\x1dk_EMsgUFSDownloadStartRequest\x10\xfc(\x12#\n\x1ek_EMsgUFSDownloadStartResponse\x10\xfd(\x12\"\n\x1dk_EMsgUFSDownloadChunkRequest\x10\xfe(\x12#\n\x1ek_EMsgUFSDownloadChunkResponse\x10\xff(\x12#\n\x1ek_EMsgUFSDownloadFinishRequest\x10\x80)\x12$\n\x1fk_EMsgUFSDownloadFinishResponse\x10\x81)\x12\x1b\n\x16k_EMsgUFSFlushURLCache\x10\x82)\x12 \n\x1bk_EMsgClientUFSUploadCommit\x10\x83)\x12(\n#k_EMsgClientUFSUploadCommitResponse\x10\x84)\x12\x1e\n\x19k_EMsgUFSMigrateFileAppID\x10\x85)\x12&\n!k_EMsgUFSMigrateFileAppIDResponse\x10\x86)\x12\x16\n\x11k_EMsgBaseClient2\x10\x98*\x12.\n)k_EMsgClientRequestForgottenPasswordEmail\x10\x99*\x12\x36\n1k_EMsgClientRequestForgottenPasswordEmailResponse\x10\x9a*\x12&\n!k_EMsgClientCreateAccountResponse\x10\x9b*\x12\'\n\"k_EMsgClientResetForgottenPassword\x10\x9c*\x12/\n*k_EMsgClientResetForgottenPasswordResponse\x10\x9d*\x12/\n*k_EMsgClientInformOfResetForgottenPassword\x10\x9f*\x12\x37\n2k_EMsgClientInformOfResetForgottenPasswordResponse\x10\xa0*\x12)\n$k_EMsgClientAnonUserLogOn_Deprecated\x10\xa1*\x12(\n#k_EMsgClientGamesPlayedWithDataBlob\x10\xa2*\x12#\n\x1ek_EMsgClientUpdateUserGameInfo\x10\xa3*\x12\x1f\n\x1ak_EMsgClientFileToDownload\x10\xa4*\x12\'\n\"k_EMsgClientFileToDownloadResponse\x10\xa5*\x12\x1c\n\x17k_EMsgClientLBSSetScore\x10\xa6*\x12$\n\x1fk_EMsgClientLBSSetScoreResponse\x10\xa7*\x12\"\n\x1dk_EMsgClientLBSFindOrCreateLB\x10\xa8*\x12*\n%k_EMsgClientLBSFindOrCreateLBResponse\x10\xa9*\x12 \n\x1bk_EMsgClientLBSGetLBEntries\x10\xaa*\x12(\n#k_EMsgClientLBSGetLBEntriesResponse\x10\xab*\x12\x1d\n\x18k_EMsgClientChatDeclined\x10\xb2*\x12\"\n\x1dk_EMsgClientFriendMsgIncoming\x10\xb3*\x12$\n\x1fk_EMsgClientAuthList_Deprecated\x10\xb4*\x12#\n\x1ek_EMsgClientTicketAuthComplete\x10\xb5*\x12!\n\x1ck_EMsgClientIsLimitedAccount\x10\xb6*\x12 \n\x1bk_EMsgClientRequestAuthList\x10\xb7*\x12\x19\n\x14k_EMsgClientAuthList\x10\xb8*\x12\x15\n\x10k_EMsgClientStat\x10\xb9*\x12\"\n\x1dk_EMsgClientP2PConnectionInfo\x10\xba*\x12&\n!k_EMsgClientP2PConnectionFailInfo\x10\xbb*\x12&\n!k_EMsgClientGetDepotDecryptionKey\x10\xbe*\x12.\n)k_EMsgClientGetDepotDecryptionKeyResponse\x10\xbf*\x12\"\n\x1dk_EMsgGSPerformHardwareSurvey\x10\xc0*\x12\"\n\x1dk_EMsgClientEnableTestLicense\x10\xc3*\x12*\n%k_EMsgClientEnableTestLicenseResponse\x10\xc4*\x12#\n\x1ek_EMsgClientDisableTestLicense\x10\xc5*\x12+\n&k_EMsgClientDisableTestLicenseResponse\x10\xc6*\x12&\n!k_EMsgClientRequestValidationMail\x10\xc8*\x12.\n)k_EMsgClientRequestValidationMailResponse\x10\xc9*\x12%\n k_EMsgClientCheckAppBetaPassword\x10\xca*\x12-\n(k_EMsgClientCheckAppBetaPasswordResponse\x10\xcb*\x12\x15\n\x10k_EMsgClientToGC\x10\xcc*\x12\x17\n\x12k_EMsgClientFromGC\x10\xcd*\x12\x1e\n\x19k_EMsgClientEmailAddrInfo\x10\xd0*\x12 \n\x1bk_EMsgClientPasswordChange3\x10\xd1*\x12\x1d\n\x18k_EMsgClientEmailChange3\x10\xd2*\x12\"\n\x1dk_EMsgClientPersonalQAChange3\x10\xd3*\x12(\n#k_EMsgClientResetForgottenPassword3\x10\xd4*\x12/\n*k_EMsgClientRequestForgottenPasswordEmail3\x10\xd5*\x12\x1c\n\x17k_EMsgClientNewLoginKey\x10\xd7*\x12$\n\x1fk_EMsgClientNewLoginKeyAccepted\x10\xd8*\x12)\n$k_EMsgClientLogOnWithHash_Deprecated\x10\xd9*\x12 \n\x1bk_EMsgClientStoreUserStats2\x10\xda*\x12\x1d\n\x18k_EMsgClientStatsUpdated\x10\xdb*\x12#\n\x1ek_EMsgClientActivateOEMLicense\x10\xdc*\x12#\n\x1ek_EMsgClientRegisterOEMMachine\x10\xdd*\x12+\n&k_EMsgClientRegisterOEMMachineResponse\x10\xde*\x12%\n k_EMsgClientRequestedClientStats\x10\xe8*\x12\x1b\n\x16k_EMsgClientStat2Int32\x10\xe9*\x12\x16\n\x11k_EMsgClientStat2\x10\xea*\x12\x1f\n\x1ak_EMsgClientVerifyPassword\x10\xeb*\x12\'\n\"k_EMsgClientVerifyPasswordResponse\x10\xec*\x12#\n\x1ek_EMsgClientDRMDownloadRequest\x10\xed*\x12$\n\x1fk_EMsgClientDRMDownloadResponse\x10\xee*\x12\x1f\n\x1ak_EMsgClientDRMFinalResult\x10\xef*\x12&\n!k_EMsgClientGetFriendsWhoPlayGame\x10\xf0*\x12.\n)k_EMsgClientGetFriendsWhoPlayGameResponse\x10\xf1*\x12 \n\x1bk_EMsgClientOGSBeginSession\x10\xf2*\x12(\n#k_EMsgClientOGSBeginSessionResponse\x10\xf3*\x12\x1e\n\x19k_EMsgClientOGSEndSession\x10\xf4*\x12&\n!k_EMsgClientOGSEndSessionResponse\x10\xf5*\x12\x1c\n\x17k_EMsgClientOGSWriteRow\x10\xf6*\x12\x18\n\x13k_EMsgClientDRMTest\x10\xf7*\x12\x1e\n\x19k_EMsgClientDRMTestResult\x10\xf8*\x12\"\n\x1dk_EMsgClientServerUnavailable\x10\xfc*\x12!\n\x1ck_EMsgClientServersAvailable\x10\xfd*\x12)\n$k_EMsgClientRegisterAuthTicketWithCM\x10\xfe*\x12\x1c\n\x17k_EMsgClientGCMsgFailed\x10\xff*\x12$\n\x1fk_EMsgClientMicroTxnAuthRequest\x10\x80+\x12\"\n\x1dk_EMsgClientMicroTxnAuthorize\x10\x81+\x12*\n%k_EMsgClientMicroTxnAuthorizeResponse\x10\x82+\x12 \n\x1bk_EMsgClientGetMicroTxnInfo\x10\x84+\x12(\n#k_EMsgClientGetMicroTxnInfoResponse\x10\x85+\x12(\n#k_EMsgClientMarketingMessageUpdate2\x10\x86+\x12%\n k_EMsgClientDeregisterWithServer\x10\x87+\x12\'\n\"k_EMsgClientSubscribeToPersonaFeed\x10\x88+\x12\x16\n\x11k_EMsgClientLogon\x10\x8a+\x12!\n\x1ck_EMsgClientGetClientDetails\x10\x8b+\x12)\n$k_EMsgClientGetClientDetailsResponse\x10\x8c+\x12+\n&k_EMsgClientReportOverlayDetourFailure\x10\x8d+\x12!\n\x1ck_EMsgClientGetClientAppList\x10\x8e+\x12)\n$k_EMsgClientGetClientAppListResponse\x10\x8f+\x12!\n\x1ck_EMsgClientInstallClientApp\x10\x90+\x12)\n$k_EMsgClientInstallClientAppResponse\x10\x91+\x12#\n\x1ek_EMsgClientUninstallClientApp\x10\x92+\x12+\n&k_EMsgClientUninstallClientAppResponse\x10\x93+\x12(\n#k_EMsgClientSetClientAppUpdateState\x10\x94+\x12\x30\n+k_EMsgClientSetClientAppUpdateStateResponse\x10\x95+\x12*\n%k_EMsgClientRequestEncryptedAppTicket\x10\x96+\x12\x32\n-k_EMsgClientRequestEncryptedAppTicketResponse\x10\x97+\x12!\n\x1ck_EMsgClientWalletInfoUpdate\x10\x98+\x12\x1a\n\x15k_EMsgClientLBSSetUGC\x10\x99+\x12\"\n\x1dk_EMsgClientLBSSetUGCResponse\x10\x9a+\x12\"\n\x1dk_EMsgClientAMGetClanOfficers\x10\x9b+\x12*\n%k_EMsgClientAMGetClanOfficersResponse\x10\x9c+\x12\"\n\x1dk_EMsgClientFriendProfileInfo\x10\x9f+\x12*\n%k_EMsgClientFriendProfileInfoResponse\x10\xa0+\x12\"\n\x1dk_EMsgClientUpdateMachineAuth\x10\xa1+\x12*\n%k_EMsgClientUpdateMachineAuthResponse\x10\xa2+\x12 \n\x1bk_EMsgClientReadMachineAuth\x10\xa3+\x12(\n#k_EMsgClientReadMachineAuthResponse\x10\xa4+\x12#\n\x1ek_EMsgClientRequestMachineAuth\x10\xa5+\x12+\n&k_EMsgClientRequestMachineAuthResponse\x10\xa6+\x12#\n\x1ek_EMsgClientScreenshotsChanged\x10\xa7+\x12 \n\x1bk_EMsgClientGetCDNAuthToken\x10\xaa+\x12(\n#k_EMsgClientGetCDNAuthTokenResponse\x10\xab+\x12\'\n\"k_EMsgClientDownloadRateStatistics\x10\xac+\x12#\n\x1ek_EMsgClientRequestAccountData\x10\xad+\x12+\n&k_EMsgClientRequestAccountDataResponse\x10\xae+\x12(\n#k_EMsgClientResetForgottenPassword4\x10\xaf+\x12\x1b\n\x16k_EMsgClientHideFriend\x10\xb0+\x12\"\n\x1dk_EMsgClientFriendsGroupsList\x10\xb1+\x12&\n!k_EMsgClientGetClanActivityCounts\x10\xb2+\x12.\n)k_EMsgClientGetClanActivityCountsResponse\x10\xb3+\x12 \n\x1bk_EMsgClientOGSReportString\x10\xb4+\x12\x1d\n\x18k_EMsgClientOGSReportBug\x10\xb5+\x12\x19\n\x14k_EMsgClientSentLogs\x10\xb6+\x12 \n\x1bk_EMsgClientLogonGameServer\x10\xb7+\x12%\n k_EMsgAMClientCreateFriendsGroup\x10\xb8+\x12-\n(k_EMsgAMClientCreateFriendsGroupResponse\x10\xb9+\x12%\n k_EMsgAMClientDeleteFriendsGroup\x10\xba+\x12-\n(k_EMsgAMClientDeleteFriendsGroupResponse\x10\xbb+\x12%\n k_EMsgAMClientManageFriendsGroup\x10\xbc+\x12-\n(k_EMsgAMClientManageFriendsGroupResponse\x10\xbd+\x12#\n\x1ek_EMsgAMClientAddFriendToGroup\x10\xbe+\x12+\n&k_EMsgAMClientAddFriendToGroupResponse\x10\xbf+\x12(\n#k_EMsgAMClientRemoveFriendFromGroup\x10\xc0+\x12\x30\n+k_EMsgAMClientRemoveFriendFromGroupResponse\x10\xc1+\x12(\n#k_EMsgClientAMGetPersonaNameHistory\x10\xc2+\x12\x30\n+k_EMsgClientAMGetPersonaNameHistoryResponse\x10\xc3+\x12#\n\x1ek_EMsgClientRequestFreeLicense\x10\xc4+\x12+\n&k_EMsgClientRequestFreeLicenseResponse\x10\xc5+\x12\x30\n+k_EMsgClientDRMDownloadRequestWithCrashData\x10\xc6+\x12\x1c\n\x17k_EMsgClientAuthListAck\x10\xc7+\x12\"\n\x1dk_EMsgClientItemAnnouncements\x10\xc8+\x12)\n$k_EMsgClientRequestItemAnnouncements\x10\xc9+\x12&\n!k_EMsgClientFriendMsgEchoToSender\x10\xca+\x12%\n k_EMsgClientCommentNotifications\x10\xce+\x12,\n\'k_EMsgClientRequestCommentNotifications\x10\xcf+\x12&\n!k_EMsgClientPersonaChangeResponse\x10\xd0+\x12\x33\n.k_EMsgClientRequestWebAPIAuthenticateUserNonce\x10\xd1+\x12;\n6k_EMsgClientRequestWebAPIAuthenticateUserNonceResponse\x10\xd2+\x12#\n\x1ek_EMsgClientPlayerNicknameList\x10\xd3+\x12$\n\x1fk_EMsgAMClientSetPlayerNickname\x10\xd4+\x12,\n\'k_EMsgAMClientSetPlayerNicknameResponse\x10\xd5+\x12,\n\'k_EMsgClientGetNumberOfCurrentPlayersDP\x10\xd8+\x12\x34\n/k_EMsgClientGetNumberOfCurrentPlayersDPResponse\x10\xd9+\x12$\n\x1fk_EMsgClientServiceMethodLegacy\x10\xda+\x12,\n\'k_EMsgClientServiceMethodLegacyResponse\x10\xdb+\x12*\n%k_EMsgClientFriendUserStatusPublished\x10\xdc+\x12\x1e\n\x19k_EMsgClientCurrentUIMode\x10\xdd+\x12-\n(k_EMsgClientVanityURLChangedNotification\x10\xde+\x12\"\n\x1dk_EMsgClientUserNotifications\x10\xdf+\x12\x12\n\rk_EMsgBaseDFS\x10\xe0+\x12\x15\n\x10k_EMsgDFSGetFile\x10\xe1+\x12\x1e\n\x19k_EMsgDFSInstallLocalFile\x10\xe2+\x12\x18\n\x13k_EMsgDFSConnection\x10\xe3+\x12\x1d\n\x18k_EMsgDFSConnectionReply\x10\xe4+\x12\'\n\"k_EMsgClientDFSAuthenticateRequest\x10\xe5+\x12(\n#k_EMsgClientDFSAuthenticateResponse\x10\xe6+\x12\x1e\n\x19k_EMsgClientDFSEndSession\x10\xe7+\x12\x17\n\x12k_EMsgDFSPurgeFile\x10\xe8+\x12\x17\n\x12k_EMsgDFSRouteFile\x10\xe9+\x12\x1f\n\x1ak_EMsgDFSGetFileFromServer\x10\xea+\x12\x1e\n\x19k_EMsgDFSAcceptedResponse\x10\xeb+\x12\x1d\n\x18k_EMsgDFSRequestPingback\x10\xec+\x12\x1e\n\x19k_EMsgDFSRecvTransmitFile\x10\xed+\x12\x1e\n\x19k_EMsgDFSSendTransmitFile\x10\xee+\x12\x1e\n\x19k_EMsgDFSRequestPingback2\x10\xef+\x12\x1f\n\x1ak_EMsgDFSResponsePingback2\x10\xf0+\x12\"\n\x1dk_EMsgClientDFSDownloadStatus\x10\xf1+\x12\x1b\n\x16k_EMsgDFSStartTransfer\x10\xf2+\x12\x1e\n\x19k_EMsgDFSTransferComplete\x10\xf3+\x12\x1f\n\x1ak_EMsgDFSRouteFileResponse\x10\xf4+\x12&\n!k_EMsgClientNetworkingCertRequest\x10\xf5+\x12.\n)k_EMsgClientNetworkingCertRequestResponse\x10\xf6+\x12!\n\x1ck_EMsgClientChallengeRequest\x10\xf7+\x12\"\n\x1dk_EMsgClientChallengeResponse\x10\xf8+\x12#\n\x1ek_EMsgBadgeCraftedNotification\x10\xf9+\x12,\n\'k_EMsgClientNetworkingMobileCertRequest\x10\xfa+\x12\x34\n/k_EMsgClientNetworkingMobileCertRequestResponse\x10\xfb+\x12\x12\n\rk_EMsgBaseMDS\x10\xa8-\x12#\n\x1ek_EMsgMDSGetDepotDecryptionKey\x10\xb4-\x12+\n&k_EMsgMDSGetDepotDecryptionKeyResponse\x10\xb5-\x12(\n#k_EMsgMDSContentServerConfigRequest\x10\xc3-\x12!\n\x1ck_EMsgMDSContentServerConfig\x10\xc4-\x12\x1e\n\x19k_EMsgMDSGetDepotManifest\x10\xc5-\x12&\n!k_EMsgMDSGetDepotManifestResponse\x10\xc6-\x12#\n\x1ek_EMsgMDSGetDepotManifestChunk\x10\xc7-\x12\x1b\n\x16k_EMsgMDSGetDepotChunk\x10\xc8-\x12#\n\x1ek_EMsgMDSGetDepotChunkResponse\x10\xc9-\x12 \n\x1bk_EMsgMDSGetDepotChunkChunk\x10\xca-\x12\x1c\n\x17k_EMsgMDSToCSFlushChunk\x10\xd4-\x12\x1a\n\x15k_EMsgMDSMigrateChunk\x10\xd7-\x12\"\n\x1dk_EMsgMDSMigrateChunkResponse\x10\xd8-\x12\x1f\n\x1ak_EMsgMDSToCSFlushManifest\x10\xd9-\x12\x11\n\x0ck_EMsgCSBase\x10\xb8\x30\x12\x11\n\x0ck_EMsgCSPing\x10\xb9\x30\x12\x19\n\x14k_EMsgCSPingResponse\x10\xba\x30\x12\x12\n\rk_EMsgGMSBase\x10\x80\x32\x12!\n\x1ck_EMsgGMSGameServerReplicate\x10\x81\x32\x12\x1f\n\x1ak_EMsgClientGMSServerQuery\x10\x83\x32\x12\'\n\"k_EMsgGMSClientServerQueryResponse\x10\x84\x32\x12 \n\x1bk_EMsgAMGMSGameServerUpdate\x10\x85\x32\x12 \n\x1bk_EMsgAMGMSGameServerRemove\x10\x86\x32\x12\x1e\n\x19k_EMsgGameServerOutOfDate\x10\x87\x32\x12\"\n\x1dk_EMsgDeviceAuthorizationBase\x10\xe4\x32\x12,\n\'k_EMsgClientAuthorizeLocalDeviceRequest\x10\xe5\x32\x12-\n(k_EMsgClientAuthorizeLocalDeviceResponse\x10\xe6\x32\x12)\n$k_EMsgClientDeauthorizeDeviceRequest\x10\xe7\x32\x12\"\n\x1dk_EMsgClientDeauthorizeDevice\x10\xe8\x32\x12-\n(k_EMsgClientUseLocalDeviceAuthorizations\x10\xe9\x32\x12%\n k_EMsgClientGetAuthorizedDevices\x10\xea\x32\x12-\n(k_EMsgClientGetAuthorizedDevicesResponse\x10\xeb\x32\x12*\n%k_EMsgAMNotifySessionDeviceAuthorized\x10\xec\x32\x12\x31\n,k_EMsgClientAuthorizeLocalDeviceNotification\x10\xed\x32\x12\x12\n\rk_EMsgMMSBase\x10\xc8\x33\x12\x1f\n\x1ak_EMsgClientMMSCreateLobby\x10\xc9\x33\x12\'\n\"k_EMsgClientMMSCreateLobbyResponse\x10\xca\x33\x12\x1d\n\x18k_EMsgClientMMSJoinLobby\x10\xcb\x33\x12%\n k_EMsgClientMMSJoinLobbyResponse\x10\xcc\x33\x12\x1e\n\x19k_EMsgClientMMSLeaveLobby\x10\xcd\x33\x12&\n!k_EMsgClientMMSLeaveLobbyResponse\x10\xce\x33\x12 \n\x1bk_EMsgClientMMSGetLobbyList\x10\xcf\x33\x12(\n#k_EMsgClientMMSGetLobbyListResponse\x10\xd0\x33\x12 \n\x1bk_EMsgClientMMSSetLobbyData\x10\xd1\x33\x12(\n#k_EMsgClientMMSSetLobbyDataResponse\x10\xd2\x33\x12 \n\x1bk_EMsgClientMMSGetLobbyData\x10\xd3\x33\x12\x1d\n\x18k_EMsgClientMMSLobbyData\x10\xd4\x33\x12$\n\x1fk_EMsgClientMMSSendLobbyChatMsg\x10\xd5\x33\x12 \n\x1bk_EMsgClientMMSLobbyChatMsg\x10\xd6\x33\x12!\n\x1ck_EMsgClientMMSSetLobbyOwner\x10\xd7\x33\x12)\n$k_EMsgClientMMSSetLobbyOwnerResponse\x10\xd8\x33\x12&\n!k_EMsgClientMMSSetLobbyGameServer\x10\xd9\x33\x12&\n!k_EMsgClientMMSLobbyGameServerSet\x10\xda\x33\x12#\n\x1ek_EMsgClientMMSUserJoinedLobby\x10\xdb\x33\x12!\n\x1ck_EMsgClientMMSUserLeftLobby\x10\xdc\x33\x12!\n\x1ck_EMsgClientMMSInviteToLobby\x10\xdd\x33\x12)\n$k_EMsgClientMMSFlushFrenemyListCache\x10\xde\x33\x12\x31\n,k_EMsgClientMMSFlushFrenemyListCacheResponse\x10\xdf\x33\x12\"\n\x1dk_EMsgClientMMSSetLobbyLinked\x10\xe0\x33\x12.\n)k_EMsgClientMMSSetRatelimitPolicyOnClient\x10\xe1\x33\x12\"\n\x1dk_EMsgClientMMSGetLobbyStatus\x10\xe2\x33\x12*\n%k_EMsgClientMMSGetLobbyStatusResponse\x10\xe3\x33\x12\x1a\n\x15k_EMsgMMSGetLobbyList\x10\xe4\x33\x12\"\n\x1dk_EMsgMMSGetLobbyListResponse\x10\xe5\x33\x12\x18\n\x13k_EMsgNonStdMsgBase\x10\x90\x35\x12\x1d\n\x18k_EMsgNonStdMsgMemcached\x10\x91\x35\x12\x1e\n\x19k_EMsgNonStdMsgHTTPServer\x10\x92\x35\x12\x1e\n\x19k_EMsgNonStdMsgHTTPClient\x10\x93\x35\x12\x1e\n\x19k_EMsgNonStdMsgWGResponse\x10\x94\x35\x12 \n\x1bk_EMsgNonStdMsgPHPSimulator\x10\x95\x35\x12\x19\n\x14k_EMsgNonStdMsgChase\x10\x96\x35\x12\x1f\n\x1ak_EMsgNonStdMsgDFSTransfer\x10\x97\x35\x12\x19\n\x14k_EMsgNonStdMsgTests\x10\x98\x35\x12\x1f\n\x1ak_EMsgNonStdMsgUMQpipeAAPL\x10\x99\x35\x12\x1a\n\x15k_EMSgNonStdMsgSyslog\x10\x9a\x35\x12\x1b\n\x16k_EMsgNonStdMsgLogsink\x10\x9b\x35\x12\"\n\x1dk_EMsgNonStdMsgSteam2Emulator\x10\x9c\x35\x12\x1e\n\x19k_EMsgNonStdMsgRTMPServer\x10\x9d\x35\x12\x1d\n\x18k_EMsgNonStdMsgWebSocket\x10\x9e\x35\x12\x19\n\x14k_EMsgNonStdMsgRedis\x10\x9f\x35\x12\x12\n\rk_EMsgUDSBase\x10\xd8\x36\x12%\n k_EMsgClientUDSP2PSessionStarted\x10\xd9\x36\x12#\n\x1ek_EMsgClientUDSP2PSessionEnded\x10\xda\x36\x12\x1c\n\x17k_EMsgUDSRenderUserAuth\x10\xdb\x36\x12$\n\x1fk_EMsgUDSRenderUserAuthResponse\x10\xdc\x36\x12\x1d\n\x18k_EMsgClientInviteToGame\x10\xdd\x36\x12\x18\n\x13k_EMsgUDSHasSession\x10\xde\x36\x12 \n\x1bk_EMsgUDSHasSessionResponse\x10\xdf\x36\x12\x13\n\x0ek_EMsgMPASBase\x10\xbc\x37\x12\x1a\n\x15k_EMsgMPASVacBanReset\x10\xbd\x37\x12\x12\n\rk_EMsgKGSBase\x10\xa0\x38\x12\x12\n\rk_EMsgUCMBase\x10\x84\x39\x12!\n\x1ck_EMsgClientUCMAddScreenshot\x10\x85\x39\x12)\n$k_EMsgClientUCMAddScreenshotResponse\x10\x86\x39\x12#\n\x1ek_EMsgUCMResetCommunityContent\x10\x8b\x39\x12+\n&k_EMsgUCMResetCommunityContentResponse\x10\x8c\x39\x12$\n\x1fk_EMsgClientUCMDeleteScreenshot\x10\x8d\x39\x12,\n\'k_EMsgClientUCMDeleteScreenshotResponse\x10\x8e\x39\x12\x1f\n\x1ak_EMsgClientUCMPublishFile\x10\x8f\x39\x12\'\n\"k_EMsgClientUCMPublishFileResponse\x10\x90\x39\x12\'\n\"k_EMsgClientUCMDeletePublishedFile\x10\x93\x39\x12/\n*k_EMsgClientUCMDeletePublishedFileResponse\x10\x94\x39\x12\'\n\"k_EMsgClientUCMUpdatePublishedFile\x10\x9d\x39\x12/\n*k_EMsgClientUCMUpdatePublishedFileResponse\x10\x9e\x39\x12!\n\x1ck_EMsgUCMUpdatePublishedFile\x10\x9f\x39\x12)\n$k_EMsgUCMUpdatePublishedFileResponse\x10\xa0\x39\x12!\n\x1ck_EMsgUCMDeletePublishedFile\x10\xa1\x39\x12)\n$k_EMsgUCMDeletePublishedFileResponse\x10\xa2\x39\x12%\n k_EMsgUCMUpdatePublishedFileStat\x10\xa3\x39\x12!\n\x1ck_EMsgUCMReloadPublishedFile\x10\xa9\x39\x12&\n!k_EMsgUCMReloadUserFileListCaches\x10\xaa\x39\x12#\n\x1ek_EMsgUCMPublishedFileReported\x10\xab\x39\x12%\n k_EMsgUCMPublishedFilePreviewAdd\x10\xad\x39\x12-\n(k_EMsgUCMPublishedFilePreviewAddResponse\x10\xae\x39\x12(\n#k_EMsgUCMPublishedFilePreviewRemove\x10\xaf\x39\x12\x30\n+k_EMsgUCMPublishedFilePreviewRemoveResponse\x10\xb0\x39\x12%\n k_EMsgUCMPublishedFileSubscribed\x10\xb5\x39\x12\'\n\"k_EMsgUCMPublishedFileUnsubscribed\x10\xb6\x39\x12\x19\n\x14k_EMsgUCMPublishFile\x10\xb7\x39\x12!\n\x1ck_EMsgUCMPublishFileResponse\x10\xb8\x39\x12#\n\x1ek_EMsgUCMPublishedFileChildAdd\x10\xb9\x39\x12+\n&k_EMsgUCMPublishedFileChildAddResponse\x10\xba\x39\x12&\n!k_EMsgUCMPublishedFileChildRemove\x10\xbb\x39\x12.\n)k_EMsgUCMPublishedFileChildRemoveResponse\x10\xbc\x39\x12(\n#k_EMsgUCMPublishedFileParentChanged\x10\xbf\x39\x12.\n)k_EMsgClientUCMSetUserPublishedFileAction\x10\xc4\x39\x12\x36\n1k_EMsgClientUCMSetUserPublishedFileActionResponse\x10\xc5\x39\x12\x37\n2k_EMsgClientUCMEnumeratePublishedFilesByUserAction\x10\xc6\x39\x12?\n:k_EMsgClientUCMEnumeratePublishedFilesByUserActionResponse\x10\xc7\x39\x12$\n\x1fk_EMsgUCMGetUserSubscribedFiles\x10\xc9\x39\x12,\n\'k_EMsgUCMGetUserSubscribedFilesResponse\x10\xca\x39\x12#\n\x1ek_EMsgUCMFixStatsPublishedFile\x10\xcb\x39\x12;\n6k_EMsgClientUCMEnumerateUserSubscribedFilesWithUpdates\x10\xd2\x39\x12\x43\n>k_EMsgClientUCMEnumerateUserSubscribedFilesWithUpdatesResponse\x10\xd3\x39\x12)\n$k_EMsgUCMPublishedFileContentUpdated\x10\xd4\x39\x12(\n#k_EMsgClientUCMPublishedFileUpdated\x10\xd5\x39\x12+\n&k_EMsgClientWorkshopItemChangesRequest\x10\xd6\x39\x12,\n\'k_EMsgClientWorkshopItemChangesResponse\x10\xd7\x39\x12\x11\n\x0ck_EMsgFSBase\x10\xcc:\x12#\n\x1ek_EMsgClientRichPresenceUpload\x10\xcd:\x12$\n\x1fk_EMsgClientRichPresenceRequest\x10\xce:\x12!\n\x1ck_EMsgClientRichPresenceInfo\x10\xcf:\x12 \n\x1bk_EMsgFSRichPresenceRequest\x10\xd0:\x12!\n\x1ck_EMsgFSRichPresenceResponse\x10\xd1:\x12\x1f\n\x1ak_EMsgFSComputeFrenematrix\x10\xd2:\x12\'\n\"k_EMsgFSComputeFrenematrixResponse\x10\xd3:\x12#\n\x1ek_EMsgFSPlayStatusNotification\x10\xd4:\x12 \n\x1bk_EMsgFSAddOrRemoveFollower\x10\xd6:\x12(\n#k_EMsgFSAddOrRemoveFollowerResponse\x10\xd7:\x12 \n\x1bk_EMsgFSUpdateFollowingList\x10\xd8:\x12 \n\x1bk_EMsgFSCommentNotification\x10\xd9:\x12&\n!k_EMsgFSCommentNotificationViewed\x10\xda:\x12#\n\x1ek_EMsgClientFSGetFollowerCount\x10\xdb:\x12+\n&k_EMsgClientFSGetFollowerCountResponse\x10\xdc:\x12!\n\x1ck_EMsgClientFSGetIsFollowing\x10\xdd:\x12)\n$k_EMsgClientFSGetIsFollowingResponse\x10\xde:\x12)\n$k_EMsgClientFSEnumerateFollowingList\x10\xdf:\x12\x31\n,k_EMsgClientFSEnumerateFollowingListResponse\x10\xe0:\x12(\n#k_EMsgFSGetPendingNotificationCount\x10\xe1:\x12\x30\n+k_EMsgFSGetPendingNotificationCountResponse\x10\xe2:\x12/\n*k_EMsgClientChatOfflineMessageNotification\x10\xe3:\x12/\n*k_EMsgClientChatRequestOfflineMessageCount\x10\xe4:\x12,\n\'k_EMsgClientChatGetFriendMessageHistory\x10\xe5:\x12\x34\n/k_EMsgClientChatGetFriendMessageHistoryResponse\x10\xe6:\x12>\n9k_EMsgClientChatGetFriendMessageHistoryForOfflineMessages\x10\xe7:\x12(\n#k_EMsgClientFSGetFriendsSteamLevels\x10\xe8:\x12\x30\n+k_EMsgClientFSGetFriendsSteamLevelsResponse\x10\xe9:\x12\x1e\n\x19k_EMsgAMRequestFriendData\x10\xea:\x12\x14\n\x0fk_EMsgDRMRange2\x10\xb0;\x12,\n\'k_EMsgCEGVersionSetEnableDisableRequest\x10\xb0;\x12-\n(k_EMsgCEGVersionSetEnableDisableResponse\x10\xb1;\x12#\n\x1ek_EMsgCEGPropStatusDRMSRequest\x10\xb2;\x12$\n\x1fk_EMsgCEGPropStatusDRMSResponse\x10\xb3;\x12\'\n\"k_EMsgCEGWhackFailureReportRequest\x10\xb4;\x12(\n#k_EMsgCEGWhackFailureReportResponse\x10\xb5;\x12\x1e\n\x19k_EMsgDRMSFetchVersionSet\x10\xb6;\x12&\n!k_EMsgDRMSFetchVersionSetResponse\x10\xb7;\x12\x13\n\x0ek_EMsgEconBase\x10\x94<\x12+\n&k_EMsgEconTrading_InitiateTradeRequest\x10\x95<\x12,\n\'k_EMsgEconTrading_InitiateTradeProposed\x10\x96<\x12,\n\'k_EMsgEconTrading_InitiateTradeResponse\x10\x97<\x12*\n%k_EMsgEconTrading_InitiateTradeResult\x10\x98<\x12#\n\x1ek_EMsgEconTrading_StartSession\x10\x99<\x12)\n$k_EMsgEconTrading_CancelTradeRequest\x10\x9a<\x12\"\n\x1dk_EMsgEconFlushInventoryCache\x10\x9b<\x12*\n%k_EMsgEconFlushInventoryCacheResponse\x10\x9c<\x12&\n!k_EMsgEconCDKeyProcessTransaction\x10\x9f<\x12.\n)k_EMsgEconCDKeyProcessTransactionResponse\x10\xa0<\x12\x1b\n\x16k_EMsgEconGetErrorLogs\x10\xa1<\x12#\n\x1ek_EMsgEconGetErrorLogsResponse\x10\xa2<\x12\x12\n\rk_EMsgRMRange\x10\xf8<\x12\x1c\n\x17k_EMsgRMTestVerisignOTP\x10\xf8<\x12$\n\x1fk_EMsgRMTestVerisignOTPResponse\x10\xf9<\x12 \n\x1bk_EMsgRMDeleteMemcachedKeys\x10\xfb<\x12\x19\n\x14k_EMsgRMRemoteInvoke\x10\xfc<\x12\x19\n\x14k_EMsgBadLoginIPList\x10\xfd<\x12\x1f\n\x1ak_EMsgRMMsgTraceAddTrigger\x10\xfe<\x12\"\n\x1dk_EMsgRMMsgTraceRemoveTrigger\x10\xff<\x12\x1a\n\x15k_EMsgRMMsgTraceEvent\x10\x80=\x12\x12\n\rk_EMsgUGSBase\x10\xdc=\x12\x1f\n\x1ak_EMsgUGSUpdateGlobalStats\x10\xdc=\x12\"\n\x1dk_EMsgClientUGSGetGlobalStats\x10\xdd=\x12*\n%k_EMsgClientUGSGetGlobalStatsResponse\x10\xde=\x12\x14\n\x0fk_EMsgStoreBase\x10\xc0>\x12\x12\n\rk_EMsgUMQBase\x10\xa4?\x12\x1a\n\x15k_EMsgUMQLogonRequest\x10\xa4?\x12\x1b\n\x16k_EMsgUMQLogonResponse\x10\xa5?\x12\x1b\n\x16k_EMsgUMQLogoffRequest\x10\xa6?\x12\x1c\n\x17k_EMsgUMQLogoffResponse\x10\xa7?\x12\x1d\n\x18k_EMsgUMQSendChatMessage\x10\xa8?\x12!\n\x1ck_EMsgUMQIncomingChatMessage\x10\xa9?\x12\x12\n\rk_EMsgUMQPoll\x10\xaa?\x12\x19\n\x14k_EMsgUMQPollResults\x10\xab?\x12 \n\x1bk_EMsgUMQ2AM_ClientMsgBatch\x10\xac?\x12\x17\n\x12k_EMsgWorkshopBase\x10\x88@\x12\x15\n\x10k_EMsgWebAPIBase\x10\xec@\x12$\n\x1fk_EMsgWebAPIValidateOAuth2Token\x10\xec@\x12,\n\'k_EMsgWebAPIValidateOAuth2TokenResponse\x10\xed@\x12%\n k_EMsgWebAPIRegisterGCInterfaces\x10\xef@\x12+\n&k_EMsgWebAPIInvalidateOAuthClientCache\x10\xf0@\x12*\n%k_EMsgWebAPIInvalidateOAuthTokenCache\x10\xf1@\x12\x1b\n\x16k_EMsgWebAPISetSecrets\x10\xf2@\x12\x17\n\x12k_EMsgBackpackBase\x10\xd0\x41\x12 \n\x1bk_EMsgBackpackAddToCurrency\x10\xd1\x41\x12(\n#k_EMsgBackpackAddToCurrencyResponse\x10\xd2\x41\x12\x12\n\rk_EMsgCREBase\x10\xb4\x42\x12\x1d\n\x18k_EMsgCREItemVoteSummary\x10\xb7\x42\x12%\n k_EMsgCREItemVoteSummaryResponse\x10\xb8\x42\x12)\n$k_EMsgCREUpdateUserPublishedItemVote\x10\xbb\x42\x12\x31\n,k_EMsgCREUpdateUserPublishedItemVoteResponse\x10\xbc\x42\x12-\n(k_EMsgCREGetUserPublishedItemVoteDetails\x10\xbd\x42\x12\x35\n0k_EMsgCREGetUserPublishedItemVoteDetailsResponse\x10\xbe\x42\x12\x16\n\x11k_EMsgSecretsBase\x10\x98\x43\x12\'\n\"k_EMsgSecretsRequestCredentialPair\x10\x98\x43\x12(\n#k_EMsgSecretsCredentialPairResponse\x10\x99\x43\x12\x19\n\x14k_EMsgBoxMonitorBase\x10\xfc\x43\x12\"\n\x1dk_EMsgBoxMonitorReportRequest\x10\xfc\x43\x12#\n\x1ek_EMsgBoxMonitorReportResponse\x10\xfd\x43\x12\x16\n\x11k_EMsgLogsinkBase\x10\xe0\x44\x12\x1d\n\x18k_EMsgLogsinkWriteReport\x10\xe0\x44\x12\x13\n\x0ek_EMsgPICSBase\x10\xc4\x45\x12(\n#k_EMsgClientPICSChangesSinceRequest\x10\xc5\x45\x12)\n$k_EMsgClientPICSChangesSinceResponse\x10\xc6\x45\x12\'\n\"k_EMsgClientPICSProductInfoRequest\x10\xc7\x45\x12(\n#k_EMsgClientPICSProductInfoResponse\x10\xc8\x45\x12\'\n\"k_EMsgClientPICSAccessTokenRequest\x10\xc9\x45\x12(\n#k_EMsgClientPICSAccessTokenResponse\x10\xca\x45\x12\x18\n\x13k_EMsgWorkerProcess\x10\xa8\x46\x12#\n\x1ek_EMsgWorkerProcessPingRequest\x10\xa8\x46\x12$\n\x1fk_EMsgWorkerProcessPingResponse\x10\xa9\x46\x12 \n\x1bk_EMsgWorkerProcessShutdown\x10\xaa\x46\x12\x1b\n\x16k_EMsgDRMWorkerProcess\x10\x8cG\x12%\n k_EMsgDRMWorkerProcessDRMAndSign\x10\x8cG\x12-\n(k_EMsgDRMWorkerProcessDRMAndSignResponse\x10\x8dG\x12\x30\n+k_EMsgDRMWorkerProcessSteamworksInfoRequest\x10\x8eG\x12\x31\n,k_EMsgDRMWorkerProcessSteamworksInfoResponse\x10\x8fG\x12/\n*k_EMsgDRMWorkerProcessInstallDRMDLLRequest\x10\x90G\x12\x30\n+k_EMsgDRMWorkerProcessInstallDRMDLLResponse\x10\x91G\x12\x30\n+k_EMsgDRMWorkerProcessSecretIdStringRequest\x10\x92G\x12\x31\n,k_EMsgDRMWorkerProcessSecretIdStringResponse\x10\x93G\x12\x37\n2k_EMsgDRMWorkerProcessInstallProcessedFilesRequest\x10\x96G\x12\x38\n3k_EMsgDRMWorkerProcessInstallProcessedFilesResponse\x10\x97G\x12-\n(k_EMsgDRMWorkerProcessExamineBlobRequest\x10\x98G\x12.\n)k_EMsgDRMWorkerProcessExamineBlobResponse\x10\x99G\x12\x30\n+k_EMsgDRMWorkerProcessDescribeSecretRequest\x10\x9aG\x12\x31\n,k_EMsgDRMWorkerProcessDescribeSecretResponse\x10\x9bG\x12\x32\n-k_EMsgDRMWorkerProcessBackfillOriginalRequest\x10\x9cG\x12\x33\n.k_EMsgDRMWorkerProcessBackfillOriginalResponse\x10\x9dG\x12\x30\n+k_EMsgDRMWorkerProcessValidateDRMDLLRequest\x10\x9eG\x12\x31\n,k_EMsgDRMWorkerProcessValidateDRMDLLResponse\x10\x9fG\x12.\n)k_EMsgDRMWorkerProcessValidateFileRequest\x10\xa0G\x12/\n*k_EMsgDRMWorkerProcessValidateFileResponse\x10\xa1G\x12\x31\n,k_EMsgDRMWorkerProcessSplitAndInstallRequest\x10\xa2G\x12\x32\n-k_EMsgDRMWorkerProcessSplitAndInstallResponse\x10\xa3G\x12)\n$k_EMsgDRMWorkerProcessGetBlobRequest\x10\xa4G\x12*\n%k_EMsgDRMWorkerProcessGetBlobResponse\x10\xa5G\x12/\n*k_EMsgDRMWorkerProcessEvaluateCrashRequest\x10\xa6G\x12\x30\n+k_EMsgDRMWorkerProcessEvaluateCrashResponse\x10\xa7G\x12-\n(k_EMsgDRMWorkerProcessAnalyzeFileRequest\x10\xa8G\x12.\n)k_EMsgDRMWorkerProcessAnalyzeFileResponse\x10\xa9G\x12,\n\'k_EMsgDRMWorkerProcessUnpackBlobRequest\x10\xaaG\x12-\n(k_EMsgDRMWorkerProcessUnpackBlobResponse\x10\xabG\x12,\n\'k_EMsgDRMWorkerProcessInstallAllRequest\x10\xacG\x12-\n(k_EMsgDRMWorkerProcessInstallAllResponse\x10\xadG\x12\x1c\n\x17k_EMsgTestWorkerProcess\x10\xf0G\x12\x33\n.k_EMsgTestWorkerProcessLoadUnloadModuleRequest\x10\xf0G\x12\x34\n/k_EMsgTestWorkerProcessLoadUnloadModuleResponse\x10\xf1G\x12\x34\n/k_EMsgTestWorkerProcessServiceModuleCallRequest\x10\xf2G\x12\x35\n0k_EMsgTestWorkerProcessServiceModuleCallResponse\x10\xf3G\x12\x1a\n\x15k_EMsgQuestServerBase\x10\xd4H\x12 \n\x1bk_EMsgClientGetEmoticonList\x10\xf2H\x12\x1d\n\x18k_EMsgClientEmoticonList\x10\xf3H\x12\x12\n\rk_EMsgSLCBase\x10\xb8I\x12\x1f\n\x1ak_EMsgSLCUserSessionStatus\x10\xb8I\x12&\n!k_EMsgSLCRequestUserSessionStatus\x10\xb9I\x12&\n!k_EMsgSLCSharedLicensesLockStatus\x10\xbaI\x12(\n#k_EMsgClientSharedLibraryLockStatus\x10\xbdI\x12)\n$k_EMsgClientSharedLibraryStopPlaying\x10\xbeI\x12!\n\x1ck_EMsgSLCOwnerLibraryChanged\x10\xbfI\x12\"\n\x1dk_EMsgSLCSharedLibraryChanged\x10\xc0I\x12\x1b\n\x16k_EMsgRemoteClientBase\x10\x9cJ\x12$\n\x1fk_EMsgRemoteClientAuth_OBSOLETE\x10\x9cJ\x12,\n\'k_EMsgRemoteClientAuthResponse_OBSOLETE\x10\x9dJ\x12 \n\x1bk_EMsgRemoteClientAppStatus\x10\x9eJ\x12\"\n\x1dk_EMsgRemoteClientStartStream\x10\x9fJ\x12*\n%k_EMsgRemoteClientStartStreamResponse\x10\xa0J\x12\x1b\n\x16k_EMsgRemoteClientPing\x10\xa1J\x12#\n\x1ek_EMsgRemoteClientPingResponse\x10\xa2J\x12 \n\x1bk_EMsgClientUnlockStreaming\x10\xa3J\x12(\n#k_EMsgClientUnlockStreamingResponse\x10\xa4J\x12!\n\x1ck_EMsgRemoteClientAcceptEULA\x10\xa5J\x12*\n%k_EMsgRemoteClientGetControllerConfig\x10\xa6J\x12\x32\n-k_EMsgRemoteClientGetControllerConfigResponse\x10\xa7J\x12\'\n\"k_EMsgRemoteClientStreamingEnabled\x10\xa8J\x12\x1b\n\x16k_EMsgClientUnlockHEVC\x10\xa9J\x12#\n\x1ek_EMsgClientUnlockHEVCResponse\x10\xaaJ\x12$\n\x1fk_EMsgRemoteClientStatusRequest\x10\xabJ\x12%\n k_EMsgRemoteClientStatusResponse\x10\xacJ\x12\'\n\"k_EMsgClientConcurrentSessionsBase\x10\x80K\x12$\n\x1fk_EMsgClientPlayingSessionState\x10\x80K\x12#\n\x1ek_EMsgClientKickPlayingSession\x10\x81K\x12\x1e\n\x19k_EMsgClientBroadcastBase\x10\xe4K\x12\x1e\n\x19k_EMsgClientBroadcastInit\x10\xe4K\x12 \n\x1bk_EMsgClientBroadcastFrames\x10\xe5K\x12$\n\x1fk_EMsgClientBroadcastDisconnect\x10\xe6K\x12$\n\x1fk_EMsgClientBroadcastScreenshot\x10\xe7K\x12&\n!k_EMsgClientBroadcastUploadConfig\x10\xe8K\x12\x16\n\x11k_EMsgBaseClient3\x10\xc8L\x12&\n!k_EMsgClientVoiceCallPreAuthorize\x10\xc8L\x12.\n)k_EMsgClientVoiceCallPreAuthorizeResponse\x10\xc9L\x12\'\n\"k_EMsgClientServerTimestampRequest\x10\xcaL\x12(\n#k_EMsgClientServerTimestampResponse\x10\xcbL\x12/\n*k_EMsgServiceMethodCallFromClientNonAuthed\x10\xccL\x12\x16\n\x11k_EMsgClientHello\x10\xcdL\x12)\n$k_EMsgClientEnableOrDisableDownloads\x10\xceL\x12\x31\n,k_EMsgClientEnableOrDisableDownloadsResponse\x10\xcfL\x12\x1b\n\x16k_EMsgClientLANP2PBase\x10\xacM\x12#\n\x1ek_EMsgClientLANP2PRequestChunk\x10\xacM\x12+\n&k_EMsgClientLANP2PRequestChunkResponse\x10\xadM\x12\x1a\n\x15k_EMsgClientLANP2PMax\x10\x8fN\x12\x1d\n\x18k_EMsgBaseWatchdogServer\x10\x90N\x12\x19\n\x14k_EMsgNotifyWatchdog\x10\x90N\x12 \n\x1bk_EMsgClientSiteLicenseBase\x10\xf4N\x12\x30\n+k_EMsgClientSiteLicenseSiteInfoNotification\x10\xf4N\x12$\n\x1fk_EMsgClientSiteLicenseCheckout\x10\xf5N\x12,\n\'k_EMsgClientSiteLicenseCheckoutResponse\x10\xf6N\x12-\n(k_EMsgClientSiteLicenseGetAvailableSeats\x10\xf7N\x12\x35\n0k_EMsgClientSiteLicenseGetAvailableSeatsResponse\x10\xf8N\x12/\n*k_EMsgClientSiteLicenseGetContentCacheInfo\x10\xf9N\x12\x37\n2k_EMsgClientSiteLicenseGetContentCacheInfoResponse\x10\xfaN\x12\x19\n\x14k_EMsgBaseChatServer\x10\xe0]\x12\x30\n+k_EMsgChatServerGetPendingNotificationCount\x10\xe0]\x12\x38\n3k_EMsgChatServerGetPendingNotificationCountResponse\x10\xe1]\x12\x1b\n\x16k_EMsgBaseSecretServer\x10\xc4^\x12\x1e\n\x19k_EMsgServerSecretChanged\x10\xc4^\x1a\x02\x10\x01*\xcf\x04\n\x17\x45\x43lientPersonaStateFlag\x12#\n\x1fk_EClientPersonaStateFlagStatus\x10\x01\x12\'\n#k_EClientPersonaStateFlagPlayerName\x10\x02\x12&\n\"k_EClientPersonaStateFlagQueryPort\x10\x04\x12%\n!k_EClientPersonaStateFlagSourceID\x10\x08\x12%\n!k_EClientPersonaStateFlagPresence\x10\x10\x12%\n!k_EClientPersonaStateFlagLastSeen\x10@\x12*\n%k_EClientPersonaStateFlagUserClanRank\x10\x80\x01\x12\'\n\"k_EClientPersonaStateGameExtraInfo\x10\x80\x02\x12&\n!k_EClientPersonaStateGameDataBlob\x10\x80\x04\x12&\n!k_EClientPersonaStateFlagClanData\x10\x80\x08\x12&\n!k_EClientPersonaStateFlagFacebook\x10\x80\x10\x12*\n%k_EClientPersonaStateFlagRichPresence\x10\x80 \x12\'\n\"k_EClientPersonaStateFlagBroadcast\x10\x80@\x12\'\n!k_EClientPersonaStateFlagWatching\x10\x80\x80\x01*\xb9\x01\n\x14\x45MsgClanAccountFlags\x12\x1f\n\x1bk_EMsgClanAccountFlagPublic\x10\x01\x12\x1e\n\x1ak_EMsgClanAccountFlagLarge\x10\x02\x12\x1f\n\x1bk_EMsgClanAccountFlagLocked\x10\x04\x12!\n\x1dk_EMsgClanAccountFlagDisabled\x10\x08\x12\x1c\n\x18k_EMsgClanAccountFlagOGG\x10\x10*\x90\x03\n\x11\x45SteamReviewScore\x12.\n*k_ESteamReviewScore_OverwhelminglyPositive\x10\t\x12$\n k_ESteamReviewScore_VeryPositive\x10\x08\x12 \n\x1ck_ESteamReviewScore_Positive\x10\x07\x12&\n\"k_ESteamReviewScore_MostlyPositive\x10\x06\x12\x1d\n\x19k_ESteamReviewScore_Mixed\x10\x05\x12&\n\"k_ESteamReviewScore_MostlyNegative\x10\x04\x12 \n\x1ck_ESteamReviewScore_Negative\x10\x03\x12$\n k_ESteamReviewScore_VeryNegative\x10\x02\x12.\n*k_ESteamReviewScore_OverwhelminglyNegative\x10\x01\x12\x1c\n\x18k_ESteamReviewScore_None\x10\x00\x42\x05H\x01\x90\x01\x00'
 )
 
 _EMSG = _descriptor.EnumDescriptor(
@@ -29,5968 +28,7448 @@ _EMSG = _descriptor.EnumDescriptor(
   full_name='EMsg',
   filename=None,
   file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
   values=[
     _descriptor.EnumValueDescriptor(
       name='k_EMsgInvalid', index=0, number=0,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgMulti', index=1, number=1,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgProtobufWrapped', index=2, number=2,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgBaseGeneral', index=3, number=100,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgGenericReply', index=4, number=100,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgDestJobFailed', index=5, number=113,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgAlert', index=6, number=115,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgSCIDRequest', index=7, number=120,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgSCIDResponse', index=8, number=121,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgJobHeartbeat', index=9, number=123,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgHubConnect', index=10, number=124,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgSubscribe', index=11, number=126,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMRouteMessage', index=12, number=127,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgWGRequest', index=13, number=130,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgWGResponse', index=14, number=131,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgKeepAlive', index=15, number=132,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgWebAPIJobRequest', index=16, number=133,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgWebAPIJobResponse', index=17, number=134,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgClientSessionStart', index=18, number=135,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgClientSessionEnd', index=19, number=136,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgClientSessionUpdate', index=20, number=137,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgStatsDeprecated', index=21, number=138,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgPing', index=22, number=139,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgPingResponse', index=23, number=140,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgStats', index=24, number=141,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgRequestFullStatsBlock', index=25, number=142,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgLoadDBOCacheItem', index=26, number=143,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgLoadDBOCacheItemResponse', index=27, number=144,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgInvalidateDBOCacheItems', index=28, number=145,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgServiceMethod', index=29, number=146,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgServiceMethodResponse', index=30, number=147,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgClientPackageVersions', index=31, number=148,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgTimestampRequest', index=32, number=149,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgTimestampResponse', index=33, number=150,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgServiceMethodCallFromClient', index=34, number=151,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgServiceMethodSendToClient', index=35, number=152,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgBaseShell', index=36, number=200,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgAssignSysID', index=37, number=200,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgExit', index=38, number=201,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgDirRequest', index=39, number=202,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgDirResponse', index=40, number=203,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgZipRequest', index=41, number=204,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgZipResponse', index=42, number=205,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgUpdateRecordResponse', index=43, number=215,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgUpdateCreditCardRequest', index=44, number=221,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgUpdateUserBanResponse', index=45, number=225,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgPrepareToExit', index=46, number=226,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgContentDescriptionUpdate', index=47, number=227,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgTestResetServer', index=48, number=228,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgUniverseChanged', index=49, number=229,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgShellConfigInfoUpdate', index=50, number=230,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgRequestWindowsEventLogEntries', index=51, number=233,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgProvideWindowsEventLogEntries', index=52, number=234,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgShellSearchLogs', index=53, number=235,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgShellSearchLogsResponse', index=54, number=236,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgShellCheckWindowsUpdates', index=55, number=237,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgShellCheckWindowsUpdatesResponse', index=56, number=238,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgTestFlushDelayedSQL', index=57, number=240,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgTestFlushDelayedSQLResponse', index=58, number=241,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgEnsureExecuteScheduledTask_TEST', index=59, number=242,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgEnsureExecuteScheduledTaskResponse_TEST', index=60, number=243,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgUpdateScheduledTaskEnableState_TEST', index=61, number=244,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgUpdateScheduledTaskEnableStateResponse_TEST', index=62, number=245,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgContentDescriptionDeltaUpdate', index=63, number=246,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgGMShellAndServerAddressUpdates', index=64, number=247,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgBaseGM', index=65, number=300,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgHeartbeat', index=66, number=300,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgShellFailed', index=67, number=301,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgExitShells', index=68, number=307,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgExitShell', index=69, number=308,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgGracefulExitShell', index=70, number=309,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgLicenseProcessingComplete', index=71, number=316,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgSetTestFlag', index=72, number=317,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgQueuedEmailsComplete', index=73, number=318,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgGMReportPHPError', index=74, number=319,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgGMDRMSync', index=75, number=320,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgPhysicalBoxInventory', index=76, number=321,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgUpdateConfigFile', index=77, number=322,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgTestInitDB', index=78, number=323,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgGMWriteConfigToSQL', index=79, number=324,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgGMLoadActivationCodes', index=80, number=325,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgGMQueueForFBS', index=81, number=326,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgGMSchemaConversionResults', index=82, number=327,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgGMWriteShellFailureToSQL', index=83, number=329,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgGMWriteStatsToSOS', index=84, number=330,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgGMGetServiceMethodRouting', index=85, number=331,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgGMGetServiceMethodRoutingResponse', index=86, number=332,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgGMTestNextBuildSchemaConversion', index=87, number=334,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgGMTestNextBuildSchemaConversionResponse', index=88, number=335,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgExpectShellRestart', index=89, number=336,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgHotFixProgress', index=90, number=337,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgGMStatsForwardToAdminConnections', index=91, number=338,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgBaseAIS', index=92, number=400,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgAISRequestContentDescription', index=93, number=402,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgAISUpdateAppInfo', index=94, number=403,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgAISGetPackageChangeNumber', index=95, number=405,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgAISGetPackageChangeNumberResponse', index=96, number=406,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgAIGetAppGCFlags', index=97, number=423,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgAIGetAppGCFlagsResponse', index=98, number=424,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgAIGetAppList', index=99, number=425,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgAIGetAppListResponse', index=100, number=426,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgAISGetCouponDefinition', index=101, number=429,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgAISGetCouponDefinitionResponse', index=102, number=430,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAISUpdateSlaveContentDescription', index=103, number=431,
+      name='k_EMsgAISUpdateSubordinateContentDescription', index=103, number=431,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAISUpdateSlaveContentDescriptionResponse', index=104, number=432,
+      name='k_EMsgAISUpdateSubordinateContentDescriptionResponse', index=104, number=432,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgAISTestEnableGC', index=105, number=433,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgBaseAM', index=106, number=500,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgAMUpdateUserBanRequest', index=107, number=504,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgAMAddLicense', index=108, number=505,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgAMSendSystemIMToUser', index=109, number=508,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgAMExtendLicense', index=110, number=509,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgAMAddMinutesToLicense', index=111, number=510,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgAMCancelLicense', index=112, number=511,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgAMInitPurchase', index=113, number=512,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgAMPurchaseResponse', index=114, number=513,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgAMGetFinalPrice', index=115, number=514,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgAMGetFinalPriceResponse', index=116, number=515,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgAMGetLegacyGameKey', index=117, number=516,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgAMGetLegacyGameKeyResponse', index=118, number=517,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgAMFindHungTransactions', index=119, number=518,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgAMSetAccountTrustedRequest', index=120, number=519,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgAMCancelPurchase', index=121, number=522,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgAMNewChallenge', index=122, number=523,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgAMLoadOEMTickets', index=123, number=524,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgAMFixPendingPurchase', index=124, number=525,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgAMFixPendingPurchaseResponse', index=125, number=526,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgAMIsUserBanned', index=126, number=527,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgAMRegisterKey', index=127, number=528,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgAMLoadActivationCodes', index=128, number=529,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgAMLoadActivationCodesResponse', index=129, number=530,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgAMLookupKeyResponse', index=130, number=531,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgAMLookupKey', index=131, number=532,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgAMChatCleanup', index=132, number=533,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgAMClanCleanup', index=133, number=534,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgAMFixPendingRefund', index=134, number=535,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgAMReverseChargeback', index=135, number=536,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgAMReverseChargebackResponse', index=136, number=537,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgAMClanCleanupList', index=137, number=538,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgAMGetLicenses', index=138, number=539,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgAMGetLicensesResponse', index=139, number=540,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgAMSendCartRepurchase', index=140, number=541,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgAMSendCartRepurchaseResponse', index=141, number=542,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgAllowUserToPlayQuery', index=142, number=550,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgAllowUserToPlayResponse', index=143, number=551,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgAMVerfiyUser', index=144, number=552,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgAMClientNotPlaying', index=145, number=553,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgAMClientRequestFriendship', index=146, number=554,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgAMRelayPublishStatus', index=147, number=555,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgAMInitPurchaseResponse', index=148, number=560,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgAMRevokePurchaseResponse', index=149, number=561,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgAMRefreshGuestPasses', index=150, number=563,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgAMGrantGuestPasses', index=151, number=566,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgAMClanDataUpdated', index=152, number=567,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgAMReloadAccount', index=153, number=568,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgAMClientChatMsgRelay', index=154, number=569,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgAMChatMulti', index=155, number=570,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgAMClientChatInviteRelay', index=156, number=571,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgAMChatInvite', index=157, number=572,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgAMClientJoinChatRelay', index=158, number=573,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgAMClientChatMemberInfoRelay', index=159, number=574,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgAMPublishChatMemberInfo', index=160, number=575,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgAMClientAcceptFriendInvite', index=161, number=576,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgAMChatEnter', index=162, number=577,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgAMClientPublishRemovalFromSource', index=163, number=578,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgAMChatActionResult', index=164, number=579,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgAMFindAccounts', index=165, number=580,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgAMFindAccountsResponse', index=166, number=581,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgAMIsAccountNameInUse', index=167, number=582,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgAMIsAccountNameInUseResponse', index=168, number=583,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgAMSetAccountFlags', index=169, number=584,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgAMCreateClan', index=170, number=586,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgAMCreateClanResponse', index=171, number=587,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgAMGetClanDetails', index=172, number=588,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgAMGetClanDetailsResponse', index=173, number=589,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgAMSetPersonaName', index=174, number=590,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgAMSetAvatar', index=175, number=591,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgAMAuthenticateUser', index=176, number=592,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgAMAuthenticateUserResponse', index=177, number=593,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgAMP2PIntroducerMessage', index=178, number=596,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgClientChatAction', index=179, number=597,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgAMClientChatActionRelay', index=180, number=598,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgBaseVS', index=181, number=600,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgReqChallenge', index=182, number=600,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgVACResponse', index=183, number=601,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgReqChallengeTest', index=184, number=602,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgVSMarkCheat', index=185, number=604,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgVSAddCheat', index=186, number=605,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgVSPurgeCodeModDB', index=187, number=606,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgVSGetChallengeResults', index=188, number=607,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgVSChallengeResultText', index=189, number=608,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgVSReportLingerer', index=190, number=609,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgVSRequestManagedChallenge', index=191, number=610,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgVSLoadDBFinished', index=192, number=611,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgBaseDRMS', index=193, number=625,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgDRMBuildBlobRequest', index=194, number=628,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgDRMBuildBlobResponse', index=195, number=629,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgDRMResolveGuidRequest', index=196, number=630,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgDRMResolveGuidResponse', index=197, number=631,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgDRMVariabilityReport', index=198, number=633,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgDRMVariabilityReportResponse', index=199, number=634,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgDRMStabilityReport', index=200, number=635,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgDRMStabilityReportResponse', index=201, number=636,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgDRMDetailsReportRequest', index=202, number=637,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgDRMDetailsReportResponse', index=203, number=638,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgDRMProcessFile', index=204, number=639,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgDRMAdminUpdate', index=205, number=640,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgDRMAdminUpdateResponse', index=206, number=641,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgDRMSync', index=207, number=642,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgDRMSyncResponse', index=208, number=643,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgDRMProcessFileResponse', index=209, number=644,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgDRMEmptyGuidCache', index=210, number=645,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgDRMEmptyGuidCacheResponse', index=211, number=646,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgBaseCS', index=212, number=650,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgBaseClient', index=213, number=700,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgClientLogOn_Deprecated', index=214, number=701,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgClientAnonLogOn_Deprecated', index=215, number=702,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgClientHeartBeat', index=216, number=703,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgClientVACResponse', index=217, number=704,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgClientGamesPlayed_obsolete', index=218, number=705,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgClientLogOff', index=219, number=706,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgClientNoUDPConnectivity', index=220, number=707,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgClientConnectionStats', index=221, number=710,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgClientPingResponse', index=222, number=712,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgClientRemoveFriend', index=223, number=714,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgClientGamesPlayedNoDataBlob', index=224, number=715,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgClientChangeStatus', index=225, number=716,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgClientVacStatusResponse', index=226, number=717,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgClientFriendMsg', index=227, number=718,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgClientGameConnect_obsolete', index=228, number=719,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgClientGamesPlayed2_obsolete', index=229, number=720,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgClientGameEnded_obsolete', index=230, number=721,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgClientSystemIM', index=231, number=726,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgClientSystemIMAck', index=232, number=727,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgClientGetLicenses', index=233, number=728,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgClientGetLegacyGameKey', index=234, number=730,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgClientContentServerLogOn_Deprecated', index=235, number=731,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgClientAckVACBan2', index=236, number=732,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgClientGetPurchaseReceipts', index=237, number=736,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgClientGamesPlayed3_obsolete', index=238, number=738,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgClientAckGuestPass', index=239, number=740,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgClientRedeemGuestPass', index=240, number=741,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgClientGamesPlayed', index=241, number=742,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgClientRegisterKey', index=242, number=743,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgClientInviteUserToClan', index=243, number=744,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgClientAcknowledgeClanInvite', index=244, number=745,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgClientPurchaseWithMachineID', index=245, number=746,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgClientAppUsageEvent', index=246, number=747,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgClientLogOnResponse', index=247, number=751,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgClientSetHeartbeatRate', index=248, number=755,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgClientNotLoggedOnDeprecated', index=249, number=756,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgClientLoggedOff', index=250, number=757,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgGSApprove', index=251, number=758,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgGSDeny', index=252, number=759,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgGSKick', index=253, number=760,
       serialized_options=None,
-      type=None),
-    _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientCreateAcctResponse', index=254, number=761,
-      serialized_options=None,
-      type=None),
-    _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientPurchaseResponse', index=255, number=763,
-      serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientPing', index=256, number=764,
+      name='k_EMsgClientPurchaseResponse', index=254, number=763,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientNOP', index=257, number=765,
+      name='k_EMsgClientPing', index=255, number=764,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientPersonaState', index=258, number=766,
+      name='k_EMsgClientNOP', index=256, number=765,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientFriendsList', index=259, number=767,
+      name='k_EMsgClientPersonaState', index=257, number=766,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientAccountInfo', index=260, number=768,
+      name='k_EMsgClientFriendsList', index=258, number=767,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientNewsUpdate', index=261, number=771,
+      name='k_EMsgClientAccountInfo', index=259, number=768,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientGameConnectDeny', index=262, number=773,
+      name='k_EMsgClientNewsUpdate', index=260, number=771,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgGSStatusReply', index=263, number=774,
+      name='k_EMsgClientGameConnectDeny', index=261, number=773,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientGameConnectTokens', index=264, number=779,
+      name='k_EMsgGSStatusReply', index=262, number=774,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientLicenseList', index=265, number=780,
+      name='k_EMsgClientGameConnectTokens', index=263, number=779,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientVACBanStatus', index=266, number=782,
+      name='k_EMsgClientLicenseList', index=264, number=780,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientCMList', index=267, number=783,
+      name='k_EMsgClientVACBanStatus', index=265, number=782,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientEncryptPct', index=268, number=784,
+      name='k_EMsgClientCMList', index=266, number=783,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientGetLegacyGameKeyResponse', index=269, number=785,
+      name='k_EMsgClientEncryptPct', index=267, number=784,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientAddFriend', index=270, number=791,
+      name='k_EMsgClientGetLegacyGameKeyResponse', index=268, number=785,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientAddFriendResponse', index=271, number=792,
+      name='k_EMsgClientAddFriend', index=269, number=791,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientAckGuestPassResponse', index=272, number=796,
+      name='k_EMsgClientAddFriendResponse', index=270, number=792,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientRedeemGuestPassResponse', index=273, number=797,
+      name='k_EMsgClientAckGuestPassResponse', index=271, number=796,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientUpdateGuestPassesList', index=274, number=798,
+      name='k_EMsgClientRedeemGuestPassResponse', index=272, number=797,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientChatMsg', index=275, number=799,
+      name='k_EMsgClientUpdateGuestPassesList', index=273, number=798,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientChatInvite', index=276, number=800,
+      name='k_EMsgClientChatMsg', index=274, number=799,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientJoinChat', index=277, number=801,
+      name='k_EMsgClientChatInvite', index=275, number=800,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientChatMemberInfo', index=278, number=802,
+      name='k_EMsgClientJoinChat', index=276, number=801,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientLogOnWithCredentials_Deprecated', index=279, number=803,
+      name='k_EMsgClientChatMemberInfo', index=277, number=802,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientPasswordChangeResponse', index=280, number=805,
+      name='k_EMsgClientLogOnWithCredentials_Deprecated', index=278, number=803,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientChatEnter', index=281, number=807,
+      name='k_EMsgClientPasswordChangeResponse', index=279, number=805,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientFriendRemovedFromSource', index=282, number=808,
+      name='k_EMsgClientChatEnter', index=280, number=807,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientCreateChat', index=283, number=809,
+      name='k_EMsgClientFriendRemovedFromSource', index=281, number=808,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientCreateChatResponse', index=284, number=810,
+      name='k_EMsgClientCreateChat', index=282, number=809,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientP2PIntroducerMessage', index=285, number=813,
+      name='k_EMsgClientCreateChatResponse', index=283, number=810,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientChatActionResult', index=286, number=814,
+      name='k_EMsgClientP2PIntroducerMessage', index=284, number=813,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientRequestFriendData', index=287, number=815,
+      name='k_EMsgClientChatActionResult', index=285, number=814,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientGetUserStats', index=288, number=818,
+      name='k_EMsgClientRequestFriendData', index=286, number=815,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientGetUserStatsResponse', index=289, number=819,
+      name='k_EMsgClientGetUserStats', index=287, number=818,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientStoreUserStats', index=290, number=820,
+      name='k_EMsgClientGetUserStatsResponse', index=288, number=819,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientStoreUserStatsResponse', index=291, number=821,
+      name='k_EMsgClientStoreUserStats', index=289, number=820,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientClanState', index=292, number=822,
+      name='k_EMsgClientStoreUserStatsResponse', index=290, number=821,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientServiceModule', index=293, number=830,
+      name='k_EMsgClientClanState', index=291, number=822,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientServiceCall', index=294, number=831,
+      name='k_EMsgClientServiceModule', index=292, number=830,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientServiceCallResponse', index=295, number=832,
+      name='k_EMsgClientServiceCall', index=293, number=831,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientNatTraversalStatEvent', index=296, number=839,
+      name='k_EMsgClientServiceCallResponse', index=294, number=832,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientSteamUsageEvent', index=297, number=842,
+      name='k_EMsgClientNatTraversalStatEvent', index=295, number=839,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientCheckPassword', index=298, number=845,
+      name='k_EMsgClientSteamUsageEvent', index=296, number=842,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientResetPassword', index=299, number=846,
+      name='k_EMsgClientCheckPassword', index=297, number=845,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientCheckPasswordResponse', index=300, number=848,
+      name='k_EMsgClientResetPassword', index=298, number=846,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientResetPasswordResponse', index=301, number=849,
+      name='k_EMsgClientCheckPasswordResponse', index=299, number=848,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientSessionToken', index=302, number=850,
+      name='k_EMsgClientResetPasswordResponse', index=300, number=849,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientDRMProblemReport', index=303, number=851,
+      name='k_EMsgClientSessionToken', index=301, number=850,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientSetIgnoreFriend', index=304, number=855,
+      name='k_EMsgClientDRMProblemReport', index=302, number=851,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientSetIgnoreFriendResponse', index=305, number=856,
+      name='k_EMsgClientSetIgnoreFriend', index=303, number=855,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientGetAppOwnershipTicket', index=306, number=857,
+      name='k_EMsgClientSetIgnoreFriendResponse', index=304, number=856,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientGetAppOwnershipTicketResponse', index=307, number=858,
+      name='k_EMsgClientGetAppOwnershipTicket', index=305, number=857,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientGetLobbyListResponse', index=308, number=860,
+      name='k_EMsgClientGetAppOwnershipTicketResponse', index=306, number=858,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientServerList', index=309, number=880,
+      name='k_EMsgClientGetLobbyListResponse', index=307, number=860,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientDRMBlobRequest', index=310, number=896,
+      name='k_EMsgClientServerList', index=308, number=880,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientDRMBlobResponse', index=311, number=897,
+      name='k_EMsgClientDRMBlobRequest', index=309, number=896,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBaseGameServer', index=312, number=900,
+      name='k_EMsgClientDRMBlobResponse', index=310, number=897,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgGSDisconnectNotice', index=313, number=901,
+      name='k_EMsgBaseGameServer', index=311, number=900,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgGSStatus', index=314, number=903,
+      name='k_EMsgGSDisconnectNotice', index=312, number=901,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgGSUserPlaying', index=315, number=905,
+      name='k_EMsgGSStatus', index=313, number=903,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgGSStatus2', index=316, number=906,
+      name='k_EMsgGSUserPlaying', index=314, number=905,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgGSStatusUpdate_Unused', index=317, number=907,
+      name='k_EMsgGSStatus2', index=315, number=906,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgGSServerType', index=318, number=908,
+      name='k_EMsgGSStatusUpdate_Unused', index=316, number=907,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgGSPlayerList', index=319, number=909,
+      name='k_EMsgGSServerType', index=317, number=908,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgGSGetUserAchievementStatus', index=320, number=910,
+      name='k_EMsgGSPlayerList', index=318, number=909,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgGSGetUserAchievementStatusResponse', index=321, number=911,
+      name='k_EMsgGSGetUserAchievementStatus', index=319, number=910,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgGSGetPlayStats', index=322, number=918,
+      name='k_EMsgGSGetUserAchievementStatusResponse', index=320, number=911,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgGSGetPlayStatsResponse', index=323, number=919,
+      name='k_EMsgGSGetPlayStats', index=321, number=918,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgGSGetUserGroupStatus', index=324, number=920,
+      name='k_EMsgGSGetPlayStatsResponse', index=322, number=919,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGetUserGroupStatus', index=325, number=921,
+      name='k_EMsgGSGetUserGroupStatus', index=323, number=920,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGetUserGroupStatusResponse', index=326, number=922,
+      name='k_EMsgAMGetUserGroupStatus', index=324, number=921,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgGSGetUserGroupStatusResponse', index=327, number=923,
+      name='k_EMsgAMGetUserGroupStatusResponse', index=325, number=922,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgGSGetReputation', index=328, number=936,
+      name='k_EMsgGSGetUserGroupStatusResponse', index=326, number=923,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgGSGetReputationResponse', index=329, number=937,
+      name='k_EMsgGSGetReputation', index=327, number=936,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgGSAssociateWithClan', index=330, number=938,
+      name='k_EMsgGSGetReputationResponse', index=328, number=937,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgGSAssociateWithClanResponse', index=331, number=939,
+      name='k_EMsgGSAssociateWithClan', index=329, number=938,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgGSComputeNewPlayerCompatibility', index=332, number=940,
+      name='k_EMsgGSAssociateWithClanResponse', index=330, number=939,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgGSComputeNewPlayerCompatibilityResponse', index=333, number=941,
+      name='k_EMsgGSComputeNewPlayerCompatibility', index=331, number=940,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBaseAdmin', index=334, number=1000,
+      name='k_EMsgGSComputeNewPlayerCompatibilityResponse', index=332, number=941,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAdminCmd', index=335, number=1000,
+      name='k_EMsgBaseAdmin', index=333, number=1000,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAdminCmdResponse', index=336, number=1004,
+      name='k_EMsgAdminCmd', index=334, number=1000,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAdminLogListenRequest', index=337, number=1005,
+      name='k_EMsgAdminCmdResponse', index=335, number=1004,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAdminLogEvent', index=338, number=1006,
+      name='k_EMsgAdminLogListenRequest', index=336, number=1005,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgUniverseData', index=339, number=1010,
+      name='k_EMsgAdminLogEvent', index=337, number=1006,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAdminSpew', index=340, number=1019,
+      name='k_EMsgUniverseData', index=338, number=1010,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAdminConsoleTitle', index=341, number=1020,
+      name='k_EMsgAdminSpew', index=339, number=1019,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAdminGCSpew', index=342, number=1023,
+      name='k_EMsgAdminConsoleTitle', index=340, number=1020,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAdminGCCommand', index=343, number=1024,
+      name='k_EMsgAdminGCSpew', index=341, number=1023,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAdminGCGetCommandList', index=344, number=1025,
+      name='k_EMsgAdminGCCommand', index=342, number=1024,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAdminGCGetCommandListResponse', index=345, number=1026,
+      name='k_EMsgAdminGCGetCommandList', index=343, number=1025,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgFBSConnectionData', index=346, number=1027,
+      name='k_EMsgAdminGCGetCommandListResponse', index=344, number=1026,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAdminMsgSpew', index=347, number=1028,
+      name='k_EMsgFBSConnectionData', index=345, number=1027,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBaseFBS', index=348, number=1100,
+      name='k_EMsgAdminMsgSpew', index=346, number=1028,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgFBSReqVersion', index=349, number=1100,
+      name='k_EMsgBaseFBS', index=347, number=1100,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgFBSVersionInfo', index=350, number=1101,
+      name='k_EMsgFBSReqVersion', index=348, number=1100,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgFBSForceRefresh', index=351, number=1102,
+      name='k_EMsgFBSVersionInfo', index=349, number=1101,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgFBSForceBounce', index=352, number=1103,
+      name='k_EMsgFBSForceRefresh', index=350, number=1102,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgFBSDeployPackage', index=353, number=1104,
+      name='k_EMsgFBSForceBounce', index=351, number=1103,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgFBSDeployResponse', index=354, number=1105,
+      name='k_EMsgFBSDeployPackage', index=352, number=1104,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgFBSUpdateBootstrapper', index=355, number=1106,
+      name='k_EMsgFBSDeployResponse', index=353, number=1105,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgFBSSetState', index=356, number=1107,
+      name='k_EMsgFBSUpdateBootstrapper', index=354, number=1106,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgFBSApplyOSUpdates', index=357, number=1108,
+      name='k_EMsgFBSSetState', index=355, number=1107,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgFBSRunCMDScript', index=358, number=1109,
+      name='k_EMsgFBSApplyOSUpdates', index=356, number=1108,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgFBSRebootBox', index=359, number=1110,
+      name='k_EMsgFBSRunCMDScript', index=357, number=1109,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgFBSSetBigBrotherMode', index=360, number=1111,
+      name='k_EMsgFBSRebootBox', index=358, number=1110,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgFBSMinidumpServer', index=361, number=1112,
+      name='k_EMsgFBSSetBigBrotherMode', index=359, number=1111,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgFBSDeployHotFixPackage', index=362, number=1114,
+      name='k_EMsgFBSMinidumpServer', index=360, number=1112,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgFBSDeployHotFixResponse', index=363, number=1115,
+      name='k_EMsgFBSDeployHotFixPackage', index=361, number=1114,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgFBSDownloadHotFix', index=364, number=1116,
+      name='k_EMsgFBSDeployHotFixResponse', index=362, number=1115,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgFBSDownloadHotFixResponse', index=365, number=1117,
+      name='k_EMsgFBSDownloadHotFix', index=363, number=1116,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgFBSUpdateTargetConfigFile', index=366, number=1118,
+      name='k_EMsgFBSDownloadHotFixResponse', index=364, number=1117,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgFBSApplyAccountCred', index=367, number=1119,
+      name='k_EMsgFBSUpdateTargetConfigFile', index=365, number=1118,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgFBSApplyAccountCredResponse', index=368, number=1120,
+      name='k_EMsgFBSApplyAccountCred', index=366, number=1119,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgFBSSetShellCount', index=369, number=1121,
+      name='k_EMsgFBSApplyAccountCredResponse', index=367, number=1120,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgFBSTerminateShell', index=370, number=1122,
+      name='k_EMsgFBSSetShellCount', index=368, number=1121,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgFBSQueryGMForRequest', index=371, number=1123,
+      name='k_EMsgFBSTerminateShell', index=369, number=1122,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgFBSQueryGMResponse', index=372, number=1124,
+      name='k_EMsgFBSQueryGMForRequest', index=370, number=1123,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgFBSTerminateZombies', index=373, number=1125,
+      name='k_EMsgFBSQueryGMResponse', index=371, number=1124,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgFBSInfoFromBootstrapper', index=374, number=1126,
+      name='k_EMsgFBSTerminateZombies', index=372, number=1125,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgFBSRebootBoxResponse', index=375, number=1127,
+      name='k_EMsgFBSInfoFromBootstrapper', index=373, number=1126,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgFBSBootstrapperPackageRequest', index=376, number=1128,
+      name='k_EMsgFBSRebootBoxResponse', index=374, number=1127,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgFBSBootstrapperPackageResponse', index=377, number=1129,
+      name='k_EMsgFBSBootstrapperPackageRequest', index=375, number=1128,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgFBSBootstrapperGetPackageChunk', index=378, number=1130,
+      name='k_EMsgFBSBootstrapperPackageResponse', index=376, number=1129,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgFBSBootstrapperGetPackageChunkResponse', index=379, number=1131,
+      name='k_EMsgFBSBootstrapperGetPackageChunk', index=377, number=1130,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgFBSBootstrapperPackageTransferProgress', index=380, number=1132,
+      name='k_EMsgFBSBootstrapperGetPackageChunkResponse', index=378, number=1131,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgFBSRestartBootstrapper', index=381, number=1133,
+      name='k_EMsgFBSBootstrapperPackageTransferProgress', index=379, number=1132,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgFBSPauseFrozenDumps', index=382, number=1134,
+      name='k_EMsgFBSRestartBootstrapper', index=380, number=1133,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBaseFileXfer', index=383, number=1200,
+      name='k_EMsgFBSPauseFrozenDumps', index=381, number=1134,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgFileXferRequest', index=384, number=1200,
+      name='k_EMsgBaseFileXfer', index=382, number=1200,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgFileXferResponse', index=385, number=1201,
+      name='k_EMsgFileXferRequest', index=383, number=1200,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgFileXferData', index=386, number=1202,
+      name='k_EMsgFileXferResponse', index=384, number=1201,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgFileXferEnd', index=387, number=1203,
+      name='k_EMsgFileXferData', index=385, number=1202,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgFileXferDataAck', index=388, number=1204,
+      name='k_EMsgFileXferEnd', index=386, number=1203,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBaseChannelAuth', index=389, number=1300,
+      name='k_EMsgFileXferDataAck', index=387, number=1204,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgChannelAuthChallenge', index=390, number=1300,
+      name='k_EMsgBaseChannelAuth', index=388, number=1300,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgChannelAuthResponse', index=391, number=1301,
+      name='k_EMsgChannelAuthChallenge', index=389, number=1300,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgChannelAuthResult', index=392, number=1302,
+      name='k_EMsgChannelAuthResponse', index=390, number=1301,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgChannelEncryptRequest', index=393, number=1303,
+      name='k_EMsgChannelAuthResult', index=391, number=1302,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgChannelEncryptResponse', index=394, number=1304,
+      name='k_EMsgChannelEncryptRequest', index=392, number=1303,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgChannelEncryptResult', index=395, number=1305,
+      name='k_EMsgChannelEncryptResponse', index=393, number=1304,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBaseBS', index=396, number=1400,
+      name='k_EMsgChannelEncryptResult', index=394, number=1305,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBSPurchaseStart', index=397, number=1401,
+      name='k_EMsgBaseBS', index=395, number=1400,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBSPurchaseResponse', index=398, number=1402,
+      name='k_EMsgBSPurchaseStart', index=396, number=1401,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBSAuthenticateCCTrans', index=399, number=1403,
+      name='k_EMsgBSPurchaseResponse', index=397, number=1402,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBSAuthenticateCCTransResponse', index=400, number=1404,
+      name='k_EMsgBSAuthenticateCCTrans', index=398, number=1403,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBSSettleComplete', index=401, number=1406,
+      name='k_EMsgBSAuthenticateCCTransResponse', index=399, number=1404,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBSInitPayPalTxn', index=402, number=1408,
+      name='k_EMsgBSSettleComplete', index=400, number=1406,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBSInitPayPalTxnResponse', index=403, number=1409,
+      name='k_EMsgBSInitPayPalTxn', index=401, number=1408,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBSGetPayPalUserInfo', index=404, number=1410,
+      name='k_EMsgBSInitPayPalTxnResponse', index=402, number=1409,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBSGetPayPalUserInfoResponse', index=405, number=1411,
+      name='k_EMsgBSGetPayPalUserInfo', index=403, number=1410,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBSPaymentInstrBan', index=406, number=1417,
+      name='k_EMsgBSGetPayPalUserInfoResponse', index=404, number=1411,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBSPaymentInstrBanResponse', index=407, number=1418,
+      name='k_EMsgBSPaymentInstrBan', index=405, number=1417,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBSInitGCBankXferTxn', index=408, number=1421,
+      name='k_EMsgBSPaymentInstrBanResponse', index=406, number=1418,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBSInitGCBankXferTxnResponse', index=409, number=1422,
+      name='k_EMsgBSInitGCBankXferTxn', index=407, number=1421,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBSCommitGCTxn', index=410, number=1425,
+      name='k_EMsgBSInitGCBankXferTxnResponse', index=408, number=1422,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBSQueryTransactionStatus', index=411, number=1426,
+      name='k_EMsgBSCommitGCTxn', index=409, number=1425,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBSQueryTransactionStatusResponse', index=412, number=1427,
+      name='k_EMsgBSQueryTransactionStatus', index=410, number=1426,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBSQueryPaymentInstUsage', index=413, number=1431,
+      name='k_EMsgBSQueryTransactionStatusResponse', index=411, number=1427,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBSQueryPaymentInstResponse', index=414, number=1432,
+      name='k_EMsgBSQueryTxnExtendedInfo', index=412, number=1433,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBSQueryTxnExtendedInfo', index=415, number=1433,
+      name='k_EMsgBSQueryTxnExtendedInfoResponse', index=413, number=1434,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBSQueryTxnExtendedInfoResponse', index=416, number=1434,
+      name='k_EMsgBSUpdateConversionRates', index=414, number=1435,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBSUpdateConversionRates', index=417, number=1435,
+      name='k_EMsgBSPurchaseRunFraudChecks', index=415, number=1437,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBSPurchaseRunFraudChecks', index=418, number=1437,
+      name='k_EMsgBSPurchaseRunFraudChecksResponse', index=416, number=1438,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBSPurchaseRunFraudChecksResponse', index=419, number=1438,
+      name='k_EMsgBSQueryBankInformation', index=417, number=1440,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBSQueryBankInformation', index=420, number=1440,
+      name='k_EMsgBSQueryBankInformationResponse', index=418, number=1441,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBSQueryBankInformationResponse', index=421, number=1441,
+      name='k_EMsgBSValidateXsollaSignature', index=419, number=1445,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBSValidateXsollaSignature', index=422, number=1445,
+      name='k_EMsgBSValidateXsollaSignatureResponse', index=420, number=1446,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBSValidateXsollaSignatureResponse', index=423, number=1446,
+      name='k_EMsgBSQiwiWalletInvoice', index=421, number=1448,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBSQiwiWalletInvoice', index=424, number=1448,
+      name='k_EMsgBSQiwiWalletInvoiceResponse', index=422, number=1449,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBSQiwiWalletInvoiceResponse', index=425, number=1449,
+      name='k_EMsgBSUpdateInventoryFromProPack', index=423, number=1450,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBSUpdateInventoryFromProPack', index=426, number=1450,
+      name='k_EMsgBSUpdateInventoryFromProPackResponse', index=424, number=1451,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBSUpdateInventoryFromProPackResponse', index=427, number=1451,
+      name='k_EMsgBSSendShippingRequest', index=425, number=1452,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBSSendShippingRequest', index=428, number=1452,
+      name='k_EMsgBSSendShippingRequestResponse', index=426, number=1453,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBSSendShippingRequestResponse', index=429, number=1453,
+      name='k_EMsgBSGetProPackOrderStatus', index=427, number=1454,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBSGetProPackOrderStatus', index=430, number=1454,
+      name='k_EMsgBSGetProPackOrderStatusResponse', index=428, number=1455,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBSGetProPackOrderStatusResponse', index=431, number=1455,
+      name='k_EMsgBSCheckJobRunning', index=429, number=1456,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBSCheckJobRunning', index=432, number=1456,
+      name='k_EMsgBSCheckJobRunningResponse', index=430, number=1457,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBSCheckJobRunningResponse', index=433, number=1457,
+      name='k_EMsgBSResetPackagePurchaseRateLimit', index=431, number=1458,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBSResetPackagePurchaseRateLimit', index=434, number=1458,
+      name='k_EMsgBSResetPackagePurchaseRateLimitResponse', index=432, number=1459,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBSResetPackagePurchaseRateLimitResponse', index=435, number=1459,
+      name='k_EMsgBSUpdatePaymentData', index=433, number=1460,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBSUpdatePaymentData', index=436, number=1460,
+      name='k_EMsgBSUpdatePaymentDataResponse', index=434, number=1461,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBSUpdatePaymentDataResponse', index=437, number=1461,
+      name='k_EMsgBSGetBillingAddress', index=435, number=1462,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBSGetBillingAddress', index=438, number=1462,
+      name='k_EMsgBSGetBillingAddressResponse', index=436, number=1463,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBSGetBillingAddressResponse', index=439, number=1463,
+      name='k_EMsgBSGetCreditCardInfo', index=437, number=1464,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBSGetCreditCardInfo', index=440, number=1464,
+      name='k_EMsgBSGetCreditCardInfoResponse', index=438, number=1465,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBSGetCreditCardInfoResponse', index=441, number=1465,
+      name='k_EMsgBSRemoveExpiredPaymentData', index=439, number=1468,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBSRemoveExpiredPaymentData', index=442, number=1468,
+      name='k_EMsgBSRemoveExpiredPaymentDataResponse', index=440, number=1469,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBSRemoveExpiredPaymentDataResponse', index=443, number=1469,
+      name='k_EMsgBSConvertToCurrentKeys', index=441, number=1470,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBSConvertToCurrentKeys', index=444, number=1470,
+      name='k_EMsgBSConvertToCurrentKeysResponse', index=442, number=1471,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBSConvertToCurrentKeysResponse', index=445, number=1471,
+      name='k_EMsgBSInitPurchase', index=443, number=1472,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBSInitPurchase', index=446, number=1472,
+      name='k_EMsgBSInitPurchaseResponse', index=444, number=1473,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBSInitPurchaseResponse', index=447, number=1473,
+      name='k_EMsgBSCompletePurchase', index=445, number=1474,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBSCompletePurchase', index=448, number=1474,
+      name='k_EMsgBSCompletePurchaseResponse', index=446, number=1475,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBSCompletePurchaseResponse', index=449, number=1475,
+      name='k_EMsgBSPruneCardUsageStats', index=447, number=1476,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBSPruneCardUsageStats', index=450, number=1476,
+      name='k_EMsgBSPruneCardUsageStatsResponse', index=448, number=1477,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBSPruneCardUsageStatsResponse', index=451, number=1477,
+      name='k_EMsgBSStoreBankInformation', index=449, number=1478,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBSStoreBankInformation', index=452, number=1478,
+      name='k_EMsgBSStoreBankInformationResponse', index=450, number=1479,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBSStoreBankInformationResponse', index=453, number=1479,
+      name='k_EMsgBSVerifyPOSAKey', index=451, number=1480,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBSVerifyPOSAKey', index=454, number=1480,
+      name='k_EMsgBSVerifyPOSAKeyResponse', index=452, number=1481,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBSVerifyPOSAKeyResponse', index=455, number=1481,
+      name='k_EMsgBSReverseRedeemPOSAKey', index=453, number=1482,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBSReverseRedeemPOSAKey', index=456, number=1482,
+      name='k_EMsgBSReverseRedeemPOSAKeyResponse', index=454, number=1483,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBSReverseRedeemPOSAKeyResponse', index=457, number=1483,
+      name='k_EMsgBSQueryFindCreditCard', index=455, number=1484,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBSQueryFindCreditCard', index=458, number=1484,
+      name='k_EMsgBSQueryFindCreditCardResponse', index=456, number=1485,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBSQueryFindCreditCardResponse', index=459, number=1485,
+      name='k_EMsgBSStatusInquiryPOSAKey', index=457, number=1486,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBSStatusInquiryPOSAKey', index=460, number=1486,
+      name='k_EMsgBSStatusInquiryPOSAKeyResponse', index=458, number=1487,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBSStatusInquiryPOSAKeyResponse', index=461, number=1487,
+      name='k_EMsgBSBoaCompraConfirmProductDelivery', index=459, number=1494,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBSBoaCompraConfirmProductDelivery', index=462, number=1494,
+      name='k_EMsgBSBoaCompraConfirmProductDeliveryResponse', index=460, number=1495,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBSBoaCompraConfirmProductDeliveryResponse', index=463, number=1495,
+      name='k_EMsgBSGenerateBoaCompraMD5', index=461, number=1496,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBSGenerateBoaCompraMD5', index=464, number=1496,
+      name='k_EMsgBSGenerateBoaCompraMD5Response', index=462, number=1497,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBSGenerateBoaCompraMD5Response', index=465, number=1497,
+      name='k_EMsgBSCommitWPTxn', index=463, number=1498,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBSCommitWPTxn', index=466, number=1498,
+      name='k_EMsgBSCommitAdyenTxn', index=464, number=1499,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBSCommitAdyenTxn', index=467, number=1499,
+      name='k_EMsgBaseATS', index=465, number=1500,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBaseATS', index=468, number=1500,
+      name='k_EMsgATSStartStressTest', index=466, number=1501,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgATSStartStressTest', index=469, number=1501,
+      name='k_EMsgATSStopStressTest', index=467, number=1502,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgATSStopStressTest', index=470, number=1502,
+      name='k_EMsgATSRunFailServerTest', index=468, number=1503,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgATSRunFailServerTest', index=471, number=1503,
+      name='k_EMsgATSUFSPerfTestTask', index=469, number=1504,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgATSUFSPerfTestTask', index=472, number=1504,
+      name='k_EMsgATSUFSPerfTestResponse', index=470, number=1505,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgATSUFSPerfTestResponse', index=473, number=1505,
+      name='k_EMsgATSCycleTCM', index=471, number=1506,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgATSCycleTCM', index=474, number=1506,
+      name='k_EMsgATSInitDRMSStressTest', index=472, number=1507,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgATSInitDRMSStressTest', index=475, number=1507,
+      name='k_EMsgATSCallTest', index=473, number=1508,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgATSCallTest', index=476, number=1508,
+      name='k_EMsgATSCallTestReply', index=474, number=1509,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgATSCallTestReply', index=477, number=1509,
+      name='k_EMsgATSStartExternalStress', index=475, number=1510,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgATSStartExternalStress', index=478, number=1510,
+      name='k_EMsgATSExternalStressJobStart', index=476, number=1511,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgATSExternalStressJobStart', index=479, number=1511,
+      name='k_EMsgATSExternalStressJobQueued', index=477, number=1512,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgATSExternalStressJobQueued', index=480, number=1512,
+      name='k_EMsgATSExternalStressJobRunning', index=478, number=1513,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgATSExternalStressJobRunning', index=481, number=1513,
+      name='k_EMsgATSExternalStressJobStopped', index=479, number=1514,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgATSExternalStressJobStopped', index=482, number=1514,
+      name='k_EMsgATSExternalStressJobStopAll', index=480, number=1515,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgATSExternalStressJobStopAll', index=483, number=1515,
+      name='k_EMsgATSExternalStressActionResult', index=481, number=1516,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgATSExternalStressActionResult', index=484, number=1516,
+      name='k_EMsgATSStarted', index=482, number=1517,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgATSStarted', index=485, number=1517,
+      name='k_EMsgATSCSPerfTestTask', index=483, number=1518,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgATSCSPerfTestTask', index=486, number=1518,
+      name='k_EMsgATSCSPerfTestResponse', index=484, number=1519,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgATSCSPerfTestResponse', index=487, number=1519,
+      name='k_EMsgBaseDP', index=485, number=1600,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBaseDP', index=488, number=1600,
+      name='k_EMsgDPSetPublishingState', index=486, number=1601,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgDPSetPublishingState', index=489, number=1601,
+      name='k_EMsgDPUniquePlayersStat', index=487, number=1603,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgDPUniquePlayersStat', index=490, number=1603,
+      name='k_EMsgDPStreamingUniquePlayersStat', index=488, number=1604,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgDPStreamingUniquePlayersStat', index=491, number=1604,
+      name='k_EMsgDPBlockingStats', index=489, number=1607,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgDPBlockingStats', index=492, number=1607,
+      name='k_EMsgDPNatTraversalStats', index=490, number=1608,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgDPNatTraversalStats', index=493, number=1608,
+      name='k_EMsgDPCloudStats', index=491, number=1612,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgDPCloudStats', index=494, number=1612,
+      name='k_EMsgDPGetPlayerCount', index=492, number=1615,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgDPGetPlayerCount', index=495, number=1615,
+      name='k_EMsgDPGetPlayerCountResponse', index=493, number=1616,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgDPGetPlayerCountResponse', index=496, number=1616,
+      name='k_EMsgDPGameServersPlayersStats', index=494, number=1617,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgDPGameServersPlayersStats', index=497, number=1617,
+      name='k_EMsgClientDPCheckSpecialSurvey', index=495, number=1620,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientDPCheckSpecialSurvey', index=498, number=1620,
+      name='k_EMsgClientDPCheckSpecialSurveyResponse', index=496, number=1621,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientDPCheckSpecialSurveyResponse', index=499, number=1621,
+      name='k_EMsgClientDPSendSpecialSurveyResponse', index=497, number=1622,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientDPSendSpecialSurveyResponse', index=500, number=1622,
+      name='k_EMsgClientDPSendSpecialSurveyResponseReply', index=498, number=1623,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientDPSendSpecialSurveyResponseReply', index=501, number=1623,
+      name='k_EMsgDPStoreSaleStatistics', index=499, number=1624,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgDPStoreSaleStatistics', index=502, number=1624,
+      name='k_EMsgClientDPUpdateAppJobReport', index=500, number=1625,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientDPUpdateAppJobReport', index=503, number=1625,
+      name='k_EMsgClientDPUnsignedInstallScript', index=501, number=1627,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientDPUnsignedInstallScript', index=504, number=1627,
+      name='k_EMsgDPPartnerMicroTxns', index=502, number=1628,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgDPPartnerMicroTxns', index=505, number=1628,
+      name='k_EMsgDPPartnerMicroTxnsResponse', index=503, number=1629,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgDPPartnerMicroTxnsResponse', index=506, number=1629,
+      name='k_EMsgClientDPContentStatsReport', index=504, number=1630,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientDPContentStatsReport', index=507, number=1630,
+      name='k_EMsgDPVRUniquePlayersStat', index=505, number=1631,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgDPVRUniquePlayersStat', index=508, number=1631,
+      name='k_EMsgBaseCM', index=506, number=1700,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBaseCM', index=509, number=1700,
+      name='k_EMsgCMSetAllowState', index=507, number=1701,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgCMSetAllowState', index=510, number=1701,
+      name='k_EMsgCMSpewAllowState', index=508, number=1702,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgCMSpewAllowState', index=511, number=1702,
+      name='k_EMsgCMSessionRejected', index=509, number=1703,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgCMSessionRejected', index=512, number=1703,
+      name='k_EMsgCMSetSecrets', index=510, number=1704,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgCMSetSecrets', index=513, number=1704,
+      name='k_EMsgCMGetSecrets', index=511, number=1705,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgCMGetSecrets', index=514, number=1705,
+      name='k_EMsgBaseGC', index=512, number=2200,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBaseGC', index=515, number=2200,
+      name='k_EMsgGCCmdRevive', index=513, number=2203,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgGCCmdRevive', index=516, number=2203,
+      name='k_EMsgGCCmdDown', index=514, number=2206,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgGCCmdDown', index=517, number=2206,
+      name='k_EMsgGCCmdDeploy', index=515, number=2207,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgGCCmdDeploy', index=518, number=2207,
+      name='k_EMsgGCCmdDeployResponse', index=516, number=2208,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgGCCmdDeployResponse', index=519, number=2208,
+      name='k_EMsgGCCmdSwitch', index=517, number=2209,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgGCCmdSwitch', index=520, number=2209,
+      name='k_EMsgAMRefreshSessions', index=518, number=2210,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMRefreshSessions', index=521, number=2210,
+      name='k_EMsgGCAchievementAwarded', index=519, number=2212,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgGCAchievementAwarded', index=522, number=2212,
+      name='k_EMsgGCSystemMessage', index=520, number=2213,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgGCSystemMessage', index=523, number=2213,
+      name='k_EMsgGCCmdStatus', index=521, number=2216,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgGCCmdStatus', index=524, number=2216,
+      name='k_EMsgGCRegisterWebInterfaces_Deprecated', index=522, number=2217,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgGCRegisterWebInterfaces_Deprecated', index=525, number=2217,
+      name='k_EMsgGCGetAccountDetails_DEPRECATED', index=523, number=2218,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgGCGetAccountDetails_DEPRECATED', index=526, number=2218,
+      name='k_EMsgGCInterAppMessage', index=524, number=2219,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgGCInterAppMessage', index=527, number=2219,
+      name='k_EMsgGCGetEmailTemplate', index=525, number=2220,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgGCGetEmailTemplate', index=528, number=2220,
+      name='k_EMsgGCGetEmailTemplateResponse', index=526, number=2221,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgGCGetEmailTemplateResponse', index=529, number=2221,
+      name='k_EMsgGCHRelay', index=527, number=2222,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgGCHRelay', index=530, number=2222,
+      name='k_EMsgGCHRelayToClient', index=528, number=2223,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgGCHRelayToClient', index=531, number=2223,
+      name='k_EMsgGCHUpdateSession', index=529, number=2224,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgGCHUpdateSession', index=532, number=2224,
+      name='k_EMsgGCHRequestUpdateSession', index=530, number=2225,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgGCHRequestUpdateSession', index=533, number=2225,
+      name='k_EMsgGCHRequestStatus', index=531, number=2226,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgGCHRequestStatus', index=534, number=2226,
+      name='k_EMsgGCHRequestStatusResponse', index=532, number=2227,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgGCHRequestStatusResponse', index=535, number=2227,
+      name='k_EMsgGCHAccountVacStatusChange', index=533, number=2228,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgGCHAccountVacStatusChange', index=536, number=2228,
+      name='k_EMsgGCHSpawnGC', index=534, number=2229,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgGCHSpawnGC', index=537, number=2229,
+      name='k_EMsgGCHSpawnGCResponse', index=535, number=2230,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgGCHSpawnGCResponse', index=538, number=2230,
+      name='k_EMsgGCHKillGC', index=536, number=2231,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgGCHKillGC', index=539, number=2231,
+      name='k_EMsgGCHKillGCResponse', index=537, number=2232,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgGCHKillGCResponse', index=540, number=2232,
+      name='k_EMsgGCHAccountTradeBanStatusChange', index=538, number=2233,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgGCHAccountTradeBanStatusChange', index=541, number=2233,
+      name='k_EMsgGCHAccountLockStatusChange', index=539, number=2234,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgGCHAccountLockStatusChange', index=542, number=2234,
+      name='k_EMsgGCHVacVerificationChange', index=540, number=2235,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgGCHVacVerificationChange', index=543, number=2235,
+      name='k_EMsgGCHAccountPhoneNumberChange', index=541, number=2236,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgGCHAccountPhoneNumberChange', index=544, number=2236,
+      name='k_EMsgGCHAccountTwoFactorChange', index=542, number=2237,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgGCHAccountTwoFactorChange', index=545, number=2237,
+      name='k_EMsgGCHInviteUserToLobby', index=543, number=2238,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgGCHInviteUserToLobby', index=546, number=2238,
+      name='k_EMsgGCHUpdateMultipleSessions', index=544, number=2239,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgGCHUpdateMultipleSessions', index=547, number=2239,
+      name='k_EMsgGCHMarkAppSessionsAuthoritative', index=545, number=2240,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgGCHMarkAppSessionsAuthoritative', index=548, number=2240,
+      name='k_EMsgGCHRecurringSubscriptionStatusChange', index=546, number=2241,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgGCHRecurringSubscriptionStatusChange', index=549, number=2241,
+      name='k_EMsgGCHAppCheersReceived', index=547, number=2242,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgGCHAppCheersReceived', index=550, number=2242,
+      name='k_EMsgGCHAppCheersGetAllowedTypes', index=548, number=2243,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgGCHAppCheersGetAllowedTypes', index=551, number=2243,
+      name='k_EMsgGCHAppCheersGetAllowedTypesResponse', index=549, number=2244,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgGCHAppCheersGetAllowedTypesResponse', index=552, number=2244,
+      name='k_EMsgBaseP2P', index=550, number=2500,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBaseP2P', index=553, number=2500,
+      name='k_EMsgP2PIntroducerMessage', index=551, number=2502,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgP2PIntroducerMessage', index=554, number=2502,
+      name='k_EMsgBaseSM', index=552, number=2900,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBaseSM', index=555, number=2900,
+      name='k_EMsgSMExpensiveReport', index=553, number=2902,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgSMExpensiveReport', index=556, number=2902,
+      name='k_EMsgSMHourlyReport', index=554, number=2903,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgSMHourlyReport', index=557, number=2903,
+      name='k_EMsgSMPartitionRenames', index=555, number=2905,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgSMPartitionRenames', index=558, number=2905,
+      name='k_EMsgSMMonitorSpace', index=556, number=2906,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgSMMonitorSpace', index=559, number=2906,
+      name='k_EMsgSMTestNextBuildSchemaConversion', index=557, number=2907,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgSMTestNextBuildSchemaConversion', index=560, number=2907,
+      name='k_EMsgSMTestNextBuildSchemaConversionResponse', index=558, number=2908,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgSMTestNextBuildSchemaConversionResponse', index=561, number=2908,
+      name='k_EMsgBaseTest', index=559, number=3000,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBaseTest', index=562, number=3000,
+      name='k_EMsgFailServer', index=560, number=3000,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgFailServer', index=563, number=3000,
+      name='k_EMsgJobHeartbeatTest', index=561, number=3001,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgJobHeartbeatTest', index=564, number=3001,
+      name='k_EMsgJobHeartbeatTestResponse', index=562, number=3002,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgJobHeartbeatTestResponse', index=565, number=3002,
+      name='k_EMsgBaseFTSRange', index=563, number=3100,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBaseFTSRange', index=566, number=3100,
+      name='k_EMsgBaseCCSRange', index=564, number=3150,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBaseCCSRange', index=567, number=3150,
+      name='k_EMsgCCSDeleteAllCommentsByAuthor', index=565, number=3161,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgCCSDeleteAllCommentsByAuthor', index=568, number=3161,
+      name='k_EMsgCCSDeleteAllCommentsByAuthorResponse', index=566, number=3162,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgCCSDeleteAllCommentsByAuthorResponse', index=569, number=3162,
+      name='k_EMsgBaseLBSRange', index=567, number=3200,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBaseLBSRange', index=570, number=3200,
+      name='k_EMsgLBSSetScore', index=568, number=3201,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgLBSSetScore', index=571, number=3201,
+      name='k_EMsgLBSSetScoreResponse', index=569, number=3202,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgLBSSetScoreResponse', index=572, number=3202,
+      name='k_EMsgLBSFindOrCreateLB', index=570, number=3203,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgLBSFindOrCreateLB', index=573, number=3203,
+      name='k_EMsgLBSFindOrCreateLBResponse', index=571, number=3204,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgLBSFindOrCreateLBResponse', index=574, number=3204,
+      name='k_EMsgLBSGetLBEntries', index=572, number=3205,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgLBSGetLBEntries', index=575, number=3205,
+      name='k_EMsgLBSGetLBEntriesResponse', index=573, number=3206,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgLBSGetLBEntriesResponse', index=576, number=3206,
+      name='k_EMsgLBSGetLBList', index=574, number=3207,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgLBSGetLBList', index=577, number=3207,
+      name='k_EMsgLBSGetLBListResponse', index=575, number=3208,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgLBSGetLBListResponse', index=578, number=3208,
+      name='k_EMsgLBSSetLBDetails', index=576, number=3209,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgLBSSetLBDetails', index=579, number=3209,
+      name='k_EMsgLBSDeleteLB', index=577, number=3210,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgLBSDeleteLB', index=580, number=3210,
+      name='k_EMsgLBSDeleteLBEntry', index=578, number=3211,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgLBSDeleteLBEntry', index=581, number=3211,
+      name='k_EMsgLBSResetLB', index=579, number=3212,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgLBSResetLB', index=582, number=3212,
+      name='k_EMsgLBSResetLBResponse', index=580, number=3213,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgLBSResetLBResponse', index=583, number=3213,
+      name='k_EMsgLBSDeleteLBResponse', index=581, number=3214,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgLBSDeleteLBResponse', index=584, number=3214,
+      name='k_EMsgBaseOGS', index=582, number=3400,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBaseOGS', index=585, number=3400,
+      name='k_EMsgOGSBeginSession', index=583, number=3401,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgOGSBeginSession', index=586, number=3401,
+      name='k_EMsgOGSBeginSessionResponse', index=584, number=3402,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgOGSBeginSessionResponse', index=587, number=3402,
+      name='k_EMsgOGSEndSession', index=585, number=3403,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgOGSEndSession', index=588, number=3403,
+      name='k_EMsgOGSEndSessionResponse', index=586, number=3404,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgOGSEndSessionResponse', index=589, number=3404,
+      name='k_EMsgOGSWriteAppSessionRow', index=587, number=3406,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgOGSWriteAppSessionRow', index=590, number=3406,
+      name='k_EMsgBaseBRP', index=588, number=3600,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBaseBRP', index=591, number=3600,
+      name='k_EMsgBRPPostTransactionTax', index=589, number=3629,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBRPPostTransactionTax', index=592, number=3629,
+      name='k_EMsgBRPPostTransactionTaxResponse', index=590, number=3630,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBRPPostTransactionTaxResponse', index=593, number=3630,
+      name='k_EMsgBaseAMRange2', index=591, number=4000,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBaseAMRange2', index=594, number=4000,
+      name='k_EMsgAMCreateChat', index=592, number=4001,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMCreateChat', index=595, number=4001,
+      name='k_EMsgAMCreateChatResponse', index=593, number=4002,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMCreateChatResponse', index=596, number=4002,
+      name='k_EMsgAMSetProfileURL', index=594, number=4005,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMSetProfileURL', index=597, number=4005,
+      name='k_EMsgAMGetAccountEmailAddress', index=595, number=4006,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGetAccountEmailAddress', index=598, number=4006,
+      name='k_EMsgAMGetAccountEmailAddressResponse', index=596, number=4007,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGetAccountEmailAddressResponse', index=599, number=4007,
+      name='k_EMsgAMRequestClanData', index=597, number=4008,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMRequestClanData', index=600, number=4008,
+      name='k_EMsgAMRouteToClients', index=598, number=4009,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMRouteToClients', index=601, number=4009,
+      name='k_EMsgAMLeaveClan', index=599, number=4010,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMLeaveClan', index=602, number=4010,
+      name='k_EMsgAMClanPermissions', index=600, number=4011,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMClanPermissions', index=603, number=4011,
+      name='k_EMsgAMClanPermissionsResponse', index=601, number=4012,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMClanPermissionsResponse', index=604, number=4012,
+      name='k_EMsgAMCreateClanEventDummyForRateLimiting', index=602, number=4013,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMCreateClanEventDummyForRateLimiting', index=605, number=4013,
+      name='k_EMsgAMUpdateClanEventDummyForRateLimiting', index=603, number=4015,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMUpdateClanEventDummyForRateLimiting', index=606, number=4015,
+      name='k_EMsgAMSetClanPermissionSettings', index=604, number=4021,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMSetClanPermissionSettings', index=607, number=4021,
+      name='k_EMsgAMSetClanPermissionSettingsResponse', index=605, number=4022,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMSetClanPermissionSettingsResponse', index=608, number=4022,
+      name='k_EMsgAMGetClanPermissionSettings', index=606, number=4023,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGetClanPermissionSettings', index=609, number=4023,
+      name='k_EMsgAMGetClanPermissionSettingsResponse', index=607, number=4024,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGetClanPermissionSettingsResponse', index=610, number=4024,
+      name='k_EMsgAMPublishChatRoomInfo', index=608, number=4025,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMPublishChatRoomInfo', index=611, number=4025,
+      name='k_EMsgClientChatRoomInfo', index=609, number=4026,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientChatRoomInfo', index=612, number=4026,
+      name='k_EMsgAMGetClanHistory', index=610, number=4039,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGetClanHistory', index=613, number=4039,
+      name='k_EMsgAMGetClanHistoryResponse', index=611, number=4040,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGetClanHistoryResponse', index=614, number=4040,
+      name='k_EMsgAMGetClanPermissionBits', index=612, number=4041,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGetClanPermissionBits', index=615, number=4041,
+      name='k_EMsgAMGetClanPermissionBitsResponse', index=613, number=4042,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGetClanPermissionBitsResponse', index=616, number=4042,
+      name='k_EMsgAMSetClanPermissionBits', index=614, number=4043,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMSetClanPermissionBits', index=617, number=4043,
+      name='k_EMsgAMSetClanPermissionBitsResponse', index=615, number=4044,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMSetClanPermissionBitsResponse', index=618, number=4044,
+      name='k_EMsgAMSessionInfoRequest', index=616, number=4045,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMSessionInfoRequest', index=619, number=4045,
+      name='k_EMsgAMSessionInfoResponse', index=617, number=4046,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMSessionInfoResponse', index=620, number=4046,
+      name='k_EMsgAMValidateWGToken', index=618, number=4047,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMValidateWGToken', index=621, number=4047,
+      name='k_EMsgAMGetClanRank', index=619, number=4050,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGetClanRank', index=622, number=4050,
+      name='k_EMsgAMGetClanRankResponse', index=620, number=4051,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGetClanRankResponse', index=623, number=4051,
+      name='k_EMsgAMSetClanRank', index=621, number=4052,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMSetClanRank', index=624, number=4052,
+      name='k_EMsgAMSetClanRankResponse', index=622, number=4053,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMSetClanRankResponse', index=625, number=4053,
+      name='k_EMsgAMGetClanPOTW', index=623, number=4054,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGetClanPOTW', index=626, number=4054,
+      name='k_EMsgAMGetClanPOTWResponse', index=624, number=4055,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGetClanPOTWResponse', index=627, number=4055,
+      name='k_EMsgAMSetClanPOTW', index=625, number=4056,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMSetClanPOTW', index=628, number=4056,
+      name='k_EMsgAMSetClanPOTWResponse', index=626, number=4057,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMSetClanPOTWResponse', index=629, number=4057,
+      name='k_EMsgAMDumpUser', index=627, number=4059,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMDumpUser', index=630, number=4059,
+      name='k_EMsgAMKickUserFromClan', index=628, number=4060,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMKickUserFromClan', index=631, number=4060,
+      name='k_EMsgAMAddFounderToClan', index=629, number=4061,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMAddFounderToClan', index=632, number=4061,
+      name='k_EMsgAMValidateWGTokenResponse', index=630, number=4062,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMValidateWGTokenResponse', index=633, number=4062,
+      name='k_EMsgAMSetAccountDetails', index=631, number=4064,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMSetAccountDetails', index=634, number=4064,
+      name='k_EMsgAMGetChatBanList', index=632, number=4065,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGetChatBanList', index=635, number=4065,
+      name='k_EMsgAMGetChatBanListResponse', index=633, number=4066,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGetChatBanListResponse', index=636, number=4066,
+      name='k_EMsgAMUnBanFromChat', index=634, number=4067,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMUnBanFromChat', index=637, number=4067,
+      name='k_EMsgAMSetClanDetails', index=635, number=4068,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMSetClanDetails', index=638, number=4068,
+      name='k_EMsgUGSGetUserGameStats', index=636, number=4073,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGetAccountLinks', index=639, number=4069,
+      name='k_EMsgUGSGetUserGameStatsResponse', index=637, number=4074,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGetAccountLinksResponse', index=640, number=4070,
+      name='k_EMsgAMCheckClanMembership', index=638, number=4075,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMSetAccountLinks', index=641, number=4071,
+      name='k_EMsgAMGetClanMembers', index=639, number=4076,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMSetAccountLinksResponse', index=642, number=4072,
+      name='k_EMsgAMGetClanMembersResponse', index=640, number=4077,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgUGSGetUserGameStats', index=643, number=4073,
+      name='k_EMsgAMNotifyChatOfClanChange', index=641, number=4079,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgUGSGetUserGameStatsResponse', index=644, number=4074,
+      name='k_EMsgAMResubmitPurchase', index=642, number=4080,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMCheckClanMembership', index=645, number=4075,
+      name='k_EMsgAMAddFriend', index=643, number=4081,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGetClanMembers', index=646, number=4076,
+      name='k_EMsgAMAddFriendResponse', index=644, number=4082,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGetClanMembersResponse', index=647, number=4077,
+      name='k_EMsgAMRemoveFriend', index=645, number=4083,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMNotifyChatOfClanChange', index=648, number=4079,
+      name='k_EMsgAMDumpClan', index=646, number=4084,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMResubmitPurchase', index=649, number=4080,
+      name='k_EMsgAMChangeClanOwner', index=647, number=4085,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMAddFriend', index=650, number=4081,
+      name='k_EMsgAMCancelEasyCollect', index=648, number=4086,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMAddFriendResponse', index=651, number=4082,
+      name='k_EMsgAMCancelEasyCollectResponse', index=649, number=4087,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMRemoveFriend', index=652, number=4083,
+      name='k_EMsgAMClansInCommon', index=650, number=4090,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMDumpClan', index=653, number=4084,
+      name='k_EMsgAMClansInCommonResponse', index=651, number=4091,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMChangeClanOwner', index=654, number=4085,
+      name='k_EMsgAMIsValidAccountID', index=652, number=4092,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMCancelEasyCollect', index=655, number=4086,
+      name='k_EMsgAMWipeFriendsList', index=653, number=4095,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMCancelEasyCollectResponse', index=656, number=4087,
+      name='k_EMsgAMSetIgnored', index=654, number=4096,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMClansInCommon', index=657, number=4090,
+      name='k_EMsgAMClansInCommonCountResponse', index=655, number=4097,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMClansInCommonResponse', index=658, number=4091,
+      name='k_EMsgAMFriendsList', index=656, number=4098,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMIsValidAccountID', index=659, number=4092,
+      name='k_EMsgAMFriendsListResponse', index=657, number=4099,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMWipeFriendsList', index=660, number=4095,
+      name='k_EMsgAMFriendsInCommon', index=658, number=4100,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMSetIgnored', index=661, number=4096,
+      name='k_EMsgAMFriendsInCommonResponse', index=659, number=4101,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMClansInCommonCountResponse', index=662, number=4097,
+      name='k_EMsgAMFriendsInCommonCountResponse', index=660, number=4102,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMFriendsList', index=663, number=4098,
+      name='k_EMsgAMClansInCommonCount', index=661, number=4103,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMFriendsListResponse', index=664, number=4099,
+      name='k_EMsgAMChallengeVerdict', index=662, number=4104,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMFriendsInCommon', index=665, number=4100,
+      name='k_EMsgAMChallengeNotification', index=663, number=4105,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMFriendsInCommonResponse', index=666, number=4101,
+      name='k_EMsgAMFindGSByIP', index=664, number=4106,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMFriendsInCommonCountResponse', index=667, number=4102,
+      name='k_EMsgAMFoundGSByIP', index=665, number=4107,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMClansInCommonCount', index=668, number=4103,
+      name='k_EMsgAMGiftRevoked', index=666, number=4108,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMChallengeVerdict', index=669, number=4104,
+      name='k_EMsgAMUserClanList', index=667, number=4110,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMChallengeNotification', index=670, number=4105,
+      name='k_EMsgAMUserClanListResponse', index=668, number=4111,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMFindGSByIP', index=671, number=4106,
+      name='k_EMsgAMGetAccountDetails2', index=669, number=4112,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMFoundGSByIP', index=672, number=4107,
+      name='k_EMsgAMGetAccountDetailsResponse2', index=670, number=4113,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGiftRevoked', index=673, number=4108,
+      name='k_EMsgAMSetCommunityProfileSettings', index=671, number=4114,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMUserClanList', index=674, number=4110,
+      name='k_EMsgAMSetCommunityProfileSettingsResponse', index=672, number=4115,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMUserClanListResponse', index=675, number=4111,
+      name='k_EMsgAMGetCommunityPrivacyState', index=673, number=4116,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGetAccountDetails2', index=676, number=4112,
+      name='k_EMsgAMGetCommunityPrivacyStateResponse', index=674, number=4117,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGetAccountDetailsResponse2', index=677, number=4113,
+      name='k_EMsgAMCheckClanInviteRateLimiting', index=675, number=4118,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMSetCommunityProfileSettings', index=678, number=4114,
+      name='k_EMsgUGSGetUserAchievementStatus', index=676, number=4119,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMSetCommunityProfileSettingsResponse', index=679, number=4115,
+      name='k_EMsgAMGetIgnored', index=677, number=4120,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGetCommunityPrivacyState', index=680, number=4116,
+      name='k_EMsgAMGetIgnoredResponse', index=678, number=4121,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGetCommunityPrivacyStateResponse', index=681, number=4117,
+      name='k_EMsgAMSetIgnoredResponse', index=679, number=4122,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMCheckClanInviteRateLimiting', index=682, number=4118,
+      name='k_EMsgAMSetFriendRelationshipNone', index=680, number=4123,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgUGSGetUserAchievementStatus', index=683, number=4119,
+      name='k_EMsgAMGetFriendRelationship', index=681, number=4124,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGetIgnored', index=684, number=4120,
+      name='k_EMsgAMGetFriendRelationshipResponse', index=682, number=4125,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGetIgnoredResponse', index=685, number=4121,
+      name='k_EMsgAMServiceModulesCache', index=683, number=4126,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMSetIgnoredResponse', index=686, number=4122,
+      name='k_EMsgAMServiceModulesCall', index=684, number=4127,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMSetFriendRelationshipNone', index=687, number=4123,
+      name='k_EMsgAMServiceModulesCallResponse', index=685, number=4128,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGetFriendRelationship', index=688, number=4124,
+      name='k_EMsgCommunityAddFriendNews', index=686, number=4140,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGetFriendRelationshipResponse', index=689, number=4125,
+      name='k_EMsgAMFindClanUser', index=687, number=4143,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMServiceModulesCache', index=690, number=4126,
+      name='k_EMsgAMFindClanUserResponse', index=688, number=4144,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMServiceModulesCall', index=691, number=4127,
+      name='k_EMsgAMBanFromChat', index=689, number=4145,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMServiceModulesCallResponse', index=692, number=4128,
+      name='k_EMsgAMGetUserNewsSubscriptions', index=690, number=4147,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgCommunityAddFriendNews', index=693, number=4140,
+      name='k_EMsgAMGetUserNewsSubscriptionsResponse', index=691, number=4148,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMFindClanUser', index=694, number=4143,
+      name='k_EMsgAMSetUserNewsSubscriptions', index=692, number=4149,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMFindClanUserResponse', index=695, number=4144,
+      name='k_EMsgAMSendQueuedEmails', index=693, number=4152,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMBanFromChat', index=696, number=4145,
+      name='k_EMsgAMSetLicenseFlags', index=694, number=4153,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGetUserNewsSubscriptions', index=697, number=4147,
+      name='k_EMsgCommunityDeleteUserNews', index=695, number=4155,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGetUserNewsSubscriptionsResponse', index=698, number=4148,
+      name='k_EMsgAMAllowUserFilesRequest', index=696, number=4156,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMSetUserNewsSubscriptions', index=699, number=4149,
+      name='k_EMsgAMAllowUserFilesResponse', index=697, number=4157,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMSendQueuedEmails', index=700, number=4152,
+      name='k_EMsgAMGetAccountStatus', index=698, number=4158,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMSetLicenseFlags', index=701, number=4153,
+      name='k_EMsgAMGetAccountStatusResponse', index=699, number=4159,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgCommunityDeleteUserNews', index=702, number=4155,
+      name='k_EMsgAMEditBanReason', index=700, number=4160,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMAllowUserFilesRequest', index=703, number=4156,
+      name='k_EMsgAMCheckClanMembershipResponse', index=701, number=4161,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMAllowUserFilesResponse', index=704, number=4157,
+      name='k_EMsgAMProbeClanMembershipList', index=702, number=4162,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGetAccountStatus', index=705, number=4158,
+      name='k_EMsgAMProbeClanMembershipListResponse', index=703, number=4163,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGetAccountStatusResponse', index=706, number=4159,
+      name='k_EMsgUGSGetUserAchievementStatusResponse', index=704, number=4164,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMEditBanReason', index=707, number=4160,
+      name='k_EMsgAMGetFriendsLobbies', index=705, number=4165,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMCheckClanMembershipResponse', index=708, number=4161,
+      name='k_EMsgAMGetFriendsLobbiesResponse', index=706, number=4166,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMProbeClanMembershipList', index=709, number=4162,
+      name='k_EMsgAMGetUserFriendNewsResponse', index=707, number=4172,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMProbeClanMembershipListResponse', index=710, number=4163,
+      name='k_EMsgCommunityGetUserFriendNews', index=708, number=4173,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgUGSGetUserAchievementStatusResponse', index=711, number=4164,
+      name='k_EMsgAMGetUserClansNewsResponse', index=709, number=4174,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGetFriendsLobbies', index=712, number=4165,
+      name='k_EMsgAMGetUserClansNews', index=710, number=4175,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGetFriendsLobbiesResponse', index=713, number=4166,
+      name='k_EMsgAMGetPreviousCBAccount', index=711, number=4184,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGetUserFriendNewsResponse', index=714, number=4172,
+      name='k_EMsgAMGetPreviousCBAccountResponse', index=712, number=4185,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgCommunityGetUserFriendNews', index=715, number=4173,
+      name='k_EMsgAMGetUserLicenseHistory', index=713, number=4190,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGetUserClansNewsResponse', index=716, number=4174,
+      name='k_EMsgAMGetUserLicenseHistoryResponse', index=714, number=4191,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGetUserClansNews', index=717, number=4175,
+      name='k_EMsgAMSupportChangePassword', index=715, number=4194,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGetPreviousCBAccount', index=718, number=4184,
+      name='k_EMsgAMSupportChangeEmail', index=716, number=4195,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGetPreviousCBAccountResponse', index=719, number=4185,
+      name='k_EMsgAMResetUserVerificationGSByIP', index=717, number=4197,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGetUserLicenseHistory', index=720, number=4190,
+      name='k_EMsgAMUpdateGSPlayStats', index=718, number=4198,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGetUserLicenseHistoryResponse', index=721, number=4191,
+      name='k_EMsgAMSupportEnableOrDisable', index=719, number=4199,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMSupportChangePassword', index=722, number=4194,
+      name='k_EMsgAMGetPurchaseStatus', index=720, number=4206,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMSupportChangeEmail', index=723, number=4195,
+      name='k_EMsgAMSupportIsAccountEnabled', index=721, number=4209,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMResetUserVerificationGSByIP', index=724, number=4197,
+      name='k_EMsgAMSupportIsAccountEnabledResponse', index=722, number=4210,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMUpdateGSPlayStats', index=725, number=4198,
+      name='k_EMsgUGSGetUserStats', index=723, number=4211,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMSupportEnableOrDisable', index=726, number=4199,
+      name='k_EMsgAMGSSearch', index=724, number=4213,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGetPurchaseStatus', index=727, number=4206,
+      name='k_EMsgMarketingMessageUpdate', index=725, number=4216,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMSupportIsAccountEnabled', index=728, number=4209,
+      name='k_EMsgChatServerRouteFriendMsg', index=726, number=4219,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMSupportIsAccountEnabledResponse', index=729, number=4210,
+      name='k_EMsgAMTicketAuthRequestOrResponse', index=727, number=4220,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgUGSGetUserStats', index=730, number=4211,
+      name='k_EMsgAMAddFreeLicense', index=728, number=4224,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMSupportKickSession', index=731, number=4212,
+      name='k_EMsgAMValidateEmailLink', index=729, number=4231,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGSSearch', index=732, number=4213,
+      name='k_EMsgAMValidateEmailLinkResponse', index=730, number=4232,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgMarketingMessageUpdate', index=733, number=4216,
+      name='k_EMsgUGSStoreUserStats', index=731, number=4236,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgChatServerRouteFriendMsg', index=734, number=4219,
+      name='k_EMsgAMDeleteStoredCard', index=732, number=4241,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMTicketAuthRequestOrResponse', index=735, number=4220,
+      name='k_EMsgAMRevokeLegacyGameKeys', index=733, number=4242,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMAddFreeLicense', index=736, number=4224,
+      name='k_EMsgAMGetWalletDetails', index=734, number=4244,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMValidateEmailLink', index=737, number=4231,
+      name='k_EMsgAMGetWalletDetailsResponse', index=735, number=4245,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMValidateEmailLinkResponse', index=738, number=4232,
+      name='k_EMsgAMDeleteStoredPaymentInfo', index=736, number=4246,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgUGSStoreUserStats', index=739, number=4236,
+      name='k_EMsgAMGetStoredPaymentSummary', index=737, number=4247,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMDeleteStoredCard', index=740, number=4241,
+      name='k_EMsgAMGetStoredPaymentSummaryResponse', index=738, number=4248,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMRevokeLegacyGameKeys', index=741, number=4242,
+      name='k_EMsgAMGetWalletConversionRate', index=739, number=4249,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGetWalletDetails', index=742, number=4244,
+      name='k_EMsgAMGetWalletConversionRateResponse', index=740, number=4250,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGetWalletDetailsResponse', index=743, number=4245,
+      name='k_EMsgAMConvertWallet', index=741, number=4251,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMDeleteStoredPaymentInfo', index=744, number=4246,
+      name='k_EMsgAMConvertWalletResponse', index=742, number=4252,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGetStoredPaymentSummary', index=745, number=4247,
+      name='k_EMsgAMSetPreApproval', index=743, number=4255,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGetStoredPaymentSummaryResponse', index=746, number=4248,
+      name='k_EMsgAMSetPreApprovalResponse', index=744, number=4256,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGetWalletConversionRate', index=747, number=4249,
+      name='k_EMsgAMCreateRefund', index=745, number=4258,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGetWalletConversionRateResponse', index=748, number=4250,
+      name='k_EMsgAMCreateChargeback', index=746, number=4260,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMConvertWallet', index=749, number=4251,
+      name='k_EMsgAMCreateDispute', index=747, number=4262,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMConvertWalletResponse', index=750, number=4252,
+      name='k_EMsgAMClearDispute', index=748, number=4264,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMSetPreApproval', index=751, number=4255,
+      name='k_EMsgAMCreateFinancialAdjustment', index=749, number=4265,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMSetPreApprovalResponse', index=752, number=4256,
+      name='k_EMsgAMPlayerNicknameList', index=750, number=4266,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMCreateRefund', index=753, number=4258,
+      name='k_EMsgAMPlayerNicknameListResponse', index=751, number=4267,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMCreateChargeback', index=754, number=4260,
+      name='k_EMsgAMSetDRMTestConfig', index=752, number=4268,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMCreateDispute', index=755, number=4262,
+      name='k_EMsgAMGetUserCurrentGameInfo', index=753, number=4269,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMClearDispute', index=756, number=4264,
+      name='k_EMsgAMGetUserCurrentGameInfoResponse', index=754, number=4270,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMCreateFinancialAdjustment', index=757, number=4265,
+      name='k_EMsgAMGetGSPlayerList', index=755, number=4271,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMPlayerNicknameList', index=758, number=4266,
+      name='k_EMsgAMGetGSPlayerListResponse', index=756, number=4272,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMPlayerNicknameListResponse', index=759, number=4267,
+      name='k_EMsgAMGetSteamIDForMicroTxn', index=757, number=4278,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMSetDRMTestConfig', index=760, number=4268,
+      name='k_EMsgAMGetSteamIDForMicroTxnResponse', index=758, number=4279,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGetUserCurrentGameInfo', index=761, number=4269,
+      name='k_EMsgAMSetPartnerMember', index=759, number=4280,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGetUserCurrentGameInfoResponse', index=762, number=4270,
+      name='k_EMsgAMRemovePublisherUser', index=760, number=4281,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGetGSPlayerList', index=763, number=4271,
+      name='k_EMsgAMGetUserLicenseList', index=761, number=4282,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGetGSPlayerListResponse', index=764, number=4272,
+      name='k_EMsgAMGetUserLicenseListResponse', index=762, number=4283,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGetSteamIDForMicroTxn', index=765, number=4278,
+      name='k_EMsgAMReloadGameGroupPolicy', index=763, number=4284,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGetSteamIDForMicroTxnResponse', index=766, number=4279,
+      name='k_EMsgAMAddFreeLicenseResponse', index=764, number=4285,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMSetPartnerMember', index=767, number=4280,
+      name='k_EMsgAMVACStatusUpdate', index=765, number=4286,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMRemovePublisherUser', index=768, number=4281,
+      name='k_EMsgAMGetAccountDetails', index=766, number=4287,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGetUserLicenseList', index=769, number=4282,
+      name='k_EMsgAMGetAccountDetailsResponse', index=767, number=4288,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGetUserLicenseListResponse', index=770, number=4283,
+      name='k_EMsgAMGetPlayerLinkDetails', index=768, number=4289,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMReloadGameGroupPolicy', index=771, number=4284,
+      name='k_EMsgAMGetPlayerLinkDetailsResponse', index=769, number=4290,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMAddFreeLicenseResponse', index=772, number=4285,
+      name='k_EMsgAMGetAccountFlagsForWGSpoofing', index=770, number=4294,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMVACStatusUpdate', index=773, number=4286,
+      name='k_EMsgAMGetAccountFlagsForWGSpoofingResponse', index=771, number=4295,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGetAccountDetails', index=774, number=4287,
+      name='k_EMsgAMGetClanOfficers', index=772, number=4298,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGetAccountDetailsResponse', index=775, number=4288,
+      name='k_EMsgAMGetClanOfficersResponse', index=773, number=4299,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGetPlayerLinkDetails', index=776, number=4289,
+      name='k_EMsgAMNameChange', index=774, number=4300,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGetPlayerLinkDetailsResponse', index=777, number=4290,
+      name='k_EMsgAMGetNameHistory', index=775, number=4301,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGetAccountFlagsForWGSpoofing', index=778, number=4294,
+      name='k_EMsgAMGetNameHistoryResponse', index=776, number=4302,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGetAccountFlagsForWGSpoofingResponse', index=779, number=4295,
+      name='k_EMsgAMUpdateProviderStatus', index=777, number=4305,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGetClanOfficers', index=780, number=4298,
+      name='k_EMsgAMSupportRemoveAccountSecurity', index=778, number=4307,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGetClanOfficersResponse', index=781, number=4299,
+      name='k_EMsgAMIsAccountInCaptchaGracePeriod', index=779, number=4308,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMNameChange', index=782, number=4300,
+      name='k_EMsgAMIsAccountInCaptchaGracePeriodResponse', index=780, number=4309,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGetNameHistory', index=783, number=4301,
+      name='k_EMsgAMAccountPS3Unlink', index=781, number=4310,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGetNameHistoryResponse', index=784, number=4302,
+      name='k_EMsgAMAccountPS3UnlinkResponse', index=782, number=4311,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMUpdateProviderStatus', index=785, number=4305,
+      name='k_EMsgUGSStoreUserStatsResponse', index=783, number=4312,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMSupportRemoveAccountSecurity', index=786, number=4307,
+      name='k_EMsgAMGetAccountPSNInfo', index=784, number=4313,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMIsAccountInCaptchaGracePeriod', index=787, number=4308,
+      name='k_EMsgAMGetAccountPSNInfoResponse', index=785, number=4314,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMIsAccountInCaptchaGracePeriodResponse', index=788, number=4309,
+      name='k_EMsgAMAuthenticatedPlayerList', index=786, number=4315,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMAccountPS3Unlink', index=789, number=4310,
+      name='k_EMsgAMGetUserGifts', index=787, number=4316,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMAccountPS3UnlinkResponse', index=790, number=4311,
+      name='k_EMsgAMGetUserGiftsResponse', index=788, number=4317,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgUGSStoreUserStatsResponse', index=791, number=4312,
+      name='k_EMsgAMTransferLockedGifts', index=789, number=4320,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGetAccountPSNInfo', index=792, number=4313,
+      name='k_EMsgAMTransferLockedGiftsResponse', index=790, number=4321,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGetAccountPSNInfoResponse', index=793, number=4314,
+      name='k_EMsgAMPlayerHostedOnGameServer', index=791, number=4322,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMAuthenticatedPlayerList', index=794, number=4315,
+      name='k_EMsgAMGetAccountBanInfo', index=792, number=4323,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGetUserGifts', index=795, number=4316,
+      name='k_EMsgAMGetAccountBanInfoResponse', index=793, number=4324,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGetUserGiftsResponse', index=796, number=4317,
+      name='k_EMsgAMRecordBanEnforcement', index=794, number=4325,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMTransferLockedGifts', index=797, number=4320,
+      name='k_EMsgAMRollbackGiftTransfer', index=795, number=4326,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMTransferLockedGiftsResponse', index=798, number=4321,
+      name='k_EMsgAMRollbackGiftTransferResponse', index=796, number=4327,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMPlayerHostedOnGameServer', index=799, number=4322,
+      name='k_EMsgAMHandlePendingTransaction', index=797, number=4328,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGetAccountBanInfo', index=800, number=4323,
+      name='k_EMsgAMRequestClanDetails', index=798, number=4329,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGetAccountBanInfoResponse', index=801, number=4324,
+      name='k_EMsgAMDeleteStoredPaypalAgreement', index=799, number=4330,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMRecordBanEnforcement', index=802, number=4325,
+      name='k_EMsgAMGameServerUpdate', index=800, number=4331,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMRollbackGiftTransfer', index=803, number=4326,
+      name='k_EMsgAMGameServerRemove', index=801, number=4332,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMRollbackGiftTransferResponse', index=804, number=4327,
+      name='k_EMsgAMGetPaypalAgreements', index=802, number=4333,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMHandlePendingTransaction', index=805, number=4328,
+      name='k_EMsgAMGetPaypalAgreementsResponse', index=803, number=4334,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMRequestClanDetails', index=806, number=4329,
+      name='k_EMsgAMGameServerPlayerCompatibilityCheck', index=804, number=4335,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMDeleteStoredPaypalAgreement', index=807, number=4330,
+      name='k_EMsgAMGameServerPlayerCompatibilityCheckResponse', index=805, number=4336,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGameServerUpdate', index=808, number=4331,
+      name='k_EMsgAMRenewLicense', index=806, number=4337,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGameServerRemove', index=809, number=4332,
+      name='k_EMsgAMGetAccountCommunityBanInfo', index=807, number=4338,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGetPaypalAgreements', index=810, number=4333,
+      name='k_EMsgAMGetAccountCommunityBanInfoResponse', index=808, number=4339,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGetPaypalAgreementsResponse', index=811, number=4334,
+      name='k_EMsgAMGameServerAccountChangePassword', index=809, number=4340,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGameServerPlayerCompatibilityCheck', index=812, number=4335,
+      name='k_EMsgAMGameServerAccountDeleteAccount', index=810, number=4341,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGameServerPlayerCompatibilityCheckResponse', index=813, number=4336,
+      name='k_EMsgAMRenewAgreement', index=811, number=4342,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMRenewLicense', index=814, number=4337,
+      name='k_EMsgAMXsollaPayment', index=812, number=4344,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGetAccountCommunityBanInfo', index=815, number=4338,
+      name='k_EMsgAMXsollaPaymentResponse', index=813, number=4345,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGetAccountCommunityBanInfoResponse', index=816, number=4339,
+      name='k_EMsgAMAcctAllowedToPurchase', index=814, number=4346,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGameServerAccountChangePassword', index=817, number=4340,
+      name='k_EMsgAMAcctAllowedToPurchaseResponse', index=815, number=4347,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGameServerAccountDeleteAccount', index=818, number=4341,
+      name='k_EMsgAMSwapKioskDeposit', index=816, number=4348,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMRenewAgreement', index=819, number=4342,
+      name='k_EMsgAMSwapKioskDepositResponse', index=817, number=4349,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMXsollaPayment', index=820, number=4344,
+      name='k_EMsgAMSetUserGiftUnowned', index=818, number=4350,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMXsollaPaymentResponse', index=821, number=4345,
+      name='k_EMsgAMSetUserGiftUnownedResponse', index=819, number=4351,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMAcctAllowedToPurchase', index=822, number=4346,
+      name='k_EMsgAMClaimUnownedUserGift', index=820, number=4352,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMAcctAllowedToPurchaseResponse', index=823, number=4347,
+      name='k_EMsgAMClaimUnownedUserGiftResponse', index=821, number=4353,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMSwapKioskDeposit', index=824, number=4348,
+      name='k_EMsgAMSetClanName', index=822, number=4354,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMSwapKioskDepositResponse', index=825, number=4349,
+      name='k_EMsgAMSetClanNameResponse', index=823, number=4355,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMSetUserGiftUnowned', index=826, number=4350,
+      name='k_EMsgAMGrantCoupon', index=824, number=4356,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMSetUserGiftUnownedResponse', index=827, number=4351,
+      name='k_EMsgAMGrantCouponResponse', index=825, number=4357,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMClaimUnownedUserGift', index=828, number=4352,
+      name='k_EMsgAMIsPackageRestrictedInUserCountry', index=826, number=4358,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMClaimUnownedUserGiftResponse', index=829, number=4353,
+      name='k_EMsgAMIsPackageRestrictedInUserCountryResponse', index=827, number=4359,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMSetClanName', index=830, number=4354,
+      name='k_EMsgAMHandlePendingTransactionResponse', index=828, number=4360,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMSetClanNameResponse', index=831, number=4355,
+      name='k_EMsgAMGrantGuestPasses2', index=829, number=4361,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGrantCoupon', index=832, number=4356,
+      name='k_EMsgAMGrantGuestPasses2Response', index=830, number=4362,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGrantCouponResponse', index=833, number=4357,
+      name='k_EMsgAMGetPlayerBanDetails', index=831, number=4365,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMIsPackageRestrictedInUserCountry', index=834, number=4358,
+      name='k_EMsgAMGetPlayerBanDetailsResponse', index=832, number=4366,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMIsPackageRestrictedInUserCountryResponse', index=835, number=4359,
+      name='k_EMsgAMFinalizePurchase', index=833, number=4367,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMHandlePendingTransactionResponse', index=836, number=4360,
+      name='k_EMsgAMFinalizePurchaseResponse', index=834, number=4368,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGrantGuestPasses2', index=837, number=4361,
+      name='k_EMsgAMPersonaChangeResponse', index=835, number=4372,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGrantGuestPasses2Response', index=838, number=4362,
+      name='k_EMsgAMGetClanDetailsForForumCreation', index=836, number=4373,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGetPlayerBanDetails', index=839, number=4365,
+      name='k_EMsgAMGetClanDetailsForForumCreationResponse', index=837, number=4374,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGetPlayerBanDetailsResponse', index=840, number=4366,
+      name='k_EMsgAMGetPendingNotificationCount', index=838, number=4375,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMFinalizePurchase', index=841, number=4367,
+      name='k_EMsgAMGetPendingNotificationCountResponse', index=839, number=4376,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMFinalizePurchaseResponse', index=842, number=4368,
+      name='k_EMsgAMPasswordHashUpgrade', index=840, number=4377,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMPersonaChangeResponse', index=843, number=4372,
+      name='k_EMsgAMBoaCompraPayment', index=841, number=4380,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGetClanDetailsForForumCreation', index=844, number=4373,
+      name='k_EMsgAMBoaCompraPaymentResponse', index=842, number=4381,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGetClanDetailsForForumCreationResponse', index=845, number=4374,
+      name='k_EMsgAMCompleteExternalPurchase', index=843, number=4383,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGetPendingNotificationCount', index=846, number=4375,
+      name='k_EMsgAMCompleteExternalPurchaseResponse', index=844, number=4384,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGetPendingNotificationCountResponse', index=847, number=4376,
+      name='k_EMsgAMResolveNegativeWalletCredits', index=845, number=4385,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMPasswordHashUpgrade', index=848, number=4377,
+      name='k_EMsgAMResolveNegativeWalletCreditsResponse', index=846, number=4386,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMBoaCompraPayment', index=849, number=4380,
+      name='k_EMsgAMPlayerGetClanBasicDetails', index=847, number=4389,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMBoaCompraPaymentResponse', index=850, number=4381,
+      name='k_EMsgAMPlayerGetClanBasicDetailsResponse', index=848, number=4390,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMCompleteExternalPurchase', index=851, number=4383,
+      name='k_EMsgAMMOLPayment', index=849, number=4391,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMCompleteExternalPurchaseResponse', index=852, number=4384,
+      name='k_EMsgAMMOLPaymentResponse', index=850, number=4392,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMResolveNegativeWalletCredits', index=853, number=4385,
+      name='k_EMsgGetUserIPCountry', index=851, number=4393,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMResolveNegativeWalletCreditsResponse', index=854, number=4386,
+      name='k_EMsgGetUserIPCountryResponse', index=852, number=4394,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMPlayerGetClanBasicDetails', index=855, number=4389,
+      name='k_EMsgNotificationOfSuspiciousActivity', index=853, number=4395,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMPlayerGetClanBasicDetailsResponse', index=856, number=4390,
+      name='k_EMsgAMDegicaPayment', index=854, number=4396,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMMOLPayment', index=857, number=4391,
+      name='k_EMsgAMDegicaPaymentResponse', index=855, number=4397,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMMOLPaymentResponse', index=858, number=4392,
+      name='k_EMsgAMEClubPayment', index=856, number=4398,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgGetUserIPCountry', index=859, number=4393,
+      name='k_EMsgAMEClubPaymentResponse', index=857, number=4399,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgGetUserIPCountryResponse', index=860, number=4394,
+      name='k_EMsgAMPayPalPaymentsHubPayment', index=858, number=4400,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgNotificationOfSuspiciousActivity', index=861, number=4395,
+      name='k_EMsgAMPayPalPaymentsHubPaymentResponse', index=859, number=4401,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMDegicaPayment', index=862, number=4396,
+      name='k_EMsgAMTwoFactorRecoverAuthenticatorRequest', index=860, number=4402,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMDegicaPaymentResponse', index=863, number=4397,
+      name='k_EMsgAMTwoFactorRecoverAuthenticatorResponse', index=861, number=4403,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMEClubPayment', index=864, number=4398,
+      name='k_EMsgAMSmart2PayPayment', index=862, number=4404,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMEClubPaymentResponse', index=865, number=4399,
+      name='k_EMsgAMSmart2PayPaymentResponse', index=863, number=4405,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMPayPalPaymentsHubPayment', index=866, number=4400,
+      name='k_EMsgAMValidatePasswordResetCodeAndSendSmsRequest', index=864, number=4406,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMPayPalPaymentsHubPaymentResponse', index=867, number=4401,
+      name='k_EMsgAMValidatePasswordResetCodeAndSendSmsResponse', index=865, number=4407,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMTwoFactorRecoverAuthenticatorRequest', index=868, number=4402,
+      name='k_EMsgAMGetAccountResetDetailsRequest', index=866, number=4408,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMTwoFactorRecoverAuthenticatorResponse', index=869, number=4403,
+      name='k_EMsgAMGetAccountResetDetailsResponse', index=867, number=4409,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMSmart2PayPayment', index=870, number=4404,
+      name='k_EMsgAMBitPayPayment', index=868, number=4410,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMSmart2PayPaymentResponse', index=871, number=4405,
+      name='k_EMsgAMBitPayPaymentResponse', index=869, number=4411,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMValidatePasswordResetCodeAndSendSmsRequest', index=872, number=4406,
+      name='k_EMsgAMSendAccountInfoUpdate', index=870, number=4412,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMValidatePasswordResetCodeAndSendSmsResponse', index=873, number=4407,
+      name='k_EMsgAMSendScheduledGift', index=871, number=4413,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGetAccountResetDetailsRequest', index=874, number=4408,
+      name='k_EMsgAMNodwinPayment', index=872, number=4414,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGetAccountResetDetailsResponse', index=875, number=4409,
+      name='k_EMsgAMNodwinPaymentResponse', index=873, number=4415,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMBitPayPayment', index=876, number=4410,
+      name='k_EMsgAMResolveWalletRevoke', index=874, number=4416,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMBitPayPaymentResponse', index=877, number=4411,
+      name='k_EMsgAMResolveWalletReverseRevoke', index=875, number=4417,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMSendAccountInfoUpdate', index=878, number=4412,
+      name='k_EMsgAMFundedPayment', index=876, number=4418,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMSendScheduledGift', index=879, number=4413,
+      name='k_EMsgAMFundedPaymentResponse', index=877, number=4419,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMNodwinPayment', index=880, number=4414,
+      name='k_EMsgAMRequestPersonaUpdateForChatServer', index=878, number=4420,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMNodwinPaymentResponse', index=881, number=4415,
+      name='k_EMsgAMPerfectWorldPayment', index=879, number=4421,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMResolveWalletRevoke', index=882, number=4416,
+      name='k_EMsgAMPerfectWorldPaymentResponse', index=880, number=4422,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMResolveWalletReverseRevoke', index=883, number=4417,
+      name='k_EMsgAMECommPayPayment', index=881, number=4423,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMFundedPayment', index=884, number=4418,
+      name='k_EMsgAMECommPayPaymentResponse', index=882, number=4424,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMFundedPaymentResponse', index=885, number=4419,
+      name='k_EMsgBasePSRange', index=883, number=5000,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMRequestPersonaUpdateForChatServer', index=886, number=4420,
+      name='k_EMsgPSCreateShoppingCart', index=884, number=5001,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMPerfectWorldPayment', index=887, number=4421,
+      name='k_EMsgPSCreateShoppingCartResponse', index=885, number=5002,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMPerfectWorldPaymentResponse', index=888, number=4422,
+      name='k_EMsgPSIsValidShoppingCart', index=886, number=5003,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBasePSRange', index=889, number=5000,
+      name='k_EMsgPSIsValidShoppingCartResponse', index=887, number=5004,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgPSCreateShoppingCart', index=890, number=5001,
+      name='k_EMsgPSRemoveLineItemFromShoppingCart', index=888, number=5007,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgPSCreateShoppingCartResponse', index=891, number=5002,
+      name='k_EMsgPSRemoveLineItemFromShoppingCartResponse', index=889, number=5008,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgPSIsValidShoppingCart', index=892, number=5003,
+      name='k_EMsgPSGetShoppingCartContents', index=890, number=5009,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgPSIsValidShoppingCartResponse', index=893, number=5004,
+      name='k_EMsgPSGetShoppingCartContentsResponse', index=891, number=5010,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgPSRemoveLineItemFromShoppingCart', index=894, number=5007,
+      name='k_EMsgPSAddWalletCreditToShoppingCart', index=892, number=5011,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgPSRemoveLineItemFromShoppingCartResponse', index=895, number=5008,
+      name='k_EMsgPSAddWalletCreditToShoppingCartResponse', index=893, number=5012,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgPSGetShoppingCartContents', index=896, number=5009,
+      name='k_EMsgBaseUFSRange', index=894, number=5200,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgPSGetShoppingCartContentsResponse', index=897, number=5010,
+      name='k_EMsgClientUFSUploadFileRequest', index=895, number=5202,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgPSAddWalletCreditToShoppingCart', index=898, number=5011,
+      name='k_EMsgClientUFSUploadFileResponse', index=896, number=5203,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgPSAddWalletCreditToShoppingCartResponse', index=899, number=5012,
+      name='k_EMsgClientUFSUploadFileChunk', index=897, number=5204,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBaseUFSRange', index=900, number=5200,
+      name='k_EMsgClientUFSUploadFileFinished', index=898, number=5205,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientUFSUploadFileRequest', index=901, number=5202,
+      name='k_EMsgClientUFSGetFileListForApp', index=899, number=5206,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientUFSUploadFileResponse', index=902, number=5203,
+      name='k_EMsgClientUFSGetFileListForAppResponse', index=900, number=5207,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientUFSUploadFileChunk', index=903, number=5204,
+      name='k_EMsgClientUFSDownloadRequest', index=901, number=5210,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientUFSUploadFileFinished', index=904, number=5205,
+      name='k_EMsgClientUFSDownloadResponse', index=902, number=5211,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientUFSGetFileListForApp', index=905, number=5206,
+      name='k_EMsgClientUFSDownloadChunk', index=903, number=5212,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientUFSGetFileListForAppResponse', index=906, number=5207,
+      name='k_EMsgClientUFSLoginRequest', index=904, number=5213,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientUFSDownloadRequest', index=907, number=5210,
+      name='k_EMsgClientUFSLoginResponse', index=905, number=5214,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientUFSDownloadResponse', index=908, number=5211,
+      name='k_EMsgUFSReloadPartitionInfo', index=906, number=5215,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientUFSDownloadChunk', index=909, number=5212,
+      name='k_EMsgClientUFSTransferHeartbeat', index=907, number=5216,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientUFSLoginRequest', index=910, number=5213,
+      name='k_EMsgUFSSynchronizeFile', index=908, number=5217,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientUFSLoginResponse', index=911, number=5214,
+      name='k_EMsgUFSSynchronizeFileResponse', index=909, number=5218,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgUFSReloadPartitionInfo', index=912, number=5215,
+      name='k_EMsgClientUFSDeleteFileRequest', index=910, number=5219,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientUFSTransferHeartbeat', index=913, number=5216,
+      name='k_EMsgClientUFSDeleteFileResponse', index=911, number=5220,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgUFSSynchronizeFile', index=914, number=5217,
+      name='k_EMsgClientUFSGetUGCDetails', index=912, number=5226,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgUFSSynchronizeFileResponse', index=915, number=5218,
+      name='k_EMsgClientUFSGetUGCDetailsResponse', index=913, number=5227,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientUFSDeleteFileRequest', index=916, number=5219,
+      name='k_EMsgUFSUpdateFileFlags', index=914, number=5228,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientUFSDeleteFileResponse', index=917, number=5220,
+      name='k_EMsgUFSUpdateFileFlagsResponse', index=915, number=5229,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientUFSGetUGCDetails', index=918, number=5226,
+      name='k_EMsgClientUFSGetSingleFileInfo', index=916, number=5230,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientUFSGetUGCDetailsResponse', index=919, number=5227,
+      name='k_EMsgClientUFSGetSingleFileInfoResponse', index=917, number=5231,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgUFSUpdateFileFlags', index=920, number=5228,
+      name='k_EMsgClientUFSShareFile', index=918, number=5232,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgUFSUpdateFileFlagsResponse', index=921, number=5229,
+      name='k_EMsgClientUFSShareFileResponse', index=919, number=5233,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientUFSGetSingleFileInfo', index=922, number=5230,
+      name='k_EMsgUFSReloadAccount', index=920, number=5234,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientUFSGetSingleFileInfoResponse', index=923, number=5231,
+      name='k_EMsgUFSReloadAccountResponse', index=921, number=5235,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientUFSShareFile', index=924, number=5232,
+      name='k_EMsgUFSUpdateRecordBatched', index=922, number=5236,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientUFSShareFileResponse', index=925, number=5233,
+      name='k_EMsgUFSUpdateRecordBatchedResponse', index=923, number=5237,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgUFSReloadAccount', index=926, number=5234,
+      name='k_EMsgUFSMigrateFile', index=924, number=5238,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgUFSReloadAccountResponse', index=927, number=5235,
+      name='k_EMsgUFSMigrateFileResponse', index=925, number=5239,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgUFSUpdateRecordBatched', index=928, number=5236,
+      name='k_EMsgUFSGetUGCURLs', index=926, number=5240,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgUFSUpdateRecordBatchedResponse', index=929, number=5237,
+      name='k_EMsgUFSGetUGCURLsResponse', index=927, number=5241,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgUFSMigrateFile', index=930, number=5238,
+      name='k_EMsgUFSHttpUploadFileFinishRequest', index=928, number=5242,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgUFSMigrateFileResponse', index=931, number=5239,
+      name='k_EMsgUFSHttpUploadFileFinishResponse', index=929, number=5243,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgUFSGetUGCURLs', index=932, number=5240,
+      name='k_EMsgUFSDownloadStartRequest', index=930, number=5244,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgUFSGetUGCURLsResponse', index=933, number=5241,
+      name='k_EMsgUFSDownloadStartResponse', index=931, number=5245,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgUFSHttpUploadFileFinishRequest', index=934, number=5242,
+      name='k_EMsgUFSDownloadChunkRequest', index=932, number=5246,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgUFSHttpUploadFileFinishResponse', index=935, number=5243,
+      name='k_EMsgUFSDownloadChunkResponse', index=933, number=5247,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgUFSDownloadStartRequest', index=936, number=5244,
+      name='k_EMsgUFSDownloadFinishRequest', index=934, number=5248,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgUFSDownloadStartResponse', index=937, number=5245,
+      name='k_EMsgUFSDownloadFinishResponse', index=935, number=5249,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgUFSDownloadChunkRequest', index=938, number=5246,
+      name='k_EMsgUFSFlushURLCache', index=936, number=5250,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgUFSDownloadChunkResponse', index=939, number=5247,
+      name='k_EMsgClientUFSUploadCommit', index=937, number=5251,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgUFSDownloadFinishRequest', index=940, number=5248,
+      name='k_EMsgClientUFSUploadCommitResponse', index=938, number=5252,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgUFSDownloadFinishResponse', index=941, number=5249,
+      name='k_EMsgUFSMigrateFileAppID', index=939, number=5253,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgUFSFlushURLCache', index=942, number=5250,
+      name='k_EMsgUFSMigrateFileAppIDResponse', index=940, number=5254,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientUFSUploadCommit', index=943, number=5251,
+      name='k_EMsgBaseClient2', index=941, number=5400,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientUFSUploadCommitResponse', index=944, number=5252,
+      name='k_EMsgClientRequestForgottenPasswordEmail', index=942, number=5401,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgUFSMigrateFileAppID', index=945, number=5253,
+      name='k_EMsgClientRequestForgottenPasswordEmailResponse', index=943, number=5402,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgUFSMigrateFileAppIDResponse', index=946, number=5254,
+      name='k_EMsgClientCreateAccountResponse', index=944, number=5403,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBaseClient2', index=947, number=5400,
+      name='k_EMsgClientResetForgottenPassword', index=945, number=5404,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientRequestForgottenPasswordEmail', index=948, number=5401,
+      name='k_EMsgClientResetForgottenPasswordResponse', index=946, number=5405,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientRequestForgottenPasswordEmailResponse', index=949, number=5402,
+      name='k_EMsgClientInformOfResetForgottenPassword', index=947, number=5407,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientCreateAccountResponse', index=950, number=5403,
+      name='k_EMsgClientInformOfResetForgottenPasswordResponse', index=948, number=5408,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientResetForgottenPassword', index=951, number=5404,
+      name='k_EMsgClientAnonUserLogOn_Deprecated', index=949, number=5409,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientResetForgottenPasswordResponse', index=952, number=5405,
+      name='k_EMsgClientGamesPlayedWithDataBlob', index=950, number=5410,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientInformOfResetForgottenPassword', index=953, number=5407,
+      name='k_EMsgClientUpdateUserGameInfo', index=951, number=5411,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientInformOfResetForgottenPasswordResponse', index=954, number=5408,
+      name='k_EMsgClientFileToDownload', index=952, number=5412,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientAnonUserLogOn_Deprecated', index=955, number=5409,
+      name='k_EMsgClientFileToDownloadResponse', index=953, number=5413,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientGamesPlayedWithDataBlob', index=956, number=5410,
+      name='k_EMsgClientLBSSetScore', index=954, number=5414,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientUpdateUserGameInfo', index=957, number=5411,
+      name='k_EMsgClientLBSSetScoreResponse', index=955, number=5415,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientFileToDownload', index=958, number=5412,
+      name='k_EMsgClientLBSFindOrCreateLB', index=956, number=5416,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientFileToDownloadResponse', index=959, number=5413,
+      name='k_EMsgClientLBSFindOrCreateLBResponse', index=957, number=5417,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientLBSSetScore', index=960, number=5414,
+      name='k_EMsgClientLBSGetLBEntries', index=958, number=5418,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientLBSSetScoreResponse', index=961, number=5415,
+      name='k_EMsgClientLBSGetLBEntriesResponse', index=959, number=5419,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientLBSFindOrCreateLB', index=962, number=5416,
+      name='k_EMsgClientChatDeclined', index=960, number=5426,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientLBSFindOrCreateLBResponse', index=963, number=5417,
+      name='k_EMsgClientFriendMsgIncoming', index=961, number=5427,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientLBSGetLBEntries', index=964, number=5418,
+      name='k_EMsgClientAuthList_Deprecated', index=962, number=5428,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientLBSGetLBEntriesResponse', index=965, number=5419,
+      name='k_EMsgClientTicketAuthComplete', index=963, number=5429,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientChatDeclined', index=966, number=5426,
+      name='k_EMsgClientIsLimitedAccount', index=964, number=5430,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientFriendMsgIncoming', index=967, number=5427,
+      name='k_EMsgClientRequestAuthList', index=965, number=5431,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientAuthList_Deprecated', index=968, number=5428,
+      name='k_EMsgClientAuthList', index=966, number=5432,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientTicketAuthComplete', index=969, number=5429,
+      name='k_EMsgClientStat', index=967, number=5433,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientIsLimitedAccount', index=970, number=5430,
+      name='k_EMsgClientP2PConnectionInfo', index=968, number=5434,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientRequestAuthList', index=971, number=5431,
+      name='k_EMsgClientP2PConnectionFailInfo', index=969, number=5435,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientAuthList', index=972, number=5432,
+      name='k_EMsgClientGetDepotDecryptionKey', index=970, number=5438,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientStat', index=973, number=5433,
+      name='k_EMsgClientGetDepotDecryptionKeyResponse', index=971, number=5439,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientP2PConnectionInfo', index=974, number=5434,
+      name='k_EMsgGSPerformHardwareSurvey', index=972, number=5440,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientP2PConnectionFailInfo', index=975, number=5435,
+      name='k_EMsgClientEnableTestLicense', index=973, number=5443,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientGetDepotDecryptionKey', index=976, number=5438,
+      name='k_EMsgClientEnableTestLicenseResponse', index=974, number=5444,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientGetDepotDecryptionKeyResponse', index=977, number=5439,
+      name='k_EMsgClientDisableTestLicense', index=975, number=5445,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgGSPerformHardwareSurvey', index=978, number=5440,
+      name='k_EMsgClientDisableTestLicenseResponse', index=976, number=5446,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientEnableTestLicense', index=979, number=5443,
+      name='k_EMsgClientRequestValidationMail', index=977, number=5448,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientEnableTestLicenseResponse', index=980, number=5444,
+      name='k_EMsgClientRequestValidationMailResponse', index=978, number=5449,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientDisableTestLicense', index=981, number=5445,
+      name='k_EMsgClientCheckAppBetaPassword', index=979, number=5450,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientDisableTestLicenseResponse', index=982, number=5446,
+      name='k_EMsgClientCheckAppBetaPasswordResponse', index=980, number=5451,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientRequestValidationMail', index=983, number=5448,
+      name='k_EMsgClientToGC', index=981, number=5452,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientRequestValidationMailResponse', index=984, number=5449,
+      name='k_EMsgClientFromGC', index=982, number=5453,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientCheckAppBetaPassword', index=985, number=5450,
+      name='k_EMsgClientEmailAddrInfo', index=983, number=5456,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientCheckAppBetaPasswordResponse', index=986, number=5451,
+      name='k_EMsgClientPasswordChange3', index=984, number=5457,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientToGC', index=987, number=5452,
+      name='k_EMsgClientEmailChange3', index=985, number=5458,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientFromGC', index=988, number=5453,
+      name='k_EMsgClientPersonalQAChange3', index=986, number=5459,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientEmailAddrInfo', index=989, number=5456,
+      name='k_EMsgClientResetForgottenPassword3', index=987, number=5460,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientPasswordChange3', index=990, number=5457,
+      name='k_EMsgClientRequestForgottenPasswordEmail3', index=988, number=5461,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientEmailChange3', index=991, number=5458,
+      name='k_EMsgClientNewLoginKey', index=989, number=5463,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientPersonalQAChange3', index=992, number=5459,
+      name='k_EMsgClientNewLoginKeyAccepted', index=990, number=5464,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientResetForgottenPassword3', index=993, number=5460,
+      name='k_EMsgClientLogOnWithHash_Deprecated', index=991, number=5465,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientRequestForgottenPasswordEmail3', index=994, number=5461,
+      name='k_EMsgClientStoreUserStats2', index=992, number=5466,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientNewLoginKey', index=995, number=5463,
+      name='k_EMsgClientStatsUpdated', index=993, number=5467,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientNewLoginKeyAccepted', index=996, number=5464,
+      name='k_EMsgClientActivateOEMLicense', index=994, number=5468,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientLogOnWithHash_Deprecated', index=997, number=5465,
+      name='k_EMsgClientRegisterOEMMachine', index=995, number=5469,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientStoreUserStats2', index=998, number=5466,
+      name='k_EMsgClientRegisterOEMMachineResponse', index=996, number=5470,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientStatsUpdated', index=999, number=5467,
+      name='k_EMsgClientRequestedClientStats', index=997, number=5480,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientActivateOEMLicense', index=1000, number=5468,
+      name='k_EMsgClientStat2Int32', index=998, number=5481,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientRegisterOEMMachine', index=1001, number=5469,
+      name='k_EMsgClientStat2', index=999, number=5482,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientRegisterOEMMachineResponse', index=1002, number=5470,
+      name='k_EMsgClientVerifyPassword', index=1000, number=5483,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientRequestedClientStats', index=1003, number=5480,
+      name='k_EMsgClientVerifyPasswordResponse', index=1001, number=5484,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientStat2Int32', index=1004, number=5481,
+      name='k_EMsgClientDRMDownloadRequest', index=1002, number=5485,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientStat2', index=1005, number=5482,
+      name='k_EMsgClientDRMDownloadResponse', index=1003, number=5486,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientVerifyPassword', index=1006, number=5483,
+      name='k_EMsgClientDRMFinalResult', index=1004, number=5487,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientVerifyPasswordResponse', index=1007, number=5484,
+      name='k_EMsgClientGetFriendsWhoPlayGame', index=1005, number=5488,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientDRMDownloadRequest', index=1008, number=5485,
+      name='k_EMsgClientGetFriendsWhoPlayGameResponse', index=1006, number=5489,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientDRMDownloadResponse', index=1009, number=5486,
+      name='k_EMsgClientOGSBeginSession', index=1007, number=5490,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientDRMFinalResult', index=1010, number=5487,
+      name='k_EMsgClientOGSBeginSessionResponse', index=1008, number=5491,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientGetFriendsWhoPlayGame', index=1011, number=5488,
+      name='k_EMsgClientOGSEndSession', index=1009, number=5492,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientGetFriendsWhoPlayGameResponse', index=1012, number=5489,
+      name='k_EMsgClientOGSEndSessionResponse', index=1010, number=5493,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientOGSBeginSession', index=1013, number=5490,
+      name='k_EMsgClientOGSWriteRow', index=1011, number=5494,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientOGSBeginSessionResponse', index=1014, number=5491,
+      name='k_EMsgClientDRMTest', index=1012, number=5495,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientOGSEndSession', index=1015, number=5492,
+      name='k_EMsgClientDRMTestResult', index=1013, number=5496,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientOGSEndSessionResponse', index=1016, number=5493,
+      name='k_EMsgClientServerUnavailable', index=1014, number=5500,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientOGSWriteRow', index=1017, number=5494,
+      name='k_EMsgClientServersAvailable', index=1015, number=5501,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientDRMTest', index=1018, number=5495,
+      name='k_EMsgClientRegisterAuthTicketWithCM', index=1016, number=5502,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientDRMTestResult', index=1019, number=5496,
+      name='k_EMsgClientGCMsgFailed', index=1017, number=5503,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientServerUnavailable', index=1020, number=5500,
+      name='k_EMsgClientMicroTxnAuthRequest', index=1018, number=5504,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientServersAvailable', index=1021, number=5501,
+      name='k_EMsgClientMicroTxnAuthorize', index=1019, number=5505,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientRegisterAuthTicketWithCM', index=1022, number=5502,
+      name='k_EMsgClientMicroTxnAuthorizeResponse', index=1020, number=5506,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientGCMsgFailed', index=1023, number=5503,
+      name='k_EMsgClientGetMicroTxnInfo', index=1021, number=5508,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientMicroTxnAuthRequest', index=1024, number=5504,
+      name='k_EMsgClientGetMicroTxnInfoResponse', index=1022, number=5509,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientMicroTxnAuthorize', index=1025, number=5505,
+      name='k_EMsgClientMarketingMessageUpdate2', index=1023, number=5510,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientMicroTxnAuthorizeResponse', index=1026, number=5506,
+      name='k_EMsgClientDeregisterWithServer', index=1024, number=5511,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientGetMicroTxnInfo', index=1027, number=5508,
+      name='k_EMsgClientSubscribeToPersonaFeed', index=1025, number=5512,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientGetMicroTxnInfoResponse', index=1028, number=5509,
+      name='k_EMsgClientLogon', index=1026, number=5514,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientMarketingMessageUpdate2', index=1029, number=5510,
+      name='k_EMsgClientGetClientDetails', index=1027, number=5515,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientDeregisterWithServer', index=1030, number=5511,
+      name='k_EMsgClientGetClientDetailsResponse', index=1028, number=5516,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientSubscribeToPersonaFeed', index=1031, number=5512,
+      name='k_EMsgClientReportOverlayDetourFailure', index=1029, number=5517,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientLogon', index=1032, number=5514,
+      name='k_EMsgClientGetClientAppList', index=1030, number=5518,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientGetClientDetails', index=1033, number=5515,
+      name='k_EMsgClientGetClientAppListResponse', index=1031, number=5519,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientGetClientDetailsResponse', index=1034, number=5516,
+      name='k_EMsgClientInstallClientApp', index=1032, number=5520,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientReportOverlayDetourFailure', index=1035, number=5517,
+      name='k_EMsgClientInstallClientAppResponse', index=1033, number=5521,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientGetClientAppList', index=1036, number=5518,
+      name='k_EMsgClientUninstallClientApp', index=1034, number=5522,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientGetClientAppListResponse', index=1037, number=5519,
+      name='k_EMsgClientUninstallClientAppResponse', index=1035, number=5523,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientInstallClientApp', index=1038, number=5520,
+      name='k_EMsgClientSetClientAppUpdateState', index=1036, number=5524,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientInstallClientAppResponse', index=1039, number=5521,
+      name='k_EMsgClientSetClientAppUpdateStateResponse', index=1037, number=5525,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientUninstallClientApp', index=1040, number=5522,
+      name='k_EMsgClientRequestEncryptedAppTicket', index=1038, number=5526,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientUninstallClientAppResponse', index=1041, number=5523,
+      name='k_EMsgClientRequestEncryptedAppTicketResponse', index=1039, number=5527,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientSetClientAppUpdateState', index=1042, number=5524,
+      name='k_EMsgClientWalletInfoUpdate', index=1040, number=5528,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientSetClientAppUpdateStateResponse', index=1043, number=5525,
+      name='k_EMsgClientLBSSetUGC', index=1041, number=5529,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientRequestEncryptedAppTicket', index=1044, number=5526,
+      name='k_EMsgClientLBSSetUGCResponse', index=1042, number=5530,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientRequestEncryptedAppTicketResponse', index=1045, number=5527,
+      name='k_EMsgClientAMGetClanOfficers', index=1043, number=5531,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientWalletInfoUpdate', index=1046, number=5528,
+      name='k_EMsgClientAMGetClanOfficersResponse', index=1044, number=5532,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientLBSSetUGC', index=1047, number=5529,
+      name='k_EMsgClientFriendProfileInfo', index=1045, number=5535,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientLBSSetUGCResponse', index=1048, number=5530,
+      name='k_EMsgClientFriendProfileInfoResponse', index=1046, number=5536,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientAMGetClanOfficers', index=1049, number=5531,
+      name='k_EMsgClientUpdateMachineAuth', index=1047, number=5537,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientAMGetClanOfficersResponse', index=1050, number=5532,
+      name='k_EMsgClientUpdateMachineAuthResponse', index=1048, number=5538,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientFriendProfileInfo', index=1051, number=5535,
+      name='k_EMsgClientReadMachineAuth', index=1049, number=5539,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientFriendProfileInfoResponse', index=1052, number=5536,
+      name='k_EMsgClientReadMachineAuthResponse', index=1050, number=5540,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientUpdateMachineAuth', index=1053, number=5537,
+      name='k_EMsgClientRequestMachineAuth', index=1051, number=5541,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientUpdateMachineAuthResponse', index=1054, number=5538,
+      name='k_EMsgClientRequestMachineAuthResponse', index=1052, number=5542,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientReadMachineAuth', index=1055, number=5539,
+      name='k_EMsgClientScreenshotsChanged', index=1053, number=5543,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientReadMachineAuthResponse', index=1056, number=5540,
+      name='k_EMsgClientGetCDNAuthToken', index=1054, number=5546,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientRequestMachineAuth', index=1057, number=5541,
+      name='k_EMsgClientGetCDNAuthTokenResponse', index=1055, number=5547,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientRequestMachineAuthResponse', index=1058, number=5542,
+      name='k_EMsgClientDownloadRateStatistics', index=1056, number=5548,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientScreenshotsChanged', index=1059, number=5543,
+      name='k_EMsgClientRequestAccountData', index=1057, number=5549,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientGetCDNAuthToken', index=1060, number=5546,
+      name='k_EMsgClientRequestAccountDataResponse', index=1058, number=5550,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientGetCDNAuthTokenResponse', index=1061, number=5547,
+      name='k_EMsgClientResetForgottenPassword4', index=1059, number=5551,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientDownloadRateStatistics', index=1062, number=5548,
+      name='k_EMsgClientHideFriend', index=1060, number=5552,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientRequestAccountData', index=1063, number=5549,
+      name='k_EMsgClientFriendsGroupsList', index=1061, number=5553,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientRequestAccountDataResponse', index=1064, number=5550,
+      name='k_EMsgClientGetClanActivityCounts', index=1062, number=5554,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientResetForgottenPassword4', index=1065, number=5551,
+      name='k_EMsgClientGetClanActivityCountsResponse', index=1063, number=5555,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientHideFriend', index=1066, number=5552,
+      name='k_EMsgClientOGSReportString', index=1064, number=5556,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientFriendsGroupsList', index=1067, number=5553,
+      name='k_EMsgClientOGSReportBug', index=1065, number=5557,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientGetClanActivityCounts', index=1068, number=5554,
+      name='k_EMsgClientSentLogs', index=1066, number=5558,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientGetClanActivityCountsResponse', index=1069, number=5555,
+      name='k_EMsgClientLogonGameServer', index=1067, number=5559,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientOGSReportString', index=1070, number=5556,
+      name='k_EMsgAMClientCreateFriendsGroup', index=1068, number=5560,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientOGSReportBug', index=1071, number=5557,
+      name='k_EMsgAMClientCreateFriendsGroupResponse', index=1069, number=5561,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientSentLogs', index=1072, number=5558,
+      name='k_EMsgAMClientDeleteFriendsGroup', index=1070, number=5562,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientLogonGameServer', index=1073, number=5559,
+      name='k_EMsgAMClientDeleteFriendsGroupResponse', index=1071, number=5563,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMClientCreateFriendsGroup', index=1074, number=5560,
+      name='k_EMsgAMClientManageFriendsGroup', index=1072, number=5564,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMClientCreateFriendsGroupResponse', index=1075, number=5561,
+      name='k_EMsgAMClientManageFriendsGroupResponse', index=1073, number=5565,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMClientDeleteFriendsGroup', index=1076, number=5562,
+      name='k_EMsgAMClientAddFriendToGroup', index=1074, number=5566,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMClientDeleteFriendsGroupResponse', index=1077, number=5563,
+      name='k_EMsgAMClientAddFriendToGroupResponse', index=1075, number=5567,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMClientManageFriendsGroup', index=1078, number=5564,
+      name='k_EMsgAMClientRemoveFriendFromGroup', index=1076, number=5568,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMClientManageFriendsGroupResponse', index=1079, number=5565,
+      name='k_EMsgAMClientRemoveFriendFromGroupResponse', index=1077, number=5569,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMClientAddFriendToGroup', index=1080, number=5566,
+      name='k_EMsgClientAMGetPersonaNameHistory', index=1078, number=5570,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMClientAddFriendToGroupResponse', index=1081, number=5567,
+      name='k_EMsgClientAMGetPersonaNameHistoryResponse', index=1079, number=5571,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMClientRemoveFriendFromGroup', index=1082, number=5568,
+      name='k_EMsgClientRequestFreeLicense', index=1080, number=5572,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMClientRemoveFriendFromGroupResponse', index=1083, number=5569,
+      name='k_EMsgClientRequestFreeLicenseResponse', index=1081, number=5573,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientAMGetPersonaNameHistory', index=1084, number=5570,
+      name='k_EMsgClientDRMDownloadRequestWithCrashData', index=1082, number=5574,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientAMGetPersonaNameHistoryResponse', index=1085, number=5571,
+      name='k_EMsgClientAuthListAck', index=1083, number=5575,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientRequestFreeLicense', index=1086, number=5572,
+      name='k_EMsgClientItemAnnouncements', index=1084, number=5576,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientRequestFreeLicenseResponse', index=1087, number=5573,
+      name='k_EMsgClientRequestItemAnnouncements', index=1085, number=5577,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientDRMDownloadRequestWithCrashData', index=1088, number=5574,
+      name='k_EMsgClientFriendMsgEchoToSender', index=1086, number=5578,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientAuthListAck', index=1089, number=5575,
+      name='k_EMsgClientCommentNotifications', index=1087, number=5582,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientItemAnnouncements', index=1090, number=5576,
+      name='k_EMsgClientRequestCommentNotifications', index=1088, number=5583,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientRequestItemAnnouncements', index=1091, number=5577,
+      name='k_EMsgClientPersonaChangeResponse', index=1089, number=5584,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientFriendMsgEchoToSender', index=1092, number=5578,
+      name='k_EMsgClientRequestWebAPIAuthenticateUserNonce', index=1090, number=5585,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientCommentNotifications', index=1093, number=5582,
+      name='k_EMsgClientRequestWebAPIAuthenticateUserNonceResponse', index=1091, number=5586,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientRequestCommentNotifications', index=1094, number=5583,
+      name='k_EMsgClientPlayerNicknameList', index=1092, number=5587,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientPersonaChangeResponse', index=1095, number=5584,
+      name='k_EMsgAMClientSetPlayerNickname', index=1093, number=5588,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientRequestWebAPIAuthenticateUserNonce', index=1096, number=5585,
+      name='k_EMsgAMClientSetPlayerNicknameResponse', index=1094, number=5589,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientRequestWebAPIAuthenticateUserNonceResponse', index=1097, number=5586,
+      name='k_EMsgClientGetNumberOfCurrentPlayersDP', index=1095, number=5592,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientPlayerNicknameList', index=1098, number=5587,
+      name='k_EMsgClientGetNumberOfCurrentPlayersDPResponse', index=1096, number=5593,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMClientSetPlayerNickname', index=1099, number=5588,
+      name='k_EMsgClientServiceMethodLegacy', index=1097, number=5594,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMClientSetPlayerNicknameResponse', index=1100, number=5589,
+      name='k_EMsgClientServiceMethodLegacyResponse', index=1098, number=5595,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientGetNumberOfCurrentPlayersDP', index=1101, number=5592,
+      name='k_EMsgClientFriendUserStatusPublished', index=1099, number=5596,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientGetNumberOfCurrentPlayersDPResponse', index=1102, number=5593,
+      name='k_EMsgClientCurrentUIMode', index=1100, number=5597,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientServiceMethodLegacy', index=1103, number=5594,
+      name='k_EMsgClientVanityURLChangedNotification', index=1101, number=5598,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientServiceMethodLegacyResponse', index=1104, number=5595,
+      name='k_EMsgClientUserNotifications', index=1102, number=5599,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientFriendUserStatusPublished', index=1105, number=5596,
+      name='k_EMsgBaseDFS', index=1103, number=5600,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientCurrentUIMode', index=1106, number=5597,
+      name='k_EMsgDFSGetFile', index=1104, number=5601,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientVanityURLChangedNotification', index=1107, number=5598,
+      name='k_EMsgDFSInstallLocalFile', index=1105, number=5602,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientUserNotifications', index=1108, number=5599,
+      name='k_EMsgDFSConnection', index=1106, number=5603,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBaseDFS', index=1109, number=5600,
+      name='k_EMsgDFSConnectionReply', index=1107, number=5604,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgDFSGetFile', index=1110, number=5601,
+      name='k_EMsgClientDFSAuthenticateRequest', index=1108, number=5605,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgDFSInstallLocalFile', index=1111, number=5602,
+      name='k_EMsgClientDFSAuthenticateResponse', index=1109, number=5606,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgDFSConnection', index=1112, number=5603,
+      name='k_EMsgClientDFSEndSession', index=1110, number=5607,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgDFSConnectionReply', index=1113, number=5604,
+      name='k_EMsgDFSPurgeFile', index=1111, number=5608,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientDFSAuthenticateRequest', index=1114, number=5605,
+      name='k_EMsgDFSRouteFile', index=1112, number=5609,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientDFSAuthenticateResponse', index=1115, number=5606,
+      name='k_EMsgDFSGetFileFromServer', index=1113, number=5610,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientDFSEndSession', index=1116, number=5607,
+      name='k_EMsgDFSAcceptedResponse', index=1114, number=5611,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgDFSPurgeFile', index=1117, number=5608,
+      name='k_EMsgDFSRequestPingback', index=1115, number=5612,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgDFSRouteFile', index=1118, number=5609,
+      name='k_EMsgDFSRecvTransmitFile', index=1116, number=5613,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgDFSGetFileFromServer', index=1119, number=5610,
+      name='k_EMsgDFSSendTransmitFile', index=1117, number=5614,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgDFSAcceptedResponse', index=1120, number=5611,
+      name='k_EMsgDFSRequestPingback2', index=1118, number=5615,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgDFSRequestPingback', index=1121, number=5612,
+      name='k_EMsgDFSResponsePingback2', index=1119, number=5616,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgDFSRecvTransmitFile', index=1122, number=5613,
+      name='k_EMsgClientDFSDownloadStatus', index=1120, number=5617,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgDFSSendTransmitFile', index=1123, number=5614,
+      name='k_EMsgDFSStartTransfer', index=1121, number=5618,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgDFSRequestPingback2', index=1124, number=5615,
+      name='k_EMsgDFSTransferComplete', index=1122, number=5619,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgDFSResponsePingback2', index=1125, number=5616,
+      name='k_EMsgDFSRouteFileResponse', index=1123, number=5620,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientDFSDownloadStatus', index=1126, number=5617,
+      name='k_EMsgClientNetworkingCertRequest', index=1124, number=5621,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgDFSStartTransfer', index=1127, number=5618,
+      name='k_EMsgClientNetworkingCertRequestResponse', index=1125, number=5622,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgDFSTransferComplete', index=1128, number=5619,
+      name='k_EMsgClientChallengeRequest', index=1126, number=5623,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgDFSRouteFileResponse', index=1129, number=5620,
+      name='k_EMsgClientChallengeResponse', index=1127, number=5624,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientNetworkingCertRequest', index=1130, number=5621,
+      name='k_EMsgBadgeCraftedNotification', index=1128, number=5625,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientNetworkingCertRequestResponse', index=1131, number=5622,
+      name='k_EMsgClientNetworkingMobileCertRequest', index=1129, number=5626,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientChallengeRequest', index=1132, number=5623,
+      name='k_EMsgClientNetworkingMobileCertRequestResponse', index=1130, number=5627,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientChallengeResponse', index=1133, number=5624,
+      name='k_EMsgBaseMDS', index=1131, number=5800,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBadgeCraftedNotification', index=1134, number=5625,
+      name='k_EMsgMDSGetDepotDecryptionKey', index=1132, number=5812,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientNetworkingMobileCertRequest', index=1135, number=5626,
+      name='k_EMsgMDSGetDepotDecryptionKeyResponse', index=1133, number=5813,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientNetworkingMobileCertRequestResponse', index=1136, number=5627,
+      name='k_EMsgMDSContentServerConfigRequest', index=1134, number=5827,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBaseMDS', index=1137, number=5800,
+      name='k_EMsgMDSContentServerConfig', index=1135, number=5828,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMToMDSGetDepotDecryptionKey', index=1138, number=5812,
+      name='k_EMsgMDSGetDepotManifest', index=1136, number=5829,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgMDSToAMGetDepotDecryptionKeyResponse', index=1139, number=5813,
+      name='k_EMsgMDSGetDepotManifestResponse', index=1137, number=5830,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgMDSContentServerConfigRequest', index=1140, number=5827,
+      name='k_EMsgMDSGetDepotManifestChunk', index=1138, number=5831,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgMDSContentServerConfig', index=1141, number=5828,
+      name='k_EMsgMDSGetDepotChunk', index=1139, number=5832,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgMDSGetDepotManifest', index=1142, number=5829,
+      name='k_EMsgMDSGetDepotChunkResponse', index=1140, number=5833,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgMDSGetDepotManifestResponse', index=1143, number=5830,
+      name='k_EMsgMDSGetDepotChunkChunk', index=1141, number=5834,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgMDSGetDepotManifestChunk', index=1144, number=5831,
+      name='k_EMsgMDSToCSFlushChunk', index=1142, number=5844,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgMDSGetDepotChunk', index=1145, number=5832,
+      name='k_EMsgMDSMigrateChunk', index=1143, number=5847,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgMDSGetDepotChunkResponse', index=1146, number=5833,
+      name='k_EMsgMDSMigrateChunkResponse', index=1144, number=5848,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgMDSGetDepotChunkChunk', index=1147, number=5834,
+      name='k_EMsgMDSToCSFlushManifest', index=1145, number=5849,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgMDSToCSFlushChunk', index=1148, number=5844,
+      name='k_EMsgCSBase', index=1146, number=6200,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgMDSMigrateChunk', index=1149, number=5847,
+      name='k_EMsgCSPing', index=1147, number=6201,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgMDSMigrateChunkResponse', index=1150, number=5848,
+      name='k_EMsgCSPingResponse', index=1148, number=6202,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgMDSToCSFlushManifest', index=1151, number=5849,
+      name='k_EMsgGMSBase', index=1149, number=6400,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgCSBase', index=1152, number=6200,
+      name='k_EMsgGMSGameServerReplicate', index=1150, number=6401,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgCSPing', index=1153, number=6201,
+      name='k_EMsgClientGMSServerQuery', index=1151, number=6403,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgCSPingResponse', index=1154, number=6202,
+      name='k_EMsgGMSClientServerQueryResponse', index=1152, number=6404,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgGMSBase', index=1155, number=6400,
+      name='k_EMsgAMGMSGameServerUpdate', index=1153, number=6405,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgGMSGameServerReplicate', index=1156, number=6401,
+      name='k_EMsgAMGMSGameServerRemove', index=1154, number=6406,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientGMSServerQuery', index=1157, number=6403,
+      name='k_EMsgGameServerOutOfDate', index=1155, number=6407,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgGMSClientServerQueryResponse', index=1158, number=6404,
+      name='k_EMsgDeviceAuthorizationBase', index=1156, number=6500,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGMSGameServerUpdate', index=1159, number=6405,
+      name='k_EMsgClientAuthorizeLocalDeviceRequest', index=1157, number=6501,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMGMSGameServerRemove', index=1160, number=6406,
+      name='k_EMsgClientAuthorizeLocalDeviceResponse', index=1158, number=6502,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgGameServerOutOfDate', index=1161, number=6407,
+      name='k_EMsgClientDeauthorizeDeviceRequest', index=1159, number=6503,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgDeviceAuthorizationBase', index=1162, number=6500,
+      name='k_EMsgClientDeauthorizeDevice', index=1160, number=6504,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientAuthorizeLocalDeviceRequest', index=1163, number=6501,
+      name='k_EMsgClientUseLocalDeviceAuthorizations', index=1161, number=6505,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientAuthorizeLocalDeviceResponse', index=1164, number=6502,
+      name='k_EMsgClientGetAuthorizedDevices', index=1162, number=6506,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientDeauthorizeDeviceRequest', index=1165, number=6503,
+      name='k_EMsgClientGetAuthorizedDevicesResponse', index=1163, number=6507,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientDeauthorizeDevice', index=1166, number=6504,
+      name='k_EMsgAMNotifySessionDeviceAuthorized', index=1164, number=6508,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientUseLocalDeviceAuthorizations', index=1167, number=6505,
+      name='k_EMsgClientAuthorizeLocalDeviceNotification', index=1165, number=6509,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientGetAuthorizedDevices', index=1168, number=6506,
+      name='k_EMsgMMSBase', index=1166, number=6600,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientGetAuthorizedDevicesResponse', index=1169, number=6507,
+      name='k_EMsgClientMMSCreateLobby', index=1167, number=6601,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMNotifySessionDeviceAuthorized', index=1170, number=6508,
+      name='k_EMsgClientMMSCreateLobbyResponse', index=1168, number=6602,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientAuthorizeLocalDeviceNotification', index=1171, number=6509,
+      name='k_EMsgClientMMSJoinLobby', index=1169, number=6603,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgMMSBase', index=1172, number=6600,
+      name='k_EMsgClientMMSJoinLobbyResponse', index=1170, number=6604,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientMMSCreateLobby', index=1173, number=6601,
+      name='k_EMsgClientMMSLeaveLobby', index=1171, number=6605,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientMMSCreateLobbyResponse', index=1174, number=6602,
+      name='k_EMsgClientMMSLeaveLobbyResponse', index=1172, number=6606,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientMMSJoinLobby', index=1175, number=6603,
+      name='k_EMsgClientMMSGetLobbyList', index=1173, number=6607,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientMMSJoinLobbyResponse', index=1176, number=6604,
+      name='k_EMsgClientMMSGetLobbyListResponse', index=1174, number=6608,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientMMSLeaveLobby', index=1177, number=6605,
+      name='k_EMsgClientMMSSetLobbyData', index=1175, number=6609,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientMMSLeaveLobbyResponse', index=1178, number=6606,
+      name='k_EMsgClientMMSSetLobbyDataResponse', index=1176, number=6610,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientMMSGetLobbyList', index=1179, number=6607,
+      name='k_EMsgClientMMSGetLobbyData', index=1177, number=6611,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientMMSGetLobbyListResponse', index=1180, number=6608,
+      name='k_EMsgClientMMSLobbyData', index=1178, number=6612,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientMMSSetLobbyData', index=1181, number=6609,
+      name='k_EMsgClientMMSSendLobbyChatMsg', index=1179, number=6613,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientMMSSetLobbyDataResponse', index=1182, number=6610,
+      name='k_EMsgClientMMSLobbyChatMsg', index=1180, number=6614,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientMMSGetLobbyData', index=1183, number=6611,
+      name='k_EMsgClientMMSSetLobbyOwner', index=1181, number=6615,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientMMSLobbyData', index=1184, number=6612,
+      name='k_EMsgClientMMSSetLobbyOwnerResponse', index=1182, number=6616,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientMMSSendLobbyChatMsg', index=1185, number=6613,
+      name='k_EMsgClientMMSSetLobbyGameServer', index=1183, number=6617,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientMMSLobbyChatMsg', index=1186, number=6614,
+      name='k_EMsgClientMMSLobbyGameServerSet', index=1184, number=6618,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientMMSSetLobbyOwner', index=1187, number=6615,
+      name='k_EMsgClientMMSUserJoinedLobby', index=1185, number=6619,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientMMSSetLobbyOwnerResponse', index=1188, number=6616,
+      name='k_EMsgClientMMSUserLeftLobby', index=1186, number=6620,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientMMSSetLobbyGameServer', index=1189, number=6617,
+      name='k_EMsgClientMMSInviteToLobby', index=1187, number=6621,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientMMSLobbyGameServerSet', index=1190, number=6618,
+      name='k_EMsgClientMMSFlushFrenemyListCache', index=1188, number=6622,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientMMSUserJoinedLobby', index=1191, number=6619,
+      name='k_EMsgClientMMSFlushFrenemyListCacheResponse', index=1189, number=6623,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientMMSUserLeftLobby', index=1192, number=6620,
+      name='k_EMsgClientMMSSetLobbyLinked', index=1190, number=6624,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientMMSInviteToLobby', index=1193, number=6621,
+      name='k_EMsgClientMMSSetRatelimitPolicyOnClient', index=1191, number=6625,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientMMSFlushFrenemyListCache', index=1194, number=6622,
+      name='k_EMsgClientMMSGetLobbyStatus', index=1192, number=6626,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientMMSFlushFrenemyListCacheResponse', index=1195, number=6623,
+      name='k_EMsgClientMMSGetLobbyStatusResponse', index=1193, number=6627,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientMMSSetLobbyLinked', index=1196, number=6624,
+      name='k_EMsgMMSGetLobbyList', index=1194, number=6628,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientMMSSetRatelimitPolicyOnClient', index=1197, number=6625,
+      name='k_EMsgMMSGetLobbyListResponse', index=1195, number=6629,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientMMSGetLobbyStatus', index=1198, number=6626,
+      name='k_EMsgNonStdMsgBase', index=1196, number=6800,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientMMSGetLobbyStatusResponse', index=1199, number=6627,
+      name='k_EMsgNonStdMsgMemcached', index=1197, number=6801,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgMMSGetLobbyList', index=1200, number=6628,
+      name='k_EMsgNonStdMsgHTTPServer', index=1198, number=6802,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgMMSGetLobbyListResponse', index=1201, number=6629,
+      name='k_EMsgNonStdMsgHTTPClient', index=1199, number=6803,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgNonStdMsgBase', index=1202, number=6800,
+      name='k_EMsgNonStdMsgWGResponse', index=1200, number=6804,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgNonStdMsgMemcached', index=1203, number=6801,
+      name='k_EMsgNonStdMsgPHPSimulator', index=1201, number=6805,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgNonStdMsgHTTPServer', index=1204, number=6802,
+      name='k_EMsgNonStdMsgChase', index=1202, number=6806,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgNonStdMsgHTTPClient', index=1205, number=6803,
+      name='k_EMsgNonStdMsgDFSTransfer', index=1203, number=6807,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgNonStdMsgWGResponse', index=1206, number=6804,
+      name='k_EMsgNonStdMsgTests', index=1204, number=6808,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgNonStdMsgPHPSimulator', index=1207, number=6805,
+      name='k_EMsgNonStdMsgUMQpipeAAPL', index=1205, number=6809,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgNonStdMsgChase', index=1208, number=6806,
+      name='k_EMSgNonStdMsgSyslog', index=1206, number=6810,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgNonStdMsgDFSTransfer', index=1209, number=6807,
+      name='k_EMsgNonStdMsgLogsink', index=1207, number=6811,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgNonStdMsgTests', index=1210, number=6808,
+      name='k_EMsgNonStdMsgSteam2Emulator', index=1208, number=6812,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgNonStdMsgUMQpipeAAPL', index=1211, number=6809,
+      name='k_EMsgNonStdMsgRTMPServer', index=1209, number=6813,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMSgNonStdMsgSyslog', index=1212, number=6810,
+      name='k_EMsgNonStdMsgWebSocket', index=1210, number=6814,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgNonStdMsgLogsink', index=1213, number=6811,
+      name='k_EMsgNonStdMsgRedis', index=1211, number=6815,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgNonStdMsgSteam2Emulator', index=1214, number=6812,
+      name='k_EMsgUDSBase', index=1212, number=7000,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgNonStdMsgRTMPServer', index=1215, number=6813,
+      name='k_EMsgClientUDSP2PSessionStarted', index=1213, number=7001,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgNonStdMsgWebSocket', index=1216, number=6814,
+      name='k_EMsgClientUDSP2PSessionEnded', index=1214, number=7002,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgNonStdMsgRedis', index=1217, number=6815,
+      name='k_EMsgUDSRenderUserAuth', index=1215, number=7003,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgUDSBase', index=1218, number=7000,
+      name='k_EMsgUDSRenderUserAuthResponse', index=1216, number=7004,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientUDSP2PSessionStarted', index=1219, number=7001,
+      name='k_EMsgClientInviteToGame', index=1217, number=7005,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientUDSP2PSessionEnded', index=1220, number=7002,
+      name='k_EMsgUDSHasSession', index=1218, number=7006,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgUDSRenderUserAuth', index=1221, number=7003,
+      name='k_EMsgUDSHasSessionResponse', index=1219, number=7007,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgUDSRenderUserAuthResponse', index=1222, number=7004,
+      name='k_EMsgMPASBase', index=1220, number=7100,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientInviteToGame', index=1223, number=7005,
+      name='k_EMsgMPASVacBanReset', index=1221, number=7101,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgUDSHasSession', index=1224, number=7006,
+      name='k_EMsgKGSBase', index=1222, number=7200,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgUDSHasSessionResponse', index=1225, number=7007,
+      name='k_EMsgUCMBase', index=1223, number=7300,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgMPASBase', index=1226, number=7100,
+      name='k_EMsgClientUCMAddScreenshot', index=1224, number=7301,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgMPASVacBanReset', index=1227, number=7101,
+      name='k_EMsgClientUCMAddScreenshotResponse', index=1225, number=7302,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgKGSBase', index=1228, number=7200,
+      name='k_EMsgUCMResetCommunityContent', index=1226, number=7307,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgUCMBase', index=1229, number=7300,
+      name='k_EMsgUCMResetCommunityContentResponse', index=1227, number=7308,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientUCMAddScreenshot', index=1230, number=7301,
+      name='k_EMsgClientUCMDeleteScreenshot', index=1228, number=7309,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientUCMAddScreenshotResponse', index=1231, number=7302,
+      name='k_EMsgClientUCMDeleteScreenshotResponse', index=1229, number=7310,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgUCMResetCommunityContent', index=1232, number=7307,
+      name='k_EMsgClientUCMPublishFile', index=1230, number=7311,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgUCMResetCommunityContentResponse', index=1233, number=7308,
+      name='k_EMsgClientUCMPublishFileResponse', index=1231, number=7312,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientUCMDeleteScreenshot', index=1234, number=7309,
+      name='k_EMsgClientUCMDeletePublishedFile', index=1232, number=7315,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientUCMDeleteScreenshotResponse', index=1235, number=7310,
+      name='k_EMsgClientUCMDeletePublishedFileResponse', index=1233, number=7316,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientUCMPublishFile', index=1236, number=7311,
+      name='k_EMsgClientUCMUpdatePublishedFile', index=1234, number=7325,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientUCMPublishFileResponse', index=1237, number=7312,
+      name='k_EMsgClientUCMUpdatePublishedFileResponse', index=1235, number=7326,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientUCMDeletePublishedFile', index=1238, number=7315,
+      name='k_EMsgUCMUpdatePublishedFile', index=1236, number=7327,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientUCMDeletePublishedFileResponse', index=1239, number=7316,
+      name='k_EMsgUCMUpdatePublishedFileResponse', index=1237, number=7328,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientUCMUpdatePublishedFile', index=1240, number=7325,
+      name='k_EMsgUCMDeletePublishedFile', index=1238, number=7329,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientUCMUpdatePublishedFileResponse', index=1241, number=7326,
+      name='k_EMsgUCMDeletePublishedFileResponse', index=1239, number=7330,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgUCMUpdatePublishedFile', index=1242, number=7327,
+      name='k_EMsgUCMUpdatePublishedFileStat', index=1240, number=7331,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgUCMUpdatePublishedFileResponse', index=1243, number=7328,
+      name='k_EMsgUCMReloadPublishedFile', index=1241, number=7337,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgUCMDeletePublishedFile', index=1244, number=7329,
+      name='k_EMsgUCMReloadUserFileListCaches', index=1242, number=7338,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgUCMDeletePublishedFileResponse', index=1245, number=7330,
+      name='k_EMsgUCMPublishedFileReported', index=1243, number=7339,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgUCMUpdatePublishedFileStat', index=1246, number=7331,
+      name='k_EMsgUCMPublishedFilePreviewAdd', index=1244, number=7341,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgUCMReloadPublishedFile', index=1247, number=7337,
+      name='k_EMsgUCMPublishedFilePreviewAddResponse', index=1245, number=7342,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgUCMReloadUserFileListCaches', index=1248, number=7338,
+      name='k_EMsgUCMPublishedFilePreviewRemove', index=1246, number=7343,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgUCMPublishedFileReported', index=1249, number=7339,
+      name='k_EMsgUCMPublishedFilePreviewRemoveResponse', index=1247, number=7344,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgUCMPublishedFilePreviewAdd', index=1250, number=7341,
+      name='k_EMsgUCMPublishedFileSubscribed', index=1248, number=7349,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgUCMPublishedFilePreviewAddResponse', index=1251, number=7342,
+      name='k_EMsgUCMPublishedFileUnsubscribed', index=1249, number=7350,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgUCMPublishedFilePreviewRemove', index=1252, number=7343,
+      name='k_EMsgUCMPublishFile', index=1250, number=7351,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgUCMPublishedFilePreviewRemoveResponse', index=1253, number=7344,
+      name='k_EMsgUCMPublishFileResponse', index=1251, number=7352,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgUCMPublishedFileSubscribed', index=1254, number=7349,
+      name='k_EMsgUCMPublishedFileChildAdd', index=1252, number=7353,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgUCMPublishedFileUnsubscribed', index=1255, number=7350,
+      name='k_EMsgUCMPublishedFileChildAddResponse', index=1253, number=7354,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgUCMPublishFile', index=1256, number=7351,
+      name='k_EMsgUCMPublishedFileChildRemove', index=1254, number=7355,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgUCMPublishFileResponse', index=1257, number=7352,
+      name='k_EMsgUCMPublishedFileChildRemoveResponse', index=1255, number=7356,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgUCMPublishedFileChildAdd', index=1258, number=7353,
+      name='k_EMsgUCMPublishedFileParentChanged', index=1256, number=7359,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgUCMPublishedFileChildAddResponse', index=1259, number=7354,
+      name='k_EMsgClientUCMSetUserPublishedFileAction', index=1257, number=7364,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgUCMPublishedFileChildRemove', index=1260, number=7355,
+      name='k_EMsgClientUCMSetUserPublishedFileActionResponse', index=1258, number=7365,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgUCMPublishedFileChildRemoveResponse', index=1261, number=7356,
+      name='k_EMsgClientUCMEnumeratePublishedFilesByUserAction', index=1259, number=7366,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgUCMPublishedFileParentChanged', index=1262, number=7359,
+      name='k_EMsgClientUCMEnumeratePublishedFilesByUserActionResponse', index=1260, number=7367,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientUCMSetUserPublishedFileAction', index=1263, number=7364,
+      name='k_EMsgUCMGetUserSubscribedFiles', index=1261, number=7369,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientUCMSetUserPublishedFileActionResponse', index=1264, number=7365,
+      name='k_EMsgUCMGetUserSubscribedFilesResponse', index=1262, number=7370,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientUCMEnumeratePublishedFilesByUserAction', index=1265, number=7366,
+      name='k_EMsgUCMFixStatsPublishedFile', index=1263, number=7371,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientUCMEnumeratePublishedFilesByUserActionResponse', index=1266, number=7367,
+      name='k_EMsgClientUCMEnumerateUserSubscribedFilesWithUpdates', index=1264, number=7378,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgUCMGetUserSubscribedFiles', index=1267, number=7369,
+      name='k_EMsgClientUCMEnumerateUserSubscribedFilesWithUpdatesResponse', index=1265, number=7379,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgUCMGetUserSubscribedFilesResponse', index=1268, number=7370,
+      name='k_EMsgUCMPublishedFileContentUpdated', index=1266, number=7380,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgUCMFixStatsPublishedFile', index=1269, number=7371,
+      name='k_EMsgClientUCMPublishedFileUpdated', index=1267, number=7381,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientUCMEnumerateUserSubscribedFilesWithUpdates', index=1270, number=7378,
+      name='k_EMsgClientWorkshopItemChangesRequest', index=1268, number=7382,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientUCMEnumerateUserSubscribedFilesWithUpdatesResponse', index=1271, number=7379,
+      name='k_EMsgClientWorkshopItemChangesResponse', index=1269, number=7383,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgUCMPublishedFileContentUpdated', index=1272, number=7380,
+      name='k_EMsgFSBase', index=1270, number=7500,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientUCMPublishedFileUpdated', index=1273, number=7381,
+      name='k_EMsgClientRichPresenceUpload', index=1271, number=7501,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientWorkshopItemChangesRequest', index=1274, number=7382,
+      name='k_EMsgClientRichPresenceRequest', index=1272, number=7502,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientWorkshopItemChangesResponse', index=1275, number=7383,
+      name='k_EMsgClientRichPresenceInfo', index=1273, number=7503,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgFSBase', index=1276, number=7500,
+      name='k_EMsgFSRichPresenceRequest', index=1274, number=7504,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientRichPresenceUpload', index=1277, number=7501,
+      name='k_EMsgFSRichPresenceResponse', index=1275, number=7505,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientRichPresenceRequest', index=1278, number=7502,
+      name='k_EMsgFSComputeFrenematrix', index=1276, number=7506,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientRichPresenceInfo', index=1279, number=7503,
+      name='k_EMsgFSComputeFrenematrixResponse', index=1277, number=7507,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgFSRichPresenceRequest', index=1280, number=7504,
+      name='k_EMsgFSPlayStatusNotification', index=1278, number=7508,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgFSRichPresenceResponse', index=1281, number=7505,
+      name='k_EMsgFSAddOrRemoveFollower', index=1279, number=7510,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgFSComputeFrenematrix', index=1282, number=7506,
+      name='k_EMsgFSAddOrRemoveFollowerResponse', index=1280, number=7511,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgFSComputeFrenematrixResponse', index=1283, number=7507,
+      name='k_EMsgFSUpdateFollowingList', index=1281, number=7512,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgFSPlayStatusNotification', index=1284, number=7508,
+      name='k_EMsgFSCommentNotification', index=1282, number=7513,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgFSAddOrRemoveFollower', index=1285, number=7510,
+      name='k_EMsgFSCommentNotificationViewed', index=1283, number=7514,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgFSAddOrRemoveFollowerResponse', index=1286, number=7511,
+      name='k_EMsgClientFSGetFollowerCount', index=1284, number=7515,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgFSUpdateFollowingList', index=1287, number=7512,
+      name='k_EMsgClientFSGetFollowerCountResponse', index=1285, number=7516,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgFSCommentNotification', index=1288, number=7513,
+      name='k_EMsgClientFSGetIsFollowing', index=1286, number=7517,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgFSCommentNotificationViewed', index=1289, number=7514,
+      name='k_EMsgClientFSGetIsFollowingResponse', index=1287, number=7518,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientFSGetFollowerCount', index=1290, number=7515,
+      name='k_EMsgClientFSEnumerateFollowingList', index=1288, number=7519,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientFSGetFollowerCountResponse', index=1291, number=7516,
+      name='k_EMsgClientFSEnumerateFollowingListResponse', index=1289, number=7520,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientFSGetIsFollowing', index=1292, number=7517,
+      name='k_EMsgFSGetPendingNotificationCount', index=1290, number=7521,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientFSGetIsFollowingResponse', index=1293, number=7518,
+      name='k_EMsgFSGetPendingNotificationCountResponse', index=1291, number=7522,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientFSEnumerateFollowingList', index=1294, number=7519,
+      name='k_EMsgClientChatOfflineMessageNotification', index=1292, number=7523,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientFSEnumerateFollowingListResponse', index=1295, number=7520,
+      name='k_EMsgClientChatRequestOfflineMessageCount', index=1293, number=7524,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgFSGetPendingNotificationCount', index=1296, number=7521,
+      name='k_EMsgClientChatGetFriendMessageHistory', index=1294, number=7525,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgFSGetPendingNotificationCountResponse', index=1297, number=7522,
+      name='k_EMsgClientChatGetFriendMessageHistoryResponse', index=1295, number=7526,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientChatOfflineMessageNotification', index=1298, number=7523,
+      name='k_EMsgClientChatGetFriendMessageHistoryForOfflineMessages', index=1296, number=7527,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientChatRequestOfflineMessageCount', index=1299, number=7524,
+      name='k_EMsgClientFSGetFriendsSteamLevels', index=1297, number=7528,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientChatGetFriendMessageHistory', index=1300, number=7525,
+      name='k_EMsgClientFSGetFriendsSteamLevelsResponse', index=1298, number=7529,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientChatGetFriendMessageHistoryResponse', index=1301, number=7526,
+      name='k_EMsgAMRequestFriendData', index=1299, number=7530,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientChatGetFriendMessageHistoryForOfflineMessages', index=1302, number=7527,
+      name='k_EMsgDRMRange2', index=1300, number=7600,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientFSGetFriendsSteamLevels', index=1303, number=7528,
+      name='k_EMsgCEGVersionSetEnableDisableRequest', index=1301, number=7600,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientFSGetFriendsSteamLevelsResponse', index=1304, number=7529,
+      name='k_EMsgCEGVersionSetEnableDisableResponse', index=1302, number=7601,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgAMRequestFriendData', index=1305, number=7530,
+      name='k_EMsgCEGPropStatusDRMSRequest', index=1303, number=7602,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgDRMRange2', index=1306, number=7600,
+      name='k_EMsgCEGPropStatusDRMSResponse', index=1304, number=7603,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgCEGVersionSetEnableDisableRequest', index=1307, number=7600,
+      name='k_EMsgCEGWhackFailureReportRequest', index=1305, number=7604,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgCEGVersionSetEnableDisableResponse', index=1308, number=7601,
+      name='k_EMsgCEGWhackFailureReportResponse', index=1306, number=7605,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgCEGPropStatusDRMSRequest', index=1309, number=7602,
+      name='k_EMsgDRMSFetchVersionSet', index=1307, number=7606,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgCEGPropStatusDRMSResponse', index=1310, number=7603,
+      name='k_EMsgDRMSFetchVersionSetResponse', index=1308, number=7607,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgCEGWhackFailureReportRequest', index=1311, number=7604,
+      name='k_EMsgEconBase', index=1309, number=7700,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgCEGWhackFailureReportResponse', index=1312, number=7605,
+      name='k_EMsgEconTrading_InitiateTradeRequest', index=1310, number=7701,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgDRMSFetchVersionSet', index=1313, number=7606,
+      name='k_EMsgEconTrading_InitiateTradeProposed', index=1311, number=7702,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgDRMSFetchVersionSetResponse', index=1314, number=7607,
+      name='k_EMsgEconTrading_InitiateTradeResponse', index=1312, number=7703,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgEconBase', index=1315, number=7700,
+      name='k_EMsgEconTrading_InitiateTradeResult', index=1313, number=7704,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgEconTrading_InitiateTradeRequest', index=1316, number=7701,
+      name='k_EMsgEconTrading_StartSession', index=1314, number=7705,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgEconTrading_InitiateTradeProposed', index=1317, number=7702,
+      name='k_EMsgEconTrading_CancelTradeRequest', index=1315, number=7706,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgEconTrading_InitiateTradeResponse', index=1318, number=7703,
+      name='k_EMsgEconFlushInventoryCache', index=1316, number=7707,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgEconTrading_InitiateTradeResult', index=1319, number=7704,
+      name='k_EMsgEconFlushInventoryCacheResponse', index=1317, number=7708,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgEconTrading_StartSession', index=1320, number=7705,
+      name='k_EMsgEconCDKeyProcessTransaction', index=1318, number=7711,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgEconTrading_CancelTradeRequest', index=1321, number=7706,
+      name='k_EMsgEconCDKeyProcessTransactionResponse', index=1319, number=7712,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgEconFlushInventoryCache', index=1322, number=7707,
+      name='k_EMsgEconGetErrorLogs', index=1320, number=7713,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgEconFlushInventoryCacheResponse', index=1323, number=7708,
+      name='k_EMsgEconGetErrorLogsResponse', index=1321, number=7714,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgEconCDKeyProcessTransaction', index=1324, number=7711,
+      name='k_EMsgRMRange', index=1322, number=7800,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgEconCDKeyProcessTransactionResponse', index=1325, number=7712,
+      name='k_EMsgRMTestVerisignOTP', index=1323, number=7800,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgEconGetErrorLogs', index=1326, number=7713,
+      name='k_EMsgRMTestVerisignOTPResponse', index=1324, number=7801,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgEconGetErrorLogsResponse', index=1327, number=7714,
+      name='k_EMsgRMDeleteMemcachedKeys', index=1325, number=7803,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgRMRange', index=1328, number=7800,
+      name='k_EMsgRMRemoteInvoke', index=1326, number=7804,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgRMTestVerisignOTP', index=1329, number=7800,
+      name='k_EMsgBadLoginIPList', index=1327, number=7805,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgRMTestVerisignOTPResponse', index=1330, number=7801,
+      name='k_EMsgRMMsgTraceAddTrigger', index=1328, number=7806,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgRMDeleteMemcachedKeys', index=1331, number=7803,
+      name='k_EMsgRMMsgTraceRemoveTrigger', index=1329, number=7807,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgRMRemoteInvoke', index=1332, number=7804,
+      name='k_EMsgRMMsgTraceEvent', index=1330, number=7808,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBadLoginIPList', index=1333, number=7805,
+      name='k_EMsgUGSBase', index=1331, number=7900,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgRMMsgTraceAddTrigger', index=1334, number=7806,
+      name='k_EMsgUGSUpdateGlobalStats', index=1332, number=7900,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgRMMsgTraceRemoveTrigger', index=1335, number=7807,
+      name='k_EMsgClientUGSGetGlobalStats', index=1333, number=7901,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgRMMsgTraceEvent', index=1336, number=7808,
+      name='k_EMsgClientUGSGetGlobalStatsResponse', index=1334, number=7902,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgUGSBase', index=1337, number=7900,
+      name='k_EMsgStoreBase', index=1335, number=8000,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgUGSUpdateGlobalStats', index=1338, number=7900,
+      name='k_EMsgUMQBase', index=1336, number=8100,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientUGSGetGlobalStats', index=1339, number=7901,
+      name='k_EMsgUMQLogonRequest', index=1337, number=8100,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientUGSGetGlobalStatsResponse', index=1340, number=7902,
+      name='k_EMsgUMQLogonResponse', index=1338, number=8101,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgStoreBase', index=1341, number=8000,
+      name='k_EMsgUMQLogoffRequest', index=1339, number=8102,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgUMQBase', index=1342, number=8100,
+      name='k_EMsgUMQLogoffResponse', index=1340, number=8103,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgUMQLogonRequest', index=1343, number=8100,
+      name='k_EMsgUMQSendChatMessage', index=1341, number=8104,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgUMQLogonResponse', index=1344, number=8101,
+      name='k_EMsgUMQIncomingChatMessage', index=1342, number=8105,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgUMQLogoffRequest', index=1345, number=8102,
+      name='k_EMsgUMQPoll', index=1343, number=8106,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgUMQLogoffResponse', index=1346, number=8103,
+      name='k_EMsgUMQPollResults', index=1344, number=8107,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgUMQSendChatMessage', index=1347, number=8104,
+      name='k_EMsgUMQ2AM_ClientMsgBatch', index=1345, number=8108,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgUMQIncomingChatMessage', index=1348, number=8105,
+      name='k_EMsgWorkshopBase', index=1346, number=8200,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgUMQPoll', index=1349, number=8106,
+      name='k_EMsgWebAPIBase', index=1347, number=8300,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgUMQPollResults', index=1350, number=8107,
+      name='k_EMsgWebAPIValidateOAuth2Token', index=1348, number=8300,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgUMQ2AM_ClientMsgBatch', index=1351, number=8108,
+      name='k_EMsgWebAPIValidateOAuth2TokenResponse', index=1349, number=8301,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgWorkshopBase', index=1352, number=8200,
+      name='k_EMsgWebAPIRegisterGCInterfaces', index=1350, number=8303,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgWebAPIBase', index=1353, number=8300,
+      name='k_EMsgWebAPIInvalidateOAuthClientCache', index=1351, number=8304,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgWebAPIValidateOAuth2Token', index=1354, number=8300,
+      name='k_EMsgWebAPIInvalidateOAuthTokenCache', index=1352, number=8305,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgWebAPIValidateOAuth2TokenResponse', index=1355, number=8301,
+      name='k_EMsgWebAPISetSecrets', index=1353, number=8306,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgWebAPIRegisterGCInterfaces', index=1356, number=8303,
+      name='k_EMsgBackpackBase', index=1354, number=8400,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgWebAPIInvalidateOAuthClientCache', index=1357, number=8304,
+      name='k_EMsgBackpackAddToCurrency', index=1355, number=8401,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgWebAPIInvalidateOAuthTokenCache', index=1358, number=8305,
+      name='k_EMsgBackpackAddToCurrencyResponse', index=1356, number=8402,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgWebAPISetSecrets', index=1359, number=8306,
+      name='k_EMsgCREBase', index=1357, number=8500,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBackpackBase', index=1360, number=8400,
+      name='k_EMsgCREItemVoteSummary', index=1358, number=8503,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBackpackAddToCurrency', index=1361, number=8401,
+      name='k_EMsgCREItemVoteSummaryResponse', index=1359, number=8504,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBackpackAddToCurrencyResponse', index=1362, number=8402,
+      name='k_EMsgCREUpdateUserPublishedItemVote', index=1360, number=8507,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgCREBase', index=1363, number=8500,
+      name='k_EMsgCREUpdateUserPublishedItemVoteResponse', index=1361, number=8508,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgCREItemVoteSummary', index=1364, number=8503,
+      name='k_EMsgCREGetUserPublishedItemVoteDetails', index=1362, number=8509,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgCREItemVoteSummaryResponse', index=1365, number=8504,
+      name='k_EMsgCREGetUserPublishedItemVoteDetailsResponse', index=1363, number=8510,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgCREUpdateUserPublishedItemVote', index=1366, number=8507,
+      name='k_EMsgSecretsBase', index=1364, number=8600,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgCREUpdateUserPublishedItemVoteResponse', index=1367, number=8508,
+      name='k_EMsgSecretsRequestCredentialPair', index=1365, number=8600,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgCREGetUserPublishedItemVoteDetails', index=1368, number=8509,
+      name='k_EMsgSecretsCredentialPairResponse', index=1366, number=8601,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgCREGetUserPublishedItemVoteDetailsResponse', index=1369, number=8510,
+      name='k_EMsgBoxMonitorBase', index=1367, number=8700,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgSecretsBase', index=1370, number=8600,
+      name='k_EMsgBoxMonitorReportRequest', index=1368, number=8700,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgSecretsRequestCredentialPair', index=1371, number=8600,
+      name='k_EMsgBoxMonitorReportResponse', index=1369, number=8701,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgSecretsCredentialPairResponse', index=1372, number=8601,
+      name='k_EMsgLogsinkBase', index=1370, number=8800,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBoxMonitorBase', index=1373, number=8700,
+      name='k_EMsgLogsinkWriteReport', index=1371, number=8800,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBoxMonitorReportRequest', index=1374, number=8700,
+      name='k_EMsgPICSBase', index=1372, number=8900,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBoxMonitorReportResponse', index=1375, number=8701,
+      name='k_EMsgClientPICSChangesSinceRequest', index=1373, number=8901,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgLogsinkBase', index=1376, number=8800,
+      name='k_EMsgClientPICSChangesSinceResponse', index=1374, number=8902,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgLogsinkWriteReport', index=1377, number=8800,
+      name='k_EMsgClientPICSProductInfoRequest', index=1375, number=8903,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgPICSBase', index=1378, number=8900,
+      name='k_EMsgClientPICSProductInfoResponse', index=1376, number=8904,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientPICSChangesSinceRequest', index=1379, number=8901,
+      name='k_EMsgClientPICSAccessTokenRequest', index=1377, number=8905,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientPICSChangesSinceResponse', index=1380, number=8902,
+      name='k_EMsgClientPICSAccessTokenResponse', index=1378, number=8906,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientPICSProductInfoRequest', index=1381, number=8903,
+      name='k_EMsgWorkerProcess', index=1379, number=9000,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientPICSProductInfoResponse', index=1382, number=8904,
+      name='k_EMsgWorkerProcessPingRequest', index=1380, number=9000,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientPICSAccessTokenRequest', index=1383, number=8905,
+      name='k_EMsgWorkerProcessPingResponse', index=1381, number=9001,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientPICSAccessTokenResponse', index=1384, number=8906,
+      name='k_EMsgWorkerProcessShutdown', index=1382, number=9002,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgWorkerProcess', index=1385, number=9000,
+      name='k_EMsgDRMWorkerProcess', index=1383, number=9100,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgWorkerProcessPingRequest', index=1386, number=9000,
+      name='k_EMsgDRMWorkerProcessDRMAndSign', index=1384, number=9100,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgWorkerProcessPingResponse', index=1387, number=9001,
+      name='k_EMsgDRMWorkerProcessDRMAndSignResponse', index=1385, number=9101,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgWorkerProcessShutdown', index=1388, number=9002,
+      name='k_EMsgDRMWorkerProcessSteamworksInfoRequest', index=1386, number=9102,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgDRMWorkerProcess', index=1389, number=9100,
+      name='k_EMsgDRMWorkerProcessSteamworksInfoResponse', index=1387, number=9103,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgDRMWorkerProcessDRMAndSign', index=1390, number=9100,
+      name='k_EMsgDRMWorkerProcessInstallDRMDLLRequest', index=1388, number=9104,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgDRMWorkerProcessDRMAndSignResponse', index=1391, number=9101,
+      name='k_EMsgDRMWorkerProcessInstallDRMDLLResponse', index=1389, number=9105,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgDRMWorkerProcessSteamworksInfoRequest', index=1392, number=9102,
+      name='k_EMsgDRMWorkerProcessSecretIdStringRequest', index=1390, number=9106,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgDRMWorkerProcessSteamworksInfoResponse', index=1393, number=9103,
+      name='k_EMsgDRMWorkerProcessSecretIdStringResponse', index=1391, number=9107,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgDRMWorkerProcessInstallDRMDLLRequest', index=1394, number=9104,
+      name='k_EMsgDRMWorkerProcessInstallProcessedFilesRequest', index=1392, number=9110,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgDRMWorkerProcessInstallDRMDLLResponse', index=1395, number=9105,
+      name='k_EMsgDRMWorkerProcessInstallProcessedFilesResponse', index=1393, number=9111,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgDRMWorkerProcessSecretIdStringRequest', index=1396, number=9106,
+      name='k_EMsgDRMWorkerProcessExamineBlobRequest', index=1394, number=9112,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgDRMWorkerProcessSecretIdStringResponse', index=1397, number=9107,
+      name='k_EMsgDRMWorkerProcessExamineBlobResponse', index=1395, number=9113,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgDRMWorkerProcessInstallProcessedFilesRequest', index=1398, number=9110,
+      name='k_EMsgDRMWorkerProcessDescribeSecretRequest', index=1396, number=9114,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgDRMWorkerProcessInstallProcessedFilesResponse', index=1399, number=9111,
+      name='k_EMsgDRMWorkerProcessDescribeSecretResponse', index=1397, number=9115,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgDRMWorkerProcessExamineBlobRequest', index=1400, number=9112,
+      name='k_EMsgDRMWorkerProcessBackfillOriginalRequest', index=1398, number=9116,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgDRMWorkerProcessExamineBlobResponse', index=1401, number=9113,
+      name='k_EMsgDRMWorkerProcessBackfillOriginalResponse', index=1399, number=9117,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgDRMWorkerProcessDescribeSecretRequest', index=1402, number=9114,
+      name='k_EMsgDRMWorkerProcessValidateDRMDLLRequest', index=1400, number=9118,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgDRMWorkerProcessDescribeSecretResponse', index=1403, number=9115,
+      name='k_EMsgDRMWorkerProcessValidateDRMDLLResponse', index=1401, number=9119,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgDRMWorkerProcessBackfillOriginalRequest', index=1404, number=9116,
+      name='k_EMsgDRMWorkerProcessValidateFileRequest', index=1402, number=9120,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgDRMWorkerProcessBackfillOriginalResponse', index=1405, number=9117,
+      name='k_EMsgDRMWorkerProcessValidateFileResponse', index=1403, number=9121,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgDRMWorkerProcessValidateDRMDLLRequest', index=1406, number=9118,
+      name='k_EMsgDRMWorkerProcessSplitAndInstallRequest', index=1404, number=9122,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgDRMWorkerProcessValidateDRMDLLResponse', index=1407, number=9119,
+      name='k_EMsgDRMWorkerProcessSplitAndInstallResponse', index=1405, number=9123,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgDRMWorkerProcessValidateFileRequest', index=1408, number=9120,
+      name='k_EMsgDRMWorkerProcessGetBlobRequest', index=1406, number=9124,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgDRMWorkerProcessValidateFileResponse', index=1409, number=9121,
+      name='k_EMsgDRMWorkerProcessGetBlobResponse', index=1407, number=9125,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgDRMWorkerProcessSplitAndInstallRequest', index=1410, number=9122,
+      name='k_EMsgDRMWorkerProcessEvaluateCrashRequest', index=1408, number=9126,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgDRMWorkerProcessSplitAndInstallResponse', index=1411, number=9123,
+      name='k_EMsgDRMWorkerProcessEvaluateCrashResponse', index=1409, number=9127,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgDRMWorkerProcessGetBlobRequest', index=1412, number=9124,
+      name='k_EMsgDRMWorkerProcessAnalyzeFileRequest', index=1410, number=9128,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgDRMWorkerProcessGetBlobResponse', index=1413, number=9125,
+      name='k_EMsgDRMWorkerProcessAnalyzeFileResponse', index=1411, number=9129,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgDRMWorkerProcessEvaluateCrashRequest', index=1414, number=9126,
+      name='k_EMsgDRMWorkerProcessUnpackBlobRequest', index=1412, number=9130,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgDRMWorkerProcessEvaluateCrashResponse', index=1415, number=9127,
+      name='k_EMsgDRMWorkerProcessUnpackBlobResponse', index=1413, number=9131,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgDRMWorkerProcessAnalyzeFileRequest', index=1416, number=9128,
+      name='k_EMsgDRMWorkerProcessInstallAllRequest', index=1414, number=9132,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgDRMWorkerProcessAnalyzeFileResponse', index=1417, number=9129,
+      name='k_EMsgDRMWorkerProcessInstallAllResponse', index=1415, number=9133,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgDRMWorkerProcessUnpackBlobRequest', index=1418, number=9130,
+      name='k_EMsgTestWorkerProcess', index=1416, number=9200,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgDRMWorkerProcessUnpackBlobResponse', index=1419, number=9131,
+      name='k_EMsgTestWorkerProcessLoadUnloadModuleRequest', index=1417, number=9200,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgDRMWorkerProcessInstallAllRequest', index=1420, number=9132,
+      name='k_EMsgTestWorkerProcessLoadUnloadModuleResponse', index=1418, number=9201,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgDRMWorkerProcessInstallAllResponse', index=1421, number=9133,
+      name='k_EMsgTestWorkerProcessServiceModuleCallRequest', index=1419, number=9202,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgTestWorkerProcess', index=1422, number=9200,
+      name='k_EMsgTestWorkerProcessServiceModuleCallResponse', index=1420, number=9203,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgTestWorkerProcessLoadUnloadModuleRequest', index=1423, number=9200,
+      name='k_EMsgQuestServerBase', index=1421, number=9300,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgTestWorkerProcessLoadUnloadModuleResponse', index=1424, number=9201,
+      name='k_EMsgClientGetEmoticonList', index=1422, number=9330,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgTestWorkerProcessServiceModuleCallRequest', index=1425, number=9202,
+      name='k_EMsgClientEmoticonList', index=1423, number=9331,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgTestWorkerProcessServiceModuleCallResponse', index=1426, number=9203,
+      name='k_EMsgSLCBase', index=1424, number=9400,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgQuestServerBase', index=1427, number=9300,
+      name='k_EMsgSLCUserSessionStatus', index=1425, number=9400,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientGetEmoticonList', index=1428, number=9330,
+      name='k_EMsgSLCRequestUserSessionStatus', index=1426, number=9401,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientEmoticonList', index=1429, number=9331,
+      name='k_EMsgSLCSharedLicensesLockStatus', index=1427, number=9402,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgSLCBase', index=1430, number=9400,
+      name='k_EMsgClientSharedLibraryLockStatus', index=1428, number=9405,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgSLCUserSessionStatus', index=1431, number=9400,
+      name='k_EMsgClientSharedLibraryStopPlaying', index=1429, number=9406,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgSLCRequestUserSessionStatus', index=1432, number=9401,
+      name='k_EMsgSLCOwnerLibraryChanged', index=1430, number=9407,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgSLCSharedLicensesLockStatus', index=1433, number=9402,
+      name='k_EMsgSLCSharedLibraryChanged', index=1431, number=9408,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientSharedLibraryLockStatus', index=1434, number=9405,
+      name='k_EMsgRemoteClientBase', index=1432, number=9500,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientSharedLibraryStopPlaying', index=1435, number=9406,
+      name='k_EMsgRemoteClientAuth_OBSOLETE', index=1433, number=9500,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgSLCOwnerLibraryChanged', index=1436, number=9407,
+      name='k_EMsgRemoteClientAuthResponse_OBSOLETE', index=1434, number=9501,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgSLCSharedLibraryChanged', index=1437, number=9408,
+      name='k_EMsgRemoteClientAppStatus', index=1435, number=9502,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgRemoteClientBase', index=1438, number=9500,
+      name='k_EMsgRemoteClientStartStream', index=1436, number=9503,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgRemoteClientAuth_OBSOLETE', index=1439, number=9500,
+      name='k_EMsgRemoteClientStartStreamResponse', index=1437, number=9504,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgRemoteClientAuthResponse_OBSOLETE', index=1440, number=9501,
+      name='k_EMsgRemoteClientPing', index=1438, number=9505,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgRemoteClientAppStatus', index=1441, number=9502,
+      name='k_EMsgRemoteClientPingResponse', index=1439, number=9506,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgRemoteClientStartStream', index=1442, number=9503,
+      name='k_EMsgClientUnlockStreaming', index=1440, number=9507,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgRemoteClientStartStreamResponse', index=1443, number=9504,
+      name='k_EMsgClientUnlockStreamingResponse', index=1441, number=9508,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgRemoteClientPing', index=1444, number=9505,
+      name='k_EMsgRemoteClientAcceptEULA', index=1442, number=9509,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgRemoteClientPingResponse', index=1445, number=9506,
+      name='k_EMsgRemoteClientGetControllerConfig', index=1443, number=9510,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientUnlockStreaming', index=1446, number=9507,
+      name='k_EMsgRemoteClientGetControllerConfigResponse', index=1444, number=9511,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientUnlockStreamingResponse', index=1447, number=9508,
+      name='k_EMsgRemoteClientStreamingEnabled', index=1445, number=9512,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgRemoteClientAcceptEULA', index=1448, number=9509,
+      name='k_EMsgClientUnlockHEVC', index=1446, number=9513,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgRemoteClientGetControllerConfig', index=1449, number=9510,
+      name='k_EMsgClientUnlockHEVCResponse', index=1447, number=9514,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgRemoteClientGetControllerConfigResponse', index=1450, number=9511,
+      name='k_EMsgRemoteClientStatusRequest', index=1448, number=9515,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgRemoteClientStreamingEnabled', index=1451, number=9512,
+      name='k_EMsgRemoteClientStatusResponse', index=1449, number=9516,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientUnlockHEVC', index=1452, number=9513,
+      name='k_EMsgClientConcurrentSessionsBase', index=1450, number=9600,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientUnlockHEVCResponse', index=1453, number=9514,
+      name='k_EMsgClientPlayingSessionState', index=1451, number=9600,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgRemoteClientStatusRequest', index=1454, number=9515,
+      name='k_EMsgClientKickPlayingSession', index=1452, number=9601,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgRemoteClientStatusResponse', index=1455, number=9516,
+      name='k_EMsgClientBroadcastBase', index=1453, number=9700,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientConcurrentSessionsBase', index=1456, number=9600,
+      name='k_EMsgClientBroadcastInit', index=1454, number=9700,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientPlayingSessionState', index=1457, number=9600,
+      name='k_EMsgClientBroadcastFrames', index=1455, number=9701,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientKickPlayingSession', index=1458, number=9601,
+      name='k_EMsgClientBroadcastDisconnect', index=1456, number=9702,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientBroadcastBase', index=1459, number=9700,
+      name='k_EMsgClientBroadcastScreenshot', index=1457, number=9703,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientBroadcastInit', index=1460, number=9700,
+      name='k_EMsgClientBroadcastUploadConfig', index=1458, number=9704,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientBroadcastFrames', index=1461, number=9701,
+      name='k_EMsgBaseClient3', index=1459, number=9800,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientBroadcastDisconnect', index=1462, number=9702,
+      name='k_EMsgClientVoiceCallPreAuthorize', index=1460, number=9800,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientBroadcastScreenshot', index=1463, number=9703,
+      name='k_EMsgClientVoiceCallPreAuthorizeResponse', index=1461, number=9801,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientBroadcastUploadConfig', index=1464, number=9704,
+      name='k_EMsgClientServerTimestampRequest', index=1462, number=9802,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBaseClient3', index=1465, number=9800,
+      name='k_EMsgClientServerTimestampResponse', index=1463, number=9803,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientVoiceCallPreAuthorize', index=1466, number=9800,
+      name='k_EMsgServiceMethodCallFromClientNonAuthed', index=1464, number=9804,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientVoiceCallPreAuthorizeResponse', index=1467, number=9801,
+      name='k_EMsgClientHello', index=1465, number=9805,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientServerTimestampRequest', index=1468, number=9802,
+      name='k_EMsgClientEnableOrDisableDownloads', index=1466, number=9806,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientServerTimestampResponse', index=1469, number=9803,
+      name='k_EMsgClientEnableOrDisableDownloadsResponse', index=1467, number=9807,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientLANP2PBase', index=1470, number=9900,
+      name='k_EMsgClientLANP2PBase', index=1468, number=9900,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientLANP2PRequestChunk', index=1471, number=9900,
+      name='k_EMsgClientLANP2PRequestChunk', index=1469, number=9900,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientLANP2PRequestChunkResponse', index=1472, number=9901,
+      name='k_EMsgClientLANP2PRequestChunkResponse', index=1470, number=9901,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientLANP2PMax', index=1473, number=9999,
+      name='k_EMsgClientLANP2PMax', index=1471, number=9999,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBaseWatchdogServer', index=1474, number=10000,
+      name='k_EMsgBaseWatchdogServer', index=1472, number=10000,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgNotifyWatchdog', index=1475, number=10000,
+      name='k_EMsgNotifyWatchdog', index=1473, number=10000,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientSiteLicenseBase', index=1476, number=10100,
+      name='k_EMsgClientSiteLicenseBase', index=1474, number=10100,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientSiteLicenseSiteInfoNotification', index=1477, number=10100,
+      name='k_EMsgClientSiteLicenseSiteInfoNotification', index=1475, number=10100,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientSiteLicenseCheckout', index=1478, number=10101,
+      name='k_EMsgClientSiteLicenseCheckout', index=1476, number=10101,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientSiteLicenseCheckoutResponse', index=1479, number=10102,
+      name='k_EMsgClientSiteLicenseCheckoutResponse', index=1477, number=10102,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientSiteLicenseGetAvailableSeats', index=1480, number=10103,
+      name='k_EMsgClientSiteLicenseGetAvailableSeats', index=1478, number=10103,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientSiteLicenseGetAvailableSeatsResponse', index=1481, number=10104,
+      name='k_EMsgClientSiteLicenseGetAvailableSeatsResponse', index=1479, number=10104,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientSiteLicenseGetContentCacheInfo', index=1482, number=10105,
+      name='k_EMsgClientSiteLicenseGetContentCacheInfo', index=1480, number=10105,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgClientSiteLicenseGetContentCacheInfoResponse', index=1483, number=10106,
+      name='k_EMsgClientSiteLicenseGetContentCacheInfoResponse', index=1481, number=10106,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBaseChatServer', index=1484, number=12000,
+      name='k_EMsgBaseChatServer', index=1482, number=12000,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgChatServerGetPendingNotificationCount', index=1485, number=12000,
+      name='k_EMsgChatServerGetPendingNotificationCount', index=1483, number=12000,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgChatServerGetPendingNotificationCountResponse', index=1486, number=12001,
+      name='k_EMsgChatServerGetPendingNotificationCountResponse', index=1484, number=12001,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgBaseSecretServer', index=1487, number=12100,
+      name='k_EMsgBaseSecretServer', index=1485, number=12100,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
-      name='k_EMsgServerSecretChanged', index=1488, number=12100,
+      name='k_EMsgServerSecretChanged', index=1486, number=12100,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
   ],
   containing_type=None,
-  serialized_options=_b('\020\001'),
+  serialized_options=b'\020\001',
   serialized_start=30,
-  serialized_end=53148,
+  serialized_end=53106,
 )
 _sym_db.RegisterEnumDescriptor(_EMSG)
 
@@ -6000,68 +7479,83 @@ _ECLIENTPERSONASTATEFLAG = _descriptor.EnumDescriptor(
   full_name='EClientPersonaStateFlag',
   filename=None,
   file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
   values=[
     _descriptor.EnumValueDescriptor(
       name='k_EClientPersonaStateFlagStatus', index=0, number=1,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EClientPersonaStateFlagPlayerName', index=1, number=2,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EClientPersonaStateFlagQueryPort', index=2, number=4,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EClientPersonaStateFlagSourceID', index=3, number=8,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EClientPersonaStateFlagPresence', index=4, number=16,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EClientPersonaStateFlagLastSeen', index=5, number=64,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EClientPersonaStateFlagUserClanRank', index=6, number=128,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EClientPersonaStateGameExtraInfo', index=7, number=256,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EClientPersonaStateGameDataBlob', index=8, number=512,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EClientPersonaStateFlagClanData', index=9, number=1024,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EClientPersonaStateFlagFacebook', index=10, number=2048,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EClientPersonaStateFlagRichPresence', index=11, number=4096,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EClientPersonaStateFlagBroadcast', index=12, number=8192,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EClientPersonaStateFlagWatching', index=13, number=16384,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
   ],
   containing_type=None,
   serialized_options=None,
-  serialized_start=53151,
-  serialized_end=53742,
+  serialized_start=53109,
+  serialized_end=53700,
 )
 _sym_db.RegisterEnumDescriptor(_ECLIENTPERSONASTATEFLAG)
 
@@ -6071,32 +7565,38 @@ _EMSGCLANACCOUNTFLAGS = _descriptor.EnumDescriptor(
   full_name='EMsgClanAccountFlags',
   filename=None,
   file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
   values=[
     _descriptor.EnumValueDescriptor(
       name='k_EMsgClanAccountFlagPublic', index=0, number=1,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgClanAccountFlagLarge', index=1, number=2,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgClanAccountFlagLocked', index=2, number=4,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgClanAccountFlagDisabled', index=3, number=8,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMsgClanAccountFlagOGG', index=4, number=16,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
   ],
   containing_type=None,
   serialized_options=None,
-  serialized_start=53745,
-  serialized_end=53930,
+  serialized_start=53703,
+  serialized_end=53888,
 )
 _sym_db.RegisterEnumDescriptor(_EMSGCLANACCOUNTFLAGS)
 
@@ -6106,52 +7606,63 @@ _ESTEAMREVIEWSCORE = _descriptor.EnumDescriptor(
   full_name='ESteamReviewScore',
   filename=None,
   file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
   values=[
     _descriptor.EnumValueDescriptor(
       name='k_ESteamReviewScore_OverwhelminglyPositive', index=0, number=9,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_ESteamReviewScore_VeryPositive', index=1, number=8,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_ESteamReviewScore_Positive', index=2, number=7,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_ESteamReviewScore_MostlyPositive', index=3, number=6,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_ESteamReviewScore_Mixed', index=4, number=5,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_ESteamReviewScore_MostlyNegative', index=5, number=4,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_ESteamReviewScore_Negative', index=6, number=3,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_ESteamReviewScore_VeryNegative', index=7, number=2,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_ESteamReviewScore_OverwhelminglyNegative', index=8, number=1,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_ESteamReviewScore_None', index=9, number=0,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
   ],
   containing_type=None,
   serialized_options=None,
-  serialized_start=53933,
-  serialized_end=54333,
+  serialized_start=53891,
+  serialized_end=54291,
 )
 _sym_db.RegisterEnumDescriptor(_ESTEAMREVIEWSCORE)
 
@@ -6259,8 +7770,8 @@ k_EMsgAIGetAppList = 425
 k_EMsgAIGetAppListResponse = 426
 k_EMsgAISGetCouponDefinition = 429
 k_EMsgAISGetCouponDefinitionResponse = 430
-k_EMsgAISUpdateSlaveContentDescription = 431
-k_EMsgAISUpdateSlaveContentDescriptionResponse = 432
+k_EMsgAISUpdateSubordinateContentDescription = 431
+k_EMsgAISUpdateSubordinateContentDescriptionResponse = 432
 k_EMsgAISTestEnableGC = 433
 k_EMsgBaseAM = 500
 k_EMsgAMUpdateUserBanRequest = 504
@@ -6410,7 +7921,6 @@ k_EMsgClientLoggedOff = 757
 k_EMsgGSApprove = 758
 k_EMsgGSDeny = 759
 k_EMsgGSKick = 760
-k_EMsgClientCreateAcctResponse = 761
 k_EMsgClientPurchaseResponse = 763
 k_EMsgClientPing = 764
 k_EMsgClientNOP = 765
@@ -6569,8 +8079,6 @@ k_EMsgBSInitGCBankXferTxnResponse = 1422
 k_EMsgBSCommitGCTxn = 1425
 k_EMsgBSQueryTransactionStatus = 1426
 k_EMsgBSQueryTransactionStatusResponse = 1427
-k_EMsgBSQueryPaymentInstUsage = 1431
-k_EMsgBSQueryPaymentInstResponse = 1432
 k_EMsgBSQueryTxnExtendedInfo = 1433
 k_EMsgBSQueryTxnExtendedInfoResponse = 1434
 k_EMsgBSUpdateConversionRates = 1435
@@ -6795,10 +8303,6 @@ k_EMsgAMGetChatBanList = 4065
 k_EMsgAMGetChatBanListResponse = 4066
 k_EMsgAMUnBanFromChat = 4067
 k_EMsgAMSetClanDetails = 4068
-k_EMsgAMGetAccountLinks = 4069
-k_EMsgAMGetAccountLinksResponse = 4070
-k_EMsgAMSetAccountLinks = 4071
-k_EMsgAMSetAccountLinksResponse = 4072
 k_EMsgUGSGetUserGameStats = 4073
 k_EMsgUGSGetUserGameStatsResponse = 4074
 k_EMsgAMCheckClanMembership = 4075
@@ -6887,7 +8391,6 @@ k_EMsgAMGetPurchaseStatus = 4206
 k_EMsgAMSupportIsAccountEnabled = 4209
 k_EMsgAMSupportIsAccountEnabledResponse = 4210
 k_EMsgUGSGetUserStats = 4211
-k_EMsgAMSupportKickSession = 4212
 k_EMsgAMGSSearch = 4213
 k_EMsgMarketingMessageUpdate = 4216
 k_EMsgChatServerRouteFriendMsg = 4219
@@ -7045,6 +8548,8 @@ k_EMsgAMFundedPaymentResponse = 4419
 k_EMsgAMRequestPersonaUpdateForChatServer = 4420
 k_EMsgAMPerfectWorldPayment = 4421
 k_EMsgAMPerfectWorldPaymentResponse = 4422
+k_EMsgAMECommPayPayment = 4423
+k_EMsgAMECommPayPaymentResponse = 4424
 k_EMsgBasePSRange = 5000
 k_EMsgPSCreateShoppingCart = 5001
 k_EMsgPSCreateShoppingCartResponse = 5002
@@ -7294,8 +8799,8 @@ k_EMsgBadgeCraftedNotification = 5625
 k_EMsgClientNetworkingMobileCertRequest = 5626
 k_EMsgClientNetworkingMobileCertRequestResponse = 5627
 k_EMsgBaseMDS = 5800
-k_EMsgAMToMDSGetDepotDecryptionKey = 5812
-k_EMsgMDSToAMGetDepotDecryptionKeyResponse = 5813
+k_EMsgMDSGetDepotDecryptionKey = 5812
+k_EMsgMDSGetDepotDecryptionKeyResponse = 5813
 k_EMsgMDSContentServerConfigRequest = 5827
 k_EMsgMDSContentServerConfig = 5828
 k_EMsgMDSGetDepotManifest = 5829
@@ -7626,6 +9131,10 @@ k_EMsgClientVoiceCallPreAuthorize = 9800
 k_EMsgClientVoiceCallPreAuthorizeResponse = 9801
 k_EMsgClientServerTimestampRequest = 9802
 k_EMsgClientServerTimestampResponse = 9803
+k_EMsgServiceMethodCallFromClientNonAuthed = 9804
+k_EMsgClientHello = 9805
+k_EMsgClientEnableOrDisableDownloads = 9806
+k_EMsgClientEnableOrDisableDownloadsResponse = 9807
 k_EMsgClientLANP2PBase = 9900
 k_EMsgClientLANP2PRequestChunk = 9900
 k_EMsgClientLANP2PRequestChunkResponse = 9901
diff --git a/steam/protobufs/enums_pb2.py b/steam/protobufs/enums_pb2.py
index ca0579a..150e577 100644
--- a/steam/protobufs/enums_pb2.py
+++ b/steam/protobufs/enums_pb2.py
@@ -1,9 +1,7 @@
 # -*- coding: utf-8 -*-
 # Generated by the protocol buffer compiler.  DO NOT EDIT!
 # source: enums.proto
-
-import sys
-_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1'))
+"""Generated protocol buffer code."""
 from google.protobuf.internal import enum_type_wrapper
 from google.protobuf import descriptor as _descriptor
 from google.protobuf import message as _message
@@ -21,8 +19,9 @@ DESCRIPTOR = _descriptor.FileDescriptor(
   name='enums.proto',
   package='',
   syntax='proto2',
-  serialized_options=_b('H\001\220\001\001\200\265\030\001'),
-  serialized_pb=_b('\n\x0b\x65nums.proto\x1a\x18steammessages_base.proto*\x80\n\n\x17\x45PublishedFileQueryType\x12)\n%k_PublishedFileQueryType_RankedByVote\x10\x00\x12\x34\n0k_PublishedFileQueryType_RankedByPublicationDate\x10\x01\x12\x42\n>k_PublishedFileQueryType_AcceptedForGameRankedByAcceptanceDate\x10\x02\x12*\n&k_PublishedFileQueryType_RankedByTrend\x10\x03\x12\x46\nBk_PublishedFileQueryType_FavoritedByFriendsRankedByPublicationDate\x10\x04\x12\x44\n@k_PublishedFileQueryType_CreatedByFriendsRankedByPublicationDate\x10\x05\x12\x35\n1k_PublishedFileQueryType_RankedByNumTimesReported\x10\x06\x12J\nFk_PublishedFileQueryType_CreatedByFollowedUsersRankedByPublicationDate\x10\x07\x12(\n$k_PublishedFileQueryType_NotYetRated\x10\x08\x12=\n9k_PublishedFileQueryType_RankedByTotalUniqueSubscriptions\x10\t\x12\x32\n.k_PublishedFileQueryType_RankedByTotalVotesAsc\x10\n\x12,\n(k_PublishedFileQueryType_RankedByVotesUp\x10\x0b\x12/\n+k_PublishedFileQueryType_RankedByTextSearch\x10\x0c\x12\x32\n.k_PublishedFileQueryType_RankedByPlaytimeTrend\x10\r\x12\x32\n.k_PublishedFileQueryType_RankedByTotalPlaytime\x10\x0e\x12\x39\n5k_PublishedFileQueryType_RankedByAveragePlaytimeTrend\x10\x0f\x12<\n8k_PublishedFileQueryType_RankedByLifetimeAveragePlaytime\x10\x10\x12:\n6k_PublishedFileQueryType_RankedByPlaytimeSessionsTrend\x10\x11\x12=\n9k_PublishedFileQueryType_RankedByLifetimePlaytimeSessions\x10\x12\x12?\n;k_PublishedFileQueryType_RankedByInappropriateContentRating\x10\x13\x12\x34\n0k_PublishedFileQueryType_RankedByBanContentCheck\x10\x14\x12\x34\n0k_PublishedFileQueryType_RankedByLastUpdatedDate\x10\x15*\xbc\x01\n#EPublishedFileInappropriateProvider\x12\x31\n-k_EPublishedFileInappropriateProvider_Invalid\x10\x00\x12\x30\n,k_EPublishedFileInappropriateProvider_Google\x10\x01\x12\x30\n,k_EPublishedFileInappropriateProvider_Amazon\x10\x02*\xd5\x02\n!EPublishedFileInappropriateResult\x12\x32\n.k_EPublishedFileInappropriateResult_NotScanned\x10\x00\x12\x34\n0k_EPublishedFileInappropriateResult_VeryUnlikely\x10\x01\x12\x30\n,k_EPublishedFileInappropriateResult_Unlikely\x10\x1e\x12\x30\n,k_EPublishedFileInappropriateResult_Possible\x10\x32\x12.\n*k_EPublishedFileInappropriateResult_Likely\x10K\x12\x32\n.k_EPublishedFileInappropriateResult_VeryLikely\x10\x64*\xb1\x03\n\x11\x45PersonaStateFlag\x12\'\n#k_EPersonaStateFlag_HasRichPresence\x10\x01\x12&\n\"k_EPersonaStateFlag_InJoinableGame\x10\x02\x12\x1e\n\x1ak_EPersonaStateFlag_Golden\x10\x04\x12*\n&k_EPersonaStateFlag_RemotePlayTogether\x10\x08\x12&\n!k_EPersonaStateFlag_ClientTypeWeb\x10\x80\x02\x12)\n$k_EPersonaStateFlag_ClientTypeMobile\x10\x80\x04\x12*\n%k_EPersonaStateFlag_ClientTypeTenfoot\x10\x80\x08\x12%\n k_EPersonaStateFlag_ClientTypeVR\x10\x80\x10\x12*\n%k_EPersonaStateFlag_LaunchTypeGamepad\x10\x80 \x12-\n(k_EPersonaStateFlag_LaunchTypeCompatTool\x10\x80@*\xa7\x01\n\x15\x45\x43ontentCheckProvider\x12#\n\x1fk_EContentCheckProvider_Invalid\x10\x00\x12\"\n\x1ek_EContentCheckProvider_Google\x10\x01\x12\"\n\x1ek_EContentCheckProvider_Amazon\x10\x02\x12!\n\x1dk_EContentCheckProvider_Local\x10\x03*\xd8\x02\n\x16\x45\x42\x61nContentCheckResult\x12\'\n#k_EBanContentCheckResult_NotScanned\x10\x00\x12\"\n\x1ek_EBanContentCheckResult_Reset\x10\x01\x12*\n&k_EBanContentCheckResult_NeedsChecking\x10\x02\x12)\n%k_EBanContentCheckResult_VeryUnlikely\x10\x05\x12%\n!k_EBanContentCheckResult_Unlikely\x10\x1e\x12%\n!k_EBanContentCheckResult_Possible\x10\x32\x12#\n\x1fk_EBanContentCheckResult_Likely\x10K\x12\'\n#k_EBanContentCheckResult_VeryLikely\x10\x64*\xec\x08\n\x19\x45ProfileCustomizationType\x12&\n\"k_EProfileCustomizationTypeInvalid\x10\x00\x12\x36\n2k_EProfileCustomizationTypeRareAchievementShowcase\x10\x01\x12,\n(k_EProfileCustomizationTypeGameCollector\x10\x02\x12+\n\'k_EProfileCustomizationTypeItemShowcase\x10\x03\x12,\n(k_EProfileCustomizationTypeTradeShowcase\x10\x04\x12%\n!k_EProfileCustomizationTypeBadges\x10\x05\x12+\n\'k_EProfileCustomizationTypeFavoriteGame\x10\x06\x12\x31\n-k_EProfileCustomizationTypeScreenshotShowcase\x10\x07\x12)\n%k_EProfileCustomizationTypeCustomText\x10\x08\x12,\n(k_EProfileCustomizationTypeFavoriteGroup\x10\t\x12-\n)k_EProfileCustomizationTypeRecommendation\x10\n\x12+\n\'k_EProfileCustomizationTypeWorkshopItem\x10\x0b\x12)\n%k_EProfileCustomizationTypeMyWorkshop\x10\x0c\x12.\n*k_EProfileCustomizationTypeArtworkShowcase\x10\r\x12,\n(k_EProfileCustomizationTypeVideoShowcase\x10\x0e\x12%\n!k_EProfileCustomizationTypeGuides\x10\x0f\x12\'\n#k_EProfileCustomizationTypeMyGuides\x10\x10\x12+\n\'k_EProfileCustomizationTypeAchievements\x10\x11\x12)\n%k_EProfileCustomizationTypeGreenlight\x10\x12\x12+\n\'k_EProfileCustomizationTypeMyGreenlight\x10\x13\x12%\n!k_EProfileCustomizationTypeSalien\x10\x14\x12\x35\n1k_EProfileCustomizationTypeLoyaltyRewardReactions\x10\x15\x12\x34\n0k_EProfileCustomizationTypeSingleArtworkShowcase\x10\x16\x12\x38\n4k_EProfileCustomizationTypeAchievementsCompletionist\x10\x17*\xc8\x01\n\x1b\x45PublishedFileStorageSystem\x12(\n$k_EPublishedFileStorageSystemInvalid\x10\x00\x12,\n(k_EPublishedFileStorageSystemLegacyCloud\x10\x01\x12&\n\"k_EPublishedFileStorageSystemDepot\x10\x02\x12)\n%k_EPublishedFileStorageSystemUGCCloud\x10\x03*\x97\x01\n\x19\x45\x43loudStoragePersistState\x12(\n$k_ECloudStoragePersistStatePersisted\x10\x00\x12(\n$k_ECloudStoragePersistStateForgotten\x10\x01\x12&\n\"k_ECloudStoragePersistStateDeleted\x10\x02*\xc0\x03\n\x14\x45\x42luetoothDeviceType\x12!\n\x1dk_BluetoothDeviceType_Invalid\x10\x00\x12!\n\x1dk_BluetoothDeviceType_Unknown\x10\x01\x12\x1f\n\x1bk_BluetoothDeviceType_Phone\x10\x02\x12\"\n\x1ek_BluetoothDeviceType_Computer\x10\x03\x12!\n\x1dk_BluetoothDeviceType_Headset\x10\x04\x12$\n k_BluetoothDeviceType_Headphones\x10\x05\x12\"\n\x1ek_BluetoothDeviceType_Speakers\x10\x06\x12$\n k_BluetoothDeviceType_OtherAudio\x10\x07\x12\x1f\n\x1bk_BluetoothDeviceType_Mouse\x10\x08\x12\"\n\x1ek_BluetoothDeviceType_Joystick\x10\t\x12!\n\x1dk_BluetoothDeviceType_Gamepad\x10\n\x12\"\n\x1ek_BluetoothDeviceType_Keyboard\x10\x0b*\xe1\x01\n\x18\x45StorageBlockContentType\x12&\n\"k_EStorageBlockContentType_Invalid\x10\x00\x12&\n\"k_EStorageBlockContentType_Unknown\x10\x01\x12)\n%k_EStorageBlockContentType_FileSystem\x10\x02\x12%\n!k_EStorageBlockContentType_Crypto\x10\x03\x12#\n\x1fk_EStorageBlockContentType_Raid\x10\x04*\xc3\x01\n\x1b\x45StorageBlockFileSystemType\x12)\n%k_EStorageBlockFileSystemType_Invalid\x10\x00\x12)\n%k_EStorageBlockFileSystemType_Unknown\x10\x01\x12&\n\"k_EStorageBlockFileSystemType_VFat\x10\x02\x12&\n\"k_EStorageBlockFileSystemType_Ext4\x10\x03\x42\tH\x01\x90\x01\x01\x80\xb5\x18\x01')
+  serialized_options=b'H\001\220\001\001\200\265\030\001',
+  create_key=_descriptor._internal_create_key,
+  serialized_pb=b'\n\x0b\x65nums.proto\x1a\x18steammessages_base.proto*\x80\n\n\x17\x45PublishedFileQueryType\x12)\n%k_PublishedFileQueryType_RankedByVote\x10\x00\x12\x34\n0k_PublishedFileQueryType_RankedByPublicationDate\x10\x01\x12\x42\n>k_PublishedFileQueryType_AcceptedForGameRankedByAcceptanceDate\x10\x02\x12*\n&k_PublishedFileQueryType_RankedByTrend\x10\x03\x12\x46\nBk_PublishedFileQueryType_FavoritedByFriendsRankedByPublicationDate\x10\x04\x12\x44\n@k_PublishedFileQueryType_CreatedByFriendsRankedByPublicationDate\x10\x05\x12\x35\n1k_PublishedFileQueryType_RankedByNumTimesReported\x10\x06\x12J\nFk_PublishedFileQueryType_CreatedByFollowedUsersRankedByPublicationDate\x10\x07\x12(\n$k_PublishedFileQueryType_NotYetRated\x10\x08\x12=\n9k_PublishedFileQueryType_RankedByTotalUniqueSubscriptions\x10\t\x12\x32\n.k_PublishedFileQueryType_RankedByTotalVotesAsc\x10\n\x12,\n(k_PublishedFileQueryType_RankedByVotesUp\x10\x0b\x12/\n+k_PublishedFileQueryType_RankedByTextSearch\x10\x0c\x12\x32\n.k_PublishedFileQueryType_RankedByPlaytimeTrend\x10\r\x12\x32\n.k_PublishedFileQueryType_RankedByTotalPlaytime\x10\x0e\x12\x39\n5k_PublishedFileQueryType_RankedByAveragePlaytimeTrend\x10\x0f\x12<\n8k_PublishedFileQueryType_RankedByLifetimeAveragePlaytime\x10\x10\x12:\n6k_PublishedFileQueryType_RankedByPlaytimeSessionsTrend\x10\x11\x12=\n9k_PublishedFileQueryType_RankedByLifetimePlaytimeSessions\x10\x12\x12?\n;k_PublishedFileQueryType_RankedByInappropriateContentRating\x10\x13\x12\x34\n0k_PublishedFileQueryType_RankedByBanContentCheck\x10\x14\x12\x34\n0k_PublishedFileQueryType_RankedByLastUpdatedDate\x10\x15*\xbc\x01\n#EPublishedFileInappropriateProvider\x12\x31\n-k_EPublishedFileInappropriateProvider_Invalid\x10\x00\x12\x30\n,k_EPublishedFileInappropriateProvider_Google\x10\x01\x12\x30\n,k_EPublishedFileInappropriateProvider_Amazon\x10\x02*\xd5\x02\n!EPublishedFileInappropriateResult\x12\x32\n.k_EPublishedFileInappropriateResult_NotScanned\x10\x00\x12\x34\n0k_EPublishedFileInappropriateResult_VeryUnlikely\x10\x01\x12\x30\n,k_EPublishedFileInappropriateResult_Unlikely\x10\x1e\x12\x30\n,k_EPublishedFileInappropriateResult_Possible\x10\x32\x12.\n*k_EPublishedFileInappropriateResult_Likely\x10K\x12\x32\n.k_EPublishedFileInappropriateResult_VeryLikely\x10\x64*\xb1\x03\n\x11\x45PersonaStateFlag\x12\'\n#k_EPersonaStateFlag_HasRichPresence\x10\x01\x12&\n\"k_EPersonaStateFlag_InJoinableGame\x10\x02\x12\x1e\n\x1ak_EPersonaStateFlag_Golden\x10\x04\x12*\n&k_EPersonaStateFlag_RemotePlayTogether\x10\x08\x12&\n!k_EPersonaStateFlag_ClientTypeWeb\x10\x80\x02\x12)\n$k_EPersonaStateFlag_ClientTypeMobile\x10\x80\x04\x12*\n%k_EPersonaStateFlag_ClientTypeTenfoot\x10\x80\x08\x12%\n k_EPersonaStateFlag_ClientTypeVR\x10\x80\x10\x12*\n%k_EPersonaStateFlag_LaunchTypeGamepad\x10\x80 \x12-\n(k_EPersonaStateFlag_LaunchTypeCompatTool\x10\x80@*\xa7\x01\n\x15\x45\x43ontentCheckProvider\x12#\n\x1fk_EContentCheckProvider_Invalid\x10\x00\x12\"\n\x1ek_EContentCheckProvider_Google\x10\x01\x12\"\n\x1ek_EContentCheckProvider_Amazon\x10\x02\x12!\n\x1dk_EContentCheckProvider_Local\x10\x03*\xec\x08\n\x19\x45ProfileCustomizationType\x12&\n\"k_EProfileCustomizationTypeInvalid\x10\x00\x12\x36\n2k_EProfileCustomizationTypeRareAchievementShowcase\x10\x01\x12,\n(k_EProfileCustomizationTypeGameCollector\x10\x02\x12+\n\'k_EProfileCustomizationTypeItemShowcase\x10\x03\x12,\n(k_EProfileCustomizationTypeTradeShowcase\x10\x04\x12%\n!k_EProfileCustomizationTypeBadges\x10\x05\x12+\n\'k_EProfileCustomizationTypeFavoriteGame\x10\x06\x12\x31\n-k_EProfileCustomizationTypeScreenshotShowcase\x10\x07\x12)\n%k_EProfileCustomizationTypeCustomText\x10\x08\x12,\n(k_EProfileCustomizationTypeFavoriteGroup\x10\t\x12-\n)k_EProfileCustomizationTypeRecommendation\x10\n\x12+\n\'k_EProfileCustomizationTypeWorkshopItem\x10\x0b\x12)\n%k_EProfileCustomizationTypeMyWorkshop\x10\x0c\x12.\n*k_EProfileCustomizationTypeArtworkShowcase\x10\r\x12,\n(k_EProfileCustomizationTypeVideoShowcase\x10\x0e\x12%\n!k_EProfileCustomizationTypeGuides\x10\x0f\x12\'\n#k_EProfileCustomizationTypeMyGuides\x10\x10\x12+\n\'k_EProfileCustomizationTypeAchievements\x10\x11\x12)\n%k_EProfileCustomizationTypeGreenlight\x10\x12\x12+\n\'k_EProfileCustomizationTypeMyGreenlight\x10\x13\x12%\n!k_EProfileCustomizationTypeSalien\x10\x14\x12\x35\n1k_EProfileCustomizationTypeLoyaltyRewardReactions\x10\x15\x12\x34\n0k_EProfileCustomizationTypeSingleArtworkShowcase\x10\x16\x12\x38\n4k_EProfileCustomizationTypeAchievementsCompletionist\x10\x17*\xc8\x01\n\x1b\x45PublishedFileStorageSystem\x12(\n$k_EPublishedFileStorageSystemInvalid\x10\x00\x12,\n(k_EPublishedFileStorageSystemLegacyCloud\x10\x01\x12&\n\"k_EPublishedFileStorageSystemDepot\x10\x02\x12)\n%k_EPublishedFileStorageSystemUGCCloud\x10\x03*\x97\x01\n\x19\x45\x43loudStoragePersistState\x12(\n$k_ECloudStoragePersistStatePersisted\x10\x00\x12(\n$k_ECloudStoragePersistStateForgotten\x10\x01\x12&\n\"k_ECloudStoragePersistStateDeleted\x10\x02*\xe8\x01\n\x12\x45SDCardFormatStage\x12 \n\x1ck_ESDCardFormatStage_Invalid\x10\x00\x12!\n\x1dk_ESDCardFormatStage_Starting\x10\x01\x12 \n\x1ck_ESDCardFormatStage_Testing\x10\x02\x12!\n\x1dk_ESDCardFormatStage_Rescuing\x10\x03\x12#\n\x1fk_ESDCardFormatStage_Formatting\x10\x04\x12#\n\x1fk_ESDCardFormatStage_Finalizing\x10\x05*\x84\x01\n\x15\x45SystemFanControlMode\x12\"\n\x1ek_SystemFanControlMode_Invalid\x10\x00\x12#\n\x1fk_SystemFanControlMode_Disabled\x10\x01\x12\"\n\x1ek_SystemFanControlMode_Default\x10\x02*\x81\x01\n\rEColorProfile\x12\x1b\n\x17k_EColorProfile_Invalid\x10\x00\x12\x1a\n\x16k_EColorProfile_Native\x10\x01\x12\x1c\n\x18k_EColorProfile_Standard\x10\x02\x12\x19\n\x15k_EColorProfile_Vivid\x10\x03*\xc0\x03\n\x14\x45\x42luetoothDeviceType\x12!\n\x1dk_BluetoothDeviceType_Invalid\x10\x00\x12!\n\x1dk_BluetoothDeviceType_Unknown\x10\x01\x12\x1f\n\x1bk_BluetoothDeviceType_Phone\x10\x02\x12\"\n\x1ek_BluetoothDeviceType_Computer\x10\x03\x12!\n\x1dk_BluetoothDeviceType_Headset\x10\x04\x12$\n k_BluetoothDeviceType_Headphones\x10\x05\x12\"\n\x1ek_BluetoothDeviceType_Speakers\x10\x06\x12$\n k_BluetoothDeviceType_OtherAudio\x10\x07\x12\x1f\n\x1bk_BluetoothDeviceType_Mouse\x10\x08\x12\"\n\x1ek_BluetoothDeviceType_Joystick\x10\t\x12!\n\x1dk_BluetoothDeviceType_Gamepad\x10\n\x12\"\n\x1ek_BluetoothDeviceType_Keyboard\x10\x0b*\x80\x01\n\x15\x45SystemAudioDirection\x12\"\n\x1ek_SystemAudioDirection_Invalid\x10\x00\x12 \n\x1ck_SystemAudioDirection_Input\x10\x01\x12!\n\x1dk_SystemAudioDirection_Output\x10\x02*\xf1\x02\n\x13\x45SystemAudioChannel\x12 \n\x1ck_SystemAudioChannel_Invalid\x10\x00\x12#\n\x1fk_SystemAudioChannel_Aggregated\x10\x01\x12\"\n\x1ek_SystemAudioChannel_FrontLeft\x10\x02\x12#\n\x1fk_SystemAudioChannel_FrontRight\x10\x03\x12\x1c\n\x18k_SystemAudioChannel_LFE\x10\x04\x12!\n\x1dk_SystemAudioChannel_BackLeft\x10\x05\x12\"\n\x1ek_SystemAudioChannel_BackRight\x10\x06\x12$\n k_SystemAudioChannel_FrontCenter\x10\x07\x12 \n\x1ck_SystemAudioChannel_Unknown\x10\x08\x12\x1d\n\x19k_SystemAudioChannel_Mono\x10\t*\xc9\x01\n\x14\x45SystemAudioPortType\x12!\n\x1dk_SystemAudioPortType_Invalid\x10\x00\x12!\n\x1dk_SystemAudioPortType_Unknown\x10\x01\x12\"\n\x1ek_SystemAudioPortType_Audio32f\x10\x02\x12 \n\x1ck_SystemAudioPortType_Midi8b\x10\x03\x12%\n!k_SystemAudioPortType_Video32RGBA\x10\x04*\x90\x01\n\x19\x45SystemAudioPortDirection\x12&\n\"k_SystemAudioPortDirection_Invalid\x10\x00\x12$\n k_SystemAudioPortDirection_Input\x10\x01\x12%\n!k_SystemAudioPortDirection_Output\x10\x02*\x83\x01\n\x13\x45SystemServiceState\x12%\n!k_ESystemServiceState_Unavailable\x10\x00\x12\"\n\x1ek_ESystemServiceState_Disabled\x10\x01\x12!\n\x1dk_ESystemServiceState_Enabled\x10\x02*\xe1\x01\n\x19\x45GraphicsPerfOverlayLevel\x12&\n\"k_EGraphicsPerfOverlayLevel_Hidden\x10\x00\x12%\n!k_EGraphicsPerfOverlayLevel_Basic\x10\x01\x12&\n\"k_EGraphicsPerfOverlayLevel_Medium\x10\x02\x12$\n k_EGraphicsPerfOverlayLevel_Full\x10\x03\x12\'\n#k_EGraphicsPerfOverlayLevel_Minimal\x10\x04*\xe5\x01\n\x14\x45GPUPerformanceLevel\x12\"\n\x1ek_EGPUPerformanceLevel_Invalid\x10\x00\x12\x1f\n\x1bk_EGPUPerformanceLevel_Auto\x10\x01\x12!\n\x1dk_EGPUPerformanceLevel_Manual\x10\x02\x12\x1e\n\x1ak_EGPUPerformanceLevel_Low\x10\x03\x12\x1f\n\x1bk_EGPUPerformanceLevel_High\x10\x04\x12$\n k_EGPUPerformanceLevel_Profiling\x10\x05*\xbb\x01\n\x0e\x45ScalingFilter\x12\x1c\n\x18k_EScalingFilter_Invalid\x10\x00\x12\x18\n\x14k_EScalingFilter_FSR\x10\x01\x12\x1c\n\x18k_EScalingFilter_Nearest\x10\x02\x12\x1c\n\x18k_EScalingFilter_Integer\x10\x03\x12\x1b\n\x17k_EScalingFilter_Linear\x10\x04\x12\x18\n\x14k_EScalingFilter_NIS\x10\x05*|\n\x0c\x45\x43PUGovernor\x12\x1a\n\x16k_ECPUGovernor_Invalid\x10\x00\x12\x17\n\x13k_ECPUGovernor_Perf\x10\x01\x12\x1c\n\x18k_ECPUGovernor_Powersave\x10\x02\x12\x19\n\x15k_ECPUGovernor_Manual\x10\x03*\xe2\x01\n\x0c\x45UpdaterType\x12\x1a\n\x16k_EUpdaterType_Invalid\x10\x00\x12\x19\n\x15k_EUpdaterType_Client\x10\x01\x12\x15\n\x11k_EUpdaterType_OS\x10\x02\x12\x17\n\x13k_EUpdaterType_BIOS\x10\x03\x12\x1d\n\x19k_EUpdaterType_Aggregated\x10\x04\x12\x18\n\x14k_EUpdaterType_Test1\x10\x05\x12\x18\n\x14k_EUpdaterType_Test2\x10\x06\x12\x18\n\x14k_EUpdaterType_Dummy\x10\x07*\xf9\x01\n\rEUpdaterState\x12\x1b\n\x17k_EUpdaterState_Invalid\x10\x00\x12\x1c\n\x18k_EUpdaterState_UpToDate\x10\x02\x12\x1c\n\x18k_EUpdaterState_Checking\x10\x03\x12\x1d\n\x19k_EUpdaterState_Available\x10\x04\x12\x1c\n\x18k_EUpdaterState_Applying\x10\x05\x12(\n$k_EUpdaterState_ClientRestartPending\x10\x06\x12(\n$k_EUpdaterState_SystemRestartPending\x10\x07*\xe1\x01\n\x18\x45StorageBlockContentType\x12&\n\"k_EStorageBlockContentType_Invalid\x10\x00\x12&\n\"k_EStorageBlockContentType_Unknown\x10\x01\x12)\n%k_EStorageBlockContentType_FileSystem\x10\x02\x12%\n!k_EStorageBlockContentType_Crypto\x10\x03\x12#\n\x1fk_EStorageBlockContentType_Raid\x10\x04*\xc3\x01\n\x1b\x45StorageBlockFileSystemType\x12)\n%k_EStorageBlockFileSystemType_Invalid\x10\x00\x12)\n%k_EStorageBlockFileSystemType_Unknown\x10\x01\x12&\n\"k_EStorageBlockFileSystemType_VFat\x10\x02\x12&\n\"k_EStorageBlockFileSystemType_Ext4\x10\x03*\xe3\x01\n\x1f\x45SteamDeckCompatibilityCategory\x12-\n)k_ESteamDeckCompatibilityCategory_Unknown\x10\x00\x12\x31\n-k_ESteamDeckCompatibilityCategory_Unsupported\x10\x01\x12.\n*k_ESteamDeckCompatibilityCategory_Playable\x10\x02\x12.\n*k_ESteamDeckCompatibilityCategory_Verified\x10\x03*\xd0\x02\n(ESteamDeckCompatibilityResultDisplayType\x12\x38\n4k_ESteamDeckCompatibilityResultDisplayType_Invisible\x10\x00\x12<\n8k_ESteamDeckCompatibilityResultDisplayType_Informational\x10\x01\x12:\n6k_ESteamDeckCompatibilityResultDisplayType_Unsupported\x10\x02\x12\x37\n3k_ESteamDeckCompatibilityResultDisplayType_Playable\x10\x03\x12\x37\n3k_ESteamDeckCompatibilityResultDisplayType_Verified\x10\x04*w\n\x08\x45\x41\x43State\x12\x16\n\x12k_EACState_Unknown\x10\x00\x12\x1b\n\x17k_EACState_Disconnected\x10\x01\x12\x18\n\x14k_EACState_Connected\x10\x02\x12\x1c\n\x18k_EACState_ConnectedSlow\x10\x03*\x85\x01\n\rEBatteryState\x12\x1b\n\x17k_EBatteryState_Unknown\x10\x00\x12\x1f\n\x1bk_EBatteryState_Discharging\x10\x01\x12\x1c\n\x18k_EBatteryState_Charging\x10\x02\x12\x18\n\x14k_EBatteryState_Full\x10\x03*\xaa\x01\n\tEOSBranch\x12\x17\n\x13k_EOSBranch_Unknown\x10\x00\x12\x17\n\x13k_EOSBranch_Release\x10\x01\x12 \n\x1ck_EOSBranch_ReleaseCandidate\x10\x02\x12\x14\n\x10k_EOSBranch_Beta\x10\x03\x12\x1d\n\x19k_EOSBranch_BetaCandidate\x10\x04\x12\x14\n\x10k_EOSBranch_Main\x10\x05*\xac\x05\n\x13\x45\x43ommunityItemClass\x12!\n\x1dk_ECommunityItemClass_Invalid\x10\x00\x12\x1f\n\x1bk_ECommunityItemClass_Badge\x10\x01\x12\"\n\x1ek_ECommunityItemClass_GameCard\x10\x02\x12+\n\'k_ECommunityItemClass_ProfileBackground\x10\x03\x12\"\n\x1ek_ECommunityItemClass_Emoticon\x10\x04\x12%\n!k_ECommunityItemClass_BoosterPack\x10\x05\x12$\n k_ECommunityItemClass_Consumable\x10\x06\x12!\n\x1dk_ECommunityItemClass_GameGoo\x10\x07\x12)\n%k_ECommunityItemClass_ProfileModifier\x10\x08\x12\x1f\n\x1bk_ECommunityItemClass_Scene\x10\t\x12$\n k_ECommunityItemClass_SalienItem\x10\n\x12!\n\x1dk_ECommunityItemClass_Sticker\x10\x0b\x12$\n k_ECommunityItemClass_ChatEffect\x10\x0c\x12/\n+k_ECommunityItemClass_MiniProfileBackground\x10\r\x12%\n!k_ECommunityItemClass_AvatarFrame\x10\x0e\x12(\n$k_ECommunityItemClass_AnimatedAvatar\x10\x0f\x12/\n+k_ECommunityItemClass_SteamDeckKeyboardSkin\x10\x10*\xd9\x01\n\x1f\x45SteamDeckCompatibilityFeedback\x12+\n\'k_ESteamDeckCompatibilityFeedback_Unset\x10\x00\x12+\n\'k_ESteamDeckCompatibilityFeedback_Agree\x10\x01\x12.\n*k_ESteamDeckCompatibilityFeedback_Disagree\x10\x02\x12,\n(k_ESteamDeckCompatibilityFeedback_Ignore\x10\x03*\x9f\x01\n\x1e\x45ProvideDeckFeedbackPreference\x12*\n&k_EProvideDeckFeedbackPreference_Unset\x10\x00\x12(\n$k_EProvideDeckFeedbackPreference_Yes\x10\x01\x12\'\n#k_EProvideDeckFeedbackPreference_No\x10\x02*\xb1\x03\n\rETouchGesture\x12\x17\n\x13k_ETouchGestureNone\x10\x00\x12\x18\n\x14k_ETouchGestureTouch\x10\x01\x12\x16\n\x12k_ETouchGestureTap\x10\x02\x12\x1c\n\x18k_ETouchGestureDoubleTap\x10\x03\x12\x1d\n\x19k_ETouchGestureShortPress\x10\x04\x12\x1c\n\x18k_ETouchGestureLongPress\x10\x05\x12\x1a\n\x16k_ETouchGestureLongTap\x10\x06\x12\x1f\n\x1bk_ETouchGestureTwoFingerTap\x10\x07\x12\x1f\n\x1bk_ETouchGestureTapCancelled\x10\x08\x12\x1d\n\x19k_ETouchGesturePinchBegin\x10\t\x12\x1e\n\x1ak_ETouchGesturePinchUpdate\x10\n\x12\x1b\n\x17k_ETouchGesturePinchEnd\x10\x0b\x12\x1d\n\x19k_ETouchGestureFlingStart\x10\x0c\x12!\n\x1dk_ETouchGestureFlingCancelled\x10\r*\x8c\x01\n\x13\x45SessionPersistence\x12*\n\x1dk_ESessionPersistence_Invalid\x10\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01\x12#\n\x1fk_ESessionPersistence_Ephemeral\x10\x00\x12$\n k_ESessionPersistence_Persistent\x10\x01\x42\tH\x01\x90\x01\x01\x80\xb5\x18\x01'
   ,
   dependencies=[steammessages__base__pb2.DESCRIPTOR,])
 
@@ -31,95 +30,118 @@ _EPUBLISHEDFILEQUERYTYPE = _descriptor.EnumDescriptor(
   full_name='EPublishedFileQueryType',
   filename=None,
   file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
   values=[
     _descriptor.EnumValueDescriptor(
       name='k_PublishedFileQueryType_RankedByVote', index=0, number=0,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_PublishedFileQueryType_RankedByPublicationDate', index=1, number=1,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_PublishedFileQueryType_AcceptedForGameRankedByAcceptanceDate', index=2, number=2,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_PublishedFileQueryType_RankedByTrend', index=3, number=3,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_PublishedFileQueryType_FavoritedByFriendsRankedByPublicationDate', index=4, number=4,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_PublishedFileQueryType_CreatedByFriendsRankedByPublicationDate', index=5, number=5,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_PublishedFileQueryType_RankedByNumTimesReported', index=6, number=6,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_PublishedFileQueryType_CreatedByFollowedUsersRankedByPublicationDate', index=7, number=7,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_PublishedFileQueryType_NotYetRated', index=8, number=8,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_PublishedFileQueryType_RankedByTotalUniqueSubscriptions', index=9, number=9,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_PublishedFileQueryType_RankedByTotalVotesAsc', index=10, number=10,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_PublishedFileQueryType_RankedByVotesUp', index=11, number=11,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_PublishedFileQueryType_RankedByTextSearch', index=12, number=12,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_PublishedFileQueryType_RankedByPlaytimeTrend', index=13, number=13,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_PublishedFileQueryType_RankedByTotalPlaytime', index=14, number=14,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_PublishedFileQueryType_RankedByAveragePlaytimeTrend', index=15, number=15,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_PublishedFileQueryType_RankedByLifetimeAveragePlaytime', index=16, number=16,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_PublishedFileQueryType_RankedByPlaytimeSessionsTrend', index=17, number=17,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_PublishedFileQueryType_RankedByLifetimePlaytimeSessions', index=18, number=18,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_PublishedFileQueryType_RankedByInappropriateContentRating', index=19, number=19,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_PublishedFileQueryType_RankedByBanContentCheck', index=20, number=20,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_PublishedFileQueryType_RankedByLastUpdatedDate', index=21, number=21,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
   ],
   containing_type=None,
   serialized_options=None,
@@ -134,19 +156,23 @@ _EPUBLISHEDFILEINAPPROPRIATEPROVIDER = _descriptor.EnumDescriptor(
   full_name='EPublishedFileInappropriateProvider',
   filename=None,
   file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
   values=[
     _descriptor.EnumValueDescriptor(
       name='k_EPublishedFileInappropriateProvider_Invalid', index=0, number=0,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EPublishedFileInappropriateProvider_Google', index=1, number=1,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EPublishedFileInappropriateProvider_Amazon', index=2, number=2,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
   ],
   containing_type=None,
   serialized_options=None,
@@ -161,31 +187,38 @@ _EPUBLISHEDFILEINAPPROPRIATERESULT = _descriptor.EnumDescriptor(
   full_name='EPublishedFileInappropriateResult',
   filename=None,
   file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
   values=[
     _descriptor.EnumValueDescriptor(
       name='k_EPublishedFileInappropriateResult_NotScanned', index=0, number=0,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EPublishedFileInappropriateResult_VeryUnlikely', index=1, number=1,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EPublishedFileInappropriateResult_Unlikely', index=2, number=30,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EPublishedFileInappropriateResult_Possible', index=3, number=50,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EPublishedFileInappropriateResult_Likely', index=4, number=75,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EPublishedFileInappropriateResult_VeryLikely', index=5, number=100,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
   ],
   containing_type=None,
   serialized_options=None,
@@ -200,47 +233,58 @@ _EPERSONASTATEFLAG = _descriptor.EnumDescriptor(
   full_name='EPersonaStateFlag',
   filename=None,
   file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
   values=[
     _descriptor.EnumValueDescriptor(
       name='k_EPersonaStateFlag_HasRichPresence', index=0, number=1,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EPersonaStateFlag_InJoinableGame', index=1, number=2,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EPersonaStateFlag_Golden', index=2, number=4,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EPersonaStateFlag_RemotePlayTogether', index=3, number=8,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EPersonaStateFlag_ClientTypeWeb', index=4, number=256,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EPersonaStateFlag_ClientTypeMobile', index=5, number=512,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EPersonaStateFlag_ClientTypeTenfoot', index=6, number=1024,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EPersonaStateFlag_ClientTypeVR', index=7, number=2048,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EPersonaStateFlag_LaunchTypeGamepad', index=8, number=4096,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EPersonaStateFlag_LaunchTypeCompatTool', index=9, number=8192,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
   ],
   containing_type=None,
   serialized_options=None,
@@ -255,23 +299,28 @@ _ECONTENTCHECKPROVIDER = _descriptor.EnumDescriptor(
   full_name='EContentCheckProvider',
   filename=None,
   file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
   values=[
     _descriptor.EnumValueDescriptor(
       name='k_EContentCheckProvider_Invalid', index=0, number=0,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EContentCheckProvider_Google', index=1, number=1,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EContentCheckProvider_Amazon', index=2, number=2,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EContentCheckProvider_Local', index=3, number=3,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
   ],
   containing_type=None,
   serialized_options=None,
@@ -281,160 +330,138 @@ _ECONTENTCHECKPROVIDER = _descriptor.EnumDescriptor(
 _sym_db.RegisterEnumDescriptor(_ECONTENTCHECKPROVIDER)
 
 EContentCheckProvider = enum_type_wrapper.EnumTypeWrapper(_ECONTENTCHECKPROVIDER)
-_EBANCONTENTCHECKRESULT = _descriptor.EnumDescriptor(
-  name='EBanContentCheckResult',
-  full_name='EBanContentCheckResult',
-  filename=None,
-  file=DESCRIPTOR,
-  values=[
-    _descriptor.EnumValueDescriptor(
-      name='k_EBanContentCheckResult_NotScanned', index=0, number=0,
-      serialized_options=None,
-      type=None),
-    _descriptor.EnumValueDescriptor(
-      name='k_EBanContentCheckResult_Reset', index=1, number=1,
-      serialized_options=None,
-      type=None),
-    _descriptor.EnumValueDescriptor(
-      name='k_EBanContentCheckResult_NeedsChecking', index=2, number=2,
-      serialized_options=None,
-      type=None),
-    _descriptor.EnumValueDescriptor(
-      name='k_EBanContentCheckResult_VeryUnlikely', index=3, number=5,
-      serialized_options=None,
-      type=None),
-    _descriptor.EnumValueDescriptor(
-      name='k_EBanContentCheckResult_Unlikely', index=4, number=30,
-      serialized_options=None,
-      type=None),
-    _descriptor.EnumValueDescriptor(
-      name='k_EBanContentCheckResult_Possible', index=5, number=50,
-      serialized_options=None,
-      type=None),
-    _descriptor.EnumValueDescriptor(
-      name='k_EBanContentCheckResult_Likely', index=6, number=75,
-      serialized_options=None,
-      type=None),
-    _descriptor.EnumValueDescriptor(
-      name='k_EBanContentCheckResult_VeryLikely', index=7, number=100,
-      serialized_options=None,
-      type=None),
-  ],
-  containing_type=None,
-  serialized_options=None,
-  serialized_start=2466,
-  serialized_end=2810,
-)
-_sym_db.RegisterEnumDescriptor(_EBANCONTENTCHECKRESULT)
-
-EBanContentCheckResult = enum_type_wrapper.EnumTypeWrapper(_EBANCONTENTCHECKRESULT)
 _EPROFILECUSTOMIZATIONTYPE = _descriptor.EnumDescriptor(
   name='EProfileCustomizationType',
   full_name='EProfileCustomizationType',
   filename=None,
   file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
   values=[
     _descriptor.EnumValueDescriptor(
       name='k_EProfileCustomizationTypeInvalid', index=0, number=0,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EProfileCustomizationTypeRareAchievementShowcase', index=1, number=1,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EProfileCustomizationTypeGameCollector', index=2, number=2,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EProfileCustomizationTypeItemShowcase', index=3, number=3,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EProfileCustomizationTypeTradeShowcase', index=4, number=4,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EProfileCustomizationTypeBadges', index=5, number=5,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EProfileCustomizationTypeFavoriteGame', index=6, number=6,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EProfileCustomizationTypeScreenshotShowcase', index=7, number=7,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EProfileCustomizationTypeCustomText', index=8, number=8,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EProfileCustomizationTypeFavoriteGroup', index=9, number=9,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EProfileCustomizationTypeRecommendation', index=10, number=10,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EProfileCustomizationTypeWorkshopItem', index=11, number=11,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EProfileCustomizationTypeMyWorkshop', index=12, number=12,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EProfileCustomizationTypeArtworkShowcase', index=13, number=13,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EProfileCustomizationTypeVideoShowcase', index=14, number=14,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EProfileCustomizationTypeGuides', index=15, number=15,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EProfileCustomizationTypeMyGuides', index=16, number=16,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EProfileCustomizationTypeAchievements', index=17, number=17,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EProfileCustomizationTypeGreenlight', index=18, number=18,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EProfileCustomizationTypeMyGreenlight', index=19, number=19,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EProfileCustomizationTypeSalien', index=20, number=20,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EProfileCustomizationTypeLoyaltyRewardReactions', index=21, number=21,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EProfileCustomizationTypeSingleArtworkShowcase', index=22, number=22,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EProfileCustomizationTypeAchievementsCompletionist', index=23, number=23,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
   ],
   containing_type=None,
   serialized_options=None,
-  serialized_start=2813,
-  serialized_end=3945,
+  serialized_start=2466,
+  serialized_end=3598,
 )
 _sym_db.RegisterEnumDescriptor(_EPROFILECUSTOMIZATIONTYPE)
 
@@ -444,28 +471,33 @@ _EPUBLISHEDFILESTORAGESYSTEM = _descriptor.EnumDescriptor(
   full_name='EPublishedFileStorageSystem',
   filename=None,
   file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
   values=[
     _descriptor.EnumValueDescriptor(
       name='k_EPublishedFileStorageSystemInvalid', index=0, number=0,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EPublishedFileStorageSystemLegacyCloud', index=1, number=1,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EPublishedFileStorageSystemDepot', index=2, number=2,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EPublishedFileStorageSystemUGCCloud', index=3, number=3,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
   ],
   containing_type=None,
   serialized_options=None,
-  serialized_start=3948,
-  serialized_end=4148,
+  serialized_start=3601,
+  serialized_end=3801,
 )
 _sym_db.RegisterEnumDescriptor(_EPUBLISHEDFILESTORAGESYSTEM)
 
@@ -475,122 +507,734 @@ _ECLOUDSTORAGEPERSISTSTATE = _descriptor.EnumDescriptor(
   full_name='ECloudStoragePersistState',
   filename=None,
   file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
   values=[
     _descriptor.EnumValueDescriptor(
       name='k_ECloudStoragePersistStatePersisted', index=0, number=0,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_ECloudStoragePersistStateForgotten', index=1, number=1,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_ECloudStoragePersistStateDeleted', index=2, number=2,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
   ],
   containing_type=None,
   serialized_options=None,
-  serialized_start=4151,
-  serialized_end=4302,
+  serialized_start=3804,
+  serialized_end=3955,
 )
 _sym_db.RegisterEnumDescriptor(_ECLOUDSTORAGEPERSISTSTATE)
 
 ECloudStoragePersistState = enum_type_wrapper.EnumTypeWrapper(_ECLOUDSTORAGEPERSISTSTATE)
+_ESDCARDFORMATSTAGE = _descriptor.EnumDescriptor(
+  name='ESDCardFormatStage',
+  full_name='ESDCardFormatStage',
+  filename=None,
+  file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
+  values=[
+    _descriptor.EnumValueDescriptor(
+      name='k_ESDCardFormatStage_Invalid', index=0, number=0,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_ESDCardFormatStage_Starting', index=1, number=1,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_ESDCardFormatStage_Testing', index=2, number=2,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_ESDCardFormatStage_Rescuing', index=3, number=3,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_ESDCardFormatStage_Formatting', index=4, number=4,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_ESDCardFormatStage_Finalizing', index=5, number=5,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+  ],
+  containing_type=None,
+  serialized_options=None,
+  serialized_start=3958,
+  serialized_end=4190,
+)
+_sym_db.RegisterEnumDescriptor(_ESDCARDFORMATSTAGE)
+
+ESDCardFormatStage = enum_type_wrapper.EnumTypeWrapper(_ESDCARDFORMATSTAGE)
+_ESYSTEMFANCONTROLMODE = _descriptor.EnumDescriptor(
+  name='ESystemFanControlMode',
+  full_name='ESystemFanControlMode',
+  filename=None,
+  file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
+  values=[
+    _descriptor.EnumValueDescriptor(
+      name='k_SystemFanControlMode_Invalid', index=0, number=0,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_SystemFanControlMode_Disabled', index=1, number=1,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_SystemFanControlMode_Default', index=2, number=2,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+  ],
+  containing_type=None,
+  serialized_options=None,
+  serialized_start=4193,
+  serialized_end=4325,
+)
+_sym_db.RegisterEnumDescriptor(_ESYSTEMFANCONTROLMODE)
+
+ESystemFanControlMode = enum_type_wrapper.EnumTypeWrapper(_ESYSTEMFANCONTROLMODE)
+_ECOLORPROFILE = _descriptor.EnumDescriptor(
+  name='EColorProfile',
+  full_name='EColorProfile',
+  filename=None,
+  file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
+  values=[
+    _descriptor.EnumValueDescriptor(
+      name='k_EColorProfile_Invalid', index=0, number=0,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EColorProfile_Native', index=1, number=1,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EColorProfile_Standard', index=2, number=2,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EColorProfile_Vivid', index=3, number=3,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+  ],
+  containing_type=None,
+  serialized_options=None,
+  serialized_start=4328,
+  serialized_end=4457,
+)
+_sym_db.RegisterEnumDescriptor(_ECOLORPROFILE)
+
+EColorProfile = enum_type_wrapper.EnumTypeWrapper(_ECOLORPROFILE)
 _EBLUETOOTHDEVICETYPE = _descriptor.EnumDescriptor(
   name='EBluetoothDeviceType',
   full_name='EBluetoothDeviceType',
   filename=None,
   file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
   values=[
     _descriptor.EnumValueDescriptor(
       name='k_BluetoothDeviceType_Invalid', index=0, number=0,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_BluetoothDeviceType_Unknown', index=1, number=1,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_BluetoothDeviceType_Phone', index=2, number=2,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_BluetoothDeviceType_Computer', index=3, number=3,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_BluetoothDeviceType_Headset', index=4, number=4,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_BluetoothDeviceType_Headphones', index=5, number=5,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_BluetoothDeviceType_Speakers', index=6, number=6,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_BluetoothDeviceType_OtherAudio', index=7, number=7,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_BluetoothDeviceType_Mouse', index=8, number=8,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_BluetoothDeviceType_Joystick', index=9, number=9,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_BluetoothDeviceType_Gamepad', index=10, number=10,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_BluetoothDeviceType_Keyboard', index=11, number=11,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
   ],
   containing_type=None,
   serialized_options=None,
-  serialized_start=4305,
-  serialized_end=4753,
+  serialized_start=4460,
+  serialized_end=4908,
 )
 _sym_db.RegisterEnumDescriptor(_EBLUETOOTHDEVICETYPE)
 
 EBluetoothDeviceType = enum_type_wrapper.EnumTypeWrapper(_EBLUETOOTHDEVICETYPE)
+_ESYSTEMAUDIODIRECTION = _descriptor.EnumDescriptor(
+  name='ESystemAudioDirection',
+  full_name='ESystemAudioDirection',
+  filename=None,
+  file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
+  values=[
+    _descriptor.EnumValueDescriptor(
+      name='k_SystemAudioDirection_Invalid', index=0, number=0,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_SystemAudioDirection_Input', index=1, number=1,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_SystemAudioDirection_Output', index=2, number=2,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+  ],
+  containing_type=None,
+  serialized_options=None,
+  serialized_start=4911,
+  serialized_end=5039,
+)
+_sym_db.RegisterEnumDescriptor(_ESYSTEMAUDIODIRECTION)
+
+ESystemAudioDirection = enum_type_wrapper.EnumTypeWrapper(_ESYSTEMAUDIODIRECTION)
+_ESYSTEMAUDIOCHANNEL = _descriptor.EnumDescriptor(
+  name='ESystemAudioChannel',
+  full_name='ESystemAudioChannel',
+  filename=None,
+  file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
+  values=[
+    _descriptor.EnumValueDescriptor(
+      name='k_SystemAudioChannel_Invalid', index=0, number=0,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_SystemAudioChannel_Aggregated', index=1, number=1,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_SystemAudioChannel_FrontLeft', index=2, number=2,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_SystemAudioChannel_FrontRight', index=3, number=3,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_SystemAudioChannel_LFE', index=4, number=4,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_SystemAudioChannel_BackLeft', index=5, number=5,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_SystemAudioChannel_BackRight', index=6, number=6,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_SystemAudioChannel_FrontCenter', index=7, number=7,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_SystemAudioChannel_Unknown', index=8, number=8,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_SystemAudioChannel_Mono', index=9, number=9,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+  ],
+  containing_type=None,
+  serialized_options=None,
+  serialized_start=5042,
+  serialized_end=5411,
+)
+_sym_db.RegisterEnumDescriptor(_ESYSTEMAUDIOCHANNEL)
+
+ESystemAudioChannel = enum_type_wrapper.EnumTypeWrapper(_ESYSTEMAUDIOCHANNEL)
+_ESYSTEMAUDIOPORTTYPE = _descriptor.EnumDescriptor(
+  name='ESystemAudioPortType',
+  full_name='ESystemAudioPortType',
+  filename=None,
+  file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
+  values=[
+    _descriptor.EnumValueDescriptor(
+      name='k_SystemAudioPortType_Invalid', index=0, number=0,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_SystemAudioPortType_Unknown', index=1, number=1,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_SystemAudioPortType_Audio32f', index=2, number=2,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_SystemAudioPortType_Midi8b', index=3, number=3,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_SystemAudioPortType_Video32RGBA', index=4, number=4,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+  ],
+  containing_type=None,
+  serialized_options=None,
+  serialized_start=5414,
+  serialized_end=5615,
+)
+_sym_db.RegisterEnumDescriptor(_ESYSTEMAUDIOPORTTYPE)
+
+ESystemAudioPortType = enum_type_wrapper.EnumTypeWrapper(_ESYSTEMAUDIOPORTTYPE)
+_ESYSTEMAUDIOPORTDIRECTION = _descriptor.EnumDescriptor(
+  name='ESystemAudioPortDirection',
+  full_name='ESystemAudioPortDirection',
+  filename=None,
+  file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
+  values=[
+    _descriptor.EnumValueDescriptor(
+      name='k_SystemAudioPortDirection_Invalid', index=0, number=0,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_SystemAudioPortDirection_Input', index=1, number=1,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_SystemAudioPortDirection_Output', index=2, number=2,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+  ],
+  containing_type=None,
+  serialized_options=None,
+  serialized_start=5618,
+  serialized_end=5762,
+)
+_sym_db.RegisterEnumDescriptor(_ESYSTEMAUDIOPORTDIRECTION)
+
+ESystemAudioPortDirection = enum_type_wrapper.EnumTypeWrapper(_ESYSTEMAUDIOPORTDIRECTION)
+_ESYSTEMSERVICESTATE = _descriptor.EnumDescriptor(
+  name='ESystemServiceState',
+  full_name='ESystemServiceState',
+  filename=None,
+  file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
+  values=[
+    _descriptor.EnumValueDescriptor(
+      name='k_ESystemServiceState_Unavailable', index=0, number=0,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_ESystemServiceState_Disabled', index=1, number=1,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_ESystemServiceState_Enabled', index=2, number=2,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+  ],
+  containing_type=None,
+  serialized_options=None,
+  serialized_start=5765,
+  serialized_end=5896,
+)
+_sym_db.RegisterEnumDescriptor(_ESYSTEMSERVICESTATE)
+
+ESystemServiceState = enum_type_wrapper.EnumTypeWrapper(_ESYSTEMSERVICESTATE)
+_EGRAPHICSPERFOVERLAYLEVEL = _descriptor.EnumDescriptor(
+  name='EGraphicsPerfOverlayLevel',
+  full_name='EGraphicsPerfOverlayLevel',
+  filename=None,
+  file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
+  values=[
+    _descriptor.EnumValueDescriptor(
+      name='k_EGraphicsPerfOverlayLevel_Hidden', index=0, number=0,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EGraphicsPerfOverlayLevel_Basic', index=1, number=1,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EGraphicsPerfOverlayLevel_Medium', index=2, number=2,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EGraphicsPerfOverlayLevel_Full', index=3, number=3,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EGraphicsPerfOverlayLevel_Minimal', index=4, number=4,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+  ],
+  containing_type=None,
+  serialized_options=None,
+  serialized_start=5899,
+  serialized_end=6124,
+)
+_sym_db.RegisterEnumDescriptor(_EGRAPHICSPERFOVERLAYLEVEL)
+
+EGraphicsPerfOverlayLevel = enum_type_wrapper.EnumTypeWrapper(_EGRAPHICSPERFOVERLAYLEVEL)
+_EGPUPERFORMANCELEVEL = _descriptor.EnumDescriptor(
+  name='EGPUPerformanceLevel',
+  full_name='EGPUPerformanceLevel',
+  filename=None,
+  file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
+  values=[
+    _descriptor.EnumValueDescriptor(
+      name='k_EGPUPerformanceLevel_Invalid', index=0, number=0,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EGPUPerformanceLevel_Auto', index=1, number=1,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EGPUPerformanceLevel_Manual', index=2, number=2,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EGPUPerformanceLevel_Low', index=3, number=3,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EGPUPerformanceLevel_High', index=4, number=4,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EGPUPerformanceLevel_Profiling', index=5, number=5,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+  ],
+  containing_type=None,
+  serialized_options=None,
+  serialized_start=6127,
+  serialized_end=6356,
+)
+_sym_db.RegisterEnumDescriptor(_EGPUPERFORMANCELEVEL)
+
+EGPUPerformanceLevel = enum_type_wrapper.EnumTypeWrapper(_EGPUPERFORMANCELEVEL)
+_ESCALINGFILTER = _descriptor.EnumDescriptor(
+  name='EScalingFilter',
+  full_name='EScalingFilter',
+  filename=None,
+  file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
+  values=[
+    _descriptor.EnumValueDescriptor(
+      name='k_EScalingFilter_Invalid', index=0, number=0,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EScalingFilter_FSR', index=1, number=1,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EScalingFilter_Nearest', index=2, number=2,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EScalingFilter_Integer', index=3, number=3,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EScalingFilter_Linear', index=4, number=4,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EScalingFilter_NIS', index=5, number=5,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+  ],
+  containing_type=None,
+  serialized_options=None,
+  serialized_start=6359,
+  serialized_end=6546,
+)
+_sym_db.RegisterEnumDescriptor(_ESCALINGFILTER)
+
+EScalingFilter = enum_type_wrapper.EnumTypeWrapper(_ESCALINGFILTER)
+_ECPUGOVERNOR = _descriptor.EnumDescriptor(
+  name='ECPUGovernor',
+  full_name='ECPUGovernor',
+  filename=None,
+  file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
+  values=[
+    _descriptor.EnumValueDescriptor(
+      name='k_ECPUGovernor_Invalid', index=0, number=0,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_ECPUGovernor_Perf', index=1, number=1,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_ECPUGovernor_Powersave', index=2, number=2,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_ECPUGovernor_Manual', index=3, number=3,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+  ],
+  containing_type=None,
+  serialized_options=None,
+  serialized_start=6548,
+  serialized_end=6672,
+)
+_sym_db.RegisterEnumDescriptor(_ECPUGOVERNOR)
+
+ECPUGovernor = enum_type_wrapper.EnumTypeWrapper(_ECPUGOVERNOR)
+_EUPDATERTYPE = _descriptor.EnumDescriptor(
+  name='EUpdaterType',
+  full_name='EUpdaterType',
+  filename=None,
+  file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
+  values=[
+    _descriptor.EnumValueDescriptor(
+      name='k_EUpdaterType_Invalid', index=0, number=0,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EUpdaterType_Client', index=1, number=1,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EUpdaterType_OS', index=2, number=2,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EUpdaterType_BIOS', index=3, number=3,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EUpdaterType_Aggregated', index=4, number=4,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EUpdaterType_Test1', index=5, number=5,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EUpdaterType_Test2', index=6, number=6,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EUpdaterType_Dummy', index=7, number=7,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+  ],
+  containing_type=None,
+  serialized_options=None,
+  serialized_start=6675,
+  serialized_end=6901,
+)
+_sym_db.RegisterEnumDescriptor(_EUPDATERTYPE)
+
+EUpdaterType = enum_type_wrapper.EnumTypeWrapper(_EUPDATERTYPE)
+_EUPDATERSTATE = _descriptor.EnumDescriptor(
+  name='EUpdaterState',
+  full_name='EUpdaterState',
+  filename=None,
+  file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
+  values=[
+    _descriptor.EnumValueDescriptor(
+      name='k_EUpdaterState_Invalid', index=0, number=0,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EUpdaterState_UpToDate', index=1, number=2,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EUpdaterState_Checking', index=2, number=3,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EUpdaterState_Available', index=3, number=4,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EUpdaterState_Applying', index=4, number=5,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EUpdaterState_ClientRestartPending', index=5, number=6,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EUpdaterState_SystemRestartPending', index=6, number=7,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+  ],
+  containing_type=None,
+  serialized_options=None,
+  serialized_start=6904,
+  serialized_end=7153,
+)
+_sym_db.RegisterEnumDescriptor(_EUPDATERSTATE)
+
+EUpdaterState = enum_type_wrapper.EnumTypeWrapper(_EUPDATERSTATE)
 _ESTORAGEBLOCKCONTENTTYPE = _descriptor.EnumDescriptor(
   name='EStorageBlockContentType',
   full_name='EStorageBlockContentType',
   filename=None,
   file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
   values=[
     _descriptor.EnumValueDescriptor(
       name='k_EStorageBlockContentType_Invalid', index=0, number=0,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStorageBlockContentType_Unknown', index=1, number=1,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStorageBlockContentType_FileSystem', index=2, number=2,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStorageBlockContentType_Crypto', index=3, number=3,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStorageBlockContentType_Raid', index=4, number=4,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
   ],
   containing_type=None,
   serialized_options=None,
-  serialized_start=4756,
-  serialized_end=4981,
+  serialized_start=7156,
+  serialized_end=7381,
 )
 _sym_db.RegisterEnumDescriptor(_ESTORAGEBLOCKCONTENTTYPE)
 
@@ -600,32 +1244,517 @@ _ESTORAGEBLOCKFILESYSTEMTYPE = _descriptor.EnumDescriptor(
   full_name='EStorageBlockFileSystemType',
   filename=None,
   file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
   values=[
     _descriptor.EnumValueDescriptor(
       name='k_EStorageBlockFileSystemType_Invalid', index=0, number=0,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStorageBlockFileSystemType_Unknown', index=1, number=1,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStorageBlockFileSystemType_VFat', index=2, number=2,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStorageBlockFileSystemType_Ext4', index=3, number=3,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
   ],
   containing_type=None,
   serialized_options=None,
-  serialized_start=4984,
-  serialized_end=5179,
+  serialized_start=7384,
+  serialized_end=7579,
 )
 _sym_db.RegisterEnumDescriptor(_ESTORAGEBLOCKFILESYSTEMTYPE)
 
 EStorageBlockFileSystemType = enum_type_wrapper.EnumTypeWrapper(_ESTORAGEBLOCKFILESYSTEMTYPE)
+_ESTEAMDECKCOMPATIBILITYCATEGORY = _descriptor.EnumDescriptor(
+  name='ESteamDeckCompatibilityCategory',
+  full_name='ESteamDeckCompatibilityCategory',
+  filename=None,
+  file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
+  values=[
+    _descriptor.EnumValueDescriptor(
+      name='k_ESteamDeckCompatibilityCategory_Unknown', index=0, number=0,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_ESteamDeckCompatibilityCategory_Unsupported', index=1, number=1,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_ESteamDeckCompatibilityCategory_Playable', index=2, number=2,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_ESteamDeckCompatibilityCategory_Verified', index=3, number=3,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+  ],
+  containing_type=None,
+  serialized_options=None,
+  serialized_start=7582,
+  serialized_end=7809,
+)
+_sym_db.RegisterEnumDescriptor(_ESTEAMDECKCOMPATIBILITYCATEGORY)
+
+ESteamDeckCompatibilityCategory = enum_type_wrapper.EnumTypeWrapper(_ESTEAMDECKCOMPATIBILITYCATEGORY)
+_ESTEAMDECKCOMPATIBILITYRESULTDISPLAYTYPE = _descriptor.EnumDescriptor(
+  name='ESteamDeckCompatibilityResultDisplayType',
+  full_name='ESteamDeckCompatibilityResultDisplayType',
+  filename=None,
+  file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
+  values=[
+    _descriptor.EnumValueDescriptor(
+      name='k_ESteamDeckCompatibilityResultDisplayType_Invisible', index=0, number=0,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_ESteamDeckCompatibilityResultDisplayType_Informational', index=1, number=1,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_ESteamDeckCompatibilityResultDisplayType_Unsupported', index=2, number=2,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_ESteamDeckCompatibilityResultDisplayType_Playable', index=3, number=3,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_ESteamDeckCompatibilityResultDisplayType_Verified', index=4, number=4,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+  ],
+  containing_type=None,
+  serialized_options=None,
+  serialized_start=7812,
+  serialized_end=8148,
+)
+_sym_db.RegisterEnumDescriptor(_ESTEAMDECKCOMPATIBILITYRESULTDISPLAYTYPE)
+
+ESteamDeckCompatibilityResultDisplayType = enum_type_wrapper.EnumTypeWrapper(_ESTEAMDECKCOMPATIBILITYRESULTDISPLAYTYPE)
+_EACSTATE = _descriptor.EnumDescriptor(
+  name='EACState',
+  full_name='EACState',
+  filename=None,
+  file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
+  values=[
+    _descriptor.EnumValueDescriptor(
+      name='k_EACState_Unknown', index=0, number=0,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EACState_Disconnected', index=1, number=1,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EACState_Connected', index=2, number=2,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EACState_ConnectedSlow', index=3, number=3,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+  ],
+  containing_type=None,
+  serialized_options=None,
+  serialized_start=8150,
+  serialized_end=8269,
+)
+_sym_db.RegisterEnumDescriptor(_EACSTATE)
+
+EACState = enum_type_wrapper.EnumTypeWrapper(_EACSTATE)
+_EBATTERYSTATE = _descriptor.EnumDescriptor(
+  name='EBatteryState',
+  full_name='EBatteryState',
+  filename=None,
+  file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
+  values=[
+    _descriptor.EnumValueDescriptor(
+      name='k_EBatteryState_Unknown', index=0, number=0,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EBatteryState_Discharging', index=1, number=1,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EBatteryState_Charging', index=2, number=2,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EBatteryState_Full', index=3, number=3,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+  ],
+  containing_type=None,
+  serialized_options=None,
+  serialized_start=8272,
+  serialized_end=8405,
+)
+_sym_db.RegisterEnumDescriptor(_EBATTERYSTATE)
+
+EBatteryState = enum_type_wrapper.EnumTypeWrapper(_EBATTERYSTATE)
+_EOSBRANCH = _descriptor.EnumDescriptor(
+  name='EOSBranch',
+  full_name='EOSBranch',
+  filename=None,
+  file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
+  values=[
+    _descriptor.EnumValueDescriptor(
+      name='k_EOSBranch_Unknown', index=0, number=0,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EOSBranch_Release', index=1, number=1,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EOSBranch_ReleaseCandidate', index=2, number=2,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EOSBranch_Beta', index=3, number=3,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EOSBranch_BetaCandidate', index=4, number=4,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EOSBranch_Main', index=5, number=5,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+  ],
+  containing_type=None,
+  serialized_options=None,
+  serialized_start=8408,
+  serialized_end=8578,
+)
+_sym_db.RegisterEnumDescriptor(_EOSBRANCH)
+
+EOSBranch = enum_type_wrapper.EnumTypeWrapper(_EOSBRANCH)
+_ECOMMUNITYITEMCLASS = _descriptor.EnumDescriptor(
+  name='ECommunityItemClass',
+  full_name='ECommunityItemClass',
+  filename=None,
+  file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
+  values=[
+    _descriptor.EnumValueDescriptor(
+      name='k_ECommunityItemClass_Invalid', index=0, number=0,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_ECommunityItemClass_Badge', index=1, number=1,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_ECommunityItemClass_GameCard', index=2, number=2,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_ECommunityItemClass_ProfileBackground', index=3, number=3,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_ECommunityItemClass_Emoticon', index=4, number=4,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_ECommunityItemClass_BoosterPack', index=5, number=5,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_ECommunityItemClass_Consumable', index=6, number=6,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_ECommunityItemClass_GameGoo', index=7, number=7,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_ECommunityItemClass_ProfileModifier', index=8, number=8,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_ECommunityItemClass_Scene', index=9, number=9,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_ECommunityItemClass_SalienItem', index=10, number=10,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_ECommunityItemClass_Sticker', index=11, number=11,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_ECommunityItemClass_ChatEffect', index=12, number=12,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_ECommunityItemClass_MiniProfileBackground', index=13, number=13,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_ECommunityItemClass_AvatarFrame', index=14, number=14,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_ECommunityItemClass_AnimatedAvatar', index=15, number=15,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_ECommunityItemClass_SteamDeckKeyboardSkin', index=16, number=16,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+  ],
+  containing_type=None,
+  serialized_options=None,
+  serialized_start=8581,
+  serialized_end=9265,
+)
+_sym_db.RegisterEnumDescriptor(_ECOMMUNITYITEMCLASS)
+
+ECommunityItemClass = enum_type_wrapper.EnumTypeWrapper(_ECOMMUNITYITEMCLASS)
+_ESTEAMDECKCOMPATIBILITYFEEDBACK = _descriptor.EnumDescriptor(
+  name='ESteamDeckCompatibilityFeedback',
+  full_name='ESteamDeckCompatibilityFeedback',
+  filename=None,
+  file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
+  values=[
+    _descriptor.EnumValueDescriptor(
+      name='k_ESteamDeckCompatibilityFeedback_Unset', index=0, number=0,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_ESteamDeckCompatibilityFeedback_Agree', index=1, number=1,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_ESteamDeckCompatibilityFeedback_Disagree', index=2, number=2,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_ESteamDeckCompatibilityFeedback_Ignore', index=3, number=3,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+  ],
+  containing_type=None,
+  serialized_options=None,
+  serialized_start=9268,
+  serialized_end=9485,
+)
+_sym_db.RegisterEnumDescriptor(_ESTEAMDECKCOMPATIBILITYFEEDBACK)
+
+ESteamDeckCompatibilityFeedback = enum_type_wrapper.EnumTypeWrapper(_ESTEAMDECKCOMPATIBILITYFEEDBACK)
+_EPROVIDEDECKFEEDBACKPREFERENCE = _descriptor.EnumDescriptor(
+  name='EProvideDeckFeedbackPreference',
+  full_name='EProvideDeckFeedbackPreference',
+  filename=None,
+  file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
+  values=[
+    _descriptor.EnumValueDescriptor(
+      name='k_EProvideDeckFeedbackPreference_Unset', index=0, number=0,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EProvideDeckFeedbackPreference_Yes', index=1, number=1,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EProvideDeckFeedbackPreference_No', index=2, number=2,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+  ],
+  containing_type=None,
+  serialized_options=None,
+  serialized_start=9488,
+  serialized_end=9647,
+)
+_sym_db.RegisterEnumDescriptor(_EPROVIDEDECKFEEDBACKPREFERENCE)
+
+EProvideDeckFeedbackPreference = enum_type_wrapper.EnumTypeWrapper(_EPROVIDEDECKFEEDBACKPREFERENCE)
+_ETOUCHGESTURE = _descriptor.EnumDescriptor(
+  name='ETouchGesture',
+  full_name='ETouchGesture',
+  filename=None,
+  file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
+  values=[
+    _descriptor.EnumValueDescriptor(
+      name='k_ETouchGestureNone', index=0, number=0,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_ETouchGestureTouch', index=1, number=1,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_ETouchGestureTap', index=2, number=2,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_ETouchGestureDoubleTap', index=3, number=3,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_ETouchGestureShortPress', index=4, number=4,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_ETouchGestureLongPress', index=5, number=5,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_ETouchGestureLongTap', index=6, number=6,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_ETouchGestureTwoFingerTap', index=7, number=7,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_ETouchGestureTapCancelled', index=8, number=8,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_ETouchGesturePinchBegin', index=9, number=9,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_ETouchGesturePinchUpdate', index=10, number=10,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_ETouchGesturePinchEnd', index=11, number=11,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_ETouchGestureFlingStart', index=12, number=12,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_ETouchGestureFlingCancelled', index=13, number=13,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+  ],
+  containing_type=None,
+  serialized_options=None,
+  serialized_start=9650,
+  serialized_end=10083,
+)
+_sym_db.RegisterEnumDescriptor(_ETOUCHGESTURE)
+
+ETouchGesture = enum_type_wrapper.EnumTypeWrapper(_ETOUCHGESTURE)
+_ESESSIONPERSISTENCE = _descriptor.EnumDescriptor(
+  name='ESessionPersistence',
+  full_name='ESessionPersistence',
+  filename=None,
+  file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
+  values=[
+    _descriptor.EnumValueDescriptor(
+      name='k_ESessionPersistence_Invalid', index=0, number=-1,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_ESessionPersistence_Ephemeral', index=1, number=0,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_ESessionPersistence_Persistent', index=2, number=1,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+  ],
+  containing_type=None,
+  serialized_options=None,
+  serialized_start=10086,
+  serialized_end=10226,
+)
+_sym_db.RegisterEnumDescriptor(_ESESSIONPERSISTENCE)
+
+ESessionPersistence = enum_type_wrapper.EnumTypeWrapper(_ESESSIONPERSISTENCE)
 k_PublishedFileQueryType_RankedByVote = 0
 k_PublishedFileQueryType_RankedByPublicationDate = 1
 k_PublishedFileQueryType_AcceptedForGameRankedByAcceptanceDate = 2
@@ -671,14 +1800,6 @@ k_EContentCheckProvider_Invalid = 0
 k_EContentCheckProvider_Google = 1
 k_EContentCheckProvider_Amazon = 2
 k_EContentCheckProvider_Local = 3
-k_EBanContentCheckResult_NotScanned = 0
-k_EBanContentCheckResult_Reset = 1
-k_EBanContentCheckResult_NeedsChecking = 2
-k_EBanContentCheckResult_VeryUnlikely = 5
-k_EBanContentCheckResult_Unlikely = 30
-k_EBanContentCheckResult_Possible = 50
-k_EBanContentCheckResult_Likely = 75
-k_EBanContentCheckResult_VeryLikely = 100
 k_EProfileCustomizationTypeInvalid = 0
 k_EProfileCustomizationTypeRareAchievementShowcase = 1
 k_EProfileCustomizationTypeGameCollector = 2
@@ -710,6 +1831,19 @@ k_EPublishedFileStorageSystemUGCCloud = 3
 k_ECloudStoragePersistStatePersisted = 0
 k_ECloudStoragePersistStateForgotten = 1
 k_ECloudStoragePersistStateDeleted = 2
+k_ESDCardFormatStage_Invalid = 0
+k_ESDCardFormatStage_Starting = 1
+k_ESDCardFormatStage_Testing = 2
+k_ESDCardFormatStage_Rescuing = 3
+k_ESDCardFormatStage_Formatting = 4
+k_ESDCardFormatStage_Finalizing = 5
+k_SystemFanControlMode_Invalid = 0
+k_SystemFanControlMode_Disabled = 1
+k_SystemFanControlMode_Default = 2
+k_EColorProfile_Invalid = 0
+k_EColorProfile_Native = 1
+k_EColorProfile_Standard = 2
+k_EColorProfile_Vivid = 3
 k_BluetoothDeviceType_Invalid = 0
 k_BluetoothDeviceType_Unknown = 1
 k_BluetoothDeviceType_Phone = 2
@@ -722,6 +1856,66 @@ k_BluetoothDeviceType_Mouse = 8
 k_BluetoothDeviceType_Joystick = 9
 k_BluetoothDeviceType_Gamepad = 10
 k_BluetoothDeviceType_Keyboard = 11
+k_SystemAudioDirection_Invalid = 0
+k_SystemAudioDirection_Input = 1
+k_SystemAudioDirection_Output = 2
+k_SystemAudioChannel_Invalid = 0
+k_SystemAudioChannel_Aggregated = 1
+k_SystemAudioChannel_FrontLeft = 2
+k_SystemAudioChannel_FrontRight = 3
+k_SystemAudioChannel_LFE = 4
+k_SystemAudioChannel_BackLeft = 5
+k_SystemAudioChannel_BackRight = 6
+k_SystemAudioChannel_FrontCenter = 7
+k_SystemAudioChannel_Unknown = 8
+k_SystemAudioChannel_Mono = 9
+k_SystemAudioPortType_Invalid = 0
+k_SystemAudioPortType_Unknown = 1
+k_SystemAudioPortType_Audio32f = 2
+k_SystemAudioPortType_Midi8b = 3
+k_SystemAudioPortType_Video32RGBA = 4
+k_SystemAudioPortDirection_Invalid = 0
+k_SystemAudioPortDirection_Input = 1
+k_SystemAudioPortDirection_Output = 2
+k_ESystemServiceState_Unavailable = 0
+k_ESystemServiceState_Disabled = 1
+k_ESystemServiceState_Enabled = 2
+k_EGraphicsPerfOverlayLevel_Hidden = 0
+k_EGraphicsPerfOverlayLevel_Basic = 1
+k_EGraphicsPerfOverlayLevel_Medium = 2
+k_EGraphicsPerfOverlayLevel_Full = 3
+k_EGraphicsPerfOverlayLevel_Minimal = 4
+k_EGPUPerformanceLevel_Invalid = 0
+k_EGPUPerformanceLevel_Auto = 1
+k_EGPUPerformanceLevel_Manual = 2
+k_EGPUPerformanceLevel_Low = 3
+k_EGPUPerformanceLevel_High = 4
+k_EGPUPerformanceLevel_Profiling = 5
+k_EScalingFilter_Invalid = 0
+k_EScalingFilter_FSR = 1
+k_EScalingFilter_Nearest = 2
+k_EScalingFilter_Integer = 3
+k_EScalingFilter_Linear = 4
+k_EScalingFilter_NIS = 5
+k_ECPUGovernor_Invalid = 0
+k_ECPUGovernor_Perf = 1
+k_ECPUGovernor_Powersave = 2
+k_ECPUGovernor_Manual = 3
+k_EUpdaterType_Invalid = 0
+k_EUpdaterType_Client = 1
+k_EUpdaterType_OS = 2
+k_EUpdaterType_BIOS = 3
+k_EUpdaterType_Aggregated = 4
+k_EUpdaterType_Test1 = 5
+k_EUpdaterType_Test2 = 6
+k_EUpdaterType_Dummy = 7
+k_EUpdaterState_Invalid = 0
+k_EUpdaterState_UpToDate = 2
+k_EUpdaterState_Checking = 3
+k_EUpdaterState_Available = 4
+k_EUpdaterState_Applying = 5
+k_EUpdaterState_ClientRestartPending = 6
+k_EUpdaterState_SystemRestartPending = 7
 k_EStorageBlockContentType_Invalid = 0
 k_EStorageBlockContentType_Unknown = 1
 k_EStorageBlockContentType_FileSystem = 2
@@ -731,6 +1925,70 @@ k_EStorageBlockFileSystemType_Invalid = 0
 k_EStorageBlockFileSystemType_Unknown = 1
 k_EStorageBlockFileSystemType_VFat = 2
 k_EStorageBlockFileSystemType_Ext4 = 3
+k_ESteamDeckCompatibilityCategory_Unknown = 0
+k_ESteamDeckCompatibilityCategory_Unsupported = 1
+k_ESteamDeckCompatibilityCategory_Playable = 2
+k_ESteamDeckCompatibilityCategory_Verified = 3
+k_ESteamDeckCompatibilityResultDisplayType_Invisible = 0
+k_ESteamDeckCompatibilityResultDisplayType_Informational = 1
+k_ESteamDeckCompatibilityResultDisplayType_Unsupported = 2
+k_ESteamDeckCompatibilityResultDisplayType_Playable = 3
+k_ESteamDeckCompatibilityResultDisplayType_Verified = 4
+k_EACState_Unknown = 0
+k_EACState_Disconnected = 1
+k_EACState_Connected = 2
+k_EACState_ConnectedSlow = 3
+k_EBatteryState_Unknown = 0
+k_EBatteryState_Discharging = 1
+k_EBatteryState_Charging = 2
+k_EBatteryState_Full = 3
+k_EOSBranch_Unknown = 0
+k_EOSBranch_Release = 1
+k_EOSBranch_ReleaseCandidate = 2
+k_EOSBranch_Beta = 3
+k_EOSBranch_BetaCandidate = 4
+k_EOSBranch_Main = 5
+k_ECommunityItemClass_Invalid = 0
+k_ECommunityItemClass_Badge = 1
+k_ECommunityItemClass_GameCard = 2
+k_ECommunityItemClass_ProfileBackground = 3
+k_ECommunityItemClass_Emoticon = 4
+k_ECommunityItemClass_BoosterPack = 5
+k_ECommunityItemClass_Consumable = 6
+k_ECommunityItemClass_GameGoo = 7
+k_ECommunityItemClass_ProfileModifier = 8
+k_ECommunityItemClass_Scene = 9
+k_ECommunityItemClass_SalienItem = 10
+k_ECommunityItemClass_Sticker = 11
+k_ECommunityItemClass_ChatEffect = 12
+k_ECommunityItemClass_MiniProfileBackground = 13
+k_ECommunityItemClass_AvatarFrame = 14
+k_ECommunityItemClass_AnimatedAvatar = 15
+k_ECommunityItemClass_SteamDeckKeyboardSkin = 16
+k_ESteamDeckCompatibilityFeedback_Unset = 0
+k_ESteamDeckCompatibilityFeedback_Agree = 1
+k_ESteamDeckCompatibilityFeedback_Disagree = 2
+k_ESteamDeckCompatibilityFeedback_Ignore = 3
+k_EProvideDeckFeedbackPreference_Unset = 0
+k_EProvideDeckFeedbackPreference_Yes = 1
+k_EProvideDeckFeedbackPreference_No = 2
+k_ETouchGestureNone = 0
+k_ETouchGestureTouch = 1
+k_ETouchGestureTap = 2
+k_ETouchGestureDoubleTap = 3
+k_ETouchGestureShortPress = 4
+k_ETouchGestureLongPress = 5
+k_ETouchGestureLongTap = 6
+k_ETouchGestureTwoFingerTap = 7
+k_ETouchGestureTapCancelled = 8
+k_ETouchGesturePinchBegin = 9
+k_ETouchGesturePinchUpdate = 10
+k_ETouchGesturePinchEnd = 11
+k_ETouchGestureFlingStart = 12
+k_ETouchGestureFlingCancelled = 13
+k_ESessionPersistence_Invalid = -1
+k_ESessionPersistence_Ephemeral = 0
+k_ESessionPersistence_Persistent = 1
 
 
 DESCRIPTOR.enum_types_by_name['EPublishedFileQueryType'] = _EPUBLISHEDFILEQUERYTYPE
@@ -738,13 +1996,36 @@ DESCRIPTOR.enum_types_by_name['EPublishedFileInappropriateProvider'] = _EPUBLISH
 DESCRIPTOR.enum_types_by_name['EPublishedFileInappropriateResult'] = _EPUBLISHEDFILEINAPPROPRIATERESULT
 DESCRIPTOR.enum_types_by_name['EPersonaStateFlag'] = _EPERSONASTATEFLAG
 DESCRIPTOR.enum_types_by_name['EContentCheckProvider'] = _ECONTENTCHECKPROVIDER
-DESCRIPTOR.enum_types_by_name['EBanContentCheckResult'] = _EBANCONTENTCHECKRESULT
 DESCRIPTOR.enum_types_by_name['EProfileCustomizationType'] = _EPROFILECUSTOMIZATIONTYPE
 DESCRIPTOR.enum_types_by_name['EPublishedFileStorageSystem'] = _EPUBLISHEDFILESTORAGESYSTEM
 DESCRIPTOR.enum_types_by_name['ECloudStoragePersistState'] = _ECLOUDSTORAGEPERSISTSTATE
+DESCRIPTOR.enum_types_by_name['ESDCardFormatStage'] = _ESDCARDFORMATSTAGE
+DESCRIPTOR.enum_types_by_name['ESystemFanControlMode'] = _ESYSTEMFANCONTROLMODE
+DESCRIPTOR.enum_types_by_name['EColorProfile'] = _ECOLORPROFILE
 DESCRIPTOR.enum_types_by_name['EBluetoothDeviceType'] = _EBLUETOOTHDEVICETYPE
+DESCRIPTOR.enum_types_by_name['ESystemAudioDirection'] = _ESYSTEMAUDIODIRECTION
+DESCRIPTOR.enum_types_by_name['ESystemAudioChannel'] = _ESYSTEMAUDIOCHANNEL
+DESCRIPTOR.enum_types_by_name['ESystemAudioPortType'] = _ESYSTEMAUDIOPORTTYPE
+DESCRIPTOR.enum_types_by_name['ESystemAudioPortDirection'] = _ESYSTEMAUDIOPORTDIRECTION
+DESCRIPTOR.enum_types_by_name['ESystemServiceState'] = _ESYSTEMSERVICESTATE
+DESCRIPTOR.enum_types_by_name['EGraphicsPerfOverlayLevel'] = _EGRAPHICSPERFOVERLAYLEVEL
+DESCRIPTOR.enum_types_by_name['EGPUPerformanceLevel'] = _EGPUPERFORMANCELEVEL
+DESCRIPTOR.enum_types_by_name['EScalingFilter'] = _ESCALINGFILTER
+DESCRIPTOR.enum_types_by_name['ECPUGovernor'] = _ECPUGOVERNOR
+DESCRIPTOR.enum_types_by_name['EUpdaterType'] = _EUPDATERTYPE
+DESCRIPTOR.enum_types_by_name['EUpdaterState'] = _EUPDATERSTATE
 DESCRIPTOR.enum_types_by_name['EStorageBlockContentType'] = _ESTORAGEBLOCKCONTENTTYPE
 DESCRIPTOR.enum_types_by_name['EStorageBlockFileSystemType'] = _ESTORAGEBLOCKFILESYSTEMTYPE
+DESCRIPTOR.enum_types_by_name['ESteamDeckCompatibilityCategory'] = _ESTEAMDECKCOMPATIBILITYCATEGORY
+DESCRIPTOR.enum_types_by_name['ESteamDeckCompatibilityResultDisplayType'] = _ESTEAMDECKCOMPATIBILITYRESULTDISPLAYTYPE
+DESCRIPTOR.enum_types_by_name['EACState'] = _EACSTATE
+DESCRIPTOR.enum_types_by_name['EBatteryState'] = _EBATTERYSTATE
+DESCRIPTOR.enum_types_by_name['EOSBranch'] = _EOSBRANCH
+DESCRIPTOR.enum_types_by_name['ECommunityItemClass'] = _ECOMMUNITYITEMCLASS
+DESCRIPTOR.enum_types_by_name['ESteamDeckCompatibilityFeedback'] = _ESTEAMDECKCOMPATIBILITYFEEDBACK
+DESCRIPTOR.enum_types_by_name['EProvideDeckFeedbackPreference'] = _EPROVIDEDECKFEEDBACKPREFERENCE
+DESCRIPTOR.enum_types_by_name['ETouchGesture'] = _ETOUCHGESTURE
+DESCRIPTOR.enum_types_by_name['ESessionPersistence'] = _ESESSIONPERSISTENCE
 _sym_db.RegisterFileDescriptor(DESCRIPTOR)
 
 
diff --git a/steam/protobufs/enums_productinfo_pb2.py b/steam/protobufs/enums_productinfo_pb2.py
new file mode 100644
index 0000000..3d5b4d5
--- /dev/null
+++ b/steam/protobufs/enums_productinfo_pb2.py
@@ -0,0 +1,81 @@
+# -*- coding: utf-8 -*-
+# Generated by the protocol buffer compiler.  DO NOT EDIT!
+# source: enums_productinfo.proto
+"""Generated protocol buffer code."""
+from google.protobuf.internal import enum_type_wrapper
+from google.protobuf import descriptor as _descriptor
+from google.protobuf import message as _message
+from google.protobuf import reflection as _reflection
+from google.protobuf import symbol_database as _symbol_database
+# @@protoc_insertion_point(imports)
+
+_sym_db = _symbol_database.Default()
+
+
+import steam.protobufs.steammessages_base_pb2 as steammessages__base__pb2
+
+
+DESCRIPTOR = _descriptor.FileDescriptor(
+  name='enums_productinfo.proto',
+  package='',
+  syntax='proto2',
+  serialized_options=b'H\001\220\001\001\200\265\030\001',
+  create_key=_descriptor._internal_create_key,
+  serialized_pb=b'\n\x17\x65nums_productinfo.proto\x1a\x18steammessages_base.proto*\xfb\x01\n\x14\x45\x43ontentDescriptorID\x12\x36\n2k_EContentDescriptor_FrequentNudityOrSexualContent\x10\x01\x12/\n+k_EContentDescriptor_FrequentViolenceOrGore\x10\x02\x12,\n(k_EContentDescriptor_StrongSexualContent\x10\x03\x12!\n\x1dk_EContentDescriptor_UNUSED_4\x10\x04\x12)\n%k_EContentDescriptor_AnyMatureContent\x10\x05\x42\tH\x01\x90\x01\x01\x80\xb5\x18\x01'
+  ,
+  dependencies=[steammessages__base__pb2.DESCRIPTOR,])
+
+_ECONTENTDESCRIPTORID = _descriptor.EnumDescriptor(
+  name='EContentDescriptorID',
+  full_name='EContentDescriptorID',
+  filename=None,
+  file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
+  values=[
+    _descriptor.EnumValueDescriptor(
+      name='k_EContentDescriptor_FrequentNudityOrSexualContent', index=0, number=1,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EContentDescriptor_FrequentViolenceOrGore', index=1, number=2,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EContentDescriptor_StrongSexualContent', index=2, number=3,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EContentDescriptor_UNUSED_4', index=3, number=4,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EContentDescriptor_AnyMatureContent', index=4, number=5,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+  ],
+  containing_type=None,
+  serialized_options=None,
+  serialized_start=54,
+  serialized_end=305,
+)
+_sym_db.RegisterEnumDescriptor(_ECONTENTDESCRIPTORID)
+
+EContentDescriptorID = enum_type_wrapper.EnumTypeWrapper(_ECONTENTDESCRIPTORID)
+k_EContentDescriptor_FrequentNudityOrSexualContent = 1
+k_EContentDescriptor_FrequentViolenceOrGore = 2
+k_EContentDescriptor_StrongSexualContent = 3
+k_EContentDescriptor_UNUSED_4 = 4
+k_EContentDescriptor_AnyMatureContent = 5
+
+
+DESCRIPTOR.enum_types_by_name['EContentDescriptorID'] = _ECONTENTDESCRIPTORID
+_sym_db.RegisterFileDescriptor(DESCRIPTOR)
+
+
+DESCRIPTOR._options = None
+# @@protoc_insertion_point(module_scope)
diff --git a/steam/protobufs/gc_pb2.py b/steam/protobufs/gc_pb2.py
index 85e29ac..664c45b 100644
--- a/steam/protobufs/gc_pb2.py
+++ b/steam/protobufs/gc_pb2.py
@@ -1,9 +1,7 @@
 # -*- coding: utf-8 -*-
 # Generated by the protocol buffer compiler.  DO NOT EDIT!
 # source: gc.proto
-
-import sys
-_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1'))
+"""Generated protocol buffer code."""
 from google.protobuf.internal import enum_type_wrapper
 from google.protobuf import descriptor as _descriptor
 from google.protobuf import message as _message
@@ -21,7 +19,8 @@ DESCRIPTOR = _descriptor.FileDescriptor(
   package='foobar',
   syntax='proto2',
   serialized_options=None,
-  serialized_pb=_b('\n\x08gc.proto\x12\x06\x66oobar\"\xe8\x02\n\x12\x43MsgProtoBufHeader\x12\x17\n\x0f\x63lient_steam_id\x18\x01 \x01(\x06\x12\x19\n\x11\x63lient_session_id\x18\x02 \x01(\x05\x12\x15\n\rsource_app_id\x18\x03 \x01(\r\x12+\n\rjob_id_source\x18\n \x01(\x06:\x14\x31\x38\x34\x34\x36\x37\x34\x34\x30\x37\x33\x37\x30\x39\x35\x35\x31\x36\x31\x35\x12+\n\rjob_id_target\x18\x0b \x01(\x06:\x14\x31\x38\x34\x34\x36\x37\x34\x34\x30\x37\x33\x37\x30\x39\x35\x35\x31\x36\x31\x35\x12\x17\n\x0ftarget_job_name\x18\x0c \x01(\t\x12\x12\n\x07\x65result\x18\r \x01(\x05:\x01\x32\x12\x15\n\rerror_message\x18\x0e \x01(\t\x12K\n\ngc_msg_src\x18\xc8\x01 \x01(\x0e\x32\x18.foobar.GCProtoBufMsgSrc:\x1cGCProtoBufMsgSrc_Unspecified\x12\x1c\n\x13gc_dir_index_source\x18\xc9\x01 \x01(\r*\xb6\x01\n\x10GCProtoBufMsgSrc\x12 \n\x1cGCProtoBufMsgSrc_Unspecified\x10\x00\x12\x1f\n\x1bGCProtoBufMsgSrc_FromSystem\x10\x01\x12 \n\x1cGCProtoBufMsgSrc_FromSteamID\x10\x02\x12\x1b\n\x17GCProtoBufMsgSrc_FromGC\x10\x03\x12 \n\x1cGCProtoBufMsgSrc_ReplySystem\x10\x04')
+  create_key=_descriptor._internal_create_key,
+  serialized_pb=b'\n\x08gc.proto\x12\x06\x66oobar\"\xe8\x02\n\x12\x43MsgProtoBufHeader\x12\x17\n\x0f\x63lient_steam_id\x18\x01 \x01(\x06\x12\x19\n\x11\x63lient_session_id\x18\x02 \x01(\x05\x12\x15\n\rsource_app_id\x18\x03 \x01(\r\x12+\n\rjob_id_source\x18\n \x01(\x06:\x14\x31\x38\x34\x34\x36\x37\x34\x34\x30\x37\x33\x37\x30\x39\x35\x35\x31\x36\x31\x35\x12+\n\rjob_id_target\x18\x0b \x01(\x06:\x14\x31\x38\x34\x34\x36\x37\x34\x34\x30\x37\x33\x37\x30\x39\x35\x35\x31\x36\x31\x35\x12\x17\n\x0ftarget_job_name\x18\x0c \x01(\t\x12\x12\n\x07\x65result\x18\r \x01(\x05:\x01\x32\x12\x15\n\rerror_message\x18\x0e \x01(\t\x12K\n\ngc_msg_src\x18\xc8\x01 \x01(\x0e\x32\x18.foobar.GCProtoBufMsgSrc:\x1cGCProtoBufMsgSrc_Unspecified\x12\x1c\n\x13gc_dir_index_source\x18\xc9\x01 \x01(\r*\xb6\x01\n\x10GCProtoBufMsgSrc\x12 \n\x1cGCProtoBufMsgSrc_Unspecified\x10\x00\x12\x1f\n\x1bGCProtoBufMsgSrc_FromSystem\x10\x01\x12 \n\x1cGCProtoBufMsgSrc_FromSteamID\x10\x02\x12\x1b\n\x17GCProtoBufMsgSrc_FromGC\x10\x03\x12 \n\x1cGCProtoBufMsgSrc_ReplySystem\x10\x04'
 )
 
 _GCPROTOBUFMSGSRC = _descriptor.EnumDescriptor(
@@ -29,27 +28,33 @@ _GCPROTOBUFMSGSRC = _descriptor.EnumDescriptor(
   full_name='foobar.GCProtoBufMsgSrc',
   filename=None,
   file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
   values=[
     _descriptor.EnumValueDescriptor(
       name='GCProtoBufMsgSrc_Unspecified', index=0, number=0,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='GCProtoBufMsgSrc_FromSystem', index=1, number=1,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='GCProtoBufMsgSrc_FromSteamID', index=2, number=2,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='GCProtoBufMsgSrc_FromGC', index=3, number=3,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='GCProtoBufMsgSrc_ReplySystem', index=4, number=4,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
   ],
   containing_type=None,
   serialized_options=None,
@@ -73,6 +78,7 @@ _CMSGPROTOBUFHEADER = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='client_steam_id', full_name='foobar.CMsgProtoBufHeader.client_steam_id', index=0,
@@ -80,70 +86,70 @@ _CMSGPROTOBUFHEADER = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='client_session_id', full_name='foobar.CMsgProtoBufHeader.client_session_id', index=1,
       number=2, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='source_app_id', full_name='foobar.CMsgProtoBufHeader.source_app_id', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='job_id_source', full_name='foobar.CMsgProtoBufHeader.job_id_source', index=3,
       number=10, type=6, cpp_type=4, label=1,
       has_default_value=True, default_value=18446744073709551615,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='job_id_target', full_name='foobar.CMsgProtoBufHeader.job_id_target', index=4,
       number=11, type=6, cpp_type=4, label=1,
       has_default_value=True, default_value=18446744073709551615,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='target_job_name', full_name='foobar.CMsgProtoBufHeader.target_job_name', index=5,
       number=12, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='eresult', full_name='foobar.CMsgProtoBufHeader.eresult', index=6,
       number=13, type=5, cpp_type=1, label=1,
       has_default_value=True, default_value=2,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='error_message', full_name='foobar.CMsgProtoBufHeader.error_message', index=7,
       number=14, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='gc_msg_src', full_name='foobar.CMsgProtoBufHeader.gc_msg_src', index=8,
       number=200, type=14, cpp_type=8, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='gc_dir_index_source', full_name='foobar.CMsgProtoBufHeader.gc_dir_index_source', index=9,
       number=201, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -165,11 +171,11 @@ DESCRIPTOR.message_types_by_name['CMsgProtoBufHeader'] = _CMSGPROTOBUFHEADER
 DESCRIPTOR.enum_types_by_name['GCProtoBufMsgSrc'] = _GCPROTOBUFMSGSRC
 _sym_db.RegisterFileDescriptor(DESCRIPTOR)
 
-CMsgProtoBufHeader = _reflection.GeneratedProtocolMessageType('CMsgProtoBufHeader', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGPROTOBUFHEADER,
-  __module__ = 'gc_pb2'
+CMsgProtoBufHeader = _reflection.GeneratedProtocolMessageType('CMsgProtoBufHeader', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGPROTOBUFHEADER,
+  '__module__' : 'gc_pb2'
   # @@protoc_insertion_point(class_scope:foobar.CMsgProtoBufHeader)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgProtoBufHeader)
 
 
diff --git a/steam/protobufs/offline_ticket_pb2.py b/steam/protobufs/offline_ticket_pb2.py
new file mode 100644
index 0000000..4988f22
--- /dev/null
+++ b/steam/protobufs/offline_ticket_pb2.py
@@ -0,0 +1,105 @@
+# -*- coding: utf-8 -*-
+# Generated by the protocol buffer compiler.  DO NOT EDIT!
+# source: offline_ticket.proto
+"""Generated protocol buffer code."""
+from google.protobuf import descriptor as _descriptor
+from google.protobuf import message as _message
+from google.protobuf import reflection as _reflection
+from google.protobuf import symbol_database as _symbol_database
+# @@protoc_insertion_point(imports)
+
+_sym_db = _symbol_database.Default()
+
+
+
+
+DESCRIPTOR = _descriptor.FileDescriptor(
+  name='offline_ticket.proto',
+  package='',
+  syntax='proto2',
+  serialized_options=None,
+  create_key=_descriptor._internal_create_key,
+  serialized_pb=b'\n\x14offline_ticket.proto\"w\n\x0eOffline_Ticket\x12\x18\n\x10\x65ncrypted_ticket\x18\x01 \x01(\x0c\x12\x11\n\tsignature\x18\x02 \x01(\x0c\x12\x0c\n\x04kdf1\x18\x03 \x01(\x05\x12\r\n\x05salt1\x18\x04 \x01(\x0c\x12\x0c\n\x04kdf2\x18\x05 \x01(\x05\x12\r\n\x05salt2\x18\x06 \x01(\x0c'
+)
+
+
+
+
+_OFFLINE_TICKET = _descriptor.Descriptor(
+  name='Offline_Ticket',
+  full_name='Offline_Ticket',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='encrypted_ticket', full_name='Offline_Ticket.encrypted_ticket', index=0,
+      number=1, type=12, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"",
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='signature', full_name='Offline_Ticket.signature', index=1,
+      number=2, type=12, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"",
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='kdf1', full_name='Offline_Ticket.kdf1', index=2,
+      number=3, type=5, cpp_type=1, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='salt1', full_name='Offline_Ticket.salt1', index=3,
+      number=4, type=12, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"",
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='kdf2', full_name='Offline_Ticket.kdf2', index=4,
+      number=5, type=5, cpp_type=1, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='salt2', full_name='Offline_Ticket.salt2', index=5,
+      number=6, type=12, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"",
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=24,
+  serialized_end=143,
+)
+
+DESCRIPTOR.message_types_by_name['Offline_Ticket'] = _OFFLINE_TICKET
+_sym_db.RegisterFileDescriptor(DESCRIPTOR)
+
+Offline_Ticket = _reflection.GeneratedProtocolMessageType('Offline_Ticket', (_message.Message,), {
+  'DESCRIPTOR' : _OFFLINE_TICKET,
+  '__module__' : 'offline_ticket_pb2'
+  # @@protoc_insertion_point(class_scope:Offline_Ticket)
+  })
+_sym_db.RegisterMessage(Offline_Ticket)
+
+
+# @@protoc_insertion_point(module_scope)
diff --git a/steam/protobufs/steammessages_auth_pb2.py b/steam/protobufs/steammessages_auth_pb2.py
new file mode 100644
index 0000000..7e13db6
--- /dev/null
+++ b/steam/protobufs/steammessages_auth_pb2.py
@@ -0,0 +1,2926 @@
+# -*- coding: utf-8 -*-
+# Generated by the protocol buffer compiler.  DO NOT EDIT!
+# source: steammessages_auth.proto
+"""Generated protocol buffer code."""
+from google.protobuf.internal import enum_type_wrapper
+from google.protobuf import descriptor as _descriptor
+from google.protobuf import message as _message
+from google.protobuf import reflection as _reflection
+from google.protobuf import symbol_database as _symbol_database
+from google.protobuf import service as _service
+from google.protobuf import service_reflection
+# @@protoc_insertion_point(imports)
+
+_sym_db = _symbol_database.Default()
+
+
+import steam.protobufs.steammessages_base_pb2 as steammessages__base__pb2
+import steam.protobufs.steammessages_unified_base_pb2 as steammessages__unified__base__pb2
+import steam.protobufs.enums_pb2 as enums__pb2
+
+
+DESCRIPTOR = _descriptor.FileDescriptor(
+  name='steammessages_auth.proto',
+  package='',
+  syntax='proto2',
+  serialized_options=b'\220\001\001',
+  create_key=_descriptor._internal_create_key,
+  serialized_pb=b'\n\x18steammessages_auth.proto\x1a\x18steammessages_base.proto\x1a steammessages_unified_base.proto\x1a\x0b\x65nums.proto\"}\n/CAuthentication_GetPasswordRSAPublicKey_Request\x12J\n\x0c\x61\x63\x63ount_name\x18\x01 \x01(\tB4\x82\xb5\x18\x30user-provided account name to get an RSA key for\"\xd5\x01\n0CAuthentication_GetPasswordRSAPublicKey_Response\x12\x31\n\rpublickey_mod\x18\x01 \x01(\tB\x1a\x82\xb5\x18\x16the public key modulus\x12\x32\n\rpublickey_exp\x18\x02 \x01(\tB\x1b\x82\xb5\x18\x17the public key exponent\x12:\n\ttimestamp\x18\x03 \x01(\x04\x42\'\x82\xb5\x18#the timestamp the key was generated\"\xad\x03\n\x1d\x43\x41uthentication_DeviceDetails\x12\\\n\x14\x64\x65vice_friendly_name\x18\x01 \x01(\tB>\x82\xb5\x18:User-supplied, or client-supplied, friendly name of device\x12\x80\x01\n\rplatform_type\x18\x02 \x01(\x0e\x32\x17.EAuthTokenPlatformType: k_EAuthTokenPlatformType_UnknownB.\x82\xb5\x18*EAuthTokenPlatformType, claimed, of device\x12;\n\x07os_type\x18\x03 \x01(\x05\x42*\x82\xb5\x18&EOSType, claimed, of authorized device\x12n\n\x12gaming_device_type\x18\x04 \x01(\rBR\x82\xb5\x18NEGamingDeviceType, claimed, of authorized device for steam client-type devices\"\x99\x02\n-CAuthentication_BeginAuthSessionViaQR_Request\x12\x1c\n\x14\x64\x65vice_friendly_name\x18\x01 \x01(\t\x12P\n\rplatform_type\x18\x02 \x01(\x0e\x32\x17.EAuthTokenPlatformType: k_EAuthTokenPlatformType_Unknown\x12x\n\x0e\x64\x65vice_details\x18\x03 \x01(\x0b\x32\x1e.CAuthentication_DeviceDetailsB@\x82\xb5\x18<User-supplied details about the device attempting to sign in\"\xf2\x02\n#CAuthentication_AllowedConfirmation\x12\x8e\x01\n\x11\x63onfirmation_type\x18\x01 \x01(\x0e\x32\x16.EAuthSessionGuardType:\x1fk_EAuthSessionGuardType_UnknownB:\x82\xb5\x18\x36\x61uthentication can proceed with this confirmation type\x12\xb9\x01\n\x12\x61ssociated_message\x18\x02 \x01(\tB\x9c\x01\x82\xb5\x18\x97\x01message to be interpreted depending on the confirmation type. for email confirmation, this might be the redacted email address to which email was sent.\"\xf1\x04\n.CAuthentication_BeginAuthSessionViaQR_Response\x12`\n\tclient_id\x18\x01 \x01(\x04\x42M\x82\xb5\x18Iunique identifier of requestor, also used for routing, portion of QR code\x12T\n\rchallenge_url\x18\x02 \x01(\tB=\x82\xb5\x18\x39URL based on client ID, which will be rendered as QR code\x12p\n\nrequest_id\x18\x03 \x01(\x0c\x42\\\x82\xb5\x18Xunique request ID to be presented by requestor at poll time - must not be rendered in QR\x12]\n\x08interval\x18\x04 \x01(\x02\x42K\x82\xb5\x18Grefresh interval with which requestor should call PollAuthSessionStatus\x12\x88\x01\n\x15\x61llowed_confirmations\x18\x05 \x03(\x0b\x32$.CAuthentication_AllowedConfirmationBC\x82\xb5\x18?the confirmation types that will be able to confirm the request\x12+\n\x07version\x18\x06 \x01(\x05\x42\x1a\x82\xb5\x18\x16version of the QR data\"\x96\x06\n6CAuthentication_BeginAuthSessionViaCredentials_Request\x12\x1c\n\x14\x64\x65vice_friendly_name\x18\x01 \x01(\t\x12\x14\n\x0c\x61\x63\x63ount_name\x18\x02 \x01(\t\x12\x43\n\x12\x65ncrypted_password\x18\x03 \x01(\tB\'\x82\xb5\x18#password, RSA encrypted client side\x12\x43\n\x14\x65ncryption_timestamp\x18\x04 \x01(\x04\x42%\x82\xb5\x18!timestamp to map to a key - STime\x12&\n\x0eremember_login\x18\x05 \x01(\x08\x42\x0e\x82\xb5\x18\ndeprecated\x12P\n\rplatform_type\x18\x06 \x01(\x0e\x32\x17.EAuthTokenPlatformType: k_EAuthTokenPlatformType_Unknown\x12\x8f\x01\n\x0bpersistence\x18\x07 \x01(\x0e\x32\x14.ESessionPersistence: k_ESessionPersistence_PersistentBB\x82\xb5\x18>whether we are requesting a persistent or an ephemeral session\x12]\n\nwebsite_id\x18\x08 \x01(\t:\x07UnknownB@\x82\xb5\x18<(EMachineAuthWebDomain) identifier of client requesting auth\x12x\n\x0e\x64\x65vice_details\x18\t \x01(\x0b\x32\x1e.CAuthentication_DeviceDetailsB@\x82\xb5\x18<User-supplied details about the device attempting to sign in\x12\x39\n\nguard_data\x18\n \x01(\tB%\x82\xb5\x18!steam guard data for client login\"\xd9\x05\n7CAuthentication_BeginAuthSessionViaCredentials_Response\x12L\n\tclient_id\x18\x01 \x01(\x04\x42\x39\x82\xb5\x18\x35unique identifier of requestor, also used for routing\x12z\n\nrequest_id\x18\x02 \x01(\x0c\x42\x66\x82\xb5\x18\x62unique request ID to be presented by requestor at poll time - must not be transferred or displayed\x12]\n\x08interval\x18\x03 \x01(\x02\x42K\x82\xb5\x18Grefresh interval with which requestor should call PollAuthSessionStatus\x12\x88\x01\n\x15\x61llowed_confirmations\x18\x04 \x03(\x0b\x32$.CAuthentication_AllowedConfirmationBC\x82\xb5\x18?the confirmation types that will be able to confirm the request\x12n\n\x07steamid\x18\x05 \x01(\x04\x42]\x82\xb5\x18Ysteamid of the account logging in - will only be included if the credentials were correct\x12z\n\nweak_token\x18\x06 \x01(\tBf\x82\xb5\x18\x62partial-authentication token - limited lifetime and scope, included only if credentials were valid\"\xbd\x01\n-CAuthentication_PollAuthSessionStatus_Request\x12\x11\n\tclient_id\x18\x01 \x01(\x04\x12\x12\n\nrequest_id\x18\x02 \x01(\x0c\x12\x65\n\x0ftoken_to_revoke\x18\x03 \x01(\x06\x42L\x82\xb5\x18HIf this is set to a token owned by this user, that token will be retired\"\x8a\x06\n.CAuthentication_PollAuthSessionStatus_Response\x12I\n\rnew_client_id\x18\x01 \x01(\x04\x42\x32\x82\xb5\x18.if challenge is old, this is the new client id\x12u\n\x11new_challenge_url\x18\x02 \x01(\tBZ\x82\xb5\x18Vif challenge is old, this is the new challenge ID to re-render for mobile confirmation\x12\x61\n\rrefresh_token\x18\x03 \x01(\tBJ\x82\xb5\x18\x46if login has been confirmed, this is the requestor\'s new refresh token\x12g\n\x0c\x61\x63\x63\x65ss_token\x18\x04 \x01(\tBQ\x82\xb5\x18Mif login has been confirmed, this is a new token subordinate to refresh_token\x12\x85\x01\n\x16had_remote_interaction\x18\x05 \x01(\x08\x42\x65\x82\xb5\x18\x61whether or not the auth session appears to have had remote interaction from a potential confirmer\x12U\n\x0c\x61\x63\x63ount_name\x18\x06 \x01(\tB?\x82\xb5\x18;account name of authenticating account, for use by UI layer\x12k\n\x0enew_guard_data\x18\x07 \x01(\tBS\x82\xb5\x18Oif login has been confirmed, may contain remembered machine ID for future login\"u\n*CAuthentication_GetAuthSessionInfo_Request\x12G\n\tclient_id\x18\x01 \x01(\x04\x42\x34\x82\xb5\x18\x30\x63lient ID from scanned QR Code, used for routing\"\xbb\x07\n+CAuthentication_GetAuthSessionInfo_Response\x12\'\n\x02ip\x18\x01 \x01(\tB\x1b\x82\xb5\x18\x17IP address of requestor\x12,\n\x06geoloc\x18\x02 \x01(\tB\x1c\x82\xb5\x18\x18geoloc info of requestor\x12#\n\x04\x63ity\x18\x03 \x01(\tB\x15\x82\xb5\x18\x11\x63ity of requestor\x12%\n\x05state\x18\x04 \x01(\tB\x16\x82\xb5\x18\x12state of requestor\x12)\n\x07\x63ountry\x18\x05 \x01(\tB\x18\x82\xb5\x18\x14\x63ountry of requestor\x12p\n\rplatform_type\x18\x06 \x01(\x0e\x32\x17.EAuthTokenPlatformType: k_EAuthTokenPlatformType_UnknownB\x1e\x82\xb5\x18\x1aplatform type of requestor\x12:\n\x14\x64\x65vice_friendly_name\x18\x07 \x01(\tB\x1c\x82\xb5\x18\x18name of requestor device\x12\"\n\x07version\x18\x08 \x01(\x05\x42\x11\x82\xb5\x18\rversion field\x12\xa4\x01\n\rlogin_history\x18\t \x01(\x0e\x32\x1c.EAuthSessionSecurityHistory:%k_EAuthSessionSecurityHistory_InvalidBH\x82\xb5\x18\x44whether the ip has previuously been used on the account successfully\x12\x66\n\x1brequestor_location_mismatch\x18\n \x01(\x08\x42\x41\x82\xb5\x18=whether the requestor location matches this requests location\x12M\n\x10high_usage_login\x18\x0b \x01(\x08\x42\x33\x82\xb5\x18/whether this login has seen high usage recently\x12\x8d\x01\n\x15requested_persistence\x18\x0c \x01(\x0e\x32\x14.ESessionPersistence:\x1dk_ESessionPersistence_InvalidB9\x82\xb5\x18\x35session persistence requestor has indicated they want\"\x9c\x04\n?CAuthentication_UpdateAuthSessionWithMobileConfirmation_Request\x12\"\n\x07version\x18\x01 \x01(\x05\x42\x11\x82\xb5\x18\rversion field\x12>\n\tclient_id\x18\x02 \x01(\x04\x42+\x82\xb5\x18\'pending client ID, from scanned QR Code\x12,\n\x07steamid\x18\x03 \x01(\x06\x42\x1b\x82\xb5\x18\x17user who wants to login\x12Z\n\tsignature\x18\x04 \x01(\x0c\x42G\x82\xb5\x18\x43HMAC digest over {version,client_id,steamid} via user\'s private key\x12Y\n\x07\x63onfirm\x18\x05 \x01(\x08:\x05\x66\x61lseBA\x82\xb5\x18=Whether to confirm the login (true) or deny the login (false)\x12\x8f\x01\n\x0bpersistence\x18\x06 \x01(\x0e\x32\x14.ESessionPersistence: k_ESessionPersistence_PersistentBB\x82\xb5\x18>whether we are requesting a persistent or an ephemeral session\"B\n@CAuthentication_UpdateAuthSessionWithMobileConfirmation_Response\"\xbf\x02\n;CAuthentication_UpdateAuthSessionWithSteamGuardCode_Request\x12\x42\n\tclient_id\x18\x01 \x01(\x04\x42/\x82\xb5\x18+pending client ID, from initialized session\x12,\n\x07steamid\x18\x02 \x01(\x06\x42\x1b\x82\xb5\x18\x17user who wants to login\x12#\n\x04\x63ode\x18\x03 \x01(\tB\x15\x82\xb5\x18\x11\x63onfirmation code\x12i\n\tcode_type\x18\x04 \x01(\x0e\x32\x16.EAuthSessionGuardType:\x1fk_EAuthSessionGuardType_UnknownB\x1d\x82\xb5\x18\x19type of confirmation code\">\n<CAuthentication_UpdateAuthSessionWithSteamGuardCode_Response\"\\\n2CAuthentication_AccessToken_GenerateForApp_Request\x12\x15\n\rrefresh_token\x18\x01 \x01(\t\x12\x0f\n\x07steamid\x18\x02 \x01(\x06\"K\n3CAuthentication_AccessToken_GenerateForApp_Response\x12\x14\n\x0c\x61\x63\x63\x65ss_token\x18\x01 \x01(\t\"0\n.CAuthentication_RefreshToken_Enumerate_Request\"\xbb\x0b\n/CAuthentication_RefreshToken_Enumerate_Response\x12`\n\x0erefresh_tokens\x18\x01 \x03(\x0b\x32H.CAuthentication_RefreshToken_Enumerate_Response.RefreshTokenDescription\x12\x18\n\x10requesting_token\x18\x02 \x01(\x06\x1a\xe0\x01\n\x0fTokenUsageEvent\x12[\n\x04time\x18\x01 \x01(\rBM\x82\xb5\x18IApproximate time of history event (may be deliberately fuzzed or omitted)\x12>\n\x02ip\x18\x02 \x01(\x0b\x32\x0e.CMsgIPAddressB\"\x82\xb5\x18\x1eIP at which event was observed\x12\x30\n\x06locale\x18\x03 \x01(\tB \x82\xb5\x18\x1c\x63ity/location name, if known\x1a\xa8\x08\n\x17RefreshTokenDescription\x12\x38\n\x08token_id\x18\x01 \x01(\x06\x42&\x82\xb5\x18\"Persistent token/device identifier\x12K\n\x11token_description\x18\x02 \x01(\tB0\x82\xb5\x18,client-supplied friendly name for the device\x12\x14\n\x0ctime_updated\x18\x03 \x01(\r\x12\x81\x01\n\rplatform_type\x18\x04 \x01(\x0e\x32\x17.EAuthTokenPlatformType: k_EAuthTokenPlatformType_UnknownB/\x82\xb5\x18+gross platform type (mobile/client/browser)\x12\x94\x01\n\tlogged_in\x18\x05 \x01(\x08\x42\x80\x01\x82\xb5\x18|If true, this token is currently valid. False indicates it is a machine token - ok for steamguard if you know the credential\x12T\n\x0bos_platform\x18\x06 \x01(\rB?\x82\xb5\x18;EPlatformType - rough classification of device OS, if known\x12U\n\tauth_type\x18\x07 \x01(\rBB\x82\xb5\x18>EAuthTokenGuardType - device authorization mechanism, if known\x12\x82\x01\n\x12gaming_device_type\x18\x08 \x01(\rBf\x82\xb5\x18\x62\x45GamingDeviceType - classify console/PC/SteamDeck, if known; applies only for Steam Client devices\x12\x88\x01\n\nfirst_seen\x18\t \x01(\x0b\x32@.CAuthentication_RefreshToken_Enumerate_Response.TokenUsageEventB2\x82\xb5\x18.Information about original authorization event\x12\x97\x01\n\tlast_seen\x18\n \x01(\x0b\x32@.CAuthentication_RefreshToken_Enumerate_Response.TokenUsageEventBB\x82\xb5\x18>Information about most-recently seen, if known for this device\"3\n1CAuthentication_GetAuthSessionsForAccount_Request\"\x83\x01\n2CAuthentication_GetAuthSessionsForAccount_Response\x12M\n\nclient_ids\x18\x01 \x03(\x04\x42\x39\x82\xb5\x18\x35unique identifier of requestor, also used for routing\"\xdb\x01\n,CAuthentication_MigrateMobileSession_Request\x12\x34\n\x07steamid\x18\x01 \x01(\x06\x42#\x82\xb5\x18\x1fSteam ID of the user to migrate\x12&\n\x05token\x18\x02 \x01(\tB\x17\x82\xb5\x18\x13WG Token to migrate\x12M\n\tsignature\x18\x03 \x01(\tB:\x82\xb5\x18\x36Signature over the wg token using the user\'s 2FA token\"\\\n-CAuthentication_MigrateMobileSession_Response\x12\x15\n\rrefresh_token\x18\x01 \x01(\t\x12\x14\n\x0c\x61\x63\x63\x65ss_token\x18\x02 \x01(\t\"\xcf\x02\n+CAuthentication_RefreshToken_Revoke_Request\x12\x10\n\x08token_id\x18\x01 \x01(\x06\x12N\n\x07steamid\x18\x02 \x01(\x06\x42=\x82\xb5\x18\x39Token holder if an admin action on behalf of another user\x12\x84\x01\n\rrevoke_action\x18\x03 \x01(\x0e\x32\x17.EAuthTokenRevokeAction:\x1bk_EAuthTokenRevokePermanentB7\x82\xb5\x18\x33Select between logout and logout-and-forget-machine\x12\x37\n\tsignature\x18\x04 \x01(\x0c\x42$\x82\xb5\x18 required signature over token_id\".\n,CAuthentication_RefreshToken_Revoke_Response\"\xdb\x01\n:CAuthenticationSupport_QueryRefreshTokensByAccount_Request\x12?\n\x07steamid\x18\x01 \x01(\x06\x42.\x82\xb5\x18*SteamID of the account to query (required)\x12\\\n\x16include_revoked_tokens\x18\x02 \x01(\x08\x42<\x82\xb5\x18\x38Includes tokens that are revoked or expired in the query\"\x8f\x02\n\x1f\x43SupportRefreshTokenDescription\x12\x10\n\x08token_id\x18\x01 \x01(\x06\x12\x19\n\x11token_description\x18\x02 \x01(\t\x12\x14\n\x0ctime_updated\x18\x03 \x01(\r\x12P\n\rplatform_type\x18\x04 \x01(\x0e\x32\x17.EAuthTokenPlatformType: k_EAuthTokenPlatformType_Unknown\x12@\n\x0btoken_state\x18\x05 \x01(\x0e\x32\x10.EAuthTokenState:\x19k_EAuthTokenState_Invalid\x12\x15\n\rowner_steamid\x18\x06 \x01(\x06\"w\n;CAuthenticationSupport_QueryRefreshTokensByAccount_Response\x12\x38\n\x0erefresh_tokens\x18\x01 \x03(\x0b\x32 .CSupportRefreshTokenDescription\"y\n4CAuthenticationSupport_QueryRefreshTokenByID_Request\x12\x41\n\x08token_id\x18\x01 \x01(\x06\x42/\x82\xb5\x18+Token ID of the token to look up (required)\"q\n5CAuthenticationSupport_QueryRefreshTokenByID_Response\x12\x38\n\x0erefresh_tokens\x18\x01 \x03(\x0b\x32 .CSupportRefreshTokenDescription\"n\n*CAuthenticationSupport_RevokeToken_Request\x12@\n\x08token_id\x18\x01 \x01(\x06\x42.\x82\xb5\x18*Token ID of the token to revoke (required)\"-\n+CAuthenticationSupport_RevokeToken_Response\"{\n.CAuthenticationSupport_GetTokenHistory_Request\x12I\n\x08token_id\x18\x01 \x01(\x06\x42\x37\x82\xb5\x18\x33Token ID of the token to get history for (required)\"d\n\x19\x43SupportRefreshTokenAudit\x12\x0e\n\x06\x61\x63tion\x18\x01 \x01(\x05\x12\x0c\n\x04time\x18\x02 \x01(\r\x12\x1a\n\x02ip\x18\x03 \x01(\x0b\x32\x0e.CMsgIPAddress\x12\r\n\x05\x61\x63tor\x18\x04 \x01(\x06\"^\n/CAuthenticationSupport_GetTokenHistory_Response\x12+\n\x07history\x18\x01 \x03(\x0b\x32\x1a.CSupportRefreshTokenAudit\"C\n CCloudGaming_CreateNonce_Request\x12\x10\n\x08platform\x18\x01 \x01(\t\x12\r\n\x05\x61ppid\x18\x02 \x01(\r\"B\n!CCloudGaming_CreateNonce_Response\x12\r\n\x05nonce\x18\x01 \x01(\t\x12\x0e\n\x06\x65xpiry\x18\x02 \x01(\r\"M\n%CCloudGaming_GetTimeRemaining_Request\x12\x10\n\x08platform\x18\x01 \x01(\t\x12\x12\n\nappid_list\x18\x02 \x03(\r\"F\n\x1a\x43\x43loudGaming_TimeRemaining\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x19\n\x11minutes_remaining\x18\x02 \x01(\r\"V\n&CCloudGaming_GetTimeRemaining_Response\x12,\n\x07\x65ntries\x18\x02 \x03(\x0b\x32\x1b.CCloudGaming_TimeRemaining*\xb9\x01\n\x16\x45\x41uthTokenPlatformType\x12$\n k_EAuthTokenPlatformType_Unknown\x10\x00\x12(\n$k_EAuthTokenPlatformType_SteamClient\x10\x01\x12\'\n#k_EAuthTokenPlatformType_WebBrowser\x10\x02\x12&\n\"k_EAuthTokenPlatformType_MobileApp\x10\x03*\xb6\x02\n\x15\x45\x41uthSessionGuardType\x12#\n\x1fk_EAuthSessionGuardType_Unknown\x10\x00\x12 \n\x1ck_EAuthSessionGuardType_None\x10\x01\x12%\n!k_EAuthSessionGuardType_EmailCode\x10\x02\x12&\n\"k_EAuthSessionGuardType_DeviceCode\x10\x03\x12.\n*k_EAuthSessionGuardType_DeviceConfirmation\x10\x04\x12-\n)k_EAuthSessionGuardType_EmailConfirmation\x10\x05\x12(\n$k_EAuthSessionGuardType_MachineToken\x10\x06*\xac\x01\n\x1b\x45\x41uthSessionSecurityHistory\x12)\n%k_EAuthSessionSecurityHistory_Invalid\x10\x00\x12\x30\n,k_EAuthSessionSecurityHistory_UsedPreviously\x10\x01\x12\x30\n,k_EAuthSessionSecurityHistory_NoPriorHistory\x10\x02*\x96\x01\n\x16\x45\x41uthTokenRevokeAction\x12\x1c\n\x18k_EAuthTokenRevokeLogout\x10\x00\x12\x1f\n\x1bk_EAuthTokenRevokePermanent\x10\x01\x12\x1e\n\x1ak_EAuthTokenRevokeReplaced\x10\x02\x12\x1d\n\x19k_EAuthTokenRevokeSupport\x10\x03*\xe8\x01\n\x0f\x45\x41uthTokenState\x12\x1d\n\x19k_EAuthTokenState_Invalid\x10\x00\x12\x19\n\x15k_EAuthTokenState_New\x10\x01\x12\x1f\n\x1bk_EAuthTokenState_Confirmed\x10\x02\x12\x1c\n\x18k_EAuthTokenState_Issued\x10\x03\x12\x1c\n\x18k_EAuthTokenState_Denied\x10\x04\x12\x1f\n\x1bk_EAuthTokenState_LoggedOut\x10\x05\x12\x1d\n\x19k_EAuthTokenState_Revoked\x10\x63\x32\xab\x13\n\x0e\x41uthentication\x12\xcf\x01\n\x17GetPasswordRSAPublicKey\x12\x30.CAuthentication_GetPasswordRSAPublicKey_Request\x1a\x31.CAuthentication_GetPasswordRSAPublicKey_Response\"O\x82\xb5\x18KFetches RSA public key to use to encrypt passwords for a given account name\x12\x9a\x01\n\x15\x42\x65ginAuthSessionViaQR\x12..CAuthentication_BeginAuthSessionViaQR_Request\x1a/.CAuthentication_BeginAuthSessionViaQR_Response\" \x82\xb5\x18\x1cstart authentication process\x12\xb5\x01\n\x1e\x42\x65ginAuthSessionViaCredentials\x12\x37.CAuthentication_BeginAuthSessionViaCredentials_Request\x1a\x38.CAuthentication_BeginAuthSessionViaCredentials_Response\" \x82\xb5\x18\x1cstart authentication process\x12\xa0\x01\n\x15PollAuthSessionStatus\x12..CAuthentication_PollAuthSessionStatus_Request\x1a/.CAuthentication_PollAuthSessionStatus_Response\"&\x82\xb5\x18\"poll during authentication process\x12\xce\x01\n\x12GetAuthSessionInfo\x12+.CAuthentication_GetAuthSessionInfo_Request\x1a,.CAuthentication_GetAuthSessionInfo_Response\"]\x82\xb5\x18Yget metadata of specific auth session, this will also implicitly bind the calling account\x12\xe4\x01\n\'UpdateAuthSessionWithMobileConfirmation\x12@.CAuthentication_UpdateAuthSessionWithMobileConfirmation_Request\x1a\x41.CAuthentication_UpdateAuthSessionWithMobileConfirmation_Response\"4\x82\xb5\x18\x30\x61pprove an authentication session via mobile 2fa\x12\xde\x01\n#UpdateAuthSessionWithSteamGuardCode\x12<.CAuthentication_UpdateAuthSessionWithSteamGuardCode_Request\x1a=.CAuthentication_UpdateAuthSessionWithSteamGuardCode_Response\":\x82\xb5\x18\x36\x61pprove an authentication session via steam guard code\x12\xfb\x01\n\x19GenerateAccessTokenForApp\x12\x33.CAuthentication_AccessToken_GenerateForApp_Request\x1a\x34.CAuthentication_AccessToken_GenerateForApp_Response\"s\x82\xb5\x18oGiven a refresh token for a client app audience (e.g. desktop client / mobile client), generate an access token\x12\xba\x01\n\x0f\x45numerateTokens\x12/.CAuthentication_RefreshToken_Enumerate_Request\x1a\x30.CAuthentication_RefreshToken_Enumerate_Response\"D\x82\xb5\x18@Enumerate durable (refresh) tokens for the given subject account\x12\xd6\x01\n\x19GetAuthSessionsForAccount\x12\x32.CAuthentication_GetAuthSessionsForAccount_Request\x1a\x33.CAuthentication_GetAuthSessionsForAccount_Response\"P\x82\xb5\x18LGets all active auth sessions for an account for reference by the mobile app\x12\xe4\x01\n\x14MigrateMobileSession\x12-.CAuthentication_MigrateMobileSession_Request\x1a..CAuthentication_MigrateMobileSession_Response\"m\x82\xb5\x18iMigrates a WG token to an access and refresh token using a signature generated with the user\'s 2FA secret\x12\x9e\x01\n\x12RevokeRefreshToken\x12,.CAuthentication_RefreshToken_Revoke_Request\x1a-.CAuthentication_RefreshToken_Revoke_Response\"+\x82\xb5\x18\'Mark the given refresh token as revoked\x1a\x1a\x82\xb5\x18\x16\x41uthentication Service2\xb0\x06\n\x15\x41uthenticationSupport\x12\xe5\x01\n\x1bQueryRefreshTokensByAccount\x12;.CAuthenticationSupport_QueryRefreshTokensByAccount_Request\x1a<.CAuthenticationSupport_QueryRefreshTokensByAccount_Response\"K\x82\xb5\x18GAsks the server for a list of refresh tokens associated with an account\x12\xd3\x01\n\x15QueryRefreshTokenByID\x12\x35.CAuthenticationSupport_QueryRefreshTokenByID_Request\x1a\x36.CAuthenticationSupport_QueryRefreshTokenByID_Response\"K\x82\xb5\x18GAsks the server for a list of refresh tokens associated with an account\x12\x89\x01\n\x0bRevokeToken\x12+.CAuthenticationSupport_RevokeToken_Request\x1a,.CAuthenticationSupport_RevokeToken_Response\"\x1f\x82\xb5\x18\x1bRevokes a user\'s auth token\x12\xa8\x01\n\x0fGetTokenHistory\x12/.CAuthenticationSupport_GetTokenHistory_Request\x1a\x30.CAuthenticationSupport_GetTokenHistory_Response\"2\x82\xb5\x18.Gets the audit history for a user\'s auth token\x1a\"\x82\xb5\x18\x1e\x41uthentication Support Service2\xf2\x02\n\x0b\x43loudGaming\x12\x8b\x01\n\x0b\x43reateNonce\x12!.CCloudGaming_CreateNonce_Request\x1a\".CCloudGaming_CreateNonce_Response\"5\x82\xb5\x18\x31\x43reate a nonce for a cloud gaming service session\x12\xa5\x01\n\x10GetTimeRemaining\x12&.CCloudGaming_GetTimeRemaining_Request\x1a\'.CCloudGaming_GetTimeRemaining_Response\"@\x82\xb5\x18<Get the amount of streaming time remaining for a set of apps\x1a-\x82\xb5\x18)Methods for Steam cloud gaming operationsB\x03\x90\x01\x01'
+  ,
+  dependencies=[steammessages__base__pb2.DESCRIPTOR,steammessages__unified__base__pb2.DESCRIPTOR,enums__pb2.DESCRIPTOR,])
+
+_EAUTHTOKENPLATFORMTYPE = _descriptor.EnumDescriptor(
+  name='EAuthTokenPlatformType',
+  full_name='EAuthTokenPlatformType',
+  filename=None,
+  file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
+  values=[
+    _descriptor.EnumValueDescriptor(
+      name='k_EAuthTokenPlatformType_Unknown', index=0, number=0,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EAuthTokenPlatformType_SteamClient', index=1, number=1,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EAuthTokenPlatformType_WebBrowser', index=2, number=2,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EAuthTokenPlatformType_MobileApp', index=3, number=3,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+  ],
+  containing_type=None,
+  serialized_options=None,
+  serialized_start=11027,
+  serialized_end=11212,
+)
+_sym_db.RegisterEnumDescriptor(_EAUTHTOKENPLATFORMTYPE)
+
+EAuthTokenPlatformType = enum_type_wrapper.EnumTypeWrapper(_EAUTHTOKENPLATFORMTYPE)
+_EAUTHSESSIONGUARDTYPE = _descriptor.EnumDescriptor(
+  name='EAuthSessionGuardType',
+  full_name='EAuthSessionGuardType',
+  filename=None,
+  file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
+  values=[
+    _descriptor.EnumValueDescriptor(
+      name='k_EAuthSessionGuardType_Unknown', index=0, number=0,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EAuthSessionGuardType_None', index=1, number=1,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EAuthSessionGuardType_EmailCode', index=2, number=2,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EAuthSessionGuardType_DeviceCode', index=3, number=3,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EAuthSessionGuardType_DeviceConfirmation', index=4, number=4,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EAuthSessionGuardType_EmailConfirmation', index=5, number=5,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EAuthSessionGuardType_MachineToken', index=6, number=6,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+  ],
+  containing_type=None,
+  serialized_options=None,
+  serialized_start=11215,
+  serialized_end=11525,
+)
+_sym_db.RegisterEnumDescriptor(_EAUTHSESSIONGUARDTYPE)
+
+EAuthSessionGuardType = enum_type_wrapper.EnumTypeWrapper(_EAUTHSESSIONGUARDTYPE)
+_EAUTHSESSIONSECURITYHISTORY = _descriptor.EnumDescriptor(
+  name='EAuthSessionSecurityHistory',
+  full_name='EAuthSessionSecurityHistory',
+  filename=None,
+  file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
+  values=[
+    _descriptor.EnumValueDescriptor(
+      name='k_EAuthSessionSecurityHistory_Invalid', index=0, number=0,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EAuthSessionSecurityHistory_UsedPreviously', index=1, number=1,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EAuthSessionSecurityHistory_NoPriorHistory', index=2, number=2,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+  ],
+  containing_type=None,
+  serialized_options=None,
+  serialized_start=11528,
+  serialized_end=11700,
+)
+_sym_db.RegisterEnumDescriptor(_EAUTHSESSIONSECURITYHISTORY)
+
+EAuthSessionSecurityHistory = enum_type_wrapper.EnumTypeWrapper(_EAUTHSESSIONSECURITYHISTORY)
+_EAUTHTOKENREVOKEACTION = _descriptor.EnumDescriptor(
+  name='EAuthTokenRevokeAction',
+  full_name='EAuthTokenRevokeAction',
+  filename=None,
+  file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
+  values=[
+    _descriptor.EnumValueDescriptor(
+      name='k_EAuthTokenRevokeLogout', index=0, number=0,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EAuthTokenRevokePermanent', index=1, number=1,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EAuthTokenRevokeReplaced', index=2, number=2,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EAuthTokenRevokeSupport', index=3, number=3,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+  ],
+  containing_type=None,
+  serialized_options=None,
+  serialized_start=11703,
+  serialized_end=11853,
+)
+_sym_db.RegisterEnumDescriptor(_EAUTHTOKENREVOKEACTION)
+
+EAuthTokenRevokeAction = enum_type_wrapper.EnumTypeWrapper(_EAUTHTOKENREVOKEACTION)
+_EAUTHTOKENSTATE = _descriptor.EnumDescriptor(
+  name='EAuthTokenState',
+  full_name='EAuthTokenState',
+  filename=None,
+  file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
+  values=[
+    _descriptor.EnumValueDescriptor(
+      name='k_EAuthTokenState_Invalid', index=0, number=0,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EAuthTokenState_New', index=1, number=1,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EAuthTokenState_Confirmed', index=2, number=2,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EAuthTokenState_Issued', index=3, number=3,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EAuthTokenState_Denied', index=4, number=4,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EAuthTokenState_LoggedOut', index=5, number=5,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EAuthTokenState_Revoked', index=6, number=99,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+  ],
+  containing_type=None,
+  serialized_options=None,
+  serialized_start=11856,
+  serialized_end=12088,
+)
+_sym_db.RegisterEnumDescriptor(_EAUTHTOKENSTATE)
+
+EAuthTokenState = enum_type_wrapper.EnumTypeWrapper(_EAUTHTOKENSTATE)
+k_EAuthTokenPlatformType_Unknown = 0
+k_EAuthTokenPlatformType_SteamClient = 1
+k_EAuthTokenPlatformType_WebBrowser = 2
+k_EAuthTokenPlatformType_MobileApp = 3
+k_EAuthSessionGuardType_Unknown = 0
+k_EAuthSessionGuardType_None = 1
+k_EAuthSessionGuardType_EmailCode = 2
+k_EAuthSessionGuardType_DeviceCode = 3
+k_EAuthSessionGuardType_DeviceConfirmation = 4
+k_EAuthSessionGuardType_EmailConfirmation = 5
+k_EAuthSessionGuardType_MachineToken = 6
+k_EAuthSessionSecurityHistory_Invalid = 0
+k_EAuthSessionSecurityHistory_UsedPreviously = 1
+k_EAuthSessionSecurityHistory_NoPriorHistory = 2
+k_EAuthTokenRevokeLogout = 0
+k_EAuthTokenRevokePermanent = 1
+k_EAuthTokenRevokeReplaced = 2
+k_EAuthTokenRevokeSupport = 3
+k_EAuthTokenState_Invalid = 0
+k_EAuthTokenState_New = 1
+k_EAuthTokenState_Confirmed = 2
+k_EAuthTokenState_Issued = 3
+k_EAuthTokenState_Denied = 4
+k_EAuthTokenState_LoggedOut = 5
+k_EAuthTokenState_Revoked = 99
+
+
+
+_CAUTHENTICATION_GETPASSWORDRSAPUBLICKEY_REQUEST = _descriptor.Descriptor(
+  name='CAuthentication_GetPasswordRSAPublicKey_Request',
+  full_name='CAuthentication_GetPasswordRSAPublicKey_Request',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='account_name', full_name='CAuthentication_GetPasswordRSAPublicKey_Request.account_name', index=0,
+      number=1, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\0300user-provided account name to get an RSA key for', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=101,
+  serialized_end=226,
+)
+
+
+_CAUTHENTICATION_GETPASSWORDRSAPUBLICKEY_RESPONSE = _descriptor.Descriptor(
+  name='CAuthentication_GetPasswordRSAPublicKey_Response',
+  full_name='CAuthentication_GetPasswordRSAPublicKey_Response',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='publickey_mod', full_name='CAuthentication_GetPasswordRSAPublicKey_Response.publickey_mod', index=0,
+      number=1, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\026the public key modulus', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='publickey_exp', full_name='CAuthentication_GetPasswordRSAPublicKey_Response.publickey_exp', index=1,
+      number=2, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\027the public key exponent', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='timestamp', full_name='CAuthentication_GetPasswordRSAPublicKey_Response.timestamp', index=2,
+      number=3, type=4, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030#the timestamp the key was generated', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=229,
+  serialized_end=442,
+)
+
+
+_CAUTHENTICATION_DEVICEDETAILS = _descriptor.Descriptor(
+  name='CAuthentication_DeviceDetails',
+  full_name='CAuthentication_DeviceDetails',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='device_friendly_name', full_name='CAuthentication_DeviceDetails.device_friendly_name', index=0,
+      number=1, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030:User-supplied, or client-supplied, friendly name of device', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='platform_type', full_name='CAuthentication_DeviceDetails.platform_type', index=1,
+      number=2, type=14, cpp_type=8, label=1,
+      has_default_value=True, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030*EAuthTokenPlatformType, claimed, of device', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='os_type', full_name='CAuthentication_DeviceDetails.os_type', index=2,
+      number=3, type=5, cpp_type=1, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030&EOSType, claimed, of authorized device', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='gaming_device_type', full_name='CAuthentication_DeviceDetails.gaming_device_type', index=3,
+      number=4, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030NEGamingDeviceType, claimed, of authorized device for steam client-type devices', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=445,
+  serialized_end=874,
+)
+
+
+_CAUTHENTICATION_BEGINAUTHSESSIONVIAQR_REQUEST = _descriptor.Descriptor(
+  name='CAuthentication_BeginAuthSessionViaQR_Request',
+  full_name='CAuthentication_BeginAuthSessionViaQR_Request',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='device_friendly_name', full_name='CAuthentication_BeginAuthSessionViaQR_Request.device_friendly_name', index=0,
+      number=1, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='platform_type', full_name='CAuthentication_BeginAuthSessionViaQR_Request.platform_type', index=1,
+      number=2, type=14, cpp_type=8, label=1,
+      has_default_value=True, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='device_details', full_name='CAuthentication_BeginAuthSessionViaQR_Request.device_details', index=2,
+      number=3, type=11, cpp_type=10, label=1,
+      has_default_value=False, default_value=None,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030<User-supplied details about the device attempting to sign in', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=877,
+  serialized_end=1158,
+)
+
+
+_CAUTHENTICATION_ALLOWEDCONFIRMATION = _descriptor.Descriptor(
+  name='CAuthentication_AllowedConfirmation',
+  full_name='CAuthentication_AllowedConfirmation',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='confirmation_type', full_name='CAuthentication_AllowedConfirmation.confirmation_type', index=0,
+      number=1, type=14, cpp_type=8, label=1,
+      has_default_value=True, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\0306authentication can proceed with this confirmation type', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='associated_message', full_name='CAuthentication_AllowedConfirmation.associated_message', index=1,
+      number=2, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\227\001message to be interpreted depending on the confirmation type. for email confirmation, this might be the redacted email address to which email was sent.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=1161,
+  serialized_end=1531,
+)
+
+
+_CAUTHENTICATION_BEGINAUTHSESSIONVIAQR_RESPONSE = _descriptor.Descriptor(
+  name='CAuthentication_BeginAuthSessionViaQR_Response',
+  full_name='CAuthentication_BeginAuthSessionViaQR_Response',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='client_id', full_name='CAuthentication_BeginAuthSessionViaQR_Response.client_id', index=0,
+      number=1, type=4, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030Iunique identifier of requestor, also used for routing, portion of QR code', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='challenge_url', full_name='CAuthentication_BeginAuthSessionViaQR_Response.challenge_url', index=1,
+      number=2, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\0309URL based on client ID, which will be rendered as QR code', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='request_id', full_name='CAuthentication_BeginAuthSessionViaQR_Response.request_id', index=2,
+      number=3, type=12, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"",
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030Xunique request ID to be presented by requestor at poll time - must not be rendered in QR', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='interval', full_name='CAuthentication_BeginAuthSessionViaQR_Response.interval', index=3,
+      number=4, type=2, cpp_type=6, label=1,
+      has_default_value=False, default_value=float(0),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030Grefresh interval with which requestor should call PollAuthSessionStatus', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='allowed_confirmations', full_name='CAuthentication_BeginAuthSessionViaQR_Response.allowed_confirmations', index=4,
+      number=5, type=11, cpp_type=10, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030?the confirmation types that will be able to confirm the request', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='version', full_name='CAuthentication_BeginAuthSessionViaQR_Response.version', index=5,
+      number=6, type=5, cpp_type=1, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\026version of the QR data', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=1534,
+  serialized_end=2159,
+)
+
+
+_CAUTHENTICATION_BEGINAUTHSESSIONVIACREDENTIALS_REQUEST = _descriptor.Descriptor(
+  name='CAuthentication_BeginAuthSessionViaCredentials_Request',
+  full_name='CAuthentication_BeginAuthSessionViaCredentials_Request',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='device_friendly_name', full_name='CAuthentication_BeginAuthSessionViaCredentials_Request.device_friendly_name', index=0,
+      number=1, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='account_name', full_name='CAuthentication_BeginAuthSessionViaCredentials_Request.account_name', index=1,
+      number=2, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='encrypted_password', full_name='CAuthentication_BeginAuthSessionViaCredentials_Request.encrypted_password', index=2,
+      number=3, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030#password, RSA encrypted client side', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='encryption_timestamp', full_name='CAuthentication_BeginAuthSessionViaCredentials_Request.encryption_timestamp', index=3,
+      number=4, type=4, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030!timestamp to map to a key - STime', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='remember_login', full_name='CAuthentication_BeginAuthSessionViaCredentials_Request.remember_login', index=4,
+      number=5, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\ndeprecated', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='platform_type', full_name='CAuthentication_BeginAuthSessionViaCredentials_Request.platform_type', index=5,
+      number=6, type=14, cpp_type=8, label=1,
+      has_default_value=True, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='persistence', full_name='CAuthentication_BeginAuthSessionViaCredentials_Request.persistence', index=6,
+      number=7, type=14, cpp_type=8, label=1,
+      has_default_value=True, default_value=1,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030>whether we are requesting a persistent or an ephemeral session', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='website_id', full_name='CAuthentication_BeginAuthSessionViaCredentials_Request.website_id', index=7,
+      number=8, type=9, cpp_type=9, label=1,
+      has_default_value=True, default_value=b"Unknown".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030<(EMachineAuthWebDomain) identifier of client requesting auth', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='device_details', full_name='CAuthentication_BeginAuthSessionViaCredentials_Request.device_details', index=8,
+      number=9, type=11, cpp_type=10, label=1,
+      has_default_value=False, default_value=None,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030<User-supplied details about the device attempting to sign in', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='guard_data', full_name='CAuthentication_BeginAuthSessionViaCredentials_Request.guard_data', index=9,
+      number=10, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030!steam guard data for client login', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=2162,
+  serialized_end=2952,
+)
+
+
+_CAUTHENTICATION_BEGINAUTHSESSIONVIACREDENTIALS_RESPONSE = _descriptor.Descriptor(
+  name='CAuthentication_BeginAuthSessionViaCredentials_Response',
+  full_name='CAuthentication_BeginAuthSessionViaCredentials_Response',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='client_id', full_name='CAuthentication_BeginAuthSessionViaCredentials_Response.client_id', index=0,
+      number=1, type=4, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\0305unique identifier of requestor, also used for routing', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='request_id', full_name='CAuthentication_BeginAuthSessionViaCredentials_Response.request_id', index=1,
+      number=2, type=12, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"",
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030bunique request ID to be presented by requestor at poll time - must not be transferred or displayed', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='interval', full_name='CAuthentication_BeginAuthSessionViaCredentials_Response.interval', index=2,
+      number=3, type=2, cpp_type=6, label=1,
+      has_default_value=False, default_value=float(0),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030Grefresh interval with which requestor should call PollAuthSessionStatus', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='allowed_confirmations', full_name='CAuthentication_BeginAuthSessionViaCredentials_Response.allowed_confirmations', index=3,
+      number=4, type=11, cpp_type=10, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030?the confirmation types that will be able to confirm the request', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='steamid', full_name='CAuthentication_BeginAuthSessionViaCredentials_Response.steamid', index=4,
+      number=5, type=4, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030Ysteamid of the account logging in - will only be included if the credentials were correct', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='weak_token', full_name='CAuthentication_BeginAuthSessionViaCredentials_Response.weak_token', index=5,
+      number=6, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030bpartial-authentication token - limited lifetime and scope, included only if credentials were valid', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=2955,
+  serialized_end=3684,
+)
+
+
+_CAUTHENTICATION_POLLAUTHSESSIONSTATUS_REQUEST = _descriptor.Descriptor(
+  name='CAuthentication_PollAuthSessionStatus_Request',
+  full_name='CAuthentication_PollAuthSessionStatus_Request',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='client_id', full_name='CAuthentication_PollAuthSessionStatus_Request.client_id', index=0,
+      number=1, type=4, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='request_id', full_name='CAuthentication_PollAuthSessionStatus_Request.request_id', index=1,
+      number=2, type=12, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"",
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='token_to_revoke', full_name='CAuthentication_PollAuthSessionStatus_Request.token_to_revoke', index=2,
+      number=3, type=6, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030HIf this is set to a token owned by this user, that token will be retired', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=3687,
+  serialized_end=3876,
+)
+
+
+_CAUTHENTICATION_POLLAUTHSESSIONSTATUS_RESPONSE = _descriptor.Descriptor(
+  name='CAuthentication_PollAuthSessionStatus_Response',
+  full_name='CAuthentication_PollAuthSessionStatus_Response',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='new_client_id', full_name='CAuthentication_PollAuthSessionStatus_Response.new_client_id', index=0,
+      number=1, type=4, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030.if challenge is old, this is the new client id', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='new_challenge_url', full_name='CAuthentication_PollAuthSessionStatus_Response.new_challenge_url', index=1,
+      number=2, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030Vif challenge is old, this is the new challenge ID to re-render for mobile confirmation', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='refresh_token', full_name='CAuthentication_PollAuthSessionStatus_Response.refresh_token', index=2,
+      number=3, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030Fif login has been confirmed, this is the requestor\'s new refresh token', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='access_token', full_name='CAuthentication_PollAuthSessionStatus_Response.access_token', index=3,
+      number=4, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030Mif login has been confirmed, this is a new token subordinate to refresh_token', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='had_remote_interaction', full_name='CAuthentication_PollAuthSessionStatus_Response.had_remote_interaction', index=4,
+      number=5, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030awhether or not the auth session appears to have had remote interaction from a potential confirmer', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='account_name', full_name='CAuthentication_PollAuthSessionStatus_Response.account_name', index=5,
+      number=6, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030;account name of authenticating account, for use by UI layer', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='new_guard_data', full_name='CAuthentication_PollAuthSessionStatus_Response.new_guard_data', index=6,
+      number=7, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030Oif login has been confirmed, may contain remembered machine ID for future login', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=3879,
+  serialized_end=4657,
+)
+
+
+_CAUTHENTICATION_GETAUTHSESSIONINFO_REQUEST = _descriptor.Descriptor(
+  name='CAuthentication_GetAuthSessionInfo_Request',
+  full_name='CAuthentication_GetAuthSessionInfo_Request',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='client_id', full_name='CAuthentication_GetAuthSessionInfo_Request.client_id', index=0,
+      number=1, type=4, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\0300client ID from scanned QR Code, used for routing', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=4659,
+  serialized_end=4776,
+)
+
+
+_CAUTHENTICATION_GETAUTHSESSIONINFO_RESPONSE = _descriptor.Descriptor(
+  name='CAuthentication_GetAuthSessionInfo_Response',
+  full_name='CAuthentication_GetAuthSessionInfo_Response',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='ip', full_name='CAuthentication_GetAuthSessionInfo_Response.ip', index=0,
+      number=1, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\027IP address of requestor', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='geoloc', full_name='CAuthentication_GetAuthSessionInfo_Response.geoloc', index=1,
+      number=2, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\030geoloc info of requestor', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='city', full_name='CAuthentication_GetAuthSessionInfo_Response.city', index=2,
+      number=3, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\021city of requestor', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='state', full_name='CAuthentication_GetAuthSessionInfo_Response.state', index=3,
+      number=4, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\022state of requestor', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='country', full_name='CAuthentication_GetAuthSessionInfo_Response.country', index=4,
+      number=5, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\024country of requestor', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='platform_type', full_name='CAuthentication_GetAuthSessionInfo_Response.platform_type', index=5,
+      number=6, type=14, cpp_type=8, label=1,
+      has_default_value=True, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\032platform type of requestor', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='device_friendly_name', full_name='CAuthentication_GetAuthSessionInfo_Response.device_friendly_name', index=6,
+      number=7, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\030name of requestor device', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='version', full_name='CAuthentication_GetAuthSessionInfo_Response.version', index=7,
+      number=8, type=5, cpp_type=1, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\rversion field', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='login_history', full_name='CAuthentication_GetAuthSessionInfo_Response.login_history', index=8,
+      number=9, type=14, cpp_type=8, label=1,
+      has_default_value=True, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030Dwhether the ip has previuously been used on the account successfully', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='requestor_location_mismatch', full_name='CAuthentication_GetAuthSessionInfo_Response.requestor_location_mismatch', index=9,
+      number=10, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030=whether the requestor location matches this requests location', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='high_usage_login', full_name='CAuthentication_GetAuthSessionInfo_Response.high_usage_login', index=10,
+      number=11, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030/whether this login has seen high usage recently', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='requested_persistence', full_name='CAuthentication_GetAuthSessionInfo_Response.requested_persistence', index=11,
+      number=12, type=14, cpp_type=8, label=1,
+      has_default_value=True, default_value=-1,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\0305session persistence requestor has indicated they want', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=4779,
+  serialized_end=5734,
+)
+
+
+_CAUTHENTICATION_UPDATEAUTHSESSIONWITHMOBILECONFIRMATION_REQUEST = _descriptor.Descriptor(
+  name='CAuthentication_UpdateAuthSessionWithMobileConfirmation_Request',
+  full_name='CAuthentication_UpdateAuthSessionWithMobileConfirmation_Request',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='version', full_name='CAuthentication_UpdateAuthSessionWithMobileConfirmation_Request.version', index=0,
+      number=1, type=5, cpp_type=1, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\rversion field', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='client_id', full_name='CAuthentication_UpdateAuthSessionWithMobileConfirmation_Request.client_id', index=1,
+      number=2, type=4, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\'pending client ID, from scanned QR Code', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='steamid', full_name='CAuthentication_UpdateAuthSessionWithMobileConfirmation_Request.steamid', index=2,
+      number=3, type=6, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\027user who wants to login', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='signature', full_name='CAuthentication_UpdateAuthSessionWithMobileConfirmation_Request.signature', index=3,
+      number=4, type=12, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"",
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030CHMAC digest over {version,client_id,steamid} via user\'s private key', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='confirm', full_name='CAuthentication_UpdateAuthSessionWithMobileConfirmation_Request.confirm', index=4,
+      number=5, type=8, cpp_type=7, label=1,
+      has_default_value=True, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030=Whether to confirm the login (true) or deny the login (false)', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='persistence', full_name='CAuthentication_UpdateAuthSessionWithMobileConfirmation_Request.persistence', index=5,
+      number=6, type=14, cpp_type=8, label=1,
+      has_default_value=True, default_value=1,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030>whether we are requesting a persistent or an ephemeral session', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=5737,
+  serialized_end=6277,
+)
+
+
+_CAUTHENTICATION_UPDATEAUTHSESSIONWITHMOBILECONFIRMATION_RESPONSE = _descriptor.Descriptor(
+  name='CAuthentication_UpdateAuthSessionWithMobileConfirmation_Response',
+  full_name='CAuthentication_UpdateAuthSessionWithMobileConfirmation_Response',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=6279,
+  serialized_end=6345,
+)
+
+
+_CAUTHENTICATION_UPDATEAUTHSESSIONWITHSTEAMGUARDCODE_REQUEST = _descriptor.Descriptor(
+  name='CAuthentication_UpdateAuthSessionWithSteamGuardCode_Request',
+  full_name='CAuthentication_UpdateAuthSessionWithSteamGuardCode_Request',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='client_id', full_name='CAuthentication_UpdateAuthSessionWithSteamGuardCode_Request.client_id', index=0,
+      number=1, type=4, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030+pending client ID, from initialized session', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='steamid', full_name='CAuthentication_UpdateAuthSessionWithSteamGuardCode_Request.steamid', index=1,
+      number=2, type=6, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\027user who wants to login', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='code', full_name='CAuthentication_UpdateAuthSessionWithSteamGuardCode_Request.code', index=2,
+      number=3, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\021confirmation code', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='code_type', full_name='CAuthentication_UpdateAuthSessionWithSteamGuardCode_Request.code_type', index=3,
+      number=4, type=14, cpp_type=8, label=1,
+      has_default_value=True, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\031type of confirmation code', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=6348,
+  serialized_end=6667,
+)
+
+
+_CAUTHENTICATION_UPDATEAUTHSESSIONWITHSTEAMGUARDCODE_RESPONSE = _descriptor.Descriptor(
+  name='CAuthentication_UpdateAuthSessionWithSteamGuardCode_Response',
+  full_name='CAuthentication_UpdateAuthSessionWithSteamGuardCode_Response',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=6669,
+  serialized_end=6731,
+)
+
+
+_CAUTHENTICATION_ACCESSTOKEN_GENERATEFORAPP_REQUEST = _descriptor.Descriptor(
+  name='CAuthentication_AccessToken_GenerateForApp_Request',
+  full_name='CAuthentication_AccessToken_GenerateForApp_Request',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='refresh_token', full_name='CAuthentication_AccessToken_GenerateForApp_Request.refresh_token', index=0,
+      number=1, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='steamid', full_name='CAuthentication_AccessToken_GenerateForApp_Request.steamid', index=1,
+      number=2, type=6, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=6733,
+  serialized_end=6825,
+)
+
+
+_CAUTHENTICATION_ACCESSTOKEN_GENERATEFORAPP_RESPONSE = _descriptor.Descriptor(
+  name='CAuthentication_AccessToken_GenerateForApp_Response',
+  full_name='CAuthentication_AccessToken_GenerateForApp_Response',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='access_token', full_name='CAuthentication_AccessToken_GenerateForApp_Response.access_token', index=0,
+      number=1, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=6827,
+  serialized_end=6902,
+)
+
+
+_CAUTHENTICATION_REFRESHTOKEN_ENUMERATE_REQUEST = _descriptor.Descriptor(
+  name='CAuthentication_RefreshToken_Enumerate_Request',
+  full_name='CAuthentication_RefreshToken_Enumerate_Request',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=6904,
+  serialized_end=6952,
+)
+
+
+_CAUTHENTICATION_REFRESHTOKEN_ENUMERATE_RESPONSE_TOKENUSAGEEVENT = _descriptor.Descriptor(
+  name='TokenUsageEvent',
+  full_name='CAuthentication_RefreshToken_Enumerate_Response.TokenUsageEvent',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='time', full_name='CAuthentication_RefreshToken_Enumerate_Response.TokenUsageEvent.time', index=0,
+      number=1, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030IApproximate time of history event (may be deliberately fuzzed or omitted)', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='ip', full_name='CAuthentication_RefreshToken_Enumerate_Response.TokenUsageEvent.ip', index=1,
+      number=2, type=11, cpp_type=10, label=1,
+      has_default_value=False, default_value=None,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\036IP at which event was observed', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='locale', full_name='CAuthentication_RefreshToken_Enumerate_Response.TokenUsageEvent.locale', index=2,
+      number=3, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\034city/location name, if known', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=7131,
+  serialized_end=7355,
+)
+
+_CAUTHENTICATION_REFRESHTOKEN_ENUMERATE_RESPONSE_REFRESHTOKENDESCRIPTION = _descriptor.Descriptor(
+  name='RefreshTokenDescription',
+  full_name='CAuthentication_RefreshToken_Enumerate_Response.RefreshTokenDescription',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='token_id', full_name='CAuthentication_RefreshToken_Enumerate_Response.RefreshTokenDescription.token_id', index=0,
+      number=1, type=6, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\"Persistent token/device identifier', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='token_description', full_name='CAuthentication_RefreshToken_Enumerate_Response.RefreshTokenDescription.token_description', index=1,
+      number=2, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030,client-supplied friendly name for the device', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='time_updated', full_name='CAuthentication_RefreshToken_Enumerate_Response.RefreshTokenDescription.time_updated', index=2,
+      number=3, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='platform_type', full_name='CAuthentication_RefreshToken_Enumerate_Response.RefreshTokenDescription.platform_type', index=3,
+      number=4, type=14, cpp_type=8, label=1,
+      has_default_value=True, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030+gross platform type (mobile/client/browser)', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='logged_in', full_name='CAuthentication_RefreshToken_Enumerate_Response.RefreshTokenDescription.logged_in', index=4,
+      number=5, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030|If true, this token is currently valid. False indicates it is a machine token - ok for steamguard if you know the credential', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='os_platform', full_name='CAuthentication_RefreshToken_Enumerate_Response.RefreshTokenDescription.os_platform', index=5,
+      number=6, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030;EPlatformType - rough classification of device OS, if known', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='auth_type', full_name='CAuthentication_RefreshToken_Enumerate_Response.RefreshTokenDescription.auth_type', index=6,
+      number=7, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030>EAuthTokenGuardType - device authorization mechanism, if known', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='gaming_device_type', full_name='CAuthentication_RefreshToken_Enumerate_Response.RefreshTokenDescription.gaming_device_type', index=7,
+      number=8, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030bEGamingDeviceType - classify console/PC/SteamDeck, if known; applies only for Steam Client devices', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='first_seen', full_name='CAuthentication_RefreshToken_Enumerate_Response.RefreshTokenDescription.first_seen', index=8,
+      number=9, type=11, cpp_type=10, label=1,
+      has_default_value=False, default_value=None,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030.Information about original authorization event', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='last_seen', full_name='CAuthentication_RefreshToken_Enumerate_Response.RefreshTokenDescription.last_seen', index=9,
+      number=10, type=11, cpp_type=10, label=1,
+      has_default_value=False, default_value=None,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030>Information about most-recently seen, if known for this device', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=7358,
+  serialized_end=8422,
+)
+
+_CAUTHENTICATION_REFRESHTOKEN_ENUMERATE_RESPONSE = _descriptor.Descriptor(
+  name='CAuthentication_RefreshToken_Enumerate_Response',
+  full_name='CAuthentication_RefreshToken_Enumerate_Response',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='refresh_tokens', full_name='CAuthentication_RefreshToken_Enumerate_Response.refresh_tokens', index=0,
+      number=1, type=11, cpp_type=10, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='requesting_token', full_name='CAuthentication_RefreshToken_Enumerate_Response.requesting_token', index=1,
+      number=2, type=6, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[_CAUTHENTICATION_REFRESHTOKEN_ENUMERATE_RESPONSE_TOKENUSAGEEVENT, _CAUTHENTICATION_REFRESHTOKEN_ENUMERATE_RESPONSE_REFRESHTOKENDESCRIPTION, ],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=6955,
+  serialized_end=8422,
+)
+
+
+_CAUTHENTICATION_GETAUTHSESSIONSFORACCOUNT_REQUEST = _descriptor.Descriptor(
+  name='CAuthentication_GetAuthSessionsForAccount_Request',
+  full_name='CAuthentication_GetAuthSessionsForAccount_Request',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=8424,
+  serialized_end=8475,
+)
+
+
+_CAUTHENTICATION_GETAUTHSESSIONSFORACCOUNT_RESPONSE = _descriptor.Descriptor(
+  name='CAuthentication_GetAuthSessionsForAccount_Response',
+  full_name='CAuthentication_GetAuthSessionsForAccount_Response',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='client_ids', full_name='CAuthentication_GetAuthSessionsForAccount_Response.client_ids', index=0,
+      number=1, type=4, cpp_type=4, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\0305unique identifier of requestor, also used for routing', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=8478,
+  serialized_end=8609,
+)
+
+
+_CAUTHENTICATION_MIGRATEMOBILESESSION_REQUEST = _descriptor.Descriptor(
+  name='CAuthentication_MigrateMobileSession_Request',
+  full_name='CAuthentication_MigrateMobileSession_Request',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='steamid', full_name='CAuthentication_MigrateMobileSession_Request.steamid', index=0,
+      number=1, type=6, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\037Steam ID of the user to migrate', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='token', full_name='CAuthentication_MigrateMobileSession_Request.token', index=1,
+      number=2, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\023WG Token to migrate', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='signature', full_name='CAuthentication_MigrateMobileSession_Request.signature', index=2,
+      number=3, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\0306Signature over the wg token using the user\'s 2FA token', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=8612,
+  serialized_end=8831,
+)
+
+
+_CAUTHENTICATION_MIGRATEMOBILESESSION_RESPONSE = _descriptor.Descriptor(
+  name='CAuthentication_MigrateMobileSession_Response',
+  full_name='CAuthentication_MigrateMobileSession_Response',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='refresh_token', full_name='CAuthentication_MigrateMobileSession_Response.refresh_token', index=0,
+      number=1, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='access_token', full_name='CAuthentication_MigrateMobileSession_Response.access_token', index=1,
+      number=2, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=8833,
+  serialized_end=8925,
+)
+
+
+_CAUTHENTICATION_REFRESHTOKEN_REVOKE_REQUEST = _descriptor.Descriptor(
+  name='CAuthentication_RefreshToken_Revoke_Request',
+  full_name='CAuthentication_RefreshToken_Revoke_Request',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='token_id', full_name='CAuthentication_RefreshToken_Revoke_Request.token_id', index=0,
+      number=1, type=6, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='steamid', full_name='CAuthentication_RefreshToken_Revoke_Request.steamid', index=1,
+      number=2, type=6, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\0309Token holder if an admin action on behalf of another user', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='revoke_action', full_name='CAuthentication_RefreshToken_Revoke_Request.revoke_action', index=2,
+      number=3, type=14, cpp_type=8, label=1,
+      has_default_value=True, default_value=1,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\0303Select between logout and logout-and-forget-machine', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='signature', full_name='CAuthentication_RefreshToken_Revoke_Request.signature', index=3,
+      number=4, type=12, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"",
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030 required signature over token_id', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=8928,
+  serialized_end=9263,
+)
+
+
+_CAUTHENTICATION_REFRESHTOKEN_REVOKE_RESPONSE = _descriptor.Descriptor(
+  name='CAuthentication_RefreshToken_Revoke_Response',
+  full_name='CAuthentication_RefreshToken_Revoke_Response',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=9265,
+  serialized_end=9311,
+)
+
+
+_CAUTHENTICATIONSUPPORT_QUERYREFRESHTOKENSBYACCOUNT_REQUEST = _descriptor.Descriptor(
+  name='CAuthenticationSupport_QueryRefreshTokensByAccount_Request',
+  full_name='CAuthenticationSupport_QueryRefreshTokensByAccount_Request',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='steamid', full_name='CAuthenticationSupport_QueryRefreshTokensByAccount_Request.steamid', index=0,
+      number=1, type=6, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030*SteamID of the account to query (required)', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='include_revoked_tokens', full_name='CAuthenticationSupport_QueryRefreshTokensByAccount_Request.include_revoked_tokens', index=1,
+      number=2, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\0308Includes tokens that are revoked or expired in the query', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=9314,
+  serialized_end=9533,
+)
+
+
+_CSUPPORTREFRESHTOKENDESCRIPTION = _descriptor.Descriptor(
+  name='CSupportRefreshTokenDescription',
+  full_name='CSupportRefreshTokenDescription',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='token_id', full_name='CSupportRefreshTokenDescription.token_id', index=0,
+      number=1, type=6, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='token_description', full_name='CSupportRefreshTokenDescription.token_description', index=1,
+      number=2, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='time_updated', full_name='CSupportRefreshTokenDescription.time_updated', index=2,
+      number=3, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='platform_type', full_name='CSupportRefreshTokenDescription.platform_type', index=3,
+      number=4, type=14, cpp_type=8, label=1,
+      has_default_value=True, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='token_state', full_name='CSupportRefreshTokenDescription.token_state', index=4,
+      number=5, type=14, cpp_type=8, label=1,
+      has_default_value=True, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='owner_steamid', full_name='CSupportRefreshTokenDescription.owner_steamid', index=5,
+      number=6, type=6, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=9536,
+  serialized_end=9807,
+)
+
+
+_CAUTHENTICATIONSUPPORT_QUERYREFRESHTOKENSBYACCOUNT_RESPONSE = _descriptor.Descriptor(
+  name='CAuthenticationSupport_QueryRefreshTokensByAccount_Response',
+  full_name='CAuthenticationSupport_QueryRefreshTokensByAccount_Response',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='refresh_tokens', full_name='CAuthenticationSupport_QueryRefreshTokensByAccount_Response.refresh_tokens', index=0,
+      number=1, type=11, cpp_type=10, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=9809,
+  serialized_end=9928,
+)
+
+
+_CAUTHENTICATIONSUPPORT_QUERYREFRESHTOKENBYID_REQUEST = _descriptor.Descriptor(
+  name='CAuthenticationSupport_QueryRefreshTokenByID_Request',
+  full_name='CAuthenticationSupport_QueryRefreshTokenByID_Request',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='token_id', full_name='CAuthenticationSupport_QueryRefreshTokenByID_Request.token_id', index=0,
+      number=1, type=6, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030+Token ID of the token to look up (required)', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=9930,
+  serialized_end=10051,
+)
+
+
+_CAUTHENTICATIONSUPPORT_QUERYREFRESHTOKENBYID_RESPONSE = _descriptor.Descriptor(
+  name='CAuthenticationSupport_QueryRefreshTokenByID_Response',
+  full_name='CAuthenticationSupport_QueryRefreshTokenByID_Response',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='refresh_tokens', full_name='CAuthenticationSupport_QueryRefreshTokenByID_Response.refresh_tokens', index=0,
+      number=1, type=11, cpp_type=10, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=10053,
+  serialized_end=10166,
+)
+
+
+_CAUTHENTICATIONSUPPORT_REVOKETOKEN_REQUEST = _descriptor.Descriptor(
+  name='CAuthenticationSupport_RevokeToken_Request',
+  full_name='CAuthenticationSupport_RevokeToken_Request',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='token_id', full_name='CAuthenticationSupport_RevokeToken_Request.token_id', index=0,
+      number=1, type=6, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030*Token ID of the token to revoke (required)', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=10168,
+  serialized_end=10278,
+)
+
+
+_CAUTHENTICATIONSUPPORT_REVOKETOKEN_RESPONSE = _descriptor.Descriptor(
+  name='CAuthenticationSupport_RevokeToken_Response',
+  full_name='CAuthenticationSupport_RevokeToken_Response',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=10280,
+  serialized_end=10325,
+)
+
+
+_CAUTHENTICATIONSUPPORT_GETTOKENHISTORY_REQUEST = _descriptor.Descriptor(
+  name='CAuthenticationSupport_GetTokenHistory_Request',
+  full_name='CAuthenticationSupport_GetTokenHistory_Request',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='token_id', full_name='CAuthenticationSupport_GetTokenHistory_Request.token_id', index=0,
+      number=1, type=6, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\0303Token ID of the token to get history for (required)', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=10327,
+  serialized_end=10450,
+)
+
+
+_CSUPPORTREFRESHTOKENAUDIT = _descriptor.Descriptor(
+  name='CSupportRefreshTokenAudit',
+  full_name='CSupportRefreshTokenAudit',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='action', full_name='CSupportRefreshTokenAudit.action', index=0,
+      number=1, type=5, cpp_type=1, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='time', full_name='CSupportRefreshTokenAudit.time', index=1,
+      number=2, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='ip', full_name='CSupportRefreshTokenAudit.ip', index=2,
+      number=3, type=11, cpp_type=10, label=1,
+      has_default_value=False, default_value=None,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='actor', full_name='CSupportRefreshTokenAudit.actor', index=3,
+      number=4, type=6, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=10452,
+  serialized_end=10552,
+)
+
+
+_CAUTHENTICATIONSUPPORT_GETTOKENHISTORY_RESPONSE = _descriptor.Descriptor(
+  name='CAuthenticationSupport_GetTokenHistory_Response',
+  full_name='CAuthenticationSupport_GetTokenHistory_Response',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='history', full_name='CAuthenticationSupport_GetTokenHistory_Response.history', index=0,
+      number=1, type=11, cpp_type=10, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=10554,
+  serialized_end=10648,
+)
+
+
+_CCLOUDGAMING_CREATENONCE_REQUEST = _descriptor.Descriptor(
+  name='CCloudGaming_CreateNonce_Request',
+  full_name='CCloudGaming_CreateNonce_Request',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='platform', full_name='CCloudGaming_CreateNonce_Request.platform', index=0,
+      number=1, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='appid', full_name='CCloudGaming_CreateNonce_Request.appid', index=1,
+      number=2, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=10650,
+  serialized_end=10717,
+)
+
+
+_CCLOUDGAMING_CREATENONCE_RESPONSE = _descriptor.Descriptor(
+  name='CCloudGaming_CreateNonce_Response',
+  full_name='CCloudGaming_CreateNonce_Response',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='nonce', full_name='CCloudGaming_CreateNonce_Response.nonce', index=0,
+      number=1, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='expiry', full_name='CCloudGaming_CreateNonce_Response.expiry', index=1,
+      number=2, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=10719,
+  serialized_end=10785,
+)
+
+
+_CCLOUDGAMING_GETTIMEREMAINING_REQUEST = _descriptor.Descriptor(
+  name='CCloudGaming_GetTimeRemaining_Request',
+  full_name='CCloudGaming_GetTimeRemaining_Request',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='platform', full_name='CCloudGaming_GetTimeRemaining_Request.platform', index=0,
+      number=1, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='appid_list', full_name='CCloudGaming_GetTimeRemaining_Request.appid_list', index=1,
+      number=2, type=13, cpp_type=3, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=10787,
+  serialized_end=10864,
+)
+
+
+_CCLOUDGAMING_TIMEREMAINING = _descriptor.Descriptor(
+  name='CCloudGaming_TimeRemaining',
+  full_name='CCloudGaming_TimeRemaining',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='appid', full_name='CCloudGaming_TimeRemaining.appid', index=0,
+      number=1, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='minutes_remaining', full_name='CCloudGaming_TimeRemaining.minutes_remaining', index=1,
+      number=2, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=10866,
+  serialized_end=10936,
+)
+
+
+_CCLOUDGAMING_GETTIMEREMAINING_RESPONSE = _descriptor.Descriptor(
+  name='CCloudGaming_GetTimeRemaining_Response',
+  full_name='CCloudGaming_GetTimeRemaining_Response',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='entries', full_name='CCloudGaming_GetTimeRemaining_Response.entries', index=0,
+      number=2, type=11, cpp_type=10, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=10938,
+  serialized_end=11024,
+)
+
+_CAUTHENTICATION_DEVICEDETAILS.fields_by_name['platform_type'].enum_type = _EAUTHTOKENPLATFORMTYPE
+_CAUTHENTICATION_BEGINAUTHSESSIONVIAQR_REQUEST.fields_by_name['platform_type'].enum_type = _EAUTHTOKENPLATFORMTYPE
+_CAUTHENTICATION_BEGINAUTHSESSIONVIAQR_REQUEST.fields_by_name['device_details'].message_type = _CAUTHENTICATION_DEVICEDETAILS
+_CAUTHENTICATION_ALLOWEDCONFIRMATION.fields_by_name['confirmation_type'].enum_type = _EAUTHSESSIONGUARDTYPE
+_CAUTHENTICATION_BEGINAUTHSESSIONVIAQR_RESPONSE.fields_by_name['allowed_confirmations'].message_type = _CAUTHENTICATION_ALLOWEDCONFIRMATION
+_CAUTHENTICATION_BEGINAUTHSESSIONVIACREDENTIALS_REQUEST.fields_by_name['platform_type'].enum_type = _EAUTHTOKENPLATFORMTYPE
+_CAUTHENTICATION_BEGINAUTHSESSIONVIACREDENTIALS_REQUEST.fields_by_name['persistence'].enum_type = enums__pb2._ESESSIONPERSISTENCE
+_CAUTHENTICATION_BEGINAUTHSESSIONVIACREDENTIALS_REQUEST.fields_by_name['device_details'].message_type = _CAUTHENTICATION_DEVICEDETAILS
+_CAUTHENTICATION_BEGINAUTHSESSIONVIACREDENTIALS_RESPONSE.fields_by_name['allowed_confirmations'].message_type = _CAUTHENTICATION_ALLOWEDCONFIRMATION
+_CAUTHENTICATION_GETAUTHSESSIONINFO_RESPONSE.fields_by_name['platform_type'].enum_type = _EAUTHTOKENPLATFORMTYPE
+_CAUTHENTICATION_GETAUTHSESSIONINFO_RESPONSE.fields_by_name['login_history'].enum_type = _EAUTHSESSIONSECURITYHISTORY
+_CAUTHENTICATION_GETAUTHSESSIONINFO_RESPONSE.fields_by_name['requested_persistence'].enum_type = enums__pb2._ESESSIONPERSISTENCE
+_CAUTHENTICATION_UPDATEAUTHSESSIONWITHMOBILECONFIRMATION_REQUEST.fields_by_name['persistence'].enum_type = enums__pb2._ESESSIONPERSISTENCE
+_CAUTHENTICATION_UPDATEAUTHSESSIONWITHSTEAMGUARDCODE_REQUEST.fields_by_name['code_type'].enum_type = _EAUTHSESSIONGUARDTYPE
+_CAUTHENTICATION_REFRESHTOKEN_ENUMERATE_RESPONSE_TOKENUSAGEEVENT.fields_by_name['ip'].message_type = steammessages__base__pb2._CMSGIPADDRESS
+_CAUTHENTICATION_REFRESHTOKEN_ENUMERATE_RESPONSE_TOKENUSAGEEVENT.containing_type = _CAUTHENTICATION_REFRESHTOKEN_ENUMERATE_RESPONSE
+_CAUTHENTICATION_REFRESHTOKEN_ENUMERATE_RESPONSE_REFRESHTOKENDESCRIPTION.fields_by_name['platform_type'].enum_type = _EAUTHTOKENPLATFORMTYPE
+_CAUTHENTICATION_REFRESHTOKEN_ENUMERATE_RESPONSE_REFRESHTOKENDESCRIPTION.fields_by_name['first_seen'].message_type = _CAUTHENTICATION_REFRESHTOKEN_ENUMERATE_RESPONSE_TOKENUSAGEEVENT
+_CAUTHENTICATION_REFRESHTOKEN_ENUMERATE_RESPONSE_REFRESHTOKENDESCRIPTION.fields_by_name['last_seen'].message_type = _CAUTHENTICATION_REFRESHTOKEN_ENUMERATE_RESPONSE_TOKENUSAGEEVENT
+_CAUTHENTICATION_REFRESHTOKEN_ENUMERATE_RESPONSE_REFRESHTOKENDESCRIPTION.containing_type = _CAUTHENTICATION_REFRESHTOKEN_ENUMERATE_RESPONSE
+_CAUTHENTICATION_REFRESHTOKEN_ENUMERATE_RESPONSE.fields_by_name['refresh_tokens'].message_type = _CAUTHENTICATION_REFRESHTOKEN_ENUMERATE_RESPONSE_REFRESHTOKENDESCRIPTION
+_CAUTHENTICATION_REFRESHTOKEN_REVOKE_REQUEST.fields_by_name['revoke_action'].enum_type = _EAUTHTOKENREVOKEACTION
+_CSUPPORTREFRESHTOKENDESCRIPTION.fields_by_name['platform_type'].enum_type = _EAUTHTOKENPLATFORMTYPE
+_CSUPPORTREFRESHTOKENDESCRIPTION.fields_by_name['token_state'].enum_type = _EAUTHTOKENSTATE
+_CAUTHENTICATIONSUPPORT_QUERYREFRESHTOKENSBYACCOUNT_RESPONSE.fields_by_name['refresh_tokens'].message_type = _CSUPPORTREFRESHTOKENDESCRIPTION
+_CAUTHENTICATIONSUPPORT_QUERYREFRESHTOKENBYID_RESPONSE.fields_by_name['refresh_tokens'].message_type = _CSUPPORTREFRESHTOKENDESCRIPTION
+_CSUPPORTREFRESHTOKENAUDIT.fields_by_name['ip'].message_type = steammessages__base__pb2._CMSGIPADDRESS
+_CAUTHENTICATIONSUPPORT_GETTOKENHISTORY_RESPONSE.fields_by_name['history'].message_type = _CSUPPORTREFRESHTOKENAUDIT
+_CCLOUDGAMING_GETTIMEREMAINING_RESPONSE.fields_by_name['entries'].message_type = _CCLOUDGAMING_TIMEREMAINING
+DESCRIPTOR.message_types_by_name['CAuthentication_GetPasswordRSAPublicKey_Request'] = _CAUTHENTICATION_GETPASSWORDRSAPUBLICKEY_REQUEST
+DESCRIPTOR.message_types_by_name['CAuthentication_GetPasswordRSAPublicKey_Response'] = _CAUTHENTICATION_GETPASSWORDRSAPUBLICKEY_RESPONSE
+DESCRIPTOR.message_types_by_name['CAuthentication_DeviceDetails'] = _CAUTHENTICATION_DEVICEDETAILS
+DESCRIPTOR.message_types_by_name['CAuthentication_BeginAuthSessionViaQR_Request'] = _CAUTHENTICATION_BEGINAUTHSESSIONVIAQR_REQUEST
+DESCRIPTOR.message_types_by_name['CAuthentication_AllowedConfirmation'] = _CAUTHENTICATION_ALLOWEDCONFIRMATION
+DESCRIPTOR.message_types_by_name['CAuthentication_BeginAuthSessionViaQR_Response'] = _CAUTHENTICATION_BEGINAUTHSESSIONVIAQR_RESPONSE
+DESCRIPTOR.message_types_by_name['CAuthentication_BeginAuthSessionViaCredentials_Request'] = _CAUTHENTICATION_BEGINAUTHSESSIONVIACREDENTIALS_REQUEST
+DESCRIPTOR.message_types_by_name['CAuthentication_BeginAuthSessionViaCredentials_Response'] = _CAUTHENTICATION_BEGINAUTHSESSIONVIACREDENTIALS_RESPONSE
+DESCRIPTOR.message_types_by_name['CAuthentication_PollAuthSessionStatus_Request'] = _CAUTHENTICATION_POLLAUTHSESSIONSTATUS_REQUEST
+DESCRIPTOR.message_types_by_name['CAuthentication_PollAuthSessionStatus_Response'] = _CAUTHENTICATION_POLLAUTHSESSIONSTATUS_RESPONSE
+DESCRIPTOR.message_types_by_name['CAuthentication_GetAuthSessionInfo_Request'] = _CAUTHENTICATION_GETAUTHSESSIONINFO_REQUEST
+DESCRIPTOR.message_types_by_name['CAuthentication_GetAuthSessionInfo_Response'] = _CAUTHENTICATION_GETAUTHSESSIONINFO_RESPONSE
+DESCRIPTOR.message_types_by_name['CAuthentication_UpdateAuthSessionWithMobileConfirmation_Request'] = _CAUTHENTICATION_UPDATEAUTHSESSIONWITHMOBILECONFIRMATION_REQUEST
+DESCRIPTOR.message_types_by_name['CAuthentication_UpdateAuthSessionWithMobileConfirmation_Response'] = _CAUTHENTICATION_UPDATEAUTHSESSIONWITHMOBILECONFIRMATION_RESPONSE
+DESCRIPTOR.message_types_by_name['CAuthentication_UpdateAuthSessionWithSteamGuardCode_Request'] = _CAUTHENTICATION_UPDATEAUTHSESSIONWITHSTEAMGUARDCODE_REQUEST
+DESCRIPTOR.message_types_by_name['CAuthentication_UpdateAuthSessionWithSteamGuardCode_Response'] = _CAUTHENTICATION_UPDATEAUTHSESSIONWITHSTEAMGUARDCODE_RESPONSE
+DESCRIPTOR.message_types_by_name['CAuthentication_AccessToken_GenerateForApp_Request'] = _CAUTHENTICATION_ACCESSTOKEN_GENERATEFORAPP_REQUEST
+DESCRIPTOR.message_types_by_name['CAuthentication_AccessToken_GenerateForApp_Response'] = _CAUTHENTICATION_ACCESSTOKEN_GENERATEFORAPP_RESPONSE
+DESCRIPTOR.message_types_by_name['CAuthentication_RefreshToken_Enumerate_Request'] = _CAUTHENTICATION_REFRESHTOKEN_ENUMERATE_REQUEST
+DESCRIPTOR.message_types_by_name['CAuthentication_RefreshToken_Enumerate_Response'] = _CAUTHENTICATION_REFRESHTOKEN_ENUMERATE_RESPONSE
+DESCRIPTOR.message_types_by_name['CAuthentication_GetAuthSessionsForAccount_Request'] = _CAUTHENTICATION_GETAUTHSESSIONSFORACCOUNT_REQUEST
+DESCRIPTOR.message_types_by_name['CAuthentication_GetAuthSessionsForAccount_Response'] = _CAUTHENTICATION_GETAUTHSESSIONSFORACCOUNT_RESPONSE
+DESCRIPTOR.message_types_by_name['CAuthentication_MigrateMobileSession_Request'] = _CAUTHENTICATION_MIGRATEMOBILESESSION_REQUEST
+DESCRIPTOR.message_types_by_name['CAuthentication_MigrateMobileSession_Response'] = _CAUTHENTICATION_MIGRATEMOBILESESSION_RESPONSE
+DESCRIPTOR.message_types_by_name['CAuthentication_RefreshToken_Revoke_Request'] = _CAUTHENTICATION_REFRESHTOKEN_REVOKE_REQUEST
+DESCRIPTOR.message_types_by_name['CAuthentication_RefreshToken_Revoke_Response'] = _CAUTHENTICATION_REFRESHTOKEN_REVOKE_RESPONSE
+DESCRIPTOR.message_types_by_name['CAuthenticationSupport_QueryRefreshTokensByAccount_Request'] = _CAUTHENTICATIONSUPPORT_QUERYREFRESHTOKENSBYACCOUNT_REQUEST
+DESCRIPTOR.message_types_by_name['CSupportRefreshTokenDescription'] = _CSUPPORTREFRESHTOKENDESCRIPTION
+DESCRIPTOR.message_types_by_name['CAuthenticationSupport_QueryRefreshTokensByAccount_Response'] = _CAUTHENTICATIONSUPPORT_QUERYREFRESHTOKENSBYACCOUNT_RESPONSE
+DESCRIPTOR.message_types_by_name['CAuthenticationSupport_QueryRefreshTokenByID_Request'] = _CAUTHENTICATIONSUPPORT_QUERYREFRESHTOKENBYID_REQUEST
+DESCRIPTOR.message_types_by_name['CAuthenticationSupport_QueryRefreshTokenByID_Response'] = _CAUTHENTICATIONSUPPORT_QUERYREFRESHTOKENBYID_RESPONSE
+DESCRIPTOR.message_types_by_name['CAuthenticationSupport_RevokeToken_Request'] = _CAUTHENTICATIONSUPPORT_REVOKETOKEN_REQUEST
+DESCRIPTOR.message_types_by_name['CAuthenticationSupport_RevokeToken_Response'] = _CAUTHENTICATIONSUPPORT_REVOKETOKEN_RESPONSE
+DESCRIPTOR.message_types_by_name['CAuthenticationSupport_GetTokenHistory_Request'] = _CAUTHENTICATIONSUPPORT_GETTOKENHISTORY_REQUEST
+DESCRIPTOR.message_types_by_name['CSupportRefreshTokenAudit'] = _CSUPPORTREFRESHTOKENAUDIT
+DESCRIPTOR.message_types_by_name['CAuthenticationSupport_GetTokenHistory_Response'] = _CAUTHENTICATIONSUPPORT_GETTOKENHISTORY_RESPONSE
+DESCRIPTOR.message_types_by_name['CCloudGaming_CreateNonce_Request'] = _CCLOUDGAMING_CREATENONCE_REQUEST
+DESCRIPTOR.message_types_by_name['CCloudGaming_CreateNonce_Response'] = _CCLOUDGAMING_CREATENONCE_RESPONSE
+DESCRIPTOR.message_types_by_name['CCloudGaming_GetTimeRemaining_Request'] = _CCLOUDGAMING_GETTIMEREMAINING_REQUEST
+DESCRIPTOR.message_types_by_name['CCloudGaming_TimeRemaining'] = _CCLOUDGAMING_TIMEREMAINING
+DESCRIPTOR.message_types_by_name['CCloudGaming_GetTimeRemaining_Response'] = _CCLOUDGAMING_GETTIMEREMAINING_RESPONSE
+DESCRIPTOR.enum_types_by_name['EAuthTokenPlatformType'] = _EAUTHTOKENPLATFORMTYPE
+DESCRIPTOR.enum_types_by_name['EAuthSessionGuardType'] = _EAUTHSESSIONGUARDTYPE
+DESCRIPTOR.enum_types_by_name['EAuthSessionSecurityHistory'] = _EAUTHSESSIONSECURITYHISTORY
+DESCRIPTOR.enum_types_by_name['EAuthTokenRevokeAction'] = _EAUTHTOKENREVOKEACTION
+DESCRIPTOR.enum_types_by_name['EAuthTokenState'] = _EAUTHTOKENSTATE
+_sym_db.RegisterFileDescriptor(DESCRIPTOR)
+
+CAuthentication_GetPasswordRSAPublicKey_Request = _reflection.GeneratedProtocolMessageType('CAuthentication_GetPasswordRSAPublicKey_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CAUTHENTICATION_GETPASSWORDRSAPUBLICKEY_REQUEST,
+  '__module__' : 'steammessages_auth_pb2'
+  # @@protoc_insertion_point(class_scope:CAuthentication_GetPasswordRSAPublicKey_Request)
+  })
+_sym_db.RegisterMessage(CAuthentication_GetPasswordRSAPublicKey_Request)
+
+CAuthentication_GetPasswordRSAPublicKey_Response = _reflection.GeneratedProtocolMessageType('CAuthentication_GetPasswordRSAPublicKey_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CAUTHENTICATION_GETPASSWORDRSAPUBLICKEY_RESPONSE,
+  '__module__' : 'steammessages_auth_pb2'
+  # @@protoc_insertion_point(class_scope:CAuthentication_GetPasswordRSAPublicKey_Response)
+  })
+_sym_db.RegisterMessage(CAuthentication_GetPasswordRSAPublicKey_Response)
+
+CAuthentication_DeviceDetails = _reflection.GeneratedProtocolMessageType('CAuthentication_DeviceDetails', (_message.Message,), {
+  'DESCRIPTOR' : _CAUTHENTICATION_DEVICEDETAILS,
+  '__module__' : 'steammessages_auth_pb2'
+  # @@protoc_insertion_point(class_scope:CAuthentication_DeviceDetails)
+  })
+_sym_db.RegisterMessage(CAuthentication_DeviceDetails)
+
+CAuthentication_BeginAuthSessionViaQR_Request = _reflection.GeneratedProtocolMessageType('CAuthentication_BeginAuthSessionViaQR_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CAUTHENTICATION_BEGINAUTHSESSIONVIAQR_REQUEST,
+  '__module__' : 'steammessages_auth_pb2'
+  # @@protoc_insertion_point(class_scope:CAuthentication_BeginAuthSessionViaQR_Request)
+  })
+_sym_db.RegisterMessage(CAuthentication_BeginAuthSessionViaQR_Request)
+
+CAuthentication_AllowedConfirmation = _reflection.GeneratedProtocolMessageType('CAuthentication_AllowedConfirmation', (_message.Message,), {
+  'DESCRIPTOR' : _CAUTHENTICATION_ALLOWEDCONFIRMATION,
+  '__module__' : 'steammessages_auth_pb2'
+  # @@protoc_insertion_point(class_scope:CAuthentication_AllowedConfirmation)
+  })
+_sym_db.RegisterMessage(CAuthentication_AllowedConfirmation)
+
+CAuthentication_BeginAuthSessionViaQR_Response = _reflection.GeneratedProtocolMessageType('CAuthentication_BeginAuthSessionViaQR_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CAUTHENTICATION_BEGINAUTHSESSIONVIAQR_RESPONSE,
+  '__module__' : 'steammessages_auth_pb2'
+  # @@protoc_insertion_point(class_scope:CAuthentication_BeginAuthSessionViaQR_Response)
+  })
+_sym_db.RegisterMessage(CAuthentication_BeginAuthSessionViaQR_Response)
+
+CAuthentication_BeginAuthSessionViaCredentials_Request = _reflection.GeneratedProtocolMessageType('CAuthentication_BeginAuthSessionViaCredentials_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CAUTHENTICATION_BEGINAUTHSESSIONVIACREDENTIALS_REQUEST,
+  '__module__' : 'steammessages_auth_pb2'
+  # @@protoc_insertion_point(class_scope:CAuthentication_BeginAuthSessionViaCredentials_Request)
+  })
+_sym_db.RegisterMessage(CAuthentication_BeginAuthSessionViaCredentials_Request)
+
+CAuthentication_BeginAuthSessionViaCredentials_Response = _reflection.GeneratedProtocolMessageType('CAuthentication_BeginAuthSessionViaCredentials_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CAUTHENTICATION_BEGINAUTHSESSIONVIACREDENTIALS_RESPONSE,
+  '__module__' : 'steammessages_auth_pb2'
+  # @@protoc_insertion_point(class_scope:CAuthentication_BeginAuthSessionViaCredentials_Response)
+  })
+_sym_db.RegisterMessage(CAuthentication_BeginAuthSessionViaCredentials_Response)
+
+CAuthentication_PollAuthSessionStatus_Request = _reflection.GeneratedProtocolMessageType('CAuthentication_PollAuthSessionStatus_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CAUTHENTICATION_POLLAUTHSESSIONSTATUS_REQUEST,
+  '__module__' : 'steammessages_auth_pb2'
+  # @@protoc_insertion_point(class_scope:CAuthentication_PollAuthSessionStatus_Request)
+  })
+_sym_db.RegisterMessage(CAuthentication_PollAuthSessionStatus_Request)
+
+CAuthentication_PollAuthSessionStatus_Response = _reflection.GeneratedProtocolMessageType('CAuthentication_PollAuthSessionStatus_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CAUTHENTICATION_POLLAUTHSESSIONSTATUS_RESPONSE,
+  '__module__' : 'steammessages_auth_pb2'
+  # @@protoc_insertion_point(class_scope:CAuthentication_PollAuthSessionStatus_Response)
+  })
+_sym_db.RegisterMessage(CAuthentication_PollAuthSessionStatus_Response)
+
+CAuthentication_GetAuthSessionInfo_Request = _reflection.GeneratedProtocolMessageType('CAuthentication_GetAuthSessionInfo_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CAUTHENTICATION_GETAUTHSESSIONINFO_REQUEST,
+  '__module__' : 'steammessages_auth_pb2'
+  # @@protoc_insertion_point(class_scope:CAuthentication_GetAuthSessionInfo_Request)
+  })
+_sym_db.RegisterMessage(CAuthentication_GetAuthSessionInfo_Request)
+
+CAuthentication_GetAuthSessionInfo_Response = _reflection.GeneratedProtocolMessageType('CAuthentication_GetAuthSessionInfo_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CAUTHENTICATION_GETAUTHSESSIONINFO_RESPONSE,
+  '__module__' : 'steammessages_auth_pb2'
+  # @@protoc_insertion_point(class_scope:CAuthentication_GetAuthSessionInfo_Response)
+  })
+_sym_db.RegisterMessage(CAuthentication_GetAuthSessionInfo_Response)
+
+CAuthentication_UpdateAuthSessionWithMobileConfirmation_Request = _reflection.GeneratedProtocolMessageType('CAuthentication_UpdateAuthSessionWithMobileConfirmation_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CAUTHENTICATION_UPDATEAUTHSESSIONWITHMOBILECONFIRMATION_REQUEST,
+  '__module__' : 'steammessages_auth_pb2'
+  # @@protoc_insertion_point(class_scope:CAuthentication_UpdateAuthSessionWithMobileConfirmation_Request)
+  })
+_sym_db.RegisterMessage(CAuthentication_UpdateAuthSessionWithMobileConfirmation_Request)
+
+CAuthentication_UpdateAuthSessionWithMobileConfirmation_Response = _reflection.GeneratedProtocolMessageType('CAuthentication_UpdateAuthSessionWithMobileConfirmation_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CAUTHENTICATION_UPDATEAUTHSESSIONWITHMOBILECONFIRMATION_RESPONSE,
+  '__module__' : 'steammessages_auth_pb2'
+  # @@protoc_insertion_point(class_scope:CAuthentication_UpdateAuthSessionWithMobileConfirmation_Response)
+  })
+_sym_db.RegisterMessage(CAuthentication_UpdateAuthSessionWithMobileConfirmation_Response)
+
+CAuthentication_UpdateAuthSessionWithSteamGuardCode_Request = _reflection.GeneratedProtocolMessageType('CAuthentication_UpdateAuthSessionWithSteamGuardCode_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CAUTHENTICATION_UPDATEAUTHSESSIONWITHSTEAMGUARDCODE_REQUEST,
+  '__module__' : 'steammessages_auth_pb2'
+  # @@protoc_insertion_point(class_scope:CAuthentication_UpdateAuthSessionWithSteamGuardCode_Request)
+  })
+_sym_db.RegisterMessage(CAuthentication_UpdateAuthSessionWithSteamGuardCode_Request)
+
+CAuthentication_UpdateAuthSessionWithSteamGuardCode_Response = _reflection.GeneratedProtocolMessageType('CAuthentication_UpdateAuthSessionWithSteamGuardCode_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CAUTHENTICATION_UPDATEAUTHSESSIONWITHSTEAMGUARDCODE_RESPONSE,
+  '__module__' : 'steammessages_auth_pb2'
+  # @@protoc_insertion_point(class_scope:CAuthentication_UpdateAuthSessionWithSteamGuardCode_Response)
+  })
+_sym_db.RegisterMessage(CAuthentication_UpdateAuthSessionWithSteamGuardCode_Response)
+
+CAuthentication_AccessToken_GenerateForApp_Request = _reflection.GeneratedProtocolMessageType('CAuthentication_AccessToken_GenerateForApp_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CAUTHENTICATION_ACCESSTOKEN_GENERATEFORAPP_REQUEST,
+  '__module__' : 'steammessages_auth_pb2'
+  # @@protoc_insertion_point(class_scope:CAuthentication_AccessToken_GenerateForApp_Request)
+  })
+_sym_db.RegisterMessage(CAuthentication_AccessToken_GenerateForApp_Request)
+
+CAuthentication_AccessToken_GenerateForApp_Response = _reflection.GeneratedProtocolMessageType('CAuthentication_AccessToken_GenerateForApp_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CAUTHENTICATION_ACCESSTOKEN_GENERATEFORAPP_RESPONSE,
+  '__module__' : 'steammessages_auth_pb2'
+  # @@protoc_insertion_point(class_scope:CAuthentication_AccessToken_GenerateForApp_Response)
+  })
+_sym_db.RegisterMessage(CAuthentication_AccessToken_GenerateForApp_Response)
+
+CAuthentication_RefreshToken_Enumerate_Request = _reflection.GeneratedProtocolMessageType('CAuthentication_RefreshToken_Enumerate_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CAUTHENTICATION_REFRESHTOKEN_ENUMERATE_REQUEST,
+  '__module__' : 'steammessages_auth_pb2'
+  # @@protoc_insertion_point(class_scope:CAuthentication_RefreshToken_Enumerate_Request)
+  })
+_sym_db.RegisterMessage(CAuthentication_RefreshToken_Enumerate_Request)
+
+CAuthentication_RefreshToken_Enumerate_Response = _reflection.GeneratedProtocolMessageType('CAuthentication_RefreshToken_Enumerate_Response', (_message.Message,), {
+
+  'TokenUsageEvent' : _reflection.GeneratedProtocolMessageType('TokenUsageEvent', (_message.Message,), {
+    'DESCRIPTOR' : _CAUTHENTICATION_REFRESHTOKEN_ENUMERATE_RESPONSE_TOKENUSAGEEVENT,
+    '__module__' : 'steammessages_auth_pb2'
+    # @@protoc_insertion_point(class_scope:CAuthentication_RefreshToken_Enumerate_Response.TokenUsageEvent)
+    })
+  ,
+
+  'RefreshTokenDescription' : _reflection.GeneratedProtocolMessageType('RefreshTokenDescription', (_message.Message,), {
+    'DESCRIPTOR' : _CAUTHENTICATION_REFRESHTOKEN_ENUMERATE_RESPONSE_REFRESHTOKENDESCRIPTION,
+    '__module__' : 'steammessages_auth_pb2'
+    # @@protoc_insertion_point(class_scope:CAuthentication_RefreshToken_Enumerate_Response.RefreshTokenDescription)
+    })
+  ,
+  'DESCRIPTOR' : _CAUTHENTICATION_REFRESHTOKEN_ENUMERATE_RESPONSE,
+  '__module__' : 'steammessages_auth_pb2'
+  # @@protoc_insertion_point(class_scope:CAuthentication_RefreshToken_Enumerate_Response)
+  })
+_sym_db.RegisterMessage(CAuthentication_RefreshToken_Enumerate_Response)
+_sym_db.RegisterMessage(CAuthentication_RefreshToken_Enumerate_Response.TokenUsageEvent)
+_sym_db.RegisterMessage(CAuthentication_RefreshToken_Enumerate_Response.RefreshTokenDescription)
+
+CAuthentication_GetAuthSessionsForAccount_Request = _reflection.GeneratedProtocolMessageType('CAuthentication_GetAuthSessionsForAccount_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CAUTHENTICATION_GETAUTHSESSIONSFORACCOUNT_REQUEST,
+  '__module__' : 'steammessages_auth_pb2'
+  # @@protoc_insertion_point(class_scope:CAuthentication_GetAuthSessionsForAccount_Request)
+  })
+_sym_db.RegisterMessage(CAuthentication_GetAuthSessionsForAccount_Request)
+
+CAuthentication_GetAuthSessionsForAccount_Response = _reflection.GeneratedProtocolMessageType('CAuthentication_GetAuthSessionsForAccount_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CAUTHENTICATION_GETAUTHSESSIONSFORACCOUNT_RESPONSE,
+  '__module__' : 'steammessages_auth_pb2'
+  # @@protoc_insertion_point(class_scope:CAuthentication_GetAuthSessionsForAccount_Response)
+  })
+_sym_db.RegisterMessage(CAuthentication_GetAuthSessionsForAccount_Response)
+
+CAuthentication_MigrateMobileSession_Request = _reflection.GeneratedProtocolMessageType('CAuthentication_MigrateMobileSession_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CAUTHENTICATION_MIGRATEMOBILESESSION_REQUEST,
+  '__module__' : 'steammessages_auth_pb2'
+  # @@protoc_insertion_point(class_scope:CAuthentication_MigrateMobileSession_Request)
+  })
+_sym_db.RegisterMessage(CAuthentication_MigrateMobileSession_Request)
+
+CAuthentication_MigrateMobileSession_Response = _reflection.GeneratedProtocolMessageType('CAuthentication_MigrateMobileSession_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CAUTHENTICATION_MIGRATEMOBILESESSION_RESPONSE,
+  '__module__' : 'steammessages_auth_pb2'
+  # @@protoc_insertion_point(class_scope:CAuthentication_MigrateMobileSession_Response)
+  })
+_sym_db.RegisterMessage(CAuthentication_MigrateMobileSession_Response)
+
+CAuthentication_RefreshToken_Revoke_Request = _reflection.GeneratedProtocolMessageType('CAuthentication_RefreshToken_Revoke_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CAUTHENTICATION_REFRESHTOKEN_REVOKE_REQUEST,
+  '__module__' : 'steammessages_auth_pb2'
+  # @@protoc_insertion_point(class_scope:CAuthentication_RefreshToken_Revoke_Request)
+  })
+_sym_db.RegisterMessage(CAuthentication_RefreshToken_Revoke_Request)
+
+CAuthentication_RefreshToken_Revoke_Response = _reflection.GeneratedProtocolMessageType('CAuthentication_RefreshToken_Revoke_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CAUTHENTICATION_REFRESHTOKEN_REVOKE_RESPONSE,
+  '__module__' : 'steammessages_auth_pb2'
+  # @@protoc_insertion_point(class_scope:CAuthentication_RefreshToken_Revoke_Response)
+  })
+_sym_db.RegisterMessage(CAuthentication_RefreshToken_Revoke_Response)
+
+CAuthenticationSupport_QueryRefreshTokensByAccount_Request = _reflection.GeneratedProtocolMessageType('CAuthenticationSupport_QueryRefreshTokensByAccount_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CAUTHENTICATIONSUPPORT_QUERYREFRESHTOKENSBYACCOUNT_REQUEST,
+  '__module__' : 'steammessages_auth_pb2'
+  # @@protoc_insertion_point(class_scope:CAuthenticationSupport_QueryRefreshTokensByAccount_Request)
+  })
+_sym_db.RegisterMessage(CAuthenticationSupport_QueryRefreshTokensByAccount_Request)
+
+CSupportRefreshTokenDescription = _reflection.GeneratedProtocolMessageType('CSupportRefreshTokenDescription', (_message.Message,), {
+  'DESCRIPTOR' : _CSUPPORTREFRESHTOKENDESCRIPTION,
+  '__module__' : 'steammessages_auth_pb2'
+  # @@protoc_insertion_point(class_scope:CSupportRefreshTokenDescription)
+  })
+_sym_db.RegisterMessage(CSupportRefreshTokenDescription)
+
+CAuthenticationSupport_QueryRefreshTokensByAccount_Response = _reflection.GeneratedProtocolMessageType('CAuthenticationSupport_QueryRefreshTokensByAccount_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CAUTHENTICATIONSUPPORT_QUERYREFRESHTOKENSBYACCOUNT_RESPONSE,
+  '__module__' : 'steammessages_auth_pb2'
+  # @@protoc_insertion_point(class_scope:CAuthenticationSupport_QueryRefreshTokensByAccount_Response)
+  })
+_sym_db.RegisterMessage(CAuthenticationSupport_QueryRefreshTokensByAccount_Response)
+
+CAuthenticationSupport_QueryRefreshTokenByID_Request = _reflection.GeneratedProtocolMessageType('CAuthenticationSupport_QueryRefreshTokenByID_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CAUTHENTICATIONSUPPORT_QUERYREFRESHTOKENBYID_REQUEST,
+  '__module__' : 'steammessages_auth_pb2'
+  # @@protoc_insertion_point(class_scope:CAuthenticationSupport_QueryRefreshTokenByID_Request)
+  })
+_sym_db.RegisterMessage(CAuthenticationSupport_QueryRefreshTokenByID_Request)
+
+CAuthenticationSupport_QueryRefreshTokenByID_Response = _reflection.GeneratedProtocolMessageType('CAuthenticationSupport_QueryRefreshTokenByID_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CAUTHENTICATIONSUPPORT_QUERYREFRESHTOKENBYID_RESPONSE,
+  '__module__' : 'steammessages_auth_pb2'
+  # @@protoc_insertion_point(class_scope:CAuthenticationSupport_QueryRefreshTokenByID_Response)
+  })
+_sym_db.RegisterMessage(CAuthenticationSupport_QueryRefreshTokenByID_Response)
+
+CAuthenticationSupport_RevokeToken_Request = _reflection.GeneratedProtocolMessageType('CAuthenticationSupport_RevokeToken_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CAUTHENTICATIONSUPPORT_REVOKETOKEN_REQUEST,
+  '__module__' : 'steammessages_auth_pb2'
+  # @@protoc_insertion_point(class_scope:CAuthenticationSupport_RevokeToken_Request)
+  })
+_sym_db.RegisterMessage(CAuthenticationSupport_RevokeToken_Request)
+
+CAuthenticationSupport_RevokeToken_Response = _reflection.GeneratedProtocolMessageType('CAuthenticationSupport_RevokeToken_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CAUTHENTICATIONSUPPORT_REVOKETOKEN_RESPONSE,
+  '__module__' : 'steammessages_auth_pb2'
+  # @@protoc_insertion_point(class_scope:CAuthenticationSupport_RevokeToken_Response)
+  })
+_sym_db.RegisterMessage(CAuthenticationSupport_RevokeToken_Response)
+
+CAuthenticationSupport_GetTokenHistory_Request = _reflection.GeneratedProtocolMessageType('CAuthenticationSupport_GetTokenHistory_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CAUTHENTICATIONSUPPORT_GETTOKENHISTORY_REQUEST,
+  '__module__' : 'steammessages_auth_pb2'
+  # @@protoc_insertion_point(class_scope:CAuthenticationSupport_GetTokenHistory_Request)
+  })
+_sym_db.RegisterMessage(CAuthenticationSupport_GetTokenHistory_Request)
+
+CSupportRefreshTokenAudit = _reflection.GeneratedProtocolMessageType('CSupportRefreshTokenAudit', (_message.Message,), {
+  'DESCRIPTOR' : _CSUPPORTREFRESHTOKENAUDIT,
+  '__module__' : 'steammessages_auth_pb2'
+  # @@protoc_insertion_point(class_scope:CSupportRefreshTokenAudit)
+  })
+_sym_db.RegisterMessage(CSupportRefreshTokenAudit)
+
+CAuthenticationSupport_GetTokenHistory_Response = _reflection.GeneratedProtocolMessageType('CAuthenticationSupport_GetTokenHistory_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CAUTHENTICATIONSUPPORT_GETTOKENHISTORY_RESPONSE,
+  '__module__' : 'steammessages_auth_pb2'
+  # @@protoc_insertion_point(class_scope:CAuthenticationSupport_GetTokenHistory_Response)
+  })
+_sym_db.RegisterMessage(CAuthenticationSupport_GetTokenHistory_Response)
+
+CCloudGaming_CreateNonce_Request = _reflection.GeneratedProtocolMessageType('CCloudGaming_CreateNonce_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCLOUDGAMING_CREATENONCE_REQUEST,
+  '__module__' : 'steammessages_auth_pb2'
+  # @@protoc_insertion_point(class_scope:CCloudGaming_CreateNonce_Request)
+  })
+_sym_db.RegisterMessage(CCloudGaming_CreateNonce_Request)
+
+CCloudGaming_CreateNonce_Response = _reflection.GeneratedProtocolMessageType('CCloudGaming_CreateNonce_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCLOUDGAMING_CREATENONCE_RESPONSE,
+  '__module__' : 'steammessages_auth_pb2'
+  # @@protoc_insertion_point(class_scope:CCloudGaming_CreateNonce_Response)
+  })
+_sym_db.RegisterMessage(CCloudGaming_CreateNonce_Response)
+
+CCloudGaming_GetTimeRemaining_Request = _reflection.GeneratedProtocolMessageType('CCloudGaming_GetTimeRemaining_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCLOUDGAMING_GETTIMEREMAINING_REQUEST,
+  '__module__' : 'steammessages_auth_pb2'
+  # @@protoc_insertion_point(class_scope:CCloudGaming_GetTimeRemaining_Request)
+  })
+_sym_db.RegisterMessage(CCloudGaming_GetTimeRemaining_Request)
+
+CCloudGaming_TimeRemaining = _reflection.GeneratedProtocolMessageType('CCloudGaming_TimeRemaining', (_message.Message,), {
+  'DESCRIPTOR' : _CCLOUDGAMING_TIMEREMAINING,
+  '__module__' : 'steammessages_auth_pb2'
+  # @@protoc_insertion_point(class_scope:CCloudGaming_TimeRemaining)
+  })
+_sym_db.RegisterMessage(CCloudGaming_TimeRemaining)
+
+CCloudGaming_GetTimeRemaining_Response = _reflection.GeneratedProtocolMessageType('CCloudGaming_GetTimeRemaining_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCLOUDGAMING_GETTIMEREMAINING_RESPONSE,
+  '__module__' : 'steammessages_auth_pb2'
+  # @@protoc_insertion_point(class_scope:CCloudGaming_GetTimeRemaining_Response)
+  })
+_sym_db.RegisterMessage(CCloudGaming_GetTimeRemaining_Response)
+
+
+DESCRIPTOR._options = None
+_CAUTHENTICATION_GETPASSWORDRSAPUBLICKEY_REQUEST.fields_by_name['account_name']._options = None
+_CAUTHENTICATION_GETPASSWORDRSAPUBLICKEY_RESPONSE.fields_by_name['publickey_mod']._options = None
+_CAUTHENTICATION_GETPASSWORDRSAPUBLICKEY_RESPONSE.fields_by_name['publickey_exp']._options = None
+_CAUTHENTICATION_GETPASSWORDRSAPUBLICKEY_RESPONSE.fields_by_name['timestamp']._options = None
+_CAUTHENTICATION_DEVICEDETAILS.fields_by_name['device_friendly_name']._options = None
+_CAUTHENTICATION_DEVICEDETAILS.fields_by_name['platform_type']._options = None
+_CAUTHENTICATION_DEVICEDETAILS.fields_by_name['os_type']._options = None
+_CAUTHENTICATION_DEVICEDETAILS.fields_by_name['gaming_device_type']._options = None
+_CAUTHENTICATION_BEGINAUTHSESSIONVIAQR_REQUEST.fields_by_name['device_details']._options = None
+_CAUTHENTICATION_ALLOWEDCONFIRMATION.fields_by_name['confirmation_type']._options = None
+_CAUTHENTICATION_ALLOWEDCONFIRMATION.fields_by_name['associated_message']._options = None
+_CAUTHENTICATION_BEGINAUTHSESSIONVIAQR_RESPONSE.fields_by_name['client_id']._options = None
+_CAUTHENTICATION_BEGINAUTHSESSIONVIAQR_RESPONSE.fields_by_name['challenge_url']._options = None
+_CAUTHENTICATION_BEGINAUTHSESSIONVIAQR_RESPONSE.fields_by_name['request_id']._options = None
+_CAUTHENTICATION_BEGINAUTHSESSIONVIAQR_RESPONSE.fields_by_name['interval']._options = None
+_CAUTHENTICATION_BEGINAUTHSESSIONVIAQR_RESPONSE.fields_by_name['allowed_confirmations']._options = None
+_CAUTHENTICATION_BEGINAUTHSESSIONVIAQR_RESPONSE.fields_by_name['version']._options = None
+_CAUTHENTICATION_BEGINAUTHSESSIONVIACREDENTIALS_REQUEST.fields_by_name['encrypted_password']._options = None
+_CAUTHENTICATION_BEGINAUTHSESSIONVIACREDENTIALS_REQUEST.fields_by_name['encryption_timestamp']._options = None
+_CAUTHENTICATION_BEGINAUTHSESSIONVIACREDENTIALS_REQUEST.fields_by_name['remember_login']._options = None
+_CAUTHENTICATION_BEGINAUTHSESSIONVIACREDENTIALS_REQUEST.fields_by_name['persistence']._options = None
+_CAUTHENTICATION_BEGINAUTHSESSIONVIACREDENTIALS_REQUEST.fields_by_name['website_id']._options = None
+_CAUTHENTICATION_BEGINAUTHSESSIONVIACREDENTIALS_REQUEST.fields_by_name['device_details']._options = None
+_CAUTHENTICATION_BEGINAUTHSESSIONVIACREDENTIALS_REQUEST.fields_by_name['guard_data']._options = None
+_CAUTHENTICATION_BEGINAUTHSESSIONVIACREDENTIALS_RESPONSE.fields_by_name['client_id']._options = None
+_CAUTHENTICATION_BEGINAUTHSESSIONVIACREDENTIALS_RESPONSE.fields_by_name['request_id']._options = None
+_CAUTHENTICATION_BEGINAUTHSESSIONVIACREDENTIALS_RESPONSE.fields_by_name['interval']._options = None
+_CAUTHENTICATION_BEGINAUTHSESSIONVIACREDENTIALS_RESPONSE.fields_by_name['allowed_confirmations']._options = None
+_CAUTHENTICATION_BEGINAUTHSESSIONVIACREDENTIALS_RESPONSE.fields_by_name['steamid']._options = None
+_CAUTHENTICATION_BEGINAUTHSESSIONVIACREDENTIALS_RESPONSE.fields_by_name['weak_token']._options = None
+_CAUTHENTICATION_POLLAUTHSESSIONSTATUS_REQUEST.fields_by_name['token_to_revoke']._options = None
+_CAUTHENTICATION_POLLAUTHSESSIONSTATUS_RESPONSE.fields_by_name['new_client_id']._options = None
+_CAUTHENTICATION_POLLAUTHSESSIONSTATUS_RESPONSE.fields_by_name['new_challenge_url']._options = None
+_CAUTHENTICATION_POLLAUTHSESSIONSTATUS_RESPONSE.fields_by_name['refresh_token']._options = None
+_CAUTHENTICATION_POLLAUTHSESSIONSTATUS_RESPONSE.fields_by_name['access_token']._options = None
+_CAUTHENTICATION_POLLAUTHSESSIONSTATUS_RESPONSE.fields_by_name['had_remote_interaction']._options = None
+_CAUTHENTICATION_POLLAUTHSESSIONSTATUS_RESPONSE.fields_by_name['account_name']._options = None
+_CAUTHENTICATION_POLLAUTHSESSIONSTATUS_RESPONSE.fields_by_name['new_guard_data']._options = None
+_CAUTHENTICATION_GETAUTHSESSIONINFO_REQUEST.fields_by_name['client_id']._options = None
+_CAUTHENTICATION_GETAUTHSESSIONINFO_RESPONSE.fields_by_name['ip']._options = None
+_CAUTHENTICATION_GETAUTHSESSIONINFO_RESPONSE.fields_by_name['geoloc']._options = None
+_CAUTHENTICATION_GETAUTHSESSIONINFO_RESPONSE.fields_by_name['city']._options = None
+_CAUTHENTICATION_GETAUTHSESSIONINFO_RESPONSE.fields_by_name['state']._options = None
+_CAUTHENTICATION_GETAUTHSESSIONINFO_RESPONSE.fields_by_name['country']._options = None
+_CAUTHENTICATION_GETAUTHSESSIONINFO_RESPONSE.fields_by_name['platform_type']._options = None
+_CAUTHENTICATION_GETAUTHSESSIONINFO_RESPONSE.fields_by_name['device_friendly_name']._options = None
+_CAUTHENTICATION_GETAUTHSESSIONINFO_RESPONSE.fields_by_name['version']._options = None
+_CAUTHENTICATION_GETAUTHSESSIONINFO_RESPONSE.fields_by_name['login_history']._options = None
+_CAUTHENTICATION_GETAUTHSESSIONINFO_RESPONSE.fields_by_name['requestor_location_mismatch']._options = None
+_CAUTHENTICATION_GETAUTHSESSIONINFO_RESPONSE.fields_by_name['high_usage_login']._options = None
+_CAUTHENTICATION_GETAUTHSESSIONINFO_RESPONSE.fields_by_name['requested_persistence']._options = None
+_CAUTHENTICATION_UPDATEAUTHSESSIONWITHMOBILECONFIRMATION_REQUEST.fields_by_name['version']._options = None
+_CAUTHENTICATION_UPDATEAUTHSESSIONWITHMOBILECONFIRMATION_REQUEST.fields_by_name['client_id']._options = None
+_CAUTHENTICATION_UPDATEAUTHSESSIONWITHMOBILECONFIRMATION_REQUEST.fields_by_name['steamid']._options = None
+_CAUTHENTICATION_UPDATEAUTHSESSIONWITHMOBILECONFIRMATION_REQUEST.fields_by_name['signature']._options = None
+_CAUTHENTICATION_UPDATEAUTHSESSIONWITHMOBILECONFIRMATION_REQUEST.fields_by_name['confirm']._options = None
+_CAUTHENTICATION_UPDATEAUTHSESSIONWITHMOBILECONFIRMATION_REQUEST.fields_by_name['persistence']._options = None
+_CAUTHENTICATION_UPDATEAUTHSESSIONWITHSTEAMGUARDCODE_REQUEST.fields_by_name['client_id']._options = None
+_CAUTHENTICATION_UPDATEAUTHSESSIONWITHSTEAMGUARDCODE_REQUEST.fields_by_name['steamid']._options = None
+_CAUTHENTICATION_UPDATEAUTHSESSIONWITHSTEAMGUARDCODE_REQUEST.fields_by_name['code']._options = None
+_CAUTHENTICATION_UPDATEAUTHSESSIONWITHSTEAMGUARDCODE_REQUEST.fields_by_name['code_type']._options = None
+_CAUTHENTICATION_REFRESHTOKEN_ENUMERATE_RESPONSE_TOKENUSAGEEVENT.fields_by_name['time']._options = None
+_CAUTHENTICATION_REFRESHTOKEN_ENUMERATE_RESPONSE_TOKENUSAGEEVENT.fields_by_name['ip']._options = None
+_CAUTHENTICATION_REFRESHTOKEN_ENUMERATE_RESPONSE_TOKENUSAGEEVENT.fields_by_name['locale']._options = None
+_CAUTHENTICATION_REFRESHTOKEN_ENUMERATE_RESPONSE_REFRESHTOKENDESCRIPTION.fields_by_name['token_id']._options = None
+_CAUTHENTICATION_REFRESHTOKEN_ENUMERATE_RESPONSE_REFRESHTOKENDESCRIPTION.fields_by_name['token_description']._options = None
+_CAUTHENTICATION_REFRESHTOKEN_ENUMERATE_RESPONSE_REFRESHTOKENDESCRIPTION.fields_by_name['platform_type']._options = None
+_CAUTHENTICATION_REFRESHTOKEN_ENUMERATE_RESPONSE_REFRESHTOKENDESCRIPTION.fields_by_name['logged_in']._options = None
+_CAUTHENTICATION_REFRESHTOKEN_ENUMERATE_RESPONSE_REFRESHTOKENDESCRIPTION.fields_by_name['os_platform']._options = None
+_CAUTHENTICATION_REFRESHTOKEN_ENUMERATE_RESPONSE_REFRESHTOKENDESCRIPTION.fields_by_name['auth_type']._options = None
+_CAUTHENTICATION_REFRESHTOKEN_ENUMERATE_RESPONSE_REFRESHTOKENDESCRIPTION.fields_by_name['gaming_device_type']._options = None
+_CAUTHENTICATION_REFRESHTOKEN_ENUMERATE_RESPONSE_REFRESHTOKENDESCRIPTION.fields_by_name['first_seen']._options = None
+_CAUTHENTICATION_REFRESHTOKEN_ENUMERATE_RESPONSE_REFRESHTOKENDESCRIPTION.fields_by_name['last_seen']._options = None
+_CAUTHENTICATION_GETAUTHSESSIONSFORACCOUNT_RESPONSE.fields_by_name['client_ids']._options = None
+_CAUTHENTICATION_MIGRATEMOBILESESSION_REQUEST.fields_by_name['steamid']._options = None
+_CAUTHENTICATION_MIGRATEMOBILESESSION_REQUEST.fields_by_name['token']._options = None
+_CAUTHENTICATION_MIGRATEMOBILESESSION_REQUEST.fields_by_name['signature']._options = None
+_CAUTHENTICATION_REFRESHTOKEN_REVOKE_REQUEST.fields_by_name['steamid']._options = None
+_CAUTHENTICATION_REFRESHTOKEN_REVOKE_REQUEST.fields_by_name['revoke_action']._options = None
+_CAUTHENTICATION_REFRESHTOKEN_REVOKE_REQUEST.fields_by_name['signature']._options = None
+_CAUTHENTICATIONSUPPORT_QUERYREFRESHTOKENSBYACCOUNT_REQUEST.fields_by_name['steamid']._options = None
+_CAUTHENTICATIONSUPPORT_QUERYREFRESHTOKENSBYACCOUNT_REQUEST.fields_by_name['include_revoked_tokens']._options = None
+_CAUTHENTICATIONSUPPORT_QUERYREFRESHTOKENBYID_REQUEST.fields_by_name['token_id']._options = None
+_CAUTHENTICATIONSUPPORT_REVOKETOKEN_REQUEST.fields_by_name['token_id']._options = None
+_CAUTHENTICATIONSUPPORT_GETTOKENHISTORY_REQUEST.fields_by_name['token_id']._options = None
+
+_AUTHENTICATION = _descriptor.ServiceDescriptor(
+  name='Authentication',
+  full_name='Authentication',
+  file=DESCRIPTOR,
+  index=0,
+  serialized_options=b'\202\265\030\026Authentication Service',
+  create_key=_descriptor._internal_create_key,
+  serialized_start=12091,
+  serialized_end=14566,
+  methods=[
+  _descriptor.MethodDescriptor(
+    name='GetPasswordRSAPublicKey',
+    full_name='Authentication.GetPasswordRSAPublicKey',
+    index=0,
+    containing_service=None,
+    input_type=_CAUTHENTICATION_GETPASSWORDRSAPUBLICKEY_REQUEST,
+    output_type=_CAUTHENTICATION_GETPASSWORDRSAPUBLICKEY_RESPONSE,
+    serialized_options=b'\202\265\030KFetches RSA public key to use to encrypt passwords for a given account name',
+    create_key=_descriptor._internal_create_key,
+  ),
+  _descriptor.MethodDescriptor(
+    name='BeginAuthSessionViaQR',
+    full_name='Authentication.BeginAuthSessionViaQR',
+    index=1,
+    containing_service=None,
+    input_type=_CAUTHENTICATION_BEGINAUTHSESSIONVIAQR_REQUEST,
+    output_type=_CAUTHENTICATION_BEGINAUTHSESSIONVIAQR_RESPONSE,
+    serialized_options=b'\202\265\030\034start authentication process',
+    create_key=_descriptor._internal_create_key,
+  ),
+  _descriptor.MethodDescriptor(
+    name='BeginAuthSessionViaCredentials',
+    full_name='Authentication.BeginAuthSessionViaCredentials',
+    index=2,
+    containing_service=None,
+    input_type=_CAUTHENTICATION_BEGINAUTHSESSIONVIACREDENTIALS_REQUEST,
+    output_type=_CAUTHENTICATION_BEGINAUTHSESSIONVIACREDENTIALS_RESPONSE,
+    serialized_options=b'\202\265\030\034start authentication process',
+    create_key=_descriptor._internal_create_key,
+  ),
+  _descriptor.MethodDescriptor(
+    name='PollAuthSessionStatus',
+    full_name='Authentication.PollAuthSessionStatus',
+    index=3,
+    containing_service=None,
+    input_type=_CAUTHENTICATION_POLLAUTHSESSIONSTATUS_REQUEST,
+    output_type=_CAUTHENTICATION_POLLAUTHSESSIONSTATUS_RESPONSE,
+    serialized_options=b'\202\265\030\"poll during authentication process',
+    create_key=_descriptor._internal_create_key,
+  ),
+  _descriptor.MethodDescriptor(
+    name='GetAuthSessionInfo',
+    full_name='Authentication.GetAuthSessionInfo',
+    index=4,
+    containing_service=None,
+    input_type=_CAUTHENTICATION_GETAUTHSESSIONINFO_REQUEST,
+    output_type=_CAUTHENTICATION_GETAUTHSESSIONINFO_RESPONSE,
+    serialized_options=b'\202\265\030Yget metadata of specific auth session, this will also implicitly bind the calling account',
+    create_key=_descriptor._internal_create_key,
+  ),
+  _descriptor.MethodDescriptor(
+    name='UpdateAuthSessionWithMobileConfirmation',
+    full_name='Authentication.UpdateAuthSessionWithMobileConfirmation',
+    index=5,
+    containing_service=None,
+    input_type=_CAUTHENTICATION_UPDATEAUTHSESSIONWITHMOBILECONFIRMATION_REQUEST,
+    output_type=_CAUTHENTICATION_UPDATEAUTHSESSIONWITHMOBILECONFIRMATION_RESPONSE,
+    serialized_options=b'\202\265\0300approve an authentication session via mobile 2fa',
+    create_key=_descriptor._internal_create_key,
+  ),
+  _descriptor.MethodDescriptor(
+    name='UpdateAuthSessionWithSteamGuardCode',
+    full_name='Authentication.UpdateAuthSessionWithSteamGuardCode',
+    index=6,
+    containing_service=None,
+    input_type=_CAUTHENTICATION_UPDATEAUTHSESSIONWITHSTEAMGUARDCODE_REQUEST,
+    output_type=_CAUTHENTICATION_UPDATEAUTHSESSIONWITHSTEAMGUARDCODE_RESPONSE,
+    serialized_options=b'\202\265\0306approve an authentication session via steam guard code',
+    create_key=_descriptor._internal_create_key,
+  ),
+  _descriptor.MethodDescriptor(
+    name='GenerateAccessTokenForApp',
+    full_name='Authentication.GenerateAccessTokenForApp',
+    index=7,
+    containing_service=None,
+    input_type=_CAUTHENTICATION_ACCESSTOKEN_GENERATEFORAPP_REQUEST,
+    output_type=_CAUTHENTICATION_ACCESSTOKEN_GENERATEFORAPP_RESPONSE,
+    serialized_options=b'\202\265\030oGiven a refresh token for a client app audience (e.g. desktop client / mobile client), generate an access token',
+    create_key=_descriptor._internal_create_key,
+  ),
+  _descriptor.MethodDescriptor(
+    name='EnumerateTokens',
+    full_name='Authentication.EnumerateTokens',
+    index=8,
+    containing_service=None,
+    input_type=_CAUTHENTICATION_REFRESHTOKEN_ENUMERATE_REQUEST,
+    output_type=_CAUTHENTICATION_REFRESHTOKEN_ENUMERATE_RESPONSE,
+    serialized_options=b'\202\265\030@Enumerate durable (refresh) tokens for the given subject account',
+    create_key=_descriptor._internal_create_key,
+  ),
+  _descriptor.MethodDescriptor(
+    name='GetAuthSessionsForAccount',
+    full_name='Authentication.GetAuthSessionsForAccount',
+    index=9,
+    containing_service=None,
+    input_type=_CAUTHENTICATION_GETAUTHSESSIONSFORACCOUNT_REQUEST,
+    output_type=_CAUTHENTICATION_GETAUTHSESSIONSFORACCOUNT_RESPONSE,
+    serialized_options=b'\202\265\030LGets all active auth sessions for an account for reference by the mobile app',
+    create_key=_descriptor._internal_create_key,
+  ),
+  _descriptor.MethodDescriptor(
+    name='MigrateMobileSession',
+    full_name='Authentication.MigrateMobileSession',
+    index=10,
+    containing_service=None,
+    input_type=_CAUTHENTICATION_MIGRATEMOBILESESSION_REQUEST,
+    output_type=_CAUTHENTICATION_MIGRATEMOBILESESSION_RESPONSE,
+    serialized_options=b'\202\265\030iMigrates a WG token to an access and refresh token using a signature generated with the user\'s 2FA secret',
+    create_key=_descriptor._internal_create_key,
+  ),
+  _descriptor.MethodDescriptor(
+    name='RevokeRefreshToken',
+    full_name='Authentication.RevokeRefreshToken',
+    index=11,
+    containing_service=None,
+    input_type=_CAUTHENTICATION_REFRESHTOKEN_REVOKE_REQUEST,
+    output_type=_CAUTHENTICATION_REFRESHTOKEN_REVOKE_RESPONSE,
+    serialized_options=b'\202\265\030\'Mark the given refresh token as revoked',
+    create_key=_descriptor._internal_create_key,
+  ),
+])
+_sym_db.RegisterServiceDescriptor(_AUTHENTICATION)
+
+DESCRIPTOR.services_by_name['Authentication'] = _AUTHENTICATION
+
+
+_AUTHENTICATIONSUPPORT = _descriptor.ServiceDescriptor(
+  name='AuthenticationSupport',
+  full_name='AuthenticationSupport',
+  file=DESCRIPTOR,
+  index=1,
+  serialized_options=b'\202\265\030\036Authentication Support Service',
+  create_key=_descriptor._internal_create_key,
+  serialized_start=14569,
+  serialized_end=15385,
+  methods=[
+  _descriptor.MethodDescriptor(
+    name='QueryRefreshTokensByAccount',
+    full_name='AuthenticationSupport.QueryRefreshTokensByAccount',
+    index=0,
+    containing_service=None,
+    input_type=_CAUTHENTICATIONSUPPORT_QUERYREFRESHTOKENSBYACCOUNT_REQUEST,
+    output_type=_CAUTHENTICATIONSUPPORT_QUERYREFRESHTOKENSBYACCOUNT_RESPONSE,
+    serialized_options=b'\202\265\030GAsks the server for a list of refresh tokens associated with an account',
+    create_key=_descriptor._internal_create_key,
+  ),
+  _descriptor.MethodDescriptor(
+    name='QueryRefreshTokenByID',
+    full_name='AuthenticationSupport.QueryRefreshTokenByID',
+    index=1,
+    containing_service=None,
+    input_type=_CAUTHENTICATIONSUPPORT_QUERYREFRESHTOKENBYID_REQUEST,
+    output_type=_CAUTHENTICATIONSUPPORT_QUERYREFRESHTOKENBYID_RESPONSE,
+    serialized_options=b'\202\265\030GAsks the server for a list of refresh tokens associated with an account',
+    create_key=_descriptor._internal_create_key,
+  ),
+  _descriptor.MethodDescriptor(
+    name='RevokeToken',
+    full_name='AuthenticationSupport.RevokeToken',
+    index=2,
+    containing_service=None,
+    input_type=_CAUTHENTICATIONSUPPORT_REVOKETOKEN_REQUEST,
+    output_type=_CAUTHENTICATIONSUPPORT_REVOKETOKEN_RESPONSE,
+    serialized_options=b'\202\265\030\033Revokes a user\'s auth token',
+    create_key=_descriptor._internal_create_key,
+  ),
+  _descriptor.MethodDescriptor(
+    name='GetTokenHistory',
+    full_name='AuthenticationSupport.GetTokenHistory',
+    index=3,
+    containing_service=None,
+    input_type=_CAUTHENTICATIONSUPPORT_GETTOKENHISTORY_REQUEST,
+    output_type=_CAUTHENTICATIONSUPPORT_GETTOKENHISTORY_RESPONSE,
+    serialized_options=b'\202\265\030.Gets the audit history for a user\'s auth token',
+    create_key=_descriptor._internal_create_key,
+  ),
+])
+_sym_db.RegisterServiceDescriptor(_AUTHENTICATIONSUPPORT)
+
+DESCRIPTOR.services_by_name['AuthenticationSupport'] = _AUTHENTICATIONSUPPORT
+
+
+_CLOUDGAMING = _descriptor.ServiceDescriptor(
+  name='CloudGaming',
+  full_name='CloudGaming',
+  file=DESCRIPTOR,
+  index=2,
+  serialized_options=b'\202\265\030)Methods for Steam cloud gaming operations',
+  create_key=_descriptor._internal_create_key,
+  serialized_start=15388,
+  serialized_end=15758,
+  methods=[
+  _descriptor.MethodDescriptor(
+    name='CreateNonce',
+    full_name='CloudGaming.CreateNonce',
+    index=0,
+    containing_service=None,
+    input_type=_CCLOUDGAMING_CREATENONCE_REQUEST,
+    output_type=_CCLOUDGAMING_CREATENONCE_RESPONSE,
+    serialized_options=b'\202\265\0301Create a nonce for a cloud gaming service session',
+    create_key=_descriptor._internal_create_key,
+  ),
+  _descriptor.MethodDescriptor(
+    name='GetTimeRemaining',
+    full_name='CloudGaming.GetTimeRemaining',
+    index=1,
+    containing_service=None,
+    input_type=_CCLOUDGAMING_GETTIMEREMAINING_REQUEST,
+    output_type=_CCLOUDGAMING_GETTIMEREMAINING_RESPONSE,
+    serialized_options=b'\202\265\030<Get the amount of streaming time remaining for a set of apps',
+    create_key=_descriptor._internal_create_key,
+  ),
+])
+_sym_db.RegisterServiceDescriptor(_CLOUDGAMING)
+
+DESCRIPTOR.services_by_name['CloudGaming'] = _CLOUDGAMING
+
+Authentication = service_reflection.GeneratedServiceType('Authentication', (_service.Service,), dict(
+  DESCRIPTOR = _AUTHENTICATION,
+  __module__ = 'steammessages_auth_pb2'
+  ))
+
+Authentication_Stub = service_reflection.GeneratedServiceStubType('Authentication_Stub', (Authentication,), dict(
+  DESCRIPTOR = _AUTHENTICATION,
+  __module__ = 'steammessages_auth_pb2'
+  ))
+
+
+AuthenticationSupport = service_reflection.GeneratedServiceType('AuthenticationSupport', (_service.Service,), dict(
+  DESCRIPTOR = _AUTHENTICATIONSUPPORT,
+  __module__ = 'steammessages_auth_pb2'
+  ))
+
+AuthenticationSupport_Stub = service_reflection.GeneratedServiceStubType('AuthenticationSupport_Stub', (AuthenticationSupport,), dict(
+  DESCRIPTOR = _AUTHENTICATIONSUPPORT,
+  __module__ = 'steammessages_auth_pb2'
+  ))
+
+
+CloudGaming = service_reflection.GeneratedServiceType('CloudGaming', (_service.Service,), dict(
+  DESCRIPTOR = _CLOUDGAMING,
+  __module__ = 'steammessages_auth_pb2'
+  ))
+
+CloudGaming_Stub = service_reflection.GeneratedServiceStubType('CloudGaming_Stub', (CloudGaming,), dict(
+  DESCRIPTOR = _CLOUDGAMING,
+  __module__ = 'steammessages_auth_pb2'
+  ))
+
+
+# @@protoc_insertion_point(module_scope)
diff --git a/steam/protobufs/steammessages_base_pb2.py b/steam/protobufs/steammessages_base_pb2.py
index e807be4..3b55311 100644
--- a/steam/protobufs/steammessages_base_pb2.py
+++ b/steam/protobufs/steammessages_base_pb2.py
@@ -1,9 +1,7 @@
 # -*- coding: utf-8 -*-
 # Generated by the protocol buffer compiler.  DO NOT EDIT!
 # source: steammessages_base.proto
-
-import sys
-_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1'))
+"""Generated protocol buffer code."""
 from google.protobuf.internal import enum_type_wrapper
 from google.protobuf import descriptor as _descriptor
 from google.protobuf import message as _message
@@ -21,162 +19,255 @@ DESCRIPTOR = _descriptor.FileDescriptor(
   name='steammessages_base.proto',
   package='',
   syntax='proto2',
-  serialized_options=_b('H\001\220\001\001\200\265\030\001'),
-  serialized_pb=_b('\n\x18steammessages_base.proto\x1a google/protobuf/descriptor.proto\"1\n\rCMsgIPAddress\x12\x0c\n\x02v4\x18\x01 \x01(\x07H\x00\x12\x0c\n\x02v6\x18\x02 \x01(\x0cH\x00\x42\x04\n\x02ip\"R\n\x13\x43MsgIPAddressBucket\x12+\n\x13original_ip_address\x18\x01 \x01(\x0b\x32\x0e.CMsgIPAddress\x12\x0e\n\x06\x62ucket\x18\x02 \x01(\x06\"\xa1\x05\n\x12\x43MsgProtoBufHeader\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12\x18\n\x10\x63lient_sessionid\x18\x02 \x01(\x05\x12\x15\n\rrouting_appid\x18\x03 \x01(\r\x12*\n\x0cjobid_source\x18\n \x01(\x06:\x14\x31\x38\x34\x34\x36\x37\x34\x34\x30\x37\x33\x37\x30\x39\x35\x35\x31\x36\x31\x35\x12*\n\x0cjobid_target\x18\x0b \x01(\x06:\x14\x31\x38\x34\x34\x36\x37\x34\x34\x30\x37\x33\x37\x30\x39\x35\x35\x31\x36\x31\x35\x12\x17\n\x0ftarget_job_name\x18\x0c \x01(\t\x12\x0f\n\x07seq_num\x18\x18 \x01(\x05\x12\x12\n\x07\x65result\x18\r \x01(\x05:\x01\x32\x12\x15\n\rerror_message\x18\x0e \x01(\t\x12\x1a\n\x12\x61uth_account_flags\x18\x10 \x01(\r\x12\x14\n\x0ctoken_source\x18\x16 \x01(\r\x12\x1b\n\x13\x61\x64min_spoofing_user\x18\x17 \x01(\x08\x12\x1a\n\x0ftransport_error\x18\x11 \x01(\x05:\x01\x31\x12\'\n\tmessageid\x18\x12 \x01(\x04:\x14\x31\x38\x34\x34\x36\x37\x34\x34\x30\x37\x33\x37\x30\x39\x35\x35\x31\x36\x31\x35\x12\x1a\n\x12publisher_group_id\x18\x13 \x01(\r\x12\r\n\x05sysid\x18\x14 \x01(\r\x12\x11\n\ttrace_tag\x18\x15 \x01(\x04\x12\x15\n\rwebapi_key_id\x18\x19 \x01(\r\x12\x1f\n\x17is_from_external_source\x18\x1a \x01(\x08\x12\x18\n\x10\x66orward_to_sysid\x18\x1b \x03(\r\x12\x10\n\x08\x63m_sysid\x18\x1c \x01(\r\x12\x10\n\x08wg_token\x18\x1e \x01(\t\x12\x18\n\rlauncher_type\x18\x1f \x01(\r:\x01\x30\x12\x10\n\x05realm\x18  \x01(\r:\x01\x30\x12\x0c\n\x02ip\x18\x0f \x01(\rH\x00\x12\x0f\n\x05ip_v6\x18\x1d \x01(\x0cH\x00\x42\t\n\x07ip_addr\"8\n\tCMsgMulti\x12\x15\n\rsize_unzipped\x18\x01 \x01(\r\x12\x14\n\x0cmessage_body\x18\x02 \x01(\x0c\"+\n\x13\x43MsgProtobufWrapped\x12\x14\n\x0cmessage_body\x18\x01 \x01(\x0c\"\x8f\x01\n\x0e\x43MsgAuthTicket\x12\x0e\n\x06\x65state\x18\x01 \x01(\r\x12\x12\n\x07\x65result\x18\x02 \x01(\r:\x01\x32\x12\x0f\n\x07steamid\x18\x03 \x01(\x06\x12\x0e\n\x06gameid\x18\x04 \x01(\x06\x12\x14\n\x0ch_steam_pipe\x18\x05 \x01(\r\x12\x12\n\nticket_crc\x18\x06 \x01(\r\x12\x0e\n\x06ticket\x18\x07 \x01(\x0c\"\x99\x02\n\x14\x43\x43\x44\x44\x42\x41ppDetailCommon\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x0c\n\x04icon\x18\x03 \x01(\t\x12\x0c\n\x04logo\x18\x04 \x01(\t\x12\x12\n\nlogo_small\x18\x05 \x01(\t\x12\x0c\n\x04tool\x18\x06 \x01(\x08\x12\x0c\n\x04\x64\x65mo\x18\x07 \x01(\x08\x12\r\n\x05media\x18\x08 \x01(\x08\x12\x1f\n\x17\x63ommunity_visible_stats\x18\t \x01(\x08\x12\x15\n\rfriendly_name\x18\n \x01(\t\x12\x13\n\x0bpropagation\x18\x0b \x01(\t\x12\x19\n\x11has_adult_content\x18\x0c \x01(\x08\x12!\n\x19is_visible_in_steam_china\x18\r \x01(\x08\"\xb3\x03\n\rCMsgAppRights\x12\x11\n\tedit_info\x18\x01 \x01(\x08\x12\x0f\n\x07publish\x18\x02 \x01(\x08\x12\x17\n\x0fview_error_data\x18\x03 \x01(\x08\x12\x10\n\x08\x64ownload\x18\x04 \x01(\x08\x12\x15\n\rupload_cdkeys\x18\x05 \x01(\x08\x12\x17\n\x0fgenerate_cdkeys\x18\x06 \x01(\x08\x12\x17\n\x0fview_financials\x18\x07 \x01(\x08\x12\x12\n\nmanage_ceg\x18\x08 \x01(\x08\x12\x16\n\x0emanage_signing\x18\t \x01(\x08\x12\x15\n\rmanage_cdkeys\x18\n \x01(\x08\x12\x16\n\x0e\x65\x64it_marketing\x18\x0b \x01(\x08\x12\x17\n\x0f\x65\x63onomy_support\x18\x0c \x01(\x08\x12\"\n\x1a\x65\x63onomy_support_supervisor\x18\r \x01(\x08\x12\x16\n\x0emanage_pricing\x18\x0e \x01(\x08\x12\x16\n\x0e\x62roadcast_live\x18\x0f \x01(\x08\x12\x1e\n\x16view_marketing_traffic\x18\x10 \x01(\x08\x12\"\n\x1a\x65\x64it_store_display_content\x18\x11 \x01(\x08\"\xf1\x02\n\x13\x43\x43uratorPreferences\x12\x1b\n\x13supported_languages\x18\x01 \x01(\r\x12\x18\n\x10platform_windows\x18\x02 \x01(\x08\x12\x14\n\x0cplatform_mac\x18\x03 \x01(\x08\x12\x16\n\x0eplatform_linux\x18\x04 \x01(\x08\x12\x12\n\nvr_content\x18\x05 \x01(\x08\x12\x1e\n\x16\x61\x64ult_content_violence\x18\x06 \x01(\x08\x12\x19\n\x11\x61\x64ult_content_sex\x18\x07 \x01(\x08\x12\x19\n\x11timestamp_updated\x18\x08 \x01(\r\x12\x16\n\x0etagids_curated\x18\t \x03(\r\x12\x17\n\x0ftagids_filtered\x18\n \x03(\r\x12\x15\n\rwebsite_title\x18\x0b \x01(\t\x12\x13\n\x0bwebsite_url\x18\x0c \x01(\t\x12\x16\n\x0e\x64iscussion_url\x18\r \x01(\t\x12\x16\n\x0eshow_broadcast\x18\x0e \x01(\x08\"@\n\x12\x43LocalizationToken\x12\x10\n\x08language\x18\x01 \x01(\r\x12\x18\n\x10localized_string\x18\x02 \x01(\t\"\xec\x01\n\x17\x43\x43lanEventUserNewsTuple\x12\x0e\n\x06\x63lanid\x18\x01 \x01(\r\x12\x11\n\tevent_gid\x18\x02 \x01(\x06\x12\x18\n\x10\x61nnouncement_gid\x18\x03 \x01(\x06\x12\x13\n\x0brtime_start\x18\x04 \x01(\r\x12\x11\n\trtime_end\x18\x05 \x01(\r\x12\x16\n\x0epriority_score\x18\x06 \x01(\r\x12\x0c\n\x04type\x18\x07 \x01(\r\x12\x18\n\x10\x63lamp_range_slot\x18\x08 \x01(\r\x12\r\n\x05\x61ppid\x18\t \x01(\r\x12\x1d\n\x15rtime32_last_modified\x18\n \x01(\r\"\x80\x01\n\x16\x43\x43lanMatchEventByRange\x12\x14\n\x0crtime_before\x18\x01 \x01(\r\x12\x13\n\x0brtime_after\x18\x02 \x01(\r\x12\x11\n\tqualified\x18\x03 \x01(\r\x12(\n\x06\x65vents\x18\x04 \x03(\x0b\x32\x18.CClanEventUserNewsTuple\"\xb3\x02\n\x1f\x43\x43ommunity_ClanAnnouncementInfo\x12\x0b\n\x03gid\x18\x01 \x01(\x04\x12\x0e\n\x06\x63lanid\x18\x02 \x01(\x04\x12\x10\n\x08posterid\x18\x03 \x01(\x04\x12\x10\n\x08headline\x18\x04 \x01(\t\x12\x10\n\x08posttime\x18\x05 \x01(\r\x12\x12\n\nupdatetime\x18\x06 \x01(\r\x12\x0c\n\x04\x62ody\x18\x07 \x01(\t\x12\x14\n\x0c\x63ommentcount\x18\x08 \x01(\x05\x12\x0c\n\x04tags\x18\t \x03(\t\x12\x10\n\x08language\x18\n \x01(\x05\x12\x0e\n\x06hidden\x18\x0b \x01(\x08\x12\x16\n\x0e\x66orum_topic_id\x18\x0c \x01(\x06\x12\x11\n\tevent_gid\x18\r \x01(\x06\x12\x13\n\x0bvoteupcount\x18\x0e \x01(\x05\x12\x15\n\rvotedowncount\x18\x0f \x01(\x05\"\xa6\x06\n\x0e\x43\x43lanEventData\x12\x0b\n\x03gid\x18\x01 \x01(\x06\x12\x14\n\x0c\x63lan_steamid\x18\x02 \x01(\x06\x12\x12\n\nevent_name\x18\x03 \x01(\t\x12;\n\nevent_type\x18\x04 \x01(\x0e\x32\x14.EProtoClanEventType:\x11k_EClanOtherEvent\x12\r\n\x05\x61ppid\x18\x05 \x01(\r\x12\x16\n\x0eserver_address\x18\x06 \x01(\t\x12\x17\n\x0fserver_password\x18\x07 \x01(\t\x12\x1a\n\x12rtime32_start_time\x18\x08 \x01(\r\x12\x18\n\x10rtime32_end_time\x18\t \x01(\r\x12\x15\n\rcomment_count\x18\n \x01(\x05\x12\x17\n\x0f\x63reator_steamid\x18\x0b \x01(\x06\x12\x1b\n\x13last_update_steamid\x18\x0c \x01(\x06\x12\x13\n\x0b\x65vent_notes\x18\r \x01(\t\x12\x10\n\x08jsondata\x18\x0e \x01(\t\x12;\n\x11\x61nnouncement_body\x18\x0f \x01(\x0b\x32 .CCommunity_ClanAnnouncementInfo\x12\x11\n\tpublished\x18\x10 \x01(\x08\x12\x0e\n\x06hidden\x18\x11 \x01(\x08\x12 \n\x18rtime32_visibility_start\x18\x12 \x01(\r\x12\x1e\n\x16rtime32_visibility_end\x18\x13 \x01(\r\x12\x1d\n\x15\x62roadcaster_accountid\x18\x14 \x01(\r\x12\x16\n\x0e\x66ollower_count\x18\x15 \x01(\r\x12\x14\n\x0cignore_count\x18\x16 \x01(\r\x12\x16\n\x0e\x66orum_topic_id\x18\x17 \x01(\x06\x12\x1d\n\x15rtime32_last_modified\x18\x18 \x01(\r\x12\x15\n\rnews_post_gid\x18\x19 \x01(\x06\x12\x1a\n\x12rtime_mod_reviewed\x18\x1a \x01(\r\x12\x1a\n\x12\x66\x65\x61tured_app_tagid\x18\x1b \x01(\r\x12\x19\n\x11referenced_appids\x18\x1c \x03(\r\x12\x10\n\x08\x62uild_id\x18\x1d \x01(\r\x12\x14\n\x0c\x62uild_branch\x18\x1e \x01(\t\"\xc7\x01\n\x10\x43\x42illing_Address\x12\x12\n\nfirst_name\x18\x01 \x01(\t\x12\x11\n\tlast_name\x18\x02 \x01(\t\x12\x10\n\x08\x61\x64\x64ress1\x18\x03 \x01(\t\x12\x10\n\x08\x61\x64\x64ress2\x18\x04 \x01(\t\x12\x0c\n\x04\x63ity\x18\x05 \x01(\t\x12\x10\n\x08us_state\x18\x06 \x01(\t\x12\x14\n\x0c\x63ountry_code\x18\x07 \x01(\t\x12\x10\n\x08postcode\x18\x08 \x01(\t\x12\x11\n\tzip_plus4\x18\t \x01(\x05\x12\r\n\x05phone\x18\n \x01(\t\"\xdb\x01\n\x19\x43PackageReservationStatus\x12\x11\n\tpackageid\x18\x01 \x01(\r\x12\x19\n\x11reservation_state\x18\x02 \x01(\x05\x12\x16\n\x0equeue_position\x18\x03 \x01(\x05\x12\x18\n\x10total_queue_size\x18\x04 \x01(\x05\x12 \n\x18reservation_country_code\x18\x05 \x01(\t\x12\x0f\n\x07\x65xpired\x18\x06 \x01(\x08\x12\x14\n\x0ctime_expires\x18\x07 \x01(\r\x12\x15\n\rtime_reserved\x18\x08 \x01(\r*\xeb\x07\n\x13\x45ProtoClanEventType\x12\x15\n\x11k_EClanOtherEvent\x10\x01\x12\x14\n\x10k_EClanGameEvent\x10\x02\x12\x15\n\x11k_EClanPartyEvent\x10\x03\x12\x17\n\x13k_EClanMeetingEvent\x10\x04\x12\x1c\n\x18k_EClanSpecialCauseEvent\x10\x05\x12\x1c\n\x18k_EClanMusicAndArtsEvent\x10\x06\x12\x16\n\x12k_EClanSportsEvent\x10\x07\x12\x14\n\x10k_EClanTripEvent\x10\x08\x12\x14\n\x10k_EClanChatEvent\x10\t\x12\x1b\n\x17k_EClanGameReleaseEvent\x10\n\x12\x19\n\x15k_EClanBroadcastEvent\x10\x0b\x12\x1b\n\x17k_EClanSmallUpdateEvent\x10\x0c\x12&\n\"k_EClanPreAnnounceMajorUpdateEvent\x10\r\x12\x1b\n\x17k_EClanMajorUpdateEvent\x10\x0e\x12\x1a\n\x16k_EClanDLCReleaseEvent\x10\x0f\x12\x1d\n\x19k_EClanFutureReleaseEvent\x10\x10\x12&\n\"k_EClanESportTournamentStreamEvent\x10\x11\x12\x19\n\x15k_EClanDevStreamEvent\x10\x12\x12\x1c\n\x18k_EClanFamousStreamEvent\x10\x13\x12\x19\n\x15k_EClanGameSalesEvent\x10\x14\x12\x1d\n\x19k_EClanGameItemSalesEvent\x10\x15\x12\x1d\n\x19k_EClanInGameBonusXPEvent\x10\x16\x12\x1a\n\x16k_EClanInGameLootEvent\x10\x17\x12\x1b\n\x17k_EClanInGamePerksEvent\x10\x18\x12\x1f\n\x1bk_EClanInGameChallengeEvent\x10\x19\x12\x1d\n\x19k_EClanInGameContestEvent\x10\x1a\x12\x13\n\x0fk_EClanIRLEvent\x10\x1b\x12\x14\n\x10k_EClanNewsEvent\x10\x1c\x12\x1b\n\x17k_EClanBetaReleaseEvent\x10\x1d\x12$\n k_EClanInGameContentReleaseEvent\x10\x1e\x12\x14\n\x10k_EClanFreeTrial\x10\x1f\x12\x18\n\x14k_EClanSeasonRelease\x10 \x12\x17\n\x13k_EClanSeasonUpdate\x10!\x12\x19\n\x15k_EClanCrosspostEvent\x10\"\x12\x1d\n\x19k_EClanInGameEventGeneral\x10#*\x81\x01\n\x1cPartnerEventNotificationType\x12\x11\n\rk_EEventStart\x10\x00\x12\x1a\n\x16k_EEventBroadcastStart\x10\x01\x12\x16\n\x12k_EEventMatchStart\x10\x02\x12\x1a\n\x16k_EEventPartnerMaxType\x10\x03:A\n\x12msgpool_soft_limit\x12\x1f.google.protobuf.MessageOptions\x18\xd0\x86\x03 \x01(\x05:\x02\x33\x32:B\n\x12msgpool_hard_limit\x12\x1f.google.protobuf.MessageOptions\x18\xd1\x86\x03 \x01(\x05:\x03\x33\x38\x34:C\n\x14\x66orce_php_generation\x12\x1c.google.protobuf.FileOptions\x18\xd0\x86\x03 \x01(\x08:\x05\x66\x61lse:H\n\x18php_output_always_number\x12\x1d.google.protobuf.FieldOptions\x18\xe4\x86\x03 \x01(\x08:\x05\x66\x61lseB\tH\x01\x90\x01\x01\x80\xb5\x18\x01')
+  serialized_options=b'H\001\220\001\001\200\265\030\001',
+  create_key=_descriptor._internal_create_key,
+  serialized_pb=b'\n\x18steammessages_base.proto\x1a google/protobuf/descriptor.proto\"1\n\rCMsgIPAddress\x12\x0c\n\x02v4\x18\x01 \x01(\x07H\x00\x12\x0c\n\x02v6\x18\x02 \x01(\x0cH\x00\x42\x04\n\x02ip\"R\n\x13\x43MsgIPAddressBucket\x12+\n\x13original_ip_address\x18\x01 \x01(\x0b\x32\x0e.CMsgIPAddress\x12\x0e\n\x06\x62ucket\x18\x02 \x01(\x06\"\xf2\x05\n\x12\x43MsgProtoBufHeader\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12\x18\n\x10\x63lient_sessionid\x18\x02 \x01(\x05\x12\x15\n\rrouting_appid\x18\x03 \x01(\r\x12*\n\x0cjobid_source\x18\n \x01(\x06:\x14\x31\x38\x34\x34\x36\x37\x34\x34\x30\x37\x33\x37\x30\x39\x35\x35\x31\x36\x31\x35\x12*\n\x0cjobid_target\x18\x0b \x01(\x06:\x14\x31\x38\x34\x34\x36\x37\x34\x34\x30\x37\x33\x37\x30\x39\x35\x35\x31\x36\x31\x35\x12\x17\n\x0ftarget_job_name\x18\x0c \x01(\t\x12\x0f\n\x07seq_num\x18\x18 \x01(\x05\x12\x12\n\x07\x65result\x18\r \x01(\x05:\x01\x32\x12\x15\n\rerror_message\x18\x0e \x01(\t\x12\x1a\n\x12\x61uth_account_flags\x18\x10 \x01(\r\x12\x14\n\x0ctoken_source\x18\x16 \x01(\r\x12\x1b\n\x13\x61\x64min_spoofing_user\x18\x17 \x01(\x08\x12\x1a\n\x0ftransport_error\x18\x11 \x01(\x05:\x01\x31\x12\'\n\tmessageid\x18\x12 \x01(\x04:\x14\x31\x38\x34\x34\x36\x37\x34\x34\x30\x37\x33\x37\x30\x39\x35\x35\x31\x36\x31\x35\x12\x1a\n\x12publisher_group_id\x18\x13 \x01(\r\x12\r\n\x05sysid\x18\x14 \x01(\r\x12\x11\n\ttrace_tag\x18\x15 \x01(\x04\x12\x15\n\rwebapi_key_id\x18\x19 \x01(\r\x12\x1f\n\x17is_from_external_source\x18\x1a \x01(\x08\x12\x18\n\x10\x66orward_to_sysid\x18\x1b \x03(\r\x12\x10\n\x08\x63m_sysid\x18\x1c \x01(\r\x12\x18\n\rlauncher_type\x18\x1f \x01(\r:\x01\x30\x12\x10\n\x05realm\x18  \x01(\r:\x01\x30\x12\x16\n\ntimeout_ms\x18! \x01(\x05:\x02-1\x12\x14\n\x0c\x64\x65\x62ug_source\x18\" \x01(\t\x12!\n\x19\x64\x65\x62ug_source_string_index\x18# \x01(\r\x12\x10\n\x08token_id\x18$ \x01(\x04\x12\x0c\n\x02ip\x18\x0f \x01(\rH\x00\x12\x0f\n\x05ip_v6\x18\x1d \x01(\x0cH\x00\x42\t\n\x07ip_addr\"8\n\tCMsgMulti\x12\x15\n\rsize_unzipped\x18\x01 \x01(\r\x12\x14\n\x0cmessage_body\x18\x02 \x01(\x0c\"+\n\x13\x43MsgProtobufWrapped\x12\x14\n\x0cmessage_body\x18\x01 \x01(\x0c\"\x8f\x01\n\x0e\x43MsgAuthTicket\x12\x0e\n\x06\x65state\x18\x01 \x01(\r\x12\x12\n\x07\x65result\x18\x02 \x01(\r:\x01\x32\x12\x0f\n\x07steamid\x18\x03 \x01(\x06\x12\x0e\n\x06gameid\x18\x04 \x01(\x06\x12\x14\n\x0ch_steam_pipe\x18\x05 \x01(\r\x12\x12\n\nticket_crc\x18\x06 \x01(\r\x12\x0e\n\x06ticket\x18\x07 \x01(\x0c\"\x89\x02\n\x14\x43\x43\x44\x44\x42\x41ppDetailCommon\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x0c\n\x04icon\x18\x03 \x01(\t\x12\x0c\n\x04tool\x18\x06 \x01(\x08\x12\x0c\n\x04\x64\x65mo\x18\x07 \x01(\x08\x12\r\n\x05media\x18\x08 \x01(\x08\x12\x1f\n\x17\x63ommunity_visible_stats\x18\t \x01(\x08\x12\x15\n\rfriendly_name\x18\n \x01(\t\x12\x13\n\x0bpropagation\x18\x0b \x01(\t\x12\x19\n\x11has_adult_content\x18\x0c \x01(\x08\x12!\n\x19is_visible_in_steam_china\x18\r \x01(\x08\x12\x10\n\x08\x61pp_type\x18\x0e \x01(\r\"\xb3\x03\n\rCMsgAppRights\x12\x11\n\tedit_info\x18\x01 \x01(\x08\x12\x0f\n\x07publish\x18\x02 \x01(\x08\x12\x17\n\x0fview_error_data\x18\x03 \x01(\x08\x12\x10\n\x08\x64ownload\x18\x04 \x01(\x08\x12\x15\n\rupload_cdkeys\x18\x05 \x01(\x08\x12\x17\n\x0fgenerate_cdkeys\x18\x06 \x01(\x08\x12\x17\n\x0fview_financials\x18\x07 \x01(\x08\x12\x12\n\nmanage_ceg\x18\x08 \x01(\x08\x12\x16\n\x0emanage_signing\x18\t \x01(\x08\x12\x15\n\rmanage_cdkeys\x18\n \x01(\x08\x12\x16\n\x0e\x65\x64it_marketing\x18\x0b \x01(\x08\x12\x17\n\x0f\x65\x63onomy_support\x18\x0c \x01(\x08\x12\"\n\x1a\x65\x63onomy_support_supervisor\x18\r \x01(\x08\x12\x16\n\x0emanage_pricing\x18\x0e \x01(\x08\x12\x16\n\x0e\x62roadcast_live\x18\x0f \x01(\x08\x12\x1e\n\x16view_marketing_traffic\x18\x10 \x01(\x08\x12\"\n\x1a\x65\x64it_store_display_content\x18\x11 \x01(\x08\"\xf1\x02\n\x13\x43\x43uratorPreferences\x12\x1b\n\x13supported_languages\x18\x01 \x01(\r\x12\x18\n\x10platform_windows\x18\x02 \x01(\x08\x12\x14\n\x0cplatform_mac\x18\x03 \x01(\x08\x12\x16\n\x0eplatform_linux\x18\x04 \x01(\x08\x12\x12\n\nvr_content\x18\x05 \x01(\x08\x12\x1e\n\x16\x61\x64ult_content_violence\x18\x06 \x01(\x08\x12\x19\n\x11\x61\x64ult_content_sex\x18\x07 \x01(\x08\x12\x19\n\x11timestamp_updated\x18\x08 \x01(\r\x12\x16\n\x0etagids_curated\x18\t \x03(\r\x12\x17\n\x0ftagids_filtered\x18\n \x03(\r\x12\x15\n\rwebsite_title\x18\x0b \x01(\t\x12\x13\n\x0bwebsite_url\x18\x0c \x01(\t\x12\x16\n\x0e\x64iscussion_url\x18\r \x01(\t\x12\x16\n\x0eshow_broadcast\x18\x0e \x01(\x08\"@\n\x12\x43LocalizationToken\x12\x10\n\x08language\x18\x01 \x01(\r\x12\x18\n\x10localized_string\x18\x02 \x01(\t\"\xec\x01\n\x17\x43\x43lanEventUserNewsTuple\x12\x0e\n\x06\x63lanid\x18\x01 \x01(\r\x12\x11\n\tevent_gid\x18\x02 \x01(\x06\x12\x18\n\x10\x61nnouncement_gid\x18\x03 \x01(\x06\x12\x13\n\x0brtime_start\x18\x04 \x01(\r\x12\x11\n\trtime_end\x18\x05 \x01(\r\x12\x16\n\x0epriority_score\x18\x06 \x01(\r\x12\x0c\n\x04type\x18\x07 \x01(\r\x12\x18\n\x10\x63lamp_range_slot\x18\x08 \x01(\r\x12\r\n\x05\x61ppid\x18\t \x01(\r\x12\x1d\n\x15rtime32_last_modified\x18\n \x01(\r\"\x80\x01\n\x16\x43\x43lanMatchEventByRange\x12\x14\n\x0crtime_before\x18\x01 \x01(\r\x12\x13\n\x0brtime_after\x18\x02 \x01(\r\x12\x11\n\tqualified\x18\x03 \x01(\r\x12(\n\x06\x65vents\x18\x04 \x03(\x0b\x32\x18.CClanEventUserNewsTuple\"\x8b\x03\n\x1f\x43\x43ommunity_ClanAnnouncementInfo\x12\x0b\n\x03gid\x18\x01 \x01(\x04\x12\x0e\n\x06\x63lanid\x18\x02 \x01(\x04\x12\x10\n\x08posterid\x18\x03 \x01(\x04\x12\x10\n\x08headline\x18\x04 \x01(\t\x12\x10\n\x08posttime\x18\x05 \x01(\r\x12\x12\n\nupdatetime\x18\x06 \x01(\r\x12\x0c\n\x04\x62ody\x18\x07 \x01(\t\x12\x14\n\x0c\x63ommentcount\x18\x08 \x01(\x05\x12\x0c\n\x04tags\x18\t \x03(\t\x12\x10\n\x08language\x18\n \x01(\x05\x12\x0e\n\x06hidden\x18\x0b \x01(\x08\x12\x16\n\x0e\x66orum_topic_id\x18\x0c \x01(\x06\x12\x11\n\tevent_gid\x18\r \x01(\x06\x12\x13\n\x0bvoteupcount\x18\x0e \x01(\x05\x12\x15\n\rvotedowncount\x18\x0f \x01(\x05\x12V\n\x10\x62\x61n_check_result\x18\x10 \x01(\x0e\x32\x17.EBanContentCheckResult:#k_EBanContentCheckResult_NotScanned\"\xa6\x06\n\x0e\x43\x43lanEventData\x12\x0b\n\x03gid\x18\x01 \x01(\x06\x12\x14\n\x0c\x63lan_steamid\x18\x02 \x01(\x06\x12\x12\n\nevent_name\x18\x03 \x01(\t\x12;\n\nevent_type\x18\x04 \x01(\x0e\x32\x14.EProtoClanEventType:\x11k_EClanOtherEvent\x12\r\n\x05\x61ppid\x18\x05 \x01(\r\x12\x16\n\x0eserver_address\x18\x06 \x01(\t\x12\x17\n\x0fserver_password\x18\x07 \x01(\t\x12\x1a\n\x12rtime32_start_time\x18\x08 \x01(\r\x12\x18\n\x10rtime32_end_time\x18\t \x01(\r\x12\x15\n\rcomment_count\x18\n \x01(\x05\x12\x17\n\x0f\x63reator_steamid\x18\x0b \x01(\x06\x12\x1b\n\x13last_update_steamid\x18\x0c \x01(\x06\x12\x13\n\x0b\x65vent_notes\x18\r \x01(\t\x12\x10\n\x08jsondata\x18\x0e \x01(\t\x12;\n\x11\x61nnouncement_body\x18\x0f \x01(\x0b\x32 .CCommunity_ClanAnnouncementInfo\x12\x11\n\tpublished\x18\x10 \x01(\x08\x12\x0e\n\x06hidden\x18\x11 \x01(\x08\x12 \n\x18rtime32_visibility_start\x18\x12 \x01(\r\x12\x1e\n\x16rtime32_visibility_end\x18\x13 \x01(\r\x12\x1d\n\x15\x62roadcaster_accountid\x18\x14 \x01(\r\x12\x16\n\x0e\x66ollower_count\x18\x15 \x01(\r\x12\x14\n\x0cignore_count\x18\x16 \x01(\r\x12\x16\n\x0e\x66orum_topic_id\x18\x17 \x01(\x06\x12\x1d\n\x15rtime32_last_modified\x18\x18 \x01(\r\x12\x15\n\rnews_post_gid\x18\x19 \x01(\x06\x12\x1a\n\x12rtime_mod_reviewed\x18\x1a \x01(\r\x12\x1a\n\x12\x66\x65\x61tured_app_tagid\x18\x1b \x01(\r\x12\x19\n\x11referenced_appids\x18\x1c \x03(\r\x12\x10\n\x08\x62uild_id\x18\x1d \x01(\r\x12\x14\n\x0c\x62uild_branch\x18\x1e \x01(\t\"\xc7\x01\n\x10\x43\x42illing_Address\x12\x12\n\nfirst_name\x18\x01 \x01(\t\x12\x11\n\tlast_name\x18\x02 \x01(\t\x12\x10\n\x08\x61\x64\x64ress1\x18\x03 \x01(\t\x12\x10\n\x08\x61\x64\x64ress2\x18\x04 \x01(\t\x12\x0c\n\x04\x63ity\x18\x05 \x01(\t\x12\x10\n\x08us_state\x18\x06 \x01(\t\x12\x14\n\x0c\x63ountry_code\x18\x07 \x01(\t\x12\x10\n\x08postcode\x18\x08 \x01(\t\x12\x11\n\tzip_plus4\x18\t \x01(\x05\x12\r\n\x05phone\x18\n \x01(\t\"\xdb\x01\n\x19\x43PackageReservationStatus\x12\x11\n\tpackageid\x18\x01 \x01(\r\x12\x19\n\x11reservation_state\x18\x02 \x01(\x05\x12\x16\n\x0equeue_position\x18\x03 \x01(\x05\x12\x18\n\x10total_queue_size\x18\x04 \x01(\x05\x12 \n\x18reservation_country_code\x18\x05 \x01(\t\x12\x0f\n\x07\x65xpired\x18\x06 \x01(\x08\x12\x14\n\x0ctime_expires\x18\x07 \x01(\r\x12\x15\n\rtime_reserved\x18\x08 \x01(\r\"/\n\x10\x43MsgKeyValuePair\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t\"3\n\x0f\x43MsgKeyValueSet\x12 \n\x05pairs\x18\x01 \x03(\x0b\x32\x11.CMsgKeyValuePair*\xd8\x02\n\x16\x45\x42\x61nContentCheckResult\x12\'\n#k_EBanContentCheckResult_NotScanned\x10\x00\x12\"\n\x1ek_EBanContentCheckResult_Reset\x10\x01\x12*\n&k_EBanContentCheckResult_NeedsChecking\x10\x02\x12)\n%k_EBanContentCheckResult_VeryUnlikely\x10\x05\x12%\n!k_EBanContentCheckResult_Unlikely\x10\x1e\x12%\n!k_EBanContentCheckResult_Possible\x10\x32\x12#\n\x1fk_EBanContentCheckResult_Likely\x10K\x12\'\n#k_EBanContentCheckResult_VeryLikely\x10\x64*\xeb\x07\n\x13\x45ProtoClanEventType\x12\x15\n\x11k_EClanOtherEvent\x10\x01\x12\x14\n\x10k_EClanGameEvent\x10\x02\x12\x15\n\x11k_EClanPartyEvent\x10\x03\x12\x17\n\x13k_EClanMeetingEvent\x10\x04\x12\x1c\n\x18k_EClanSpecialCauseEvent\x10\x05\x12\x1c\n\x18k_EClanMusicAndArtsEvent\x10\x06\x12\x16\n\x12k_EClanSportsEvent\x10\x07\x12\x14\n\x10k_EClanTripEvent\x10\x08\x12\x14\n\x10k_EClanChatEvent\x10\t\x12\x1b\n\x17k_EClanGameReleaseEvent\x10\n\x12\x19\n\x15k_EClanBroadcastEvent\x10\x0b\x12\x1b\n\x17k_EClanSmallUpdateEvent\x10\x0c\x12&\n\"k_EClanPreAnnounceMajorUpdateEvent\x10\r\x12\x1b\n\x17k_EClanMajorUpdateEvent\x10\x0e\x12\x1a\n\x16k_EClanDLCReleaseEvent\x10\x0f\x12\x1d\n\x19k_EClanFutureReleaseEvent\x10\x10\x12&\n\"k_EClanESportTournamentStreamEvent\x10\x11\x12\x19\n\x15k_EClanDevStreamEvent\x10\x12\x12\x1c\n\x18k_EClanFamousStreamEvent\x10\x13\x12\x19\n\x15k_EClanGameSalesEvent\x10\x14\x12\x1d\n\x19k_EClanGameItemSalesEvent\x10\x15\x12\x1d\n\x19k_EClanInGameBonusXPEvent\x10\x16\x12\x1a\n\x16k_EClanInGameLootEvent\x10\x17\x12\x1b\n\x17k_EClanInGamePerksEvent\x10\x18\x12\x1f\n\x1bk_EClanInGameChallengeEvent\x10\x19\x12\x1d\n\x19k_EClanInGameContestEvent\x10\x1a\x12\x13\n\x0fk_EClanIRLEvent\x10\x1b\x12\x14\n\x10k_EClanNewsEvent\x10\x1c\x12\x1b\n\x17k_EClanBetaReleaseEvent\x10\x1d\x12$\n k_EClanInGameContentReleaseEvent\x10\x1e\x12\x14\n\x10k_EClanFreeTrial\x10\x1f\x12\x18\n\x14k_EClanSeasonRelease\x10 \x12\x17\n\x13k_EClanSeasonUpdate\x10!\x12\x19\n\x15k_EClanCrosspostEvent\x10\"\x12\x1d\n\x19k_EClanInGameEventGeneral\x10#*\x81\x01\n\x1cPartnerEventNotificationType\x12\x11\n\rk_EEventStart\x10\x00\x12\x1a\n\x16k_EEventBroadcastStart\x10\x01\x12\x16\n\x12k_EEventMatchStart\x10\x02\x12\x1a\n\x16k_EEventPartnerMaxType\x10\x03:A\n\x12msgpool_soft_limit\x12\x1f.google.protobuf.MessageOptions\x18\xd0\x86\x03 \x01(\x05:\x02\x33\x32:B\n\x12msgpool_hard_limit\x12\x1f.google.protobuf.MessageOptions\x18\xd1\x86\x03 \x01(\x05:\x03\x33\x38\x34:C\n\x14\x66orce_php_generation\x12\x1c.google.protobuf.FileOptions\x18\xd0\x86\x03 \x01(\x08:\x05\x66\x61lse:H\n\x18php_output_always_number\x12\x1d.google.protobuf.FieldOptions\x18\xe4\x86\x03 \x01(\x08:\x05\x66\x61lse:J\n\x1a\x61llow_field_named_steam_id\x12\x1d.google.protobuf.FieldOptions\x18\xe8\x86\x03 \x01(\x08:\x05\x66\x61lseB\tH\x01\x90\x01\x01\x80\xb5\x18\x01'
   ,
   dependencies=[google_dot_protobuf_dot_descriptor__pb2.DESCRIPTOR,])
 
+_EBANCONTENTCHECKRESULT = _descriptor.EnumDescriptor(
+  name='EBanContentCheckResult',
+  full_name='EBanContentCheckResult',
+  filename=None,
+  file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
+  values=[
+    _descriptor.EnumValueDescriptor(
+      name='k_EBanContentCheckResult_NotScanned', index=0, number=0,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EBanContentCheckResult_Reset', index=1, number=1,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EBanContentCheckResult_NeedsChecking', index=2, number=2,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EBanContentCheckResult_VeryUnlikely', index=3, number=5,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EBanContentCheckResult_Unlikely', index=4, number=30,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EBanContentCheckResult_Possible', index=5, number=50,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EBanContentCheckResult_Likely', index=6, number=75,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EBanContentCheckResult_VeryLikely', index=7, number=100,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+  ],
+  containing_type=None,
+  serialized_options=None,
+  serialized_start=4451,
+  serialized_end=4795,
+)
+_sym_db.RegisterEnumDescriptor(_EBANCONTENTCHECKRESULT)
+
+EBanContentCheckResult = enum_type_wrapper.EnumTypeWrapper(_EBANCONTENTCHECKRESULT)
 _EPROTOCLANEVENTTYPE = _descriptor.EnumDescriptor(
   name='EProtoClanEventType',
   full_name='EProtoClanEventType',
   filename=None,
   file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
   values=[
     _descriptor.EnumValueDescriptor(
       name='k_EClanOtherEvent', index=0, number=1,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EClanGameEvent', index=1, number=2,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EClanPartyEvent', index=2, number=3,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EClanMeetingEvent', index=3, number=4,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EClanSpecialCauseEvent', index=4, number=5,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EClanMusicAndArtsEvent', index=5, number=6,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EClanSportsEvent', index=6, number=7,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EClanTripEvent', index=7, number=8,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EClanChatEvent', index=8, number=9,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EClanGameReleaseEvent', index=9, number=10,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EClanBroadcastEvent', index=10, number=11,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EClanSmallUpdateEvent', index=11, number=12,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EClanPreAnnounceMajorUpdateEvent', index=12, number=13,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EClanMajorUpdateEvent', index=13, number=14,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EClanDLCReleaseEvent', index=14, number=15,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EClanFutureReleaseEvent', index=15, number=16,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EClanESportTournamentStreamEvent', index=16, number=17,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EClanDevStreamEvent', index=17, number=18,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EClanFamousStreamEvent', index=18, number=19,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EClanGameSalesEvent', index=19, number=20,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EClanGameItemSalesEvent', index=20, number=21,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EClanInGameBonusXPEvent', index=21, number=22,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EClanInGameLootEvent', index=22, number=23,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EClanInGamePerksEvent', index=23, number=24,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EClanInGameChallengeEvent', index=24, number=25,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EClanInGameContestEvent', index=25, number=26,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EClanIRLEvent', index=26, number=27,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EClanNewsEvent', index=27, number=28,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EClanBetaReleaseEvent', index=28, number=29,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EClanInGameContentReleaseEvent', index=29, number=30,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EClanFreeTrial', index=30, number=31,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EClanSeasonRelease', index=31, number=32,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EClanSeasonUpdate', index=32, number=33,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EClanCrosspostEvent', index=33, number=34,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EClanInGameEventGeneral', index=34, number=35,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
   ],
   containing_type=None,
   serialized_options=None,
-  serialized_start=4196,
-  serialized_end=5199,
+  serialized_start=4798,
+  serialized_end=5801,
 )
 _sym_db.RegisterEnumDescriptor(_EPROTOCLANEVENTTYPE)
 
@@ -186,32 +277,45 @@ _PARTNEREVENTNOTIFICATIONTYPE = _descriptor.EnumDescriptor(
   full_name='PartnerEventNotificationType',
   filename=None,
   file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
   values=[
     _descriptor.EnumValueDescriptor(
       name='k_EEventStart', index=0, number=0,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EEventBroadcastStart', index=1, number=1,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EEventMatchStart', index=2, number=2,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EEventPartnerMaxType', index=3, number=3,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
   ],
   containing_type=None,
   serialized_options=None,
-  serialized_start=5202,
-  serialized_end=5331,
+  serialized_start=5804,
+  serialized_end=5933,
 )
 _sym_db.RegisterEnumDescriptor(_PARTNEREVENTNOTIFICATIONTYPE)
 
 PartnerEventNotificationType = enum_type_wrapper.EnumTypeWrapper(_PARTNEREVENTNOTIFICATIONTYPE)
+k_EBanContentCheckResult_NotScanned = 0
+k_EBanContentCheckResult_Reset = 1
+k_EBanContentCheckResult_NeedsChecking = 2
+k_EBanContentCheckResult_VeryUnlikely = 5
+k_EBanContentCheckResult_Unlikely = 30
+k_EBanContentCheckResult_Possible = 50
+k_EBanContentCheckResult_Likely = 75
+k_EBanContentCheckResult_VeryLikely = 100
 k_EClanOtherEvent = 1
 k_EClanGameEvent = 2
 k_EClanPartyEvent = 3
@@ -259,7 +363,7 @@ msgpool_soft_limit = _descriptor.FieldDescriptor(
   has_default_value=True, default_value=32,
   message_type=None, enum_type=None, containing_type=None,
   is_extension=True, extension_scope=None,
-  serialized_options=None, file=DESCRIPTOR)
+  serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key)
 MSGPOOL_HARD_LIMIT_FIELD_NUMBER = 50001
 msgpool_hard_limit = _descriptor.FieldDescriptor(
   name='msgpool_hard_limit', full_name='msgpool_hard_limit', index=1,
@@ -267,7 +371,7 @@ msgpool_hard_limit = _descriptor.FieldDescriptor(
   has_default_value=True, default_value=384,
   message_type=None, enum_type=None, containing_type=None,
   is_extension=True, extension_scope=None,
-  serialized_options=None, file=DESCRIPTOR)
+  serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key)
 FORCE_PHP_GENERATION_FIELD_NUMBER = 50000
 force_php_generation = _descriptor.FieldDescriptor(
   name='force_php_generation', full_name='force_php_generation', index=2,
@@ -275,7 +379,7 @@ force_php_generation = _descriptor.FieldDescriptor(
   has_default_value=True, default_value=False,
   message_type=None, enum_type=None, containing_type=None,
   is_extension=True, extension_scope=None,
-  serialized_options=None, file=DESCRIPTOR)
+  serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key)
 PHP_OUTPUT_ALWAYS_NUMBER_FIELD_NUMBER = 50020
 php_output_always_number = _descriptor.FieldDescriptor(
   name='php_output_always_number', full_name='php_output_always_number', index=3,
@@ -283,7 +387,15 @@ php_output_always_number = _descriptor.FieldDescriptor(
   has_default_value=True, default_value=False,
   message_type=None, enum_type=None, containing_type=None,
   is_extension=True, extension_scope=None,
-  serialized_options=None, file=DESCRIPTOR)
+  serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key)
+ALLOW_FIELD_NAMED_STEAM_ID_FIELD_NUMBER = 50024
+allow_field_named_steam_id = _descriptor.FieldDescriptor(
+  name='allow_field_named_steam_id', full_name='allow_field_named_steam_id', index=4,
+  number=50024, type=8, cpp_type=7, label=1,
+  has_default_value=True, default_value=False,
+  message_type=None, enum_type=None, containing_type=None,
+  is_extension=True, extension_scope=None,
+  serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key)
 
 
 _CMSGIPADDRESS = _descriptor.Descriptor(
@@ -292,6 +404,7 @@ _CMSGIPADDRESS = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='v4', full_name='CMsgIPAddress.v4', index=0,
@@ -299,14 +412,14 @@ _CMSGIPADDRESS = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='v6', full_name='CMsgIPAddress.v6', index=1,
       number=2, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -320,7 +433,9 @@ _CMSGIPADDRESS = _descriptor.Descriptor(
   oneofs=[
     _descriptor.OneofDescriptor(
       name='ip', full_name='CMsgIPAddress.ip',
-      index=0, containing_type=None, fields=[]),
+      index=0, containing_type=None,
+      create_key=_descriptor._internal_create_key,
+    fields=[]),
   ],
   serialized_start=62,
   serialized_end=111,
@@ -333,6 +448,7 @@ _CMSGIPADDRESSBUCKET = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='original_ip_address', full_name='CMsgIPAddressBucket.original_ip_address', index=0,
@@ -340,14 +456,14 @@ _CMSGIPADDRESSBUCKET = _descriptor.Descriptor(
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='bucket', full_name='CMsgIPAddressBucket.bucket', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -371,6 +487,7 @@ _CMSGPROTOBUFHEADER = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CMsgProtoBufHeader.steamid', index=0,
@@ -378,182 +495,203 @@ _CMSGPROTOBUFHEADER = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='client_sessionid', full_name='CMsgProtoBufHeader.client_sessionid', index=1,
       number=2, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='routing_appid', full_name='CMsgProtoBufHeader.routing_appid', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='jobid_source', full_name='CMsgProtoBufHeader.jobid_source', index=3,
       number=10, type=6, cpp_type=4, label=1,
       has_default_value=True, default_value=18446744073709551615,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='jobid_target', full_name='CMsgProtoBufHeader.jobid_target', index=4,
       number=11, type=6, cpp_type=4, label=1,
       has_default_value=True, default_value=18446744073709551615,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='target_job_name', full_name='CMsgProtoBufHeader.target_job_name', index=5,
       number=12, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='seq_num', full_name='CMsgProtoBufHeader.seq_num', index=6,
       number=24, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='eresult', full_name='CMsgProtoBufHeader.eresult', index=7,
       number=13, type=5, cpp_type=1, label=1,
       has_default_value=True, default_value=2,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='error_message', full_name='CMsgProtoBufHeader.error_message', index=8,
       number=14, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='auth_account_flags', full_name='CMsgProtoBufHeader.auth_account_flags', index=9,
       number=16, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='token_source', full_name='CMsgProtoBufHeader.token_source', index=10,
       number=22, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='admin_spoofing_user', full_name='CMsgProtoBufHeader.admin_spoofing_user', index=11,
       number=23, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='transport_error', full_name='CMsgProtoBufHeader.transport_error', index=12,
       number=17, type=5, cpp_type=1, label=1,
       has_default_value=True, default_value=1,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='messageid', full_name='CMsgProtoBufHeader.messageid', index=13,
       number=18, type=4, cpp_type=4, label=1,
       has_default_value=True, default_value=18446744073709551615,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='publisher_group_id', full_name='CMsgProtoBufHeader.publisher_group_id', index=14,
       number=19, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='sysid', full_name='CMsgProtoBufHeader.sysid', index=15,
       number=20, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='trace_tag', full_name='CMsgProtoBufHeader.trace_tag', index=16,
       number=21, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='webapi_key_id', full_name='CMsgProtoBufHeader.webapi_key_id', index=17,
       number=25, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='is_from_external_source', full_name='CMsgProtoBufHeader.is_from_external_source', index=18,
       number=26, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='forward_to_sysid', full_name='CMsgProtoBufHeader.forward_to_sysid', index=19,
       number=27, type=13, cpp_type=3, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='cm_sysid', full_name='CMsgProtoBufHeader.cm_sysid', index=20,
       number=28, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
-      name='wg_token', full_name='CMsgProtoBufHeader.wg_token', index=21,
-      number=30, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='launcher_type', full_name='CMsgProtoBufHeader.launcher_type', index=22,
+      name='launcher_type', full_name='CMsgProtoBufHeader.launcher_type', index=21,
       number=31, type=13, cpp_type=3, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
-      name='realm', full_name='CMsgProtoBufHeader.realm', index=23,
+      name='realm', full_name='CMsgProtoBufHeader.realm', index=22,
       number=32, type=13, cpp_type=3, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='timeout_ms', full_name='CMsgProtoBufHeader.timeout_ms', index=23,
+      number=33, type=5, cpp_type=1, label=1,
+      has_default_value=True, default_value=-1,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='debug_source', full_name='CMsgProtoBufHeader.debug_source', index=24,
+      number=34, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='debug_source_string_index', full_name='CMsgProtoBufHeader.debug_source_string_index', index=25,
+      number=35, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='token_id', full_name='CMsgProtoBufHeader.token_id', index=26,
+      number=36, type=4, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
-      name='ip', full_name='CMsgProtoBufHeader.ip', index=24,
+      name='ip', full_name='CMsgProtoBufHeader.ip', index=27,
       number=15, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
-      name='ip_v6', full_name='CMsgProtoBufHeader.ip_v6', index=25,
+      name='ip_v6', full_name='CMsgProtoBufHeader.ip_v6', index=28,
       number=29, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -567,10 +705,12 @@ _CMSGPROTOBUFHEADER = _descriptor.Descriptor(
   oneofs=[
     _descriptor.OneofDescriptor(
       name='ip_addr', full_name='CMsgProtoBufHeader.ip_addr',
-      index=0, containing_type=None, fields=[]),
+      index=0, containing_type=None,
+      create_key=_descriptor._internal_create_key,
+    fields=[]),
   ],
   serialized_start=198,
-  serialized_end=871,
+  serialized_end=952,
 )
 
 
@@ -580,6 +720,7 @@ _CMSGMULTI = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='size_unzipped', full_name='CMsgMulti.size_unzipped', index=0,
@@ -587,14 +728,14 @@ _CMSGMULTI = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='message_body', full_name='CMsgMulti.message_body', index=1,
       number=2, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -607,8 +748,8 @@ _CMSGMULTI = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=873,
-  serialized_end=929,
+  serialized_start=954,
+  serialized_end=1010,
 )
 
 
@@ -618,14 +759,15 @@ _CMSGPROTOBUFWRAPPED = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='message_body', full_name='CMsgProtobufWrapped.message_body', index=0,
       number=1, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -638,8 +780,8 @@ _CMSGPROTOBUFWRAPPED = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=931,
-  serialized_end=974,
+  serialized_start=1012,
+  serialized_end=1055,
 )
 
 
@@ -649,6 +791,7 @@ _CMSGAUTHTICKET = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='estate', full_name='CMsgAuthTicket.estate', index=0,
@@ -656,49 +799,49 @@ _CMSGAUTHTICKET = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='eresult', full_name='CMsgAuthTicket.eresult', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=True, default_value=2,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CMsgAuthTicket.steamid', index=2,
       number=3, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='gameid', full_name='CMsgAuthTicket.gameid', index=3,
       number=4, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='h_steam_pipe', full_name='CMsgAuthTicket.h_steam_pipe', index=4,
       number=5, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='ticket_crc', full_name='CMsgAuthTicket.ticket_crc', index=5,
       number=6, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='ticket', full_name='CMsgAuthTicket.ticket', index=6,
       number=7, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -711,8 +854,8 @@ _CMSGAUTHTICKET = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=977,
-  serialized_end=1120,
+  serialized_start=1058,
+  serialized_end=1201,
 )
 
 
@@ -722,6 +865,7 @@ _CCDDBAPPDETAILCOMMON = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CCDDBAppDetailCommon.appid', index=0,
@@ -729,91 +873,84 @@ _CCDDBAPPDETAILCOMMON = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='name', full_name='CCDDBAppDetailCommon.name', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='icon', full_name='CCDDBAppDetailCommon.icon', index=2,
       number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='logo', full_name='CCDDBAppDetailCommon.logo', index=3,
-      number=4, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
-      name='logo_small', full_name='CCDDBAppDetailCommon.logo_small', index=4,
-      number=5, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='tool', full_name='CCDDBAppDetailCommon.tool', index=5,
+      name='tool', full_name='CCDDBAppDetailCommon.tool', index=3,
       number=6, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
-      name='demo', full_name='CCDDBAppDetailCommon.demo', index=6,
+      name='demo', full_name='CCDDBAppDetailCommon.demo', index=4,
       number=7, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
-      name='media', full_name='CCDDBAppDetailCommon.media', index=7,
+      name='media', full_name='CCDDBAppDetailCommon.media', index=5,
       number=8, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
-      name='community_visible_stats', full_name='CCDDBAppDetailCommon.community_visible_stats', index=8,
+      name='community_visible_stats', full_name='CCDDBAppDetailCommon.community_visible_stats', index=6,
       number=9, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
-      name='friendly_name', full_name='CCDDBAppDetailCommon.friendly_name', index=9,
+      name='friendly_name', full_name='CCDDBAppDetailCommon.friendly_name', index=7,
       number=10, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
-      name='propagation', full_name='CCDDBAppDetailCommon.propagation', index=10,
+      name='propagation', full_name='CCDDBAppDetailCommon.propagation', index=8,
       number=11, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
-      name='has_adult_content', full_name='CCDDBAppDetailCommon.has_adult_content', index=11,
+      name='has_adult_content', full_name='CCDDBAppDetailCommon.has_adult_content', index=9,
       number=12, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
-      name='is_visible_in_steam_china', full_name='CCDDBAppDetailCommon.is_visible_in_steam_china', index=12,
+      name='is_visible_in_steam_china', full_name='CCDDBAppDetailCommon.is_visible_in_steam_china', index=10,
       number=13, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='app_type', full_name='CCDDBAppDetailCommon.app_type', index=11,
+      number=14, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -826,8 +963,8 @@ _CCDDBAPPDETAILCOMMON = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1123,
-  serialized_end=1404,
+  serialized_start=1204,
+  serialized_end=1469,
 )
 
 
@@ -837,6 +974,7 @@ _CMSGAPPRIGHTS = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='edit_info', full_name='CMsgAppRights.edit_info', index=0,
@@ -844,119 +982,119 @@ _CMSGAPPRIGHTS = _descriptor.Descriptor(
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='publish', full_name='CMsgAppRights.publish', index=1,
       number=2, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='view_error_data', full_name='CMsgAppRights.view_error_data', index=2,
       number=3, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='download', full_name='CMsgAppRights.download', index=3,
       number=4, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='upload_cdkeys', full_name='CMsgAppRights.upload_cdkeys', index=4,
       number=5, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='generate_cdkeys', full_name='CMsgAppRights.generate_cdkeys', index=5,
       number=6, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='view_financials', full_name='CMsgAppRights.view_financials', index=6,
       number=7, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='manage_ceg', full_name='CMsgAppRights.manage_ceg', index=7,
       number=8, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='manage_signing', full_name='CMsgAppRights.manage_signing', index=8,
       number=9, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='manage_cdkeys', full_name='CMsgAppRights.manage_cdkeys', index=9,
       number=10, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='edit_marketing', full_name='CMsgAppRights.edit_marketing', index=10,
       number=11, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='economy_support', full_name='CMsgAppRights.economy_support', index=11,
       number=12, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='economy_support_supervisor', full_name='CMsgAppRights.economy_support_supervisor', index=12,
       number=13, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='manage_pricing', full_name='CMsgAppRights.manage_pricing', index=13,
       number=14, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='broadcast_live', full_name='CMsgAppRights.broadcast_live', index=14,
       number=15, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='view_marketing_traffic', full_name='CMsgAppRights.view_marketing_traffic', index=15,
       number=16, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='edit_store_display_content', full_name='CMsgAppRights.edit_store_display_content', index=16,
       number=17, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -969,8 +1107,8 @@ _CMSGAPPRIGHTS = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1407,
-  serialized_end=1842,
+  serialized_start=1472,
+  serialized_end=1907,
 )
 
 
@@ -980,6 +1118,7 @@ _CCURATORPREFERENCES = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='supported_languages', full_name='CCuratorPreferences.supported_languages', index=0,
@@ -987,98 +1126,98 @@ _CCURATORPREFERENCES = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='platform_windows', full_name='CCuratorPreferences.platform_windows', index=1,
       number=2, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='platform_mac', full_name='CCuratorPreferences.platform_mac', index=2,
       number=3, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='platform_linux', full_name='CCuratorPreferences.platform_linux', index=3,
       number=4, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='vr_content', full_name='CCuratorPreferences.vr_content', index=4,
       number=5, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='adult_content_violence', full_name='CCuratorPreferences.adult_content_violence', index=5,
       number=6, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='adult_content_sex', full_name='CCuratorPreferences.adult_content_sex', index=6,
       number=7, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='timestamp_updated', full_name='CCuratorPreferences.timestamp_updated', index=7,
       number=8, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='tagids_curated', full_name='CCuratorPreferences.tagids_curated', index=8,
       number=9, type=13, cpp_type=3, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='tagids_filtered', full_name='CCuratorPreferences.tagids_filtered', index=9,
       number=10, type=13, cpp_type=3, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='website_title', full_name='CCuratorPreferences.website_title', index=10,
       number=11, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='website_url', full_name='CCuratorPreferences.website_url', index=11,
       number=12, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='discussion_url', full_name='CCuratorPreferences.discussion_url', index=12,
       number=13, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='show_broadcast', full_name='CCuratorPreferences.show_broadcast', index=13,
       number=14, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1091,8 +1230,8 @@ _CCURATORPREFERENCES = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1845,
-  serialized_end=2214,
+  serialized_start=1910,
+  serialized_end=2279,
 )
 
 
@@ -1102,6 +1241,7 @@ _CLOCALIZATIONTOKEN = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='language', full_name='CLocalizationToken.language', index=0,
@@ -1109,14 +1249,14 @@ _CLOCALIZATIONTOKEN = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='localized_string', full_name='CLocalizationToken.localized_string', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1129,8 +1269,8 @@ _CLOCALIZATIONTOKEN = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=2216,
-  serialized_end=2280,
+  serialized_start=2281,
+  serialized_end=2345,
 )
 
 
@@ -1140,6 +1280,7 @@ _CCLANEVENTUSERNEWSTUPLE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='clanid', full_name='CClanEventUserNewsTuple.clanid', index=0,
@@ -1147,70 +1288,70 @@ _CCLANEVENTUSERNEWSTUPLE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='event_gid', full_name='CClanEventUserNewsTuple.event_gid', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='announcement_gid', full_name='CClanEventUserNewsTuple.announcement_gid', index=2,
       number=3, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='rtime_start', full_name='CClanEventUserNewsTuple.rtime_start', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='rtime_end', full_name='CClanEventUserNewsTuple.rtime_end', index=4,
       number=5, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='priority_score', full_name='CClanEventUserNewsTuple.priority_score', index=5,
       number=6, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='type', full_name='CClanEventUserNewsTuple.type', index=6,
       number=7, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='clamp_range_slot', full_name='CClanEventUserNewsTuple.clamp_range_slot', index=7,
       number=8, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='appid', full_name='CClanEventUserNewsTuple.appid', index=8,
       number=9, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='rtime32_last_modified', full_name='CClanEventUserNewsTuple.rtime32_last_modified', index=9,
       number=10, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1223,8 +1364,8 @@ _CCLANEVENTUSERNEWSTUPLE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=2283,
-  serialized_end=2519,
+  serialized_start=2348,
+  serialized_end=2584,
 )
 
 
@@ -1234,6 +1375,7 @@ _CCLANMATCHEVENTBYRANGE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='rtime_before', full_name='CClanMatchEventByRange.rtime_before', index=0,
@@ -1241,28 +1383,28 @@ _CCLANMATCHEVENTBYRANGE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='rtime_after', full_name='CClanMatchEventByRange.rtime_after', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='qualified', full_name='CClanMatchEventByRange.qualified', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='events', full_name='CClanMatchEventByRange.events', index=3,
       number=4, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1275,8 +1417,8 @@ _CCLANMATCHEVENTBYRANGE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=2522,
-  serialized_end=2650,
+  serialized_start=2587,
+  serialized_end=2715,
 )
 
 
@@ -1286,6 +1428,7 @@ _CCOMMUNITY_CLANANNOUNCEMENTINFO = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='gid', full_name='CCommunity_ClanAnnouncementInfo.gid', index=0,
@@ -1293,105 +1436,112 @@ _CCOMMUNITY_CLANANNOUNCEMENTINFO = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='clanid', full_name='CCommunity_ClanAnnouncementInfo.clanid', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='posterid', full_name='CCommunity_ClanAnnouncementInfo.posterid', index=2,
       number=3, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='headline', full_name='CCommunity_ClanAnnouncementInfo.headline', index=3,
       number=4, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='posttime', full_name='CCommunity_ClanAnnouncementInfo.posttime', index=4,
       number=5, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='updatetime', full_name='CCommunity_ClanAnnouncementInfo.updatetime', index=5,
       number=6, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='body', full_name='CCommunity_ClanAnnouncementInfo.body', index=6,
       number=7, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='commentcount', full_name='CCommunity_ClanAnnouncementInfo.commentcount', index=7,
       number=8, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='tags', full_name='CCommunity_ClanAnnouncementInfo.tags', index=8,
       number=9, type=9, cpp_type=9, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='language', full_name='CCommunity_ClanAnnouncementInfo.language', index=9,
       number=10, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='hidden', full_name='CCommunity_ClanAnnouncementInfo.hidden', index=10,
       number=11, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='forum_topic_id', full_name='CCommunity_ClanAnnouncementInfo.forum_topic_id', index=11,
       number=12, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='event_gid', full_name='CCommunity_ClanAnnouncementInfo.event_gid', index=12,
       number=13, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='voteupcount', full_name='CCommunity_ClanAnnouncementInfo.voteupcount', index=13,
       number=14, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='votedowncount', full_name='CCommunity_ClanAnnouncementInfo.votedowncount', index=14,
       number=15, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='ban_check_result', full_name='CCommunity_ClanAnnouncementInfo.ban_check_result', index=15,
+      number=16, type=14, cpp_type=8, label=1,
+      has_default_value=True, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1404,8 +1554,8 @@ _CCOMMUNITY_CLANANNOUNCEMENTINFO = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=2653,
-  serialized_end=2960,
+  serialized_start=2718,
+  serialized_end=3113,
 )
 
 
@@ -1415,6 +1565,7 @@ _CCLANEVENTDATA = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='gid', full_name='CClanEventData.gid', index=0,
@@ -1422,210 +1573,210 @@ _CCLANEVENTDATA = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='clan_steamid', full_name='CClanEventData.clan_steamid', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='event_name', full_name='CClanEventData.event_name', index=2,
       number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='event_type', full_name='CClanEventData.event_type', index=3,
       number=4, type=14, cpp_type=8, label=1,
       has_default_value=True, default_value=1,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='appid', full_name='CClanEventData.appid', index=4,
       number=5, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='server_address', full_name='CClanEventData.server_address', index=5,
       number=6, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='server_password', full_name='CClanEventData.server_password', index=6,
       number=7, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='rtime32_start_time', full_name='CClanEventData.rtime32_start_time', index=7,
       number=8, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='rtime32_end_time', full_name='CClanEventData.rtime32_end_time', index=8,
       number=9, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='comment_count', full_name='CClanEventData.comment_count', index=9,
       number=10, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='creator_steamid', full_name='CClanEventData.creator_steamid', index=10,
       number=11, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='last_update_steamid', full_name='CClanEventData.last_update_steamid', index=11,
       number=12, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='event_notes', full_name='CClanEventData.event_notes', index=12,
       number=13, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='jsondata', full_name='CClanEventData.jsondata', index=13,
       number=14, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='announcement_body', full_name='CClanEventData.announcement_body', index=14,
       number=15, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='published', full_name='CClanEventData.published', index=15,
       number=16, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='hidden', full_name='CClanEventData.hidden', index=16,
       number=17, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='rtime32_visibility_start', full_name='CClanEventData.rtime32_visibility_start', index=17,
       number=18, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='rtime32_visibility_end', full_name='CClanEventData.rtime32_visibility_end', index=18,
       number=19, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='broadcaster_accountid', full_name='CClanEventData.broadcaster_accountid', index=19,
       number=20, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='follower_count', full_name='CClanEventData.follower_count', index=20,
       number=21, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='ignore_count', full_name='CClanEventData.ignore_count', index=21,
       number=22, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='forum_topic_id', full_name='CClanEventData.forum_topic_id', index=22,
       number=23, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='rtime32_last_modified', full_name='CClanEventData.rtime32_last_modified', index=23,
       number=24, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='news_post_gid', full_name='CClanEventData.news_post_gid', index=24,
       number=25, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='rtime_mod_reviewed', full_name='CClanEventData.rtime_mod_reviewed', index=25,
       number=26, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='featured_app_tagid', full_name='CClanEventData.featured_app_tagid', index=26,
       number=27, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='referenced_appids', full_name='CClanEventData.referenced_appids', index=27,
       number=28, type=13, cpp_type=3, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='build_id', full_name='CClanEventData.build_id', index=28,
       number=29, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='build_branch', full_name='CClanEventData.build_branch', index=29,
       number=30, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1638,8 +1789,8 @@ _CCLANEVENTDATA = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=2963,
-  serialized_end=3769,
+  serialized_start=3116,
+  serialized_end=3922,
 )
 
 
@@ -1649,77 +1800,78 @@ _CBILLING_ADDRESS = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='first_name', full_name='CBilling_Address.first_name', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='last_name', full_name='CBilling_Address.last_name', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='address1', full_name='CBilling_Address.address1', index=2,
       number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='address2', full_name='CBilling_Address.address2', index=3,
       number=4, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='city', full_name='CBilling_Address.city', index=4,
       number=5, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='us_state', full_name='CBilling_Address.us_state', index=5,
       number=6, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='country_code', full_name='CBilling_Address.country_code', index=6,
       number=7, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='postcode', full_name='CBilling_Address.postcode', index=7,
       number=8, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='zip_plus4', full_name='CBilling_Address.zip_plus4', index=8,
       number=9, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='phone', full_name='CBilling_Address.phone', index=9,
       number=10, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1732,8 +1884,8 @@ _CBILLING_ADDRESS = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=3772,
-  serialized_end=3971,
+  serialized_start=3925,
+  serialized_end=4124,
 )
 
 
@@ -1743,6 +1895,7 @@ _CPACKAGERESERVATIONSTATUS = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='packageid', full_name='CPackageReservationStatus.packageid', index=0,
@@ -1750,56 +1903,56 @@ _CPACKAGERESERVATIONSTATUS = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='reservation_state', full_name='CPackageReservationStatus.reservation_state', index=1,
       number=2, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='queue_position', full_name='CPackageReservationStatus.queue_position', index=2,
       number=3, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='total_queue_size', full_name='CPackageReservationStatus.total_queue_size', index=3,
       number=4, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='reservation_country_code', full_name='CPackageReservationStatus.reservation_country_code', index=4,
       number=5, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='expired', full_name='CPackageReservationStatus.expired', index=5,
       number=6, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='time_expires', full_name='CPackageReservationStatus.time_expires', index=6,
       number=7, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='time_reserved', full_name='CPackageReservationStatus.time_reserved', index=7,
       number=8, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1812,8 +1965,79 @@ _CPACKAGERESERVATIONSTATUS = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=3974,
-  serialized_end=4193,
+  serialized_start=4127,
+  serialized_end=4346,
+)
+
+
+_CMSGKEYVALUEPAIR = _descriptor.Descriptor(
+  name='CMsgKeyValuePair',
+  full_name='CMsgKeyValuePair',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='name', full_name='CMsgKeyValuePair.name', index=0,
+      number=1, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='value', full_name='CMsgKeyValuePair.value', index=1,
+      number=2, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=4348,
+  serialized_end=4395,
+)
+
+
+_CMSGKEYVALUESET = _descriptor.Descriptor(
+  name='CMsgKeyValueSet',
+  full_name='CMsgKeyValueSet',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='pairs', full_name='CMsgKeyValueSet.pairs', index=0,
+      number=1, type=11, cpp_type=10, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=4397,
+  serialized_end=4448,
 )
 
 _CMSGIPADDRESS.oneofs_by_name['ip'].fields.append(
@@ -1830,8 +2054,10 @@ _CMSGPROTOBUFHEADER.oneofs_by_name['ip_addr'].fields.append(
   _CMSGPROTOBUFHEADER.fields_by_name['ip_v6'])
 _CMSGPROTOBUFHEADER.fields_by_name['ip_v6'].containing_oneof = _CMSGPROTOBUFHEADER.oneofs_by_name['ip_addr']
 _CCLANMATCHEVENTBYRANGE.fields_by_name['events'].message_type = _CCLANEVENTUSERNEWSTUPLE
+_CCOMMUNITY_CLANANNOUNCEMENTINFO.fields_by_name['ban_check_result'].enum_type = _EBANCONTENTCHECKRESULT
 _CCLANEVENTDATA.fields_by_name['event_type'].enum_type = _EPROTOCLANEVENTTYPE
 _CCLANEVENTDATA.fields_by_name['announcement_body'].message_type = _CCOMMUNITY_CLANANNOUNCEMENTINFO
+_CMSGKEYVALUESET.fields_by_name['pairs'].message_type = _CMSGKEYVALUEPAIR
 DESCRIPTOR.message_types_by_name['CMsgIPAddress'] = _CMSGIPADDRESS
 DESCRIPTOR.message_types_by_name['CMsgIPAddressBucket'] = _CMSGIPADDRESSBUCKET
 DESCRIPTOR.message_types_by_name['CMsgProtoBufHeader'] = _CMSGPROTOBUFHEADER
@@ -1848,130 +2074,149 @@ DESCRIPTOR.message_types_by_name['CCommunity_ClanAnnouncementInfo'] = _CCOMMUNIT
 DESCRIPTOR.message_types_by_name['CClanEventData'] = _CCLANEVENTDATA
 DESCRIPTOR.message_types_by_name['CBilling_Address'] = _CBILLING_ADDRESS
 DESCRIPTOR.message_types_by_name['CPackageReservationStatus'] = _CPACKAGERESERVATIONSTATUS
+DESCRIPTOR.message_types_by_name['CMsgKeyValuePair'] = _CMSGKEYVALUEPAIR
+DESCRIPTOR.message_types_by_name['CMsgKeyValueSet'] = _CMSGKEYVALUESET
+DESCRIPTOR.enum_types_by_name['EBanContentCheckResult'] = _EBANCONTENTCHECKRESULT
 DESCRIPTOR.enum_types_by_name['EProtoClanEventType'] = _EPROTOCLANEVENTTYPE
 DESCRIPTOR.enum_types_by_name['PartnerEventNotificationType'] = _PARTNEREVENTNOTIFICATIONTYPE
 DESCRIPTOR.extensions_by_name['msgpool_soft_limit'] = msgpool_soft_limit
 DESCRIPTOR.extensions_by_name['msgpool_hard_limit'] = msgpool_hard_limit
 DESCRIPTOR.extensions_by_name['force_php_generation'] = force_php_generation
 DESCRIPTOR.extensions_by_name['php_output_always_number'] = php_output_always_number
+DESCRIPTOR.extensions_by_name['allow_field_named_steam_id'] = allow_field_named_steam_id
 _sym_db.RegisterFileDescriptor(DESCRIPTOR)
 
-CMsgIPAddress = _reflection.GeneratedProtocolMessageType('CMsgIPAddress', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGIPADDRESS,
-  __module__ = 'steammessages_base_pb2'
+CMsgIPAddress = _reflection.GeneratedProtocolMessageType('CMsgIPAddress', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGIPADDRESS,
+  '__module__' : 'steammessages_base_pb2'
   # @@protoc_insertion_point(class_scope:CMsgIPAddress)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgIPAddress)
 
-CMsgIPAddressBucket = _reflection.GeneratedProtocolMessageType('CMsgIPAddressBucket', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGIPADDRESSBUCKET,
-  __module__ = 'steammessages_base_pb2'
+CMsgIPAddressBucket = _reflection.GeneratedProtocolMessageType('CMsgIPAddressBucket', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGIPADDRESSBUCKET,
+  '__module__' : 'steammessages_base_pb2'
   # @@protoc_insertion_point(class_scope:CMsgIPAddressBucket)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgIPAddressBucket)
 
-CMsgProtoBufHeader = _reflection.GeneratedProtocolMessageType('CMsgProtoBufHeader', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGPROTOBUFHEADER,
-  __module__ = 'steammessages_base_pb2'
+CMsgProtoBufHeader = _reflection.GeneratedProtocolMessageType('CMsgProtoBufHeader', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGPROTOBUFHEADER,
+  '__module__' : 'steammessages_base_pb2'
   # @@protoc_insertion_point(class_scope:CMsgProtoBufHeader)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgProtoBufHeader)
 
-CMsgMulti = _reflection.GeneratedProtocolMessageType('CMsgMulti', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGMULTI,
-  __module__ = 'steammessages_base_pb2'
+CMsgMulti = _reflection.GeneratedProtocolMessageType('CMsgMulti', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGMULTI,
+  '__module__' : 'steammessages_base_pb2'
   # @@protoc_insertion_point(class_scope:CMsgMulti)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgMulti)
 
-CMsgProtobufWrapped = _reflection.GeneratedProtocolMessageType('CMsgProtobufWrapped', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGPROTOBUFWRAPPED,
-  __module__ = 'steammessages_base_pb2'
+CMsgProtobufWrapped = _reflection.GeneratedProtocolMessageType('CMsgProtobufWrapped', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGPROTOBUFWRAPPED,
+  '__module__' : 'steammessages_base_pb2'
   # @@protoc_insertion_point(class_scope:CMsgProtobufWrapped)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgProtobufWrapped)
 
-CMsgAuthTicket = _reflection.GeneratedProtocolMessageType('CMsgAuthTicket', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGAUTHTICKET,
-  __module__ = 'steammessages_base_pb2'
+CMsgAuthTicket = _reflection.GeneratedProtocolMessageType('CMsgAuthTicket', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGAUTHTICKET,
+  '__module__' : 'steammessages_base_pb2'
   # @@protoc_insertion_point(class_scope:CMsgAuthTicket)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgAuthTicket)
 
-CCDDBAppDetailCommon = _reflection.GeneratedProtocolMessageType('CCDDBAppDetailCommon', (_message.Message,), dict(
-  DESCRIPTOR = _CCDDBAPPDETAILCOMMON,
-  __module__ = 'steammessages_base_pb2'
+CCDDBAppDetailCommon = _reflection.GeneratedProtocolMessageType('CCDDBAppDetailCommon', (_message.Message,), {
+  'DESCRIPTOR' : _CCDDBAPPDETAILCOMMON,
+  '__module__' : 'steammessages_base_pb2'
   # @@protoc_insertion_point(class_scope:CCDDBAppDetailCommon)
-  ))
+  })
 _sym_db.RegisterMessage(CCDDBAppDetailCommon)
 
-CMsgAppRights = _reflection.GeneratedProtocolMessageType('CMsgAppRights', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGAPPRIGHTS,
-  __module__ = 'steammessages_base_pb2'
+CMsgAppRights = _reflection.GeneratedProtocolMessageType('CMsgAppRights', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGAPPRIGHTS,
+  '__module__' : 'steammessages_base_pb2'
   # @@protoc_insertion_point(class_scope:CMsgAppRights)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgAppRights)
 
-CCuratorPreferences = _reflection.GeneratedProtocolMessageType('CCuratorPreferences', (_message.Message,), dict(
-  DESCRIPTOR = _CCURATORPREFERENCES,
-  __module__ = 'steammessages_base_pb2'
+CCuratorPreferences = _reflection.GeneratedProtocolMessageType('CCuratorPreferences', (_message.Message,), {
+  'DESCRIPTOR' : _CCURATORPREFERENCES,
+  '__module__' : 'steammessages_base_pb2'
   # @@protoc_insertion_point(class_scope:CCuratorPreferences)
-  ))
+  })
 _sym_db.RegisterMessage(CCuratorPreferences)
 
-CLocalizationToken = _reflection.GeneratedProtocolMessageType('CLocalizationToken', (_message.Message,), dict(
-  DESCRIPTOR = _CLOCALIZATIONTOKEN,
-  __module__ = 'steammessages_base_pb2'
+CLocalizationToken = _reflection.GeneratedProtocolMessageType('CLocalizationToken', (_message.Message,), {
+  'DESCRIPTOR' : _CLOCALIZATIONTOKEN,
+  '__module__' : 'steammessages_base_pb2'
   # @@protoc_insertion_point(class_scope:CLocalizationToken)
-  ))
+  })
 _sym_db.RegisterMessage(CLocalizationToken)
 
-CClanEventUserNewsTuple = _reflection.GeneratedProtocolMessageType('CClanEventUserNewsTuple', (_message.Message,), dict(
-  DESCRIPTOR = _CCLANEVENTUSERNEWSTUPLE,
-  __module__ = 'steammessages_base_pb2'
+CClanEventUserNewsTuple = _reflection.GeneratedProtocolMessageType('CClanEventUserNewsTuple', (_message.Message,), {
+  'DESCRIPTOR' : _CCLANEVENTUSERNEWSTUPLE,
+  '__module__' : 'steammessages_base_pb2'
   # @@protoc_insertion_point(class_scope:CClanEventUserNewsTuple)
-  ))
+  })
 _sym_db.RegisterMessage(CClanEventUserNewsTuple)
 
-CClanMatchEventByRange = _reflection.GeneratedProtocolMessageType('CClanMatchEventByRange', (_message.Message,), dict(
-  DESCRIPTOR = _CCLANMATCHEVENTBYRANGE,
-  __module__ = 'steammessages_base_pb2'
+CClanMatchEventByRange = _reflection.GeneratedProtocolMessageType('CClanMatchEventByRange', (_message.Message,), {
+  'DESCRIPTOR' : _CCLANMATCHEVENTBYRANGE,
+  '__module__' : 'steammessages_base_pb2'
   # @@protoc_insertion_point(class_scope:CClanMatchEventByRange)
-  ))
+  })
 _sym_db.RegisterMessage(CClanMatchEventByRange)
 
-CCommunity_ClanAnnouncementInfo = _reflection.GeneratedProtocolMessageType('CCommunity_ClanAnnouncementInfo', (_message.Message,), dict(
-  DESCRIPTOR = _CCOMMUNITY_CLANANNOUNCEMENTINFO,
-  __module__ = 'steammessages_base_pb2'
+CCommunity_ClanAnnouncementInfo = _reflection.GeneratedProtocolMessageType('CCommunity_ClanAnnouncementInfo', (_message.Message,), {
+  'DESCRIPTOR' : _CCOMMUNITY_CLANANNOUNCEMENTINFO,
+  '__module__' : 'steammessages_base_pb2'
   # @@protoc_insertion_point(class_scope:CCommunity_ClanAnnouncementInfo)
-  ))
+  })
 _sym_db.RegisterMessage(CCommunity_ClanAnnouncementInfo)
 
-CClanEventData = _reflection.GeneratedProtocolMessageType('CClanEventData', (_message.Message,), dict(
-  DESCRIPTOR = _CCLANEVENTDATA,
-  __module__ = 'steammessages_base_pb2'
+CClanEventData = _reflection.GeneratedProtocolMessageType('CClanEventData', (_message.Message,), {
+  'DESCRIPTOR' : _CCLANEVENTDATA,
+  '__module__' : 'steammessages_base_pb2'
   # @@protoc_insertion_point(class_scope:CClanEventData)
-  ))
+  })
 _sym_db.RegisterMessage(CClanEventData)
 
-CBilling_Address = _reflection.GeneratedProtocolMessageType('CBilling_Address', (_message.Message,), dict(
-  DESCRIPTOR = _CBILLING_ADDRESS,
-  __module__ = 'steammessages_base_pb2'
+CBilling_Address = _reflection.GeneratedProtocolMessageType('CBilling_Address', (_message.Message,), {
+  'DESCRIPTOR' : _CBILLING_ADDRESS,
+  '__module__' : 'steammessages_base_pb2'
   # @@protoc_insertion_point(class_scope:CBilling_Address)
-  ))
+  })
 _sym_db.RegisterMessage(CBilling_Address)
 
-CPackageReservationStatus = _reflection.GeneratedProtocolMessageType('CPackageReservationStatus', (_message.Message,), dict(
-  DESCRIPTOR = _CPACKAGERESERVATIONSTATUS,
-  __module__ = 'steammessages_base_pb2'
+CPackageReservationStatus = _reflection.GeneratedProtocolMessageType('CPackageReservationStatus', (_message.Message,), {
+  'DESCRIPTOR' : _CPACKAGERESERVATIONSTATUS,
+  '__module__' : 'steammessages_base_pb2'
   # @@protoc_insertion_point(class_scope:CPackageReservationStatus)
-  ))
+  })
 _sym_db.RegisterMessage(CPackageReservationStatus)
 
+CMsgKeyValuePair = _reflection.GeneratedProtocolMessageType('CMsgKeyValuePair', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGKEYVALUEPAIR,
+  '__module__' : 'steammessages_base_pb2'
+  # @@protoc_insertion_point(class_scope:CMsgKeyValuePair)
+  })
+_sym_db.RegisterMessage(CMsgKeyValuePair)
+
+CMsgKeyValueSet = _reflection.GeneratedProtocolMessageType('CMsgKeyValueSet', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGKEYVALUESET,
+  '__module__' : 'steammessages_base_pb2'
+  # @@protoc_insertion_point(class_scope:CMsgKeyValueSet)
+  })
+_sym_db.RegisterMessage(CMsgKeyValueSet)
+
 google_dot_protobuf_dot_descriptor__pb2.MessageOptions.RegisterExtension(msgpool_soft_limit)
 google_dot_protobuf_dot_descriptor__pb2.MessageOptions.RegisterExtension(msgpool_hard_limit)
 google_dot_protobuf_dot_descriptor__pb2.FileOptions.RegisterExtension(force_php_generation)
 google_dot_protobuf_dot_descriptor__pb2.FieldOptions.RegisterExtension(php_output_always_number)
+google_dot_protobuf_dot_descriptor__pb2.FieldOptions.RegisterExtension(allow_field_named_steam_id)
 
 DESCRIPTOR._options = None
 # @@protoc_insertion_point(module_scope)
diff --git a/steam/protobufs/steammessages_broadcast_pb2.py b/steam/protobufs/steammessages_broadcast_pb2.py
index 8a7d9ec..1258ac7 100644
--- a/steam/protobufs/steammessages_broadcast_pb2.py
+++ b/steam/protobufs/steammessages_broadcast_pb2.py
@@ -1,9 +1,7 @@
 # -*- coding: utf-8 -*-
 # Generated by the protocol buffer compiler.  DO NOT EDIT!
 # source: steammessages_broadcast.proto
-
-import sys
-_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1'))
+"""Generated protocol buffer code."""
 from google.protobuf.internal import enum_type_wrapper
 from google.protobuf import descriptor as _descriptor
 from google.protobuf import message as _message
@@ -16,6 +14,7 @@ from google.protobuf import service_reflection
 _sym_db = _symbol_database.Default()
 
 
+import steam.protobufs.steammessages_base_pb2 as steammessages__base__pb2
 import steam.protobufs.steammessages_unified_base_pb2 as steammessages__unified__base__pb2
 
 
@@ -23,78 +22,94 @@ DESCRIPTOR = _descriptor.FileDescriptor(
   name='steammessages_broadcast.proto',
   package='',
   syntax='proto2',
-  serialized_options=_b('\220\001\001'),
-  serialized_pb=_b('\n\x1dsteammessages_broadcast.proto\x1a steammessages_unified_base.proto\"\xf1\x01\n(CBroadcast_BeginBroadcastSession_Request\x12\x12\n\npermission\x18\x01 \x01(\x05\x12\x0e\n\x06gameid\x18\x02 \x01(\x04\x12\x1a\n\x12\x63lient_instance_id\x18\x03 \x01(\x04\x12\r\n\x05title\x18\x04 \x01(\t\x12\x0e\n\x06\x63\x65llid\x18\x05 \x01(\r\x12\x12\n\nrtmp_token\x18\x06 \x01(\x04\x12\x18\n\x10thumbnail_upload\x18\x07 \x01(\x08\x12\x13\n\x0b\x63lient_beta\x18\x08 \x01(\t\x12\r\n\x05sysid\x18\t \x01(\r\x12\x14\n\x0c\x61llow_webrtc\x18\n \x01(\x08\"\x9c\x03\n)CBroadcast_BeginBroadcastSession_Response\x12\x14\n\x0c\x62roadcast_id\x18\x01 \x01(\x06\x12P\n\x18thumbnail_upload_address\x18\x02 \x01(\tB.\x82\xb5\x18*Http address to upload the thumbnail data.\x12\x65\n\x16thumbnail_upload_token\x18\x03 \x01(\tBE\x82\xb5\x18\x41token to authorize as broadcaster to upload content to the relay.\x12K\n\x1athumbnail_interval_seconds\x18\x04 \x01(\rB\'\x82\xb5\x18#how many seconds between thumbnails\x12S\n\x1aheartbeat_interval_seconds\x18\x05 \x01(\rB/\x82\xb5\x18+how many seconds between session heartbeats\">\n&CBroadcast_EndBroadcastSession_Request\x12\x14\n\x0c\x62roadcast_id\x18\x01 \x01(\x06\")\n\'CBroadcast_EndBroadcastSession_Response\"\x88\x02\n\'CBroadcast_StartBroadcastUpload_Request\x12\x14\n\x0c\x62roadcast_id\x18\x01 \x01(\x06\x12\x0e\n\x06\x63\x65llid\x18\x02 \x01(\r\x12\x0f\n\x07\x61s_rtmp\x18\x03 \x01(\x08\x12\x15\n\rdelay_seconds\x18\x04 \x01(\r\x12R\n\nrtmp_token\x18\x05 \x01(\x04:\x01\x30\x42;\x82\xb5\x18\x37Only set during RTMP uploads; secret key from the user.\x12\x19\n\x11upload_ip_address\x18\x06 \x01(\r\x12\x11\n\tis_replay\x18\x07 \x01(\x08\x12\r\n\x05sysid\x18\x08 \x01(\r\"\xa2\x01\n(CBroadcast_StartBroadcastUpload_Response\x12\x14\n\x0cupload_token\x18\x01 \x01(\t\x12\x16\n\x0eupload_address\x18\x02 \x01(\t\x12\x1b\n\x13\x62roadcast_upload_id\x18\x03 \x01(\x06\x12\x15\n\renable_replay\x18\x06 \x01(\x08\x12\x14\n\x0chttp_address\x18\x07 \x01(\t\"g\n1CBroadcast_NotifyBroadcastUploadStop_Notification\x12\x1b\n\x13\x62roadcast_upload_id\x18\x01 \x01(\x06\x12\x15\n\rupload_result\x18\x02 \x01(\r\"\x89\x03\n!CBroadcast_WatchBroadcast_Request\x12)\n\x07steamid\x18\x01 \x01(\x06\x42\x18\x82\xb5\x18\x14\x62roadcaster steamID.\x12X\n\x15\x65xisting_broadcast_id\x18\x02 \x01(\x06\x42\x39\x82\xb5\x18\x35\x62roadcast session ID (optional, rejoin if specified).\x12\x62\n\x0cviewer_token\x18\x03 \x01(\x06\x42L\x82\xb5\x18Hviewer token received from last WatchRequest call, from browser storage.\x12\x13\n\x0b\x63lient_cell\x18\x05 \x01(\r\x12S\n\x0ewatch_location\x18\x06 \x01(\x0e\x32\x18.EBroadcastWatchLocation:!k_EBroadcastWatchLocation_Invalid\x12\x11\n\tis_webrtc\x18\x07 \x01(\x08\"\xfa\x07\n\"CBroadcast_WatchBroadcast_Response\x12[\n\x08response\x18\x01 \x01(\x0e\x32\x32.CBroadcast_WatchBroadcast_Response.EWatchResponse:\x15k_EWatchResponseReady\x12\x0f\n\x07mpd_url\x18\x02 \x01(\t\x12\x14\n\x0c\x62roadcast_id\x18\x03 \x01(\x06\x12\x0e\n\x06gameid\x18\x04 \x01(\x04\x12\r\n\x05title\x18\x05 \x01(\t\x12\x13\n\x0bnum_viewers\x18\x06 \x01(\r\x12\x12\n\npermission\x18\x07 \x01(\x05\x12\x0f\n\x07is_rtmp\x18\x08 \x01(\x08\x12\x15\n\rseconds_delay\x18\t \x01(\x05\x12\x14\n\x0cviewer_token\x18\n \x01(\x06\x12\x1b\n\x13hls_m3u8_master_url\x18\x0b \x01(\t\x12\x1a\n\x12heartbeat_interval\x18\x0c \x01(\x05\x12\x15\n\rthumbnail_url\x18\r \x01(\t\x12\x11\n\tis_webrtc\x18\x0e \x01(\x08\x12\x19\n\x11webrtc_session_id\x18\x0f \x01(\x06\x12\x18\n\x10webrtc_offer_sdp\x18\x10 \x01(\t\x12\x1a\n\x12webrtc_turn_server\x18\x11 \x01(\t\x12\x11\n\tis_replay\x18\x12 \x01(\x08\x12\x10\n\x08\x64uration\x18\x13 \x01(\x05\x12\x1f\n\x17\x63\x64n_auth_url_parameters\x18\x14 \x01(\t\"\xcf\x03\n\x0e\x45WatchResponse\x12\x19\n\x15k_EWatchResponseReady\x10\x01\x12 \n\x1ck_EWatchResponseNotAvailable\x10\x02\x12&\n\"k_EWatchResponseWaitingForApproval\x10\x03\x12#\n\x1fk_EWatchResponseWaitingForStart\x10\x04\x12\"\n\x1ek_EWatchResponseInvalidSession\x10\x05\x12%\n!k_EWatchResponseTooManyBroadcasts\x10\x06\x12\'\n#k_EWatchResponseWaitingForReconnect\x10\x07\x12&\n\"k_EWatchResponseSystemNotSupported\x10\x08\x12\"\n\x1ek_EWatchResponseUserRestricted\x10\t\x12#\n\x1fk_EWatchResponseClientOutOfDate\x10\n\x12%\n!k_EWatchResponsePoorUploadQuality\x10\x0b\x12\'\n#k_EWatchResponseMissingSubscription\x10\x0c\"\xae\x02\n*CBroadcast_HeartbeatBroadcast_Notification\x12)\n\x07steamid\x18\x01 \x01(\x06\x42\x18\x82\xb5\x18\x14\x62roadcaster steamID.\x12/\n\x0c\x62roadcast_id\x18\x02 \x01(\x06\x42\x19\x82\xb5\x18\x15\x62roadcast session ID.\x12\x62\n\x0cviewer_token\x18\x03 \x01(\x06\x42L\x82\xb5\x18Hviewer token received from last WatchRequest call, from browser storage.\x12@\n\x0erepresentation\x18\x04 \x01(\rB(\x82\xb5\x18$video stream representation watching\"\xef\x01\n-CBroadcast_StopWatchingBroadcast_Notification\x12)\n\x07steamid\x18\x01 \x01(\x06\x42\x18\x82\xb5\x18\x14\x62roadcaster steamID.\x12/\n\x0c\x62roadcast_id\x18\x02 \x01(\x06\x42\x19\x82\xb5\x18\x15\x62roadcast session ID.\x12\x62\n\x0cviewer_token\x18\x03 \x01(\x06\x42L\x82\xb5\x18Hviewer token received from last WatchRequest call, from browser storage.\"\xb0\x01\n%CBroadcast_GetBroadcastStatus_Request\x12)\n\x07steamid\x18\x01 \x01(\x06\x42\x18\x82\xb5\x18\x14\x62roadcaster steamID.\x12\\\n\x0c\x62roadcast_id\x18\x02 \x01(\x06\x42\x46\x82\xb5\x18\x42\x62roadcast session ID to proof that user is allowed to see details.\"\xd1\x02\n&CBroadcast_GetBroadcastStatus_Response\x12\x0e\n\x06gameid\x18\x01 \x01(\x04\x12\r\n\x05title\x18\x02 \x01(\t\x12\x13\n\x0bnum_viewers\x18\x03 \x01(\r\x12\x12\n\npermission\x18\x04 \x01(\x05\x12\x0f\n\x07is_rtmp\x18\x05 \x01(\x08\x12\x15\n\rseconds_delay\x18\x06 \x01(\x05\x12\x14\n\x0cis_publisher\x18\x07 \x01(\x08\x12\x15\n\rthumbnail_url\x18\x08 \x01(\t\x12\x17\n\x0fupdate_interval\x18\t \x01(\x05\x12\x14\n\x0cis_uploading\x18\n \x01(\x08\x12\x10\n\x08\x64uration\x18\x0b \x01(\r\x12\x11\n\tis_replay\x18\x0c \x01(\x08\x12\x18\n\x10is_capturing_vod\x18\r \x01(\x08\x12\x1c\n\x14is_store_whitelisted\x18\x0e \x01(\x08\"Q\n(CBroadcast_GetBroadcastThumbnail_Request\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12\x14\n\x0c\x62roadcast_id\x18\x02 \x01(\x06\"\x82\x01\n)CBroadcast_GetBroadcastThumbnail_Response\x12\x15\n\rthumbnail_url\x18\x01 \x01(\t\x12\x17\n\x0fupdate_interval\x18\x02 \x01(\x05\x12\x13\n\x0bnum_viewers\x18\x03 \x01(\x05\x12\x10\n\x08\x64uration\x18\x04 \x01(\x05\"R\n$CBroadcast_InviteToBroadcast_Request\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12\x19\n\x11\x61pproval_response\x18\x02 \x01(\x08\"8\n%CBroadcast_InviteToBroadcast_Response\x12\x0f\n\x07success\x18\x01 \x01(\x08\"|\n-CBroadcast_SendBroadcastStateToServer_Request\x12\x12\n\npermission\x18\x01 \x01(\x05\x12\x0e\n\x06gameid\x18\x02 \x01(\x04\x12\r\n\x05title\x18\x03 \x01(\t\x12\x18\n\x10game_data_config\x18\x04 \x01(\t\"0\n.CBroadcast_SendBroadcastStateToServer_Response\"O\n7CBroadcast_NotifyBroadcastSessionHeartbeat_Notification\x12\x14\n\x0c\x62roadcast_id\x18\x01 \x01(\x06\"x\n\'CBroadcast_GetBroadcastChatInfo_Request\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12\x14\n\x0c\x62roadcast_id\x18\x02 \x01(\x06\x12\x11\n\tclient_ip\x18\x03 \x01(\r\x12\x13\n\x0b\x63lient_cell\x18\x04 \x01(\r\"o\n(CBroadcast_GetBroadcastChatInfo_Response\x12\x0f\n\x07\x63hat_id\x18\x01 \x01(\x06\x12\x19\n\x11view_url_template\x18\x03 \x01(\t\x12\x17\n\x0f\x66lair_group_ids\x18\x04 \x03(\r\"\xea\x01\n\"CBroadcast_PostChatMessage_Request\x12\x0f\n\x07\x63hat_id\x18\x01 \x01(\x06\x12\x0f\n\x07message\x18\x02 \x01(\t\x12\x13\n\x0binstance_id\x18\x03 \x01(\r\x12V\n\x08language\x18\x04 \x01(\r:\x01\x30\x42\x41\x82\xb5\x18=ELanguage of the user posting the message, default is english\x12\x35\n\x0c\x63ountry_code\x18\x05 \x01(\tB\x1f\x82\xb5\x18\x1bThe two letter country code\"{\n#CBroadcast_PostChatMessage_Response\x12\x14\n\x0cpersona_name\x18\x01 \x01(\t\x12\x0f\n\x07in_game\x18\x02 \x01(\x08\x12\x0e\n\x06result\x18\x03 \x01(\x05\x12\x1d\n\x15\x63ooldown_time_seconds\x18\x04 \x01(\x05\"K\n)CBroadcast_UpdateChatMessageFlair_Request\x12\x0f\n\x07\x63hat_id\x18\x01 \x01(\x06\x12\r\n\x05\x66lair\x18\x02 \x01(\t\"\\\n*CBroadcast_UpdateChatMessageFlair_Response\x12\x0e\n\x06result\x18\x01 \x01(\x05\x12\x0f\n\x07\x63hat_id\x18\x02 \x01(\x06\x12\r\n\x05\x66lair\x18\x03 \x01(\t\"`\n(CBroadcast_MuteBroadcastChatUser_Request\x12\x0f\n\x07\x63hat_id\x18\x01 \x01(\x06\x12\x14\n\x0cuser_steamid\x18\x02 \x01(\x06\x12\r\n\x05muted\x18\x03 \x01(\x08\"+\n)CBroadcast_MuteBroadcastChatUser_Response\"N\n%CBroadcast_RemoveUserChatText_Request\x12\x0f\n\x07\x63hat_id\x18\x01 \x01(\x06\x12\x14\n\x0cuser_steamid\x18\x02 \x01(\x06\"(\n&CBroadcast_RemoveUserChatText_Response\"U\n,CBroadcast_GetBroadcastChatUserNames_Request\x12\x0f\n\x07\x63hat_id\x18\x01 \x01(\x06\x12\x14\n\x0cuser_steamid\x18\x02 \x03(\x06\"\xb4\x01\n-CBroadcast_GetBroadcastChatUserNames_Response\x12Q\n\rpersona_names\x18\x01 \x03(\x0b\x32:.CBroadcast_GetBroadcastChatUserNames_Response.PersonaName\x1a\x30\n\x0bPersonaName\x12\x10\n\x08steam_id\x18\x01 \x01(\x06\x12\x0f\n\x07persona\x18\x02 \x01(\t\"\x99\x01\n!CBroadcast_StartBuildClip_Request\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12\x1c\n\x14\x62roadcast_session_id\x18\x02 \x01(\x06\x12\x15\n\rfirst_segment\x18\x03 \x01(\x05\x12\x14\n\x0cnum_segments\x18\x04 \x01(\x05\x12\x18\n\x10\x63lip_description\x18\x05 \x01(\t\"?\n\"CBroadcast_StartBuildClip_Response\x12\x19\n\x11\x62roadcast_clip_id\x18\x01 \x01(\x06\"B\n%CBroadcast_GetBuildClipStatus_Request\x12\x19\n\x11\x62roadcast_clip_id\x18\x01 \x01(\x06\"(\n&CBroadcast_GetBuildClipStatus_Response\"\xc2\x01\n!CBroadcast_SetClipDetails_Request\x12&\n\x11\x62roadcast_clip_id\x18\x01 \x01(\x04\x42\x0b\x82\xb5\x18\x07\x43lip ID\x12.\n\nstart_time\x18\x02 \x01(\rB\x1a\x82\xb5\x18\x16start time of the clip\x12*\n\x08\x65nd_time\x18\x03 \x01(\rB\x18\x82\xb5\x18\x14\x65nd time of the clip\x12\x19\n\x11video_description\x18\x04 \x01(\t\"$\n\"CBroadcast_SetClipDetails_Response\"h\n!CBroadcast_GetClipDetails_Request\x12\x43\n\x11\x62roadcast_clip_id\x18\x01 \x01(\x04\x42(\x82\xb5\x18$List of clip IDs we want details for\"\xcf\x04\n\"CBroadcast_GetClipDetails_Response\x12\x30\n\x11\x62roadcast_clip_id\x18\x01 \x01(\x04\x42\x15\x82\xb5\x18\x11\x62roadcast clip ID\x12.\n\x08video_id\x18\x02 \x01(\x04\x42\x1c\x82\xb5\x18\x18matching unique video ID\x12,\n\nchannel_id\x18\x03 \x01(\x04\x42\x18\x82\xb5\x18\x14\x42roadcast Channel ID\x12\x30\n\x06\x61pp_id\x18\x04 \x01(\rB \x82\xb5\x18\x1c\x41pp ID stream is tagged with\x12<\n\x15\x61\x63\x63ountid_broadcaster\x18\x05 \x01(\rB\x1d\x82\xb5\x18\x19\x41\x63\x63ount ID of broadcaster\x12\x39\n\x13\x61\x63\x63ountid_clipmaker\x18\x06 \x01(\rB\x1c\x82\xb5\x18\x18\x41\x63\x63ount ID of clip-maker\x12\x45\n\x11video_description\x18\x07 \x01(\tB*\x82\xb5\x18&Short name or description of this clip\x12;\n\nstart_time\x18\x08 \x01(\rB\'\x82\xb5\x18#Wall time clip was broadcasted live\x12\x36\n\x13length_milliseconds\x18\t \x01(\rB\x19\x82\xb5\x18\x15length of video in MS\x12\x32\n\x0ethumbnail_path\x18\n \x01(\tB\x1a\x82\xb5\x18\x16Path for thumbnail URL\"\xc3\x04\n\x1e\x43\x42roadcast_SetRTMPInfo_Request\x12\x1c\n\x14\x62roadcast_permission\x18\x01 \x01(\x05\x12\x14\n\x0cupdate_token\x18\x02 \x01(\x08\x12\x17\n\x0f\x62roadcast_delay\x18\x03 \x01(\x05\x12\x0e\n\x06\x61pp_id\x18\x04 \x01(\r\x12\x17\n\x0frequired_app_id\x18\x05 \x01(\r\x12\x9c\x01\n\x19\x62roadcast_chat_permission\x18\x06 \x01(\x0e\x32\x19.EBroadcastChatPermission: k_EBroadcastChatPermissionPublicB<\x82\xb5\x18\x38Who is permitted to send a chat message during broadcast\x12N\n\x10\x62roadcast_buffer\x18\x07 \x01(\x05\x42\x34\x82\xb5\x18\x30Previous seconds we keep of the stream available\x12>\n\x07steamid\x18\x08 \x01(\x06\x42-\x82\xb5\x18)broadcaster steamID if not logged-in user\x12\x43\n\x0f\x63hat_rate_limit\x18\t \x01(\rB*\x82\xb5\x18&Seconds required between chat messages\x12\x37\n\renable_replay\x18\n \x01(\x08\x42 \x82\xb5\x18\x1c\x45nable replay of last upload\"!\n\x1f\x43\x42roadcast_SetRTMPInfo_Response\"l\n\x1e\x43\x42roadcast_GetRTMPInfo_Request\x12\n\n\x02ip\x18\x01 \x01(\r\x12>\n\x07steamid\x18\x02 \x01(\x06\x42-\x82\xb5\x18)broadcaster steamID if not logged-in user\"\xb0\x04\n\x1f\x43\x42roadcast_GetRTMPInfo_Response\x12\x1c\n\x14\x62roadcast_permission\x18\x01 \x01(\x05\x12\x11\n\trtmp_host\x18\x02 \x01(\t\x12\x12\n\nrtmp_token\x18\x03 \x01(\t\x12\x17\n\x0f\x62roadcast_delay\x18\x04 \x01(\x05\x12\x0e\n\x06\x61pp_id\x18\x05 \x01(\r\x12\x17\n\x0frequired_app_id\x18\x06 \x01(\r\x12\x9c\x01\n\x19\x62roadcast_chat_permission\x18\x07 \x01(\x0e\x32\x19.EBroadcastChatPermission: k_EBroadcastChatPermissionPublicB<\x82\xb5\x18\x38Who is permitted to send a chat message during broadcast\x12?\n\x10\x62roadcast_buffer\x18\x08 \x01(\x05\x42%\x82\xb5\x18!Seconds we keep streams available\x12(\n\x07steamid\x18\t \x01(\x06\x42\x17\x82\xb5\x18\x13\x62roadcaster steamID\x12\x43\n\x0f\x63hat_rate_limit\x18\n \x01(\rB*\x82\xb5\x18&Seconds required between chat messages\x12\x37\n\renable_replay\x18\x0b \x01(\x08\x42 \x82\xb5\x18\x1c\x45nable replay of last upload\"a\n,CBroadcast_WebRTCHaveTURNServer_Notification\x12\x1c\n\x14\x62roadcast_session_id\x18\x01 \x01(\x06\x12\x13\n\x0bturn_server\x18\x02 \x01(\t\"\x9a\x01\n$CBroadcast_WebRTCStartResult_Request\x12\x19\n\x11webrtc_session_id\x18\x01 \x01(\x06\x12\x0f\n\x07started\x18\x02 \x01(\x08\x12\r\n\x05offer\x18\x03 \x01(\t\x12\x14\n\x0cresolution_x\x18\x04 \x01(\r\x12\x14\n\x0cresolution_y\x18\x05 \x01(\r\x12\x0b\n\x03\x66ps\x18\x06 \x01(\r\"\'\n%CBroadcast_WebRTCStartResult_Response\"=\n CBroadcast_WebRTCStopped_Request\x12\x19\n\x11webrtc_session_id\x18\x01 \x01(\x06\"#\n!CBroadcast_WebRTCStopped_Response\"l\n\"CBroadcast_WebRTCSetAnswer_Request\x12\x1b\n\x13\x62roadcaster_steamid\x18\x01 \x01(\x06\x12\x19\n\x11webrtc_session_id\x18\x02 \x01(\x06\x12\x0e\n\x06\x61nswer\x18\x03 \x01(\t\"%\n#CBroadcast_WebRTCSetAnswer_Response\";\n)CBroadcast_WebRTCLookupTURNServer_Request\x12\x0e\n\x06\x63\x65llid\x18\x01 \x01(\r\"A\n*CBroadcast_WebRTCLookupTURNServer_Response\x12\x13\n\x0bturn_server\x18\x01 \x01(\t\"Z\n\x1b\x43\x42roadcast_WebRTC_Candidate\x12\x0f\n\x07sdp_mid\x18\x01 \x01(\t\x12\x17\n\x0fsdp_mline_index\x18\x02 \x01(\x05\x12\x11\n\tcandidate\x18\x03 \x01(\t\"w\n)CBroadcast_WebRTCAddHostCandidate_Request\x12\x19\n\x11webrtc_session_id\x18\x01 \x01(\x06\x12/\n\tcandidate\x18\x02 \x01(\x0b\x32\x1c.CBroadcast_WebRTC_Candidate\",\n*CBroadcast_WebRTCAddHostCandidate_Response\"\x96\x01\n+CBroadcast_WebRTCAddViewerCandidate_Request\x12\x1b\n\x13\x62roadcaster_steamid\x18\x01 \x01(\x06\x12\x19\n\x11webrtc_session_id\x18\x02 \x01(\x06\x12/\n\tcandidate\x18\x03 \x01(\x0b\x32\x1c.CBroadcast_WebRTC_Candidate\".\n,CBroadcast_WebRTCAddViewerCandidate_Response\"\x82\x01\n*CBroadcast_WebRTCGetHostCandidates_Request\x12\x1b\n\x13\x62roadcaster_steamid\x18\x01 \x01(\x06\x12\x19\n\x11webrtc_session_id\x18\x02 \x01(\x06\x12\x1c\n\x14\x63\x61ndidate_generation\x18\x03 \x01(\r\"}\n+CBroadcast_WebRTCGetHostCandidates_Response\x12\x1c\n\x14\x63\x61ndidate_generation\x18\x01 \x01(\r\x12\x30\n\ncandidates\x18\x02 \x03(\x0b\x32\x1c.CBroadcast_WebRTC_Candidate\"\xa4\x03\n*CBroadcast_GetBroadcastUploadStats_Request\x12:\n\trow_limit\x18\x01 \x01(\r:\x03\x31\x30\x30\x42\"\x82\xb5\x18\x1eHow many at maximum to return.\x12%\n\nstart_time\x18\x02 \x01(\r:\x01\x30\x42\x0e\x82\xb5\x18\nStart time\x12P\n\tupload_id\x18\x03 \x01(\x04\x42=\x82\xb5\x18\x39Optional relay upload ID - not compatible with session_id\x12i\n\x07steamid\x18\x04 \x01(\x06\x42X\x82\xb5\x18TOptional the steamid whose stats you want, otherwise the user logged in - admin only\x12V\n\nsession_id\x18\x05 \x01(\x04\x42\x42\x82\xb5\x18>Optional broadcast session ID - not compatiable with upload_id\"\x89\t\n+CBroadcast_GetBroadcastUploadStats_Response\x12N\n\x0cupload_stats\x18\x01 \x03(\x0b\x32\x38.CBroadcast_GetBroadcastUploadStats_Response.UploadStats\x1a\x89\x08\n\x0bUploadStats\x12\x1b\n\rupload_result\x18\x01 \x01(\rB\x04\x82\xb5\x18\x00\x12\x37\n\x0ctime_stopped\x18\x02 \x01(\rB!\x82\xb5\x18\x1dtime broadcast upload stopped\x12\x36\n\x10seconds_uploaded\x18\x03 \x01(\rB\x1c\x82\xb5\x18\x18seconds of vido uploaded\x12/\n\x0bmax_viewers\x18\x04 \x01(\rB\x1a\x82\xb5\x18\x16max concurrent viewers\x12.\n\x0cresolution_x\x18\x05 \x01(\rB\x18\x82\xb5\x18\x14horizontal resultion\x12,\n\x0cresolution_y\x18\x06 \x01(\rB\x16\x82\xb5\x18\x12vertical resultion\x12\x1b\n\ravg_bandwidth\x18\x07 \x01(\rB\x04\x82\xb5\x18\x00\x12;\n\x0btotal_bytes\x18\x08 \x01(\x04\x42&\x82\xb5\x18\"total byte uploaded by broadcaster\x12$\n\x06\x61pp_id\x18\t \x01(\rB\x14\x82\xb5\x18\x10game broadcasted\x12;\n\x14total_unique_viewers\x18\n \x01(\rB\x1d\x82\xb5\x18\x19total unique viewers seen\x12Q\n\x15total_seconds_watched\x18\x0b \x01(\x04\x42\x32\x82\xb5\x18.total number of seconds watched by all viewers\x12\x37\n\x0ctime_started\x18\x0c \x01(\rB!\x82\xb5\x18\x1dtime broadcast upload started\x12\x30\n\tupload_id\x18\r \x01(\x04\x42\x1d\x82\xb5\x18\x19\x62roadcast relay upload id\x12\x33\n\rlocal_address\x18\x0e \x01(\tB\x1c\x82\xb5\x18\x18upload to server address\x12\x36\n\x0eremote_address\x18\x0f \x01(\tB\x1e\x82\xb5\x18\x1aupload from client address\x12\x30\n\x11\x66rames_per_second\x18\x10 \x01(\rB\x15\x82\xb5\x18\x11\x66rames per second\x12?\n\x13num_representations\x18\x11 \x01(\rB\"\x82\xb5\x18\x1enumber of video represetations\x12\x1f\n\x08\x61pp_name\x18\x12 \x01(\tB\r\x82\xb5\x18\tgame name\x12\x33\n\tis_replay\x18\x13 \x01(\x08\x42 \x82\xb5\x18\x1creplay of previous recording\x12,\n\nsession_id\x18\x14 \x01(\x04\x42\x18\x82\xb5\x18\x14\x62roadcast session id\"\xbd\x01\n*CBroadcast_GetBroadcastViewerStats_Request\x12\x30\n\tupload_id\x18\x01 \x01(\x04\x42\x1d\x82\xb5\x18\x19Get stats for this stream\x12]\n\x07steamid\x18\x02 \x01(\x06\x42L\x82\xb5\x18HOptional: The steamid of the broadcast whose details you are requesting.\"\x98\x03\n+CBroadcast_GetBroadcastViewerStats_Response\x12N\n\x0cviewer_stats\x18\x01 \x03(\x0b\x32\x38.CBroadcast_GetBroadcastViewerStats_Response.ViewerStats\x12P\n\rcountry_stats\x18\x02 \x03(\x0b\x32\x39.CBroadcast_GetBroadcastViewerStats_Response.CountryStats\x1a\x63\n\x0bViewerStats\x12 \n\x04time\x18\x01 \x01(\rB\x12\x82\xb5\x18\x0etime of record\x12\x32\n\x0bnum_viewers\x18\x02 \x01(\rB\x1d\x82\xb5\x18\x19\x63urrent number of viewers\x1a\x62\n\x0c\x43ountryStats\x12&\n\x0c\x63ountry_code\x18\x01 \x01(\tB\x10\x82\xb5\x18\x0c\x63ountry code\x12*\n\x0bnum_viewers\x18\x02 \x01(\rB\x15\x82\xb5\x18\x11number of viewers\"\xf8\x01\n,CBroadcast_BroadcastViewerState_Notification\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12\x61\n\x05state\x18\x02 \x01(\x0e\x32:.CBroadcast_BroadcastViewerState_Notification.EViewerState:\x16k_EViewerNeedsApproval\"T\n\x0c\x45ViewerState\x12\x1a\n\x16k_EViewerNeedsApproval\x10\x01\x12\x15\n\x11k_EViewerWatching\x10\x02\x12\x11\n\rk_EViewerLeft\x10\x03\"F\n.CBroadcast_WaitingBroadcastViewer_Notification\x12\x14\n\x0c\x62roadcast_id\x18\x01 \x01(\x06\"\x8d\x02\n.CBroadcast_BroadcastUploadStarted_Notification\x12\x14\n\x0c\x62roadcast_id\x18\x01 \x01(\x06\x12\x14\n\x0cupload_token\x18\x02 \x01(\t\x12\x16\n\x0eupload_address\x18\x03 \x01(\t\x12\x14\n\x0chttp_address\x18\x04 \x01(\t\x12\x1b\n\x13\x62roadcast_upload_id\x18\x05 \x01(\x06\x12S\n\x1aheartbeat_interval_seconds\x18\x06 \x01(\rB/\x82\xb5\x18+how many seconds between session heartbeats\x12\x0f\n\x07is_rtmp\x18\x07 \x01(\x08\"\x95\x01\n+CBroadcast_StopBroadcastUpload_Notification\x12\x14\n\x0c\x62roadcast_id\x18\x01 \x01(\x06\x12\x1a\n\x12\x62roadcast_relay_id\x18\x02 \x01(\x06\x12\x15\n\rupload_result\x18\x03 \x01(\r\x12\x1d\n\x15too_many_poor_uploads\x18\x04 \x01(\x08\"=\n%CBroadcast_SessionClosed_Notification\x12\x14\n\x0c\x62roadcast_id\x18\x01 \x01(\x06\"L\n-CBroadcast_ViewerBroadcastInvite_Notification\x12\x1b\n\x13\x62roadcaster_steamid\x18\x01 \x01(\x06\"T\n\'CBroadcast_BroadcastStatus_Notification\x12\x14\n\x0c\x62roadcast_id\x18\x01 \x01(\x06\x12\x13\n\x0bnum_viewers\x18\x02 \x01(\x05\"\x8e\x01\n,CBroadcast_BroadcastChannelLive_Notification\x12\x1c\n\x14\x62roadcast_channel_id\x18\x01 \x01(\x06\x12\x1e\n\x16\x62roadcast_channel_name\x18\x02 \x01(\t\x12 \n\x18\x62roadcast_channel_avatar\x18\x03 \x01(\t\"\xc1\x01\n,CBroadcast_SendThumbnailToRelay_Notification\x12\x1e\n\x16thumbnail_upload_token\x18\x01 \x01(\t\x12&\n\x1ethumbnail_broadcast_session_id\x18\x02 \x01(\x06\x12\x16\n\x0ethumbnail_data\x18\x03 \x01(\x0c\x12\x17\n\x0fthumbnail_width\x18\x04 \x01(\r\x12\x18\n\x10thumbnail_height\x18\x05 \x01(\r\"L\n,CBroadcast_WebRTCNeedTURNServer_Notification\x12\x1c\n\x14\x62roadcast_session_id\x18\x01 \x01(\x06\"\x8c\x01\n#CBroadcast_WebRTCStart_Notification\x12\x1c\n\x14\x62roadcast_session_id\x18\x01 \x01(\x06\x12\x19\n\x11webrtc_session_id\x18\x02 \x01(\x06\x12\x16\n\x0eviewer_steamid\x18\x03 \x01(\x06\x12\x14\n\x0cviewer_token\x18\x04 \x01(\x06\"r\n\'CBroadcast_WebRTCSetAnswer_Notification\x12\x1c\n\x14\x62roadcast_session_id\x18\x01 \x01(\x06\x12\x19\n\x11webrtc_session_id\x18\x02 \x01(\x06\x12\x0e\n\x06\x61nswer\x18\x03 \x01(\t\"\x9c\x01\n0CBroadcast_WebRTCAddViewerCandidate_Notification\x12\x1c\n\x14\x62roadcast_session_id\x18\x01 \x01(\x06\x12\x19\n\x11webrtc_session_id\x18\x02 \x01(\x06\x12/\n\tcandidate\x18\x03 \x01(\x0b\x32\x1c.CBroadcast_WebRTC_Candidate*\xf5\x04\n\x17\x45\x42roadcastWatchLocation\x12%\n!k_EBroadcastWatchLocation_Invalid\x10\x00\x12)\n%k_EBroadcastWatchLocation_SteamTV_Tab\x10\x01\x12\x30\n,k_EBroadcastWatchLocation_SteamTV_WatchParty\x10\x02\x12&\n\"k_EBroadcastWatchLocation_Chat_Tab\x10\x03\x12-\n)k_EBroadcastWatchLocation_Chat_WatchParty\x10\x04\x12+\n\'k_EBroadcastWatchLocation_CommunityPage\x10\x05\x12*\n&k_EBroadcastWatchLocation_StoreAppPage\x10\x06\x12$\n k_EBroadcastWatchLocation_InGame\x10\x07\x12(\n$k_EBroadcastWatchLocation_BigPicture\x10\x08\x12\'\n#k_EBroadcastWatchLocation_SalesPage\x10\t\x12)\n%k_EBroadcastWatchLocation_CuratorPage\x10\n\x12+\n\'k_EBroadcastWatchLocation_DeveloperPage\x10\x0b\x12*\n&k_EBroadcastWatchLocation_Chat_Friends\x10\x0c\x12)\n%k_EBroadcastWatchLocation_SteamTV_Web\x10\r*g\n\x18\x45\x42roadcastChatPermission\x12$\n k_EBroadcastChatPermissionPublic\x10\x00\x12%\n!k_EBroadcastChatPermissionOwnsApp\x10\x01\x32\x86+\n\tBroadcast\x12\xed\x01\n\x15\x42\x65ginBroadcastSession\x12).CBroadcast_BeginBroadcastSession_Request\x1a*.CBroadcast_BeginBroadcastSession_Response\"}\x82\xb5\x18yRequest from client to directory to begin a broadcast session. No data being sent to relay; just available for broadcast.\x12\xba\x01\n\x13\x45ndBroadcastSession\x12\'.CBroadcast_EndBroadcastSession_Request\x1a(.CBroadcast_EndBroadcastSession_Response\"P\x82\xb5\x18LRequest from client to stop a broadcast session. Any uploads will terminate.\x12\xac\x01\n\x14StartBroadcastUpload\x12(.CBroadcast_StartBroadcastUpload_Request\x1a).CBroadcast_StartBroadcastUpload_Response\"?\x82\xb5\x18;Request from client to begin sending video for a broadcast.\x12\x99\x01\n\x19NotifyBroadcastUploadStop\x12\x32.CBroadcast_NotifyBroadcastUploadStop_Notification\x1a\x0b.NoResponse\";\x82\xb5\x18\x37Tells directory that client stopped uploading broadcast\x12\x87\x01\n\x0eWatchBroadcast\x12\".CBroadcast_WatchBroadcast_Request\x1a#.CBroadcast_WatchBroadcast_Response\",\x82\xb5\x18(Request from viewer to watch a broadcast\x12\x81\x01\n\x12HeartbeatBroadcast\x12+.CBroadcast_HeartbeatBroadcast_Notification\x1a\x0b.NoResponse\"1\x82\xb5\x18-Notify directory that user is still watching.\x12\xc1\x01\n\x15StopWatchingBroadcast\x12..CBroadcast_StopWatchingBroadcast_Notification\x1a\x0b.NoResponse\"k\x82\xb5\x18gRequest to immediately stop watching a broadcast. Optional Method, if not called, viewer will time out.\x12\x96\x01\n\x12GetBroadcastStatus\x12&.CBroadcast_GetBroadcastStatus_Request\x1a\'.CBroadcast_GetBroadcastStatus_Response\"/\x82\xb5\x18+Request from viewer about broadcast details\x12\x97\x01\n\x15GetBroadcastThumbnail\x12).CBroadcast_GetBroadcastThumbnail_Request\x1a*.CBroadcast_GetBroadcastThumbnail_Response\"\'\x82\xb5\x18#Request thumbnail URL for broadcast\x12\xa2\x01\n\x11InviteToBroadcast\x12%.CBroadcast_InviteToBroadcast_Request\x1a&.CBroadcast_InviteToBroadcast_Response\">\x82\xb5\x18:Invites another steam user to watch the caller\'s broadcast\x12\xc8\x01\n\x1aSendBroadcastStateToServer\x12..CBroadcast_SendBroadcastStateToServer_Request\x1a/.CBroadcast_SendBroadcastStateToServer_Response\"I\x82\xb5\x18\x45Sends users current broadcast state (permissions, game) to the server\x12\xa2\x01\n\x1fNotifyBroadcastSessionHeartbeat\x12\x38.CBroadcast_NotifyBroadcastSessionHeartbeat_Notification\x1a\x0b.NoResponse\"8\x82\xb5\x18\x34Tells directory broadcast session is still available\x12\x94\x01\n\x14GetBroadcastChatInfo\x12(.CBroadcast_GetBroadcastChatInfo_Request\x1a).CBroadcast_GetBroadcastChatInfo_Response\"\'\x82\xb5\x18#Gets chat room info for a broadcast\x12\x8a\x01\n\x0fPostChatMessage\x12#.CBroadcast_PostChatMessage_Request\x1a$.CBroadcast_PostChatMessage_Response\",\x82\xb5\x18(Post chat message to specified chat room\x12\xab\x01\n\x16UpdateChatMessageFlair\x12*.CBroadcast_UpdateChatMessageFlair_Request\x1a+.CBroadcast_UpdateChatMessageFlair_Response\"8\x82\xb5\x18\x34Update chat message flair in the specified chat room\x12\x96\x01\n\x15MuteBroadcastChatUser\x12).CBroadcast_MuteBroadcastChatUser_Request\x1a*.CBroadcast_MuteBroadcastChatUser_Response\"&\x82\xb5\x18\"Mute a user in your broadcast chat\x12\x94\x01\n\x12RemoveUserChatText\x12&.CBroadcast_RemoveUserChatText_Request\x1a\'.CBroadcast_RemoveUserChatText_Response\"-\x82\xb5\x18)Tell all viewers to remove user chat text\x12\xa3\x01\n\x19GetBroadcastChatUserNames\x12-.CBroadcast_GetBroadcastChatUserNames_Request\x1a..CBroadcast_GetBroadcastChatUserNames_Response\"\'\x82\xb5\x18#Get names for list of users in chat\x12~\n\x0eStartBuildClip\x12\".CBroadcast_StartBuildClip_Request\x1a#.CBroadcast_StartBuildClip_Response\"#\x82\xb5\x18\x1fStart building a broadcast clip\x12\x8a\x01\n\x12GetBuildClipStatus\x12&.CBroadcast_GetBuildClipStatus_Request\x1a\'.CBroadcast_GetBuildClipStatus_Response\"#\x82\xb5\x18\x1fStart building a broadcast clip\x12w\n\x0eSetClipDetails\x12\".CBroadcast_SetClipDetails_Request\x1a#.CBroadcast_SetClipDetails_Response\"\x1c\x82\xb5\x18\x18Updates a broadcast clip\x12~\n\x0eGetClipDetails\x12\".CBroadcast_GetClipDetails_Request\x1a#.CBroadcast_GetClipDetails_Response\"#\x82\xb5\x18\x1fGet details for Broadcast Clips\x12n\n\x0bSetRTMPInfo\x12\x1f.CBroadcast_SetRTMPInfo_Request\x1a .CBroadcast_SetRTMPInfo_Response\"\x1c\x82\xb5\x18\x18Sets RTMP broadcast info\x12n\n\x0bGetRTMPInfo\x12\x1f.CBroadcast_GetRTMPInfo_Request\x1a .CBroadcast_GetRTMPInfo_Response\"\x1c\x82\xb5\x18\x18Gets RTMP broadcast info\x12\x9e\x01\n\x1aNotifyWebRTCHaveTURNServer\x12-.CBroadcast_WebRTCHaveTURNServer_Notification\x1a\x0b.NoResponse\"D\x82\xb5\x18@Notification from client to server with the client\'s TURN server\x12\xac\x01\n\x11WebRTCStartResult\x12%.CBroadcast_WebRTCStartResult_Request\x1a&.CBroadcast_WebRTCStartResult_Response\"H\x82\xb5\x18\x44Notify the server that a WebRTC session has been created by the host\x12\xa0\x01\n\rWebRTCStopped\x12!.CBroadcast_WebRTCStopped_Request\x1a\".CBroadcast_WebRTCStopped_Response\"H\x82\xb5\x18\x44Notify the server that a WebRTC session has been stopped by the host\x12\xa8\x01\n\x0fWebRTCSetAnswer\x12#.CBroadcast_WebRTCSetAnswer_Request\x1a$.CBroadcast_WebRTCSetAnswer_Response\"J\x82\xb5\x18\x46Notify the server that a WebRTC session has been created by the viewer\x12\xa2\x01\n\x16WebRTCLookupTURNServer\x12*.CBroadcast_WebRTCLookupTURNServer_Request\x1a+.CBroadcast_WebRTCLookupTURNServer_Response\"/\x82\xb5\x18+Lookup the best TURN server for this client\x12\xb1\x01\n\x16WebRTCAddHostCandidate\x12*.CBroadcast_WebRTCAddHostCandidate_Request\x1a+.CBroadcast_WebRTCAddHostCandidate_Response\">\x82\xb5\x18:Add an ICE candidate for the host side of a WebRTC session\x12\xb9\x01\n\x18WebRTCAddViewerCandidate\x12,.CBroadcast_WebRTCAddViewerCandidate_Request\x1a-.CBroadcast_WebRTCAddViewerCandidate_Response\"@\x82\xb5\x18<Add an ICE candidate for the viewer side of a WebRTC session\x12\xb6\x01\n\x17WebRTCGetHostCandidates\x12+.CBroadcast_WebRTCGetHostCandidates_Request\x1a,.CBroadcast_WebRTCGetHostCandidates_Response\"@\x82\xb5\x18<Get the ICE candidates for the host side of a WebRTC session\x12\x9e\x01\n\x17GetBroadcastUploadStats\x12+.CBroadcast_GetBroadcastUploadStats_Request\x1a,.CBroadcast_GetBroadcastUploadStats_Response\"(\x82\xb5\x18$Gets broadcast upload stats for user\x12\x9f\x01\n\x17GetBroadcastViewerStats\x12+.CBroadcast_GetBroadcastViewerStats_Request\x1a,.CBroadcast_GetBroadcastViewerStats_Response\")\x82\xb5\x18%Gets viewer stats for given broadcast\x1a*\x82\xb5\x18&Methods for Steam broadcast operations2\xc4\x11\n\x0f\x42roadcastClient\x12\xa1\x01\n\x1aNotifyBroadcastViewerState\x12-.CBroadcast_BroadcastViewerState_Notification\x1a\x0b.NoResponse\"G\x82\xb5\x18\x43Notification from server to client that a viewers state has changed\x12\xbd\x01\n\x1cNotifyWaitingBroadcastViewer\x12/.CBroadcast_WaitingBroadcastViewer_Notification\x1a\x0b.NoResponse\"_\x82\xb5\x18[Notification from server to client one or more users is waiting for user to start broadcast\x12\xa7\x01\n\x1cNotifyBroadcastUploadStarted\x12/.CBroadcast_BroadcastUploadStarted_Notification\x1a\x0b.NoResponse\"I\x82\xb5\x18\x45Notification from server to client with information about a broadcast\x12\xd6\x01\n\x19NotifyStopBroadcastUpload\x12,.CBroadcast_StopBroadcastUpload_Notification\x1a\x0b.NoResponse\"~\x82\xb5\x18zNotification from server to client telling it to stop uploading when the last viewer has disconnected from their broadcast\x12\xb5\x01\n\x13NotifySessionClosed\x12&.CBroadcast_SessionClosed_Notification\x1a\x0b.NoResponse\"i\x82\xb5\x18\x65Notification from server to client telling it a session has been closed unexpectedly by the directory\x12\xc3\x01\n\x1bNotifyViewerBroadcastInvite\x12..CBroadcast_ViewerBroadcastInvite_Notification\x1a\x0b.NoResponse\"g\x82\xb5\x18\x63Notification from server to client that a broadcaster is inviting a viewer to watch their broadcast\x12\x95\x01\n\x15NotifyBroadcastStatus\x12(.CBroadcast_BroadcastStatus_Notification\x1a\x0b.NoResponse\"E\x82\xb5\x18\x41Notification from server to client about current broadcast status\x12\x9f\x01\n\x1aNotifyBroadcastChannelLive\x12-.CBroadcast_BroadcastChannelLive_Notification\x1a\x0b.NoResponse\"E\x82\xb5\x18\x41Notification from server to client about current broadcast status\x12p\n\x14SendThumbnailToRelay\x12-.CBroadcast_SendThumbnailToRelay_Notification\x1a\x0b.NoResponse\"\x1c\x82\xb5\x18\x18Send thumbnails to relay\x12\xa7\x01\n\x1aNotifyWebRTCNeedTURNServer\x12-.CBroadcast_WebRTCNeedTURNServer_Notification\x1a\x0b.NoResponse\"M\x82\xb5\x18INotification from server to client that it needs the client\'s TURN server\x12\x94\x01\n\x11NotifyWebRTCStart\x12$.CBroadcast_WebRTCStart_Notification\x1a\x0b.NoResponse\"L\x82\xb5\x18HNotification from server to client that it should start a WebRTC session\x12\x9f\x01\n\x15NotifyWebRTCSetAnswer\x12(.CBroadcast_WebRTCSetAnswer_Notification\x1a\x0b.NoResponse\"O\x82\xb5\x18KNotification from server to client about the broadcast viewer WebRTC answer\x12\xb6\x01\n\x1eNotifyWebRTCAddViewerCandidate\x12\x31.CBroadcast_WebRTCAddViewerCandidate_Notification\x1a\x0b.NoResponse\"T\x82\xb5\x18PNotification from server to client about a broadcast viewer WebRTC ICE candidate\x1a\x04\xc0\xb5\x18\x02\x42\x03\x90\x01\x01')
+  serialized_options=b'\220\001\001',
+  create_key=_descriptor._internal_create_key,
+  serialized_pb=b'\n\x1dsteammessages_broadcast.proto\x1a\x18steammessages_base.proto\x1a steammessages_unified_base.proto\"\xf1\x01\n(CBroadcast_BeginBroadcastSession_Request\x12\x12\n\npermission\x18\x01 \x01(\x05\x12\x0e\n\x06gameid\x18\x02 \x01(\x04\x12\x1a\n\x12\x63lient_instance_id\x18\x03 \x01(\x04\x12\r\n\x05title\x18\x04 \x01(\t\x12\x0e\n\x06\x63\x65llid\x18\x05 \x01(\r\x12\x12\n\nrtmp_token\x18\x06 \x01(\x04\x12\x18\n\x10thumbnail_upload\x18\x07 \x01(\x08\x12\x13\n\x0b\x63lient_beta\x18\x08 \x01(\t\x12\r\n\x05sysid\x18\t \x01(\r\x12\x14\n\x0c\x61llow_webrtc\x18\n \x01(\x08\"\x9c\x03\n)CBroadcast_BeginBroadcastSession_Response\x12\x14\n\x0c\x62roadcast_id\x18\x01 \x01(\x06\x12P\n\x18thumbnail_upload_address\x18\x02 \x01(\tB.\x82\xb5\x18*Http address to upload the thumbnail data.\x12\x65\n\x16thumbnail_upload_token\x18\x03 \x01(\tBE\x82\xb5\x18\x41token to authorize as broadcaster to upload content to the relay.\x12K\n\x1athumbnail_interval_seconds\x18\x04 \x01(\rB\'\x82\xb5\x18#how many seconds between thumbnails\x12S\n\x1aheartbeat_interval_seconds\x18\x05 \x01(\rB/\x82\xb5\x18+how many seconds between session heartbeats\">\n&CBroadcast_EndBroadcastSession_Request\x12\x14\n\x0c\x62roadcast_id\x18\x01 \x01(\x06\")\n\'CBroadcast_EndBroadcastSession_Response\"\x88\x02\n\'CBroadcast_StartBroadcastUpload_Request\x12\x14\n\x0c\x62roadcast_id\x18\x01 \x01(\x06\x12\x0e\n\x06\x63\x65llid\x18\x02 \x01(\r\x12\x0f\n\x07\x61s_rtmp\x18\x03 \x01(\x08\x12\x15\n\rdelay_seconds\x18\x04 \x01(\r\x12R\n\nrtmp_token\x18\x05 \x01(\x04:\x01\x30\x42;\x82\xb5\x18\x37Only set during RTMP uploads; secret key from the user.\x12\x19\n\x11upload_ip_address\x18\x06 \x01(\r\x12\x11\n\tis_replay\x18\x07 \x01(\x08\x12\r\n\x05sysid\x18\x08 \x01(\r\"\xa2\x01\n(CBroadcast_StartBroadcastUpload_Response\x12\x14\n\x0cupload_token\x18\x01 \x01(\t\x12\x16\n\x0eupload_address\x18\x02 \x01(\t\x12\x1b\n\x13\x62roadcast_upload_id\x18\x03 \x01(\x06\x12\x15\n\renable_replay\x18\x06 \x01(\x08\x12\x14\n\x0chttp_address\x18\x07 \x01(\t\"g\n1CBroadcast_NotifyBroadcastUploadStop_Notification\x12\x1b\n\x13\x62roadcast_upload_id\x18\x01 \x01(\x06\x12\x15\n\rupload_result\x18\x02 \x01(\r\"\x89\x03\n!CBroadcast_WatchBroadcast_Request\x12)\n\x07steamid\x18\x01 \x01(\x06\x42\x18\x82\xb5\x18\x14\x62roadcaster steamID.\x12X\n\x15\x65xisting_broadcast_id\x18\x02 \x01(\x06\x42\x39\x82\xb5\x18\x35\x62roadcast session ID (optional, rejoin if specified).\x12\x62\n\x0cviewer_token\x18\x03 \x01(\x06\x42L\x82\xb5\x18Hviewer token received from last WatchRequest call, from browser storage.\x12\x13\n\x0b\x63lient_cell\x18\x05 \x01(\r\x12S\n\x0ewatch_location\x18\x06 \x01(\x0e\x32\x18.EBroadcastWatchLocation:!k_EBroadcastWatchLocation_Invalid\x12\x11\n\tis_webrtc\x18\x07 \x01(\x08\"\xfa\x07\n\"CBroadcast_WatchBroadcast_Response\x12[\n\x08response\x18\x01 \x01(\x0e\x32\x32.CBroadcast_WatchBroadcast_Response.EWatchResponse:\x15k_EWatchResponseReady\x12\x0f\n\x07mpd_url\x18\x02 \x01(\t\x12\x14\n\x0c\x62roadcast_id\x18\x03 \x01(\x06\x12\x0e\n\x06gameid\x18\x04 \x01(\x04\x12\r\n\x05title\x18\x05 \x01(\t\x12\x13\n\x0bnum_viewers\x18\x06 \x01(\r\x12\x12\n\npermission\x18\x07 \x01(\x05\x12\x0f\n\x07is_rtmp\x18\x08 \x01(\x08\x12\x15\n\rseconds_delay\x18\t \x01(\x05\x12\x14\n\x0cviewer_token\x18\n \x01(\x06\x12\x1b\n\x13hls_m3u8_master_url\x18\x0b \x01(\t\x12\x1a\n\x12heartbeat_interval\x18\x0c \x01(\x05\x12\x15\n\rthumbnail_url\x18\r \x01(\t\x12\x11\n\tis_webrtc\x18\x0e \x01(\x08\x12\x19\n\x11webrtc_session_id\x18\x0f \x01(\x06\x12\x18\n\x10webrtc_offer_sdp\x18\x10 \x01(\t\x12\x1a\n\x12webrtc_turn_server\x18\x11 \x01(\t\x12\x11\n\tis_replay\x18\x12 \x01(\x08\x12\x10\n\x08\x64uration\x18\x13 \x01(\x05\x12\x1f\n\x17\x63\x64n_auth_url_parameters\x18\x14 \x01(\t\"\xcf\x03\n\x0e\x45WatchResponse\x12\x19\n\x15k_EWatchResponseReady\x10\x01\x12 \n\x1ck_EWatchResponseNotAvailable\x10\x02\x12&\n\"k_EWatchResponseWaitingForApproval\x10\x03\x12#\n\x1fk_EWatchResponseWaitingForStart\x10\x04\x12\"\n\x1ek_EWatchResponseInvalidSession\x10\x05\x12%\n!k_EWatchResponseTooManyBroadcasts\x10\x06\x12\'\n#k_EWatchResponseWaitingForReconnect\x10\x07\x12&\n\"k_EWatchResponseSystemNotSupported\x10\x08\x12\"\n\x1ek_EWatchResponseUserRestricted\x10\t\x12#\n\x1fk_EWatchResponseClientOutOfDate\x10\n\x12%\n!k_EWatchResponsePoorUploadQuality\x10\x0b\x12\'\n#k_EWatchResponseMissingSubscription\x10\x0c\"\xae\x02\n*CBroadcast_HeartbeatBroadcast_Notification\x12)\n\x07steamid\x18\x01 \x01(\x06\x42\x18\x82\xb5\x18\x14\x62roadcaster steamID.\x12/\n\x0c\x62roadcast_id\x18\x02 \x01(\x06\x42\x19\x82\xb5\x18\x15\x62roadcast session ID.\x12\x62\n\x0cviewer_token\x18\x03 \x01(\x06\x42L\x82\xb5\x18Hviewer token received from last WatchRequest call, from browser storage.\x12@\n\x0erepresentation\x18\x04 \x01(\rB(\x82\xb5\x18$video stream representation watching\"\xef\x01\n-CBroadcast_StopWatchingBroadcast_Notification\x12)\n\x07steamid\x18\x01 \x01(\x06\x42\x18\x82\xb5\x18\x14\x62roadcaster steamID.\x12/\n\x0c\x62roadcast_id\x18\x02 \x01(\x06\x42\x19\x82\xb5\x18\x15\x62roadcast session ID.\x12\x62\n\x0cviewer_token\x18\x03 \x01(\x06\x42L\x82\xb5\x18Hviewer token received from last WatchRequest call, from browser storage.\"\xb0\x01\n%CBroadcast_GetBroadcastStatus_Request\x12)\n\x07steamid\x18\x01 \x01(\x06\x42\x18\x82\xb5\x18\x14\x62roadcaster steamID.\x12\\\n\x0c\x62roadcast_id\x18\x02 \x01(\x06\x42\x46\x82\xb5\x18\x42\x62roadcast session ID to proof that user is allowed to see details.\"\xd1\x02\n&CBroadcast_GetBroadcastStatus_Response\x12\x0e\n\x06gameid\x18\x01 \x01(\x04\x12\r\n\x05title\x18\x02 \x01(\t\x12\x13\n\x0bnum_viewers\x18\x03 \x01(\r\x12\x12\n\npermission\x18\x04 \x01(\x05\x12\x0f\n\x07is_rtmp\x18\x05 \x01(\x08\x12\x15\n\rseconds_delay\x18\x06 \x01(\x05\x12\x14\n\x0cis_publisher\x18\x07 \x01(\x08\x12\x15\n\rthumbnail_url\x18\x08 \x01(\t\x12\x17\n\x0fupdate_interval\x18\t \x01(\x05\x12\x14\n\x0cis_uploading\x18\n \x01(\x08\x12\x10\n\x08\x64uration\x18\x0b \x01(\r\x12\x11\n\tis_replay\x18\x0c \x01(\x08\x12\x18\n\x10is_capturing_vod\x18\r \x01(\x08\x12\x1c\n\x14is_store_whitelisted\x18\x0e \x01(\x08\"Q\n(CBroadcast_GetBroadcastThumbnail_Request\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12\x14\n\x0c\x62roadcast_id\x18\x02 \x01(\x06\"\x82\x01\n)CBroadcast_GetBroadcastThumbnail_Response\x12\x15\n\rthumbnail_url\x18\x01 \x01(\t\x12\x17\n\x0fupdate_interval\x18\x02 \x01(\x05\x12\x13\n\x0bnum_viewers\x18\x03 \x01(\x05\x12\x10\n\x08\x64uration\x18\x04 \x01(\x05\"R\n$CBroadcast_InviteToBroadcast_Request\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12\x19\n\x11\x61pproval_response\x18\x02 \x01(\x08\"8\n%CBroadcast_InviteToBroadcast_Response\x12\x0f\n\x07success\x18\x01 \x01(\x08\"|\n-CBroadcast_SendBroadcastStateToServer_Request\x12\x12\n\npermission\x18\x01 \x01(\x05\x12\x0e\n\x06gameid\x18\x02 \x01(\x04\x12\r\n\x05title\x18\x03 \x01(\t\x12\x18\n\x10game_data_config\x18\x04 \x01(\t\"0\n.CBroadcast_SendBroadcastStateToServer_Response\"O\n7CBroadcast_NotifyBroadcastSessionHeartbeat_Notification\x12\x14\n\x0c\x62roadcast_id\x18\x01 \x01(\x06\"x\n\'CBroadcast_GetBroadcastChatInfo_Request\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12\x14\n\x0c\x62roadcast_id\x18\x02 \x01(\x06\x12\x11\n\tclient_ip\x18\x03 \x01(\r\x12\x13\n\x0b\x63lient_cell\x18\x04 \x01(\r\"o\n(CBroadcast_GetBroadcastChatInfo_Response\x12\x0f\n\x07\x63hat_id\x18\x01 \x01(\x06\x12\x19\n\x11view_url_template\x18\x03 \x01(\t\x12\x17\n\x0f\x66lair_group_ids\x18\x04 \x03(\r\"\xea\x01\n\"CBroadcast_PostChatMessage_Request\x12\x0f\n\x07\x63hat_id\x18\x01 \x01(\x06\x12\x0f\n\x07message\x18\x02 \x01(\t\x12\x13\n\x0binstance_id\x18\x03 \x01(\r\x12V\n\x08language\x18\x04 \x01(\r:\x01\x30\x42\x41\x82\xb5\x18=ELanguage of the user posting the message, default is english\x12\x35\n\x0c\x63ountry_code\x18\x05 \x01(\tB\x1f\x82\xb5\x18\x1bThe two letter country code\"{\n#CBroadcast_PostChatMessage_Response\x12\x14\n\x0cpersona_name\x18\x01 \x01(\t\x12\x0f\n\x07in_game\x18\x02 \x01(\x08\x12\x0e\n\x06result\x18\x03 \x01(\x05\x12\x1d\n\x15\x63ooldown_time_seconds\x18\x04 \x01(\x05\"K\n)CBroadcast_UpdateChatMessageFlair_Request\x12\x0f\n\x07\x63hat_id\x18\x01 \x01(\x06\x12\r\n\x05\x66lair\x18\x02 \x01(\t\"\\\n*CBroadcast_UpdateChatMessageFlair_Response\x12\x0e\n\x06result\x18\x01 \x01(\x05\x12\x0f\n\x07\x63hat_id\x18\x02 \x01(\x06\x12\r\n\x05\x66lair\x18\x03 \x01(\t\"`\n(CBroadcast_MuteBroadcastChatUser_Request\x12\x0f\n\x07\x63hat_id\x18\x01 \x01(\x06\x12\x14\n\x0cuser_steamid\x18\x02 \x01(\x06\x12\r\n\x05muted\x18\x03 \x01(\x08\"+\n)CBroadcast_MuteBroadcastChatUser_Response\"N\n%CBroadcast_RemoveUserChatText_Request\x12\x0f\n\x07\x63hat_id\x18\x01 \x01(\x06\x12\x14\n\x0cuser_steamid\x18\x02 \x01(\x06\"(\n&CBroadcast_RemoveUserChatText_Response\"U\n,CBroadcast_GetBroadcastChatUserNames_Request\x12\x0f\n\x07\x63hat_id\x18\x01 \x01(\x06\x12\x14\n\x0cuser_steamid\x18\x02 \x03(\x06\"\xba\x01\n-CBroadcast_GetBroadcastChatUserNames_Response\x12Q\n\rpersona_names\x18\x01 \x03(\x0b\x32:.CBroadcast_GetBroadcastChatUserNames_Response.PersonaName\x1a\x36\n\x0bPersonaName\x12\x16\n\x08steam_id\x18\x01 \x01(\x06\x42\x04\xc0\xb6\x18\x01\x12\x0f\n\x07persona\x18\x02 \x01(\t\"\x99\x01\n!CBroadcast_StartBuildClip_Request\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12\x1c\n\x14\x62roadcast_session_id\x18\x02 \x01(\x06\x12\x15\n\rfirst_segment\x18\x03 \x01(\x05\x12\x14\n\x0cnum_segments\x18\x04 \x01(\x05\x12\x18\n\x10\x63lip_description\x18\x05 \x01(\t\"?\n\"CBroadcast_StartBuildClip_Response\x12\x19\n\x11\x62roadcast_clip_id\x18\x01 \x01(\x06\"B\n%CBroadcast_GetBuildClipStatus_Request\x12\x19\n\x11\x62roadcast_clip_id\x18\x01 \x01(\x06\"(\n&CBroadcast_GetBuildClipStatus_Response\"\xc2\x01\n!CBroadcast_SetClipDetails_Request\x12&\n\x11\x62roadcast_clip_id\x18\x01 \x01(\x04\x42\x0b\x82\xb5\x18\x07\x43lip ID\x12.\n\nstart_time\x18\x02 \x01(\rB\x1a\x82\xb5\x18\x16start time of the clip\x12*\n\x08\x65nd_time\x18\x03 \x01(\rB\x18\x82\xb5\x18\x14\x65nd time of the clip\x12\x19\n\x11video_description\x18\x04 \x01(\t\"$\n\"CBroadcast_SetClipDetails_Response\"h\n!CBroadcast_GetClipDetails_Request\x12\x43\n\x11\x62roadcast_clip_id\x18\x01 \x01(\x04\x42(\x82\xb5\x18$List of clip IDs we want details for\"\xcf\x04\n\"CBroadcast_GetClipDetails_Response\x12\x30\n\x11\x62roadcast_clip_id\x18\x01 \x01(\x04\x42\x15\x82\xb5\x18\x11\x62roadcast clip ID\x12.\n\x08video_id\x18\x02 \x01(\x04\x42\x1c\x82\xb5\x18\x18matching unique video ID\x12,\n\nchannel_id\x18\x03 \x01(\x04\x42\x18\x82\xb5\x18\x14\x42roadcast Channel ID\x12\x30\n\x06\x61pp_id\x18\x04 \x01(\rB \x82\xb5\x18\x1c\x41pp ID stream is tagged with\x12<\n\x15\x61\x63\x63ountid_broadcaster\x18\x05 \x01(\rB\x1d\x82\xb5\x18\x19\x41\x63\x63ount ID of broadcaster\x12\x39\n\x13\x61\x63\x63ountid_clipmaker\x18\x06 \x01(\rB\x1c\x82\xb5\x18\x18\x41\x63\x63ount ID of clip-maker\x12\x45\n\x11video_description\x18\x07 \x01(\tB*\x82\xb5\x18&Short name or description of this clip\x12;\n\nstart_time\x18\x08 \x01(\rB\'\x82\xb5\x18#Wall time clip was broadcasted live\x12\x36\n\x13length_milliseconds\x18\t \x01(\rB\x19\x82\xb5\x18\x15length of video in MS\x12\x32\n\x0ethumbnail_path\x18\n \x01(\tB\x1a\x82\xb5\x18\x16Path for thumbnail URL\"\xa7\x05\n\x1e\x43\x42roadcast_SetRTMPInfo_Request\x12\x1c\n\x14\x62roadcast_permission\x18\x01 \x01(\x05\x12\x14\n\x0cupdate_token\x18\x02 \x01(\x08\x12\x17\n\x0f\x62roadcast_delay\x18\x03 \x01(\x05\x12\x0e\n\x06\x61pp_id\x18\x04 \x01(\r\x12\x17\n\x0frequired_app_id\x18\x05 \x01(\r\x12\x9c\x01\n\x19\x62roadcast_chat_permission\x18\x06 \x01(\x0e\x32\x19.EBroadcastChatPermission: k_EBroadcastChatPermissionPublicB<\x82\xb5\x18\x38Who is permitted to send a chat message during broadcast\x12N\n\x10\x62roadcast_buffer\x18\x07 \x01(\x05\x42\x34\x82\xb5\x18\x30Previous seconds we keep of the stream available\x12>\n\x07steamid\x18\x08 \x01(\x06\x42-\x82\xb5\x18)broadcaster steamID if not logged-in user\x12\x43\n\x0f\x63hat_rate_limit\x18\t \x01(\rB*\x82\xb5\x18&Seconds required between chat messages\x12\x37\n\renable_replay\x18\n \x01(\x08\x42 \x82\xb5\x18\x1c\x45nable replay of last upload\x12\x62\n\x14is_partner_chat_only\x18\x0b \x01(\x08\x42\x44\x82\xb5\x18@When true, then only steamwork partner can create chat messages.\"!\n\x1f\x43\x42roadcast_SetRTMPInfo_Response\"l\n\x1e\x43\x42roadcast_GetRTMPInfo_Request\x12\n\n\x02ip\x18\x01 \x01(\r\x12>\n\x07steamid\x18\x02 \x01(\x06\x42-\x82\xb5\x18)broadcaster steamID if not logged-in user\"\x94\x05\n\x1f\x43\x42roadcast_GetRTMPInfo_Response\x12\x1c\n\x14\x62roadcast_permission\x18\x01 \x01(\x05\x12\x11\n\trtmp_host\x18\x02 \x01(\t\x12\x12\n\nrtmp_token\x18\x03 \x01(\t\x12\x17\n\x0f\x62roadcast_delay\x18\x04 \x01(\x05\x12\x0e\n\x06\x61pp_id\x18\x05 \x01(\r\x12\x17\n\x0frequired_app_id\x18\x06 \x01(\r\x12\x9c\x01\n\x19\x62roadcast_chat_permission\x18\x07 \x01(\x0e\x32\x19.EBroadcastChatPermission: k_EBroadcastChatPermissionPublicB<\x82\xb5\x18\x38Who is permitted to send a chat message during broadcast\x12?\n\x10\x62roadcast_buffer\x18\x08 \x01(\x05\x42%\x82\xb5\x18!Seconds we keep streams available\x12(\n\x07steamid\x18\t \x01(\x06\x42\x17\x82\xb5\x18\x13\x62roadcaster steamID\x12\x43\n\x0f\x63hat_rate_limit\x18\n \x01(\rB*\x82\xb5\x18&Seconds required between chat messages\x12\x37\n\renable_replay\x18\x0b \x01(\x08\x42 \x82\xb5\x18\x1c\x45nable replay of last upload\x12\x62\n\x14is_partner_chat_only\x18\x0c \x01(\x08\x42\x44\x82\xb5\x18@When true, then only steamwork partner can create chat messages.\"a\n,CBroadcast_WebRTCHaveTURNServer_Notification\x12\x1c\n\x14\x62roadcast_session_id\x18\x01 \x01(\x06\x12\x13\n\x0bturn_server\x18\x02 \x01(\t\"\x9a\x01\n$CBroadcast_WebRTCStartResult_Request\x12\x19\n\x11webrtc_session_id\x18\x01 \x01(\x06\x12\x0f\n\x07started\x18\x02 \x01(\x08\x12\r\n\x05offer\x18\x03 \x01(\t\x12\x14\n\x0cresolution_x\x18\x04 \x01(\r\x12\x14\n\x0cresolution_y\x18\x05 \x01(\r\x12\x0b\n\x03\x66ps\x18\x06 \x01(\r\"\'\n%CBroadcast_WebRTCStartResult_Response\"=\n CBroadcast_WebRTCStopped_Request\x12\x19\n\x11webrtc_session_id\x18\x01 \x01(\x06\"#\n!CBroadcast_WebRTCStopped_Response\"l\n\"CBroadcast_WebRTCSetAnswer_Request\x12\x1b\n\x13\x62roadcaster_steamid\x18\x01 \x01(\x06\x12\x19\n\x11webrtc_session_id\x18\x02 \x01(\x06\x12\x0e\n\x06\x61nswer\x18\x03 \x01(\t\"%\n#CBroadcast_WebRTCSetAnswer_Response\";\n)CBroadcast_WebRTCLookupTURNServer_Request\x12\x0e\n\x06\x63\x65llid\x18\x01 \x01(\r\"A\n*CBroadcast_WebRTCLookupTURNServer_Response\x12\x13\n\x0bturn_server\x18\x01 \x01(\t\"Z\n\x1b\x43\x42roadcast_WebRTC_Candidate\x12\x0f\n\x07sdp_mid\x18\x01 \x01(\t\x12\x17\n\x0fsdp_mline_index\x18\x02 \x01(\x05\x12\x11\n\tcandidate\x18\x03 \x01(\t\"w\n)CBroadcast_WebRTCAddHostCandidate_Request\x12\x19\n\x11webrtc_session_id\x18\x01 \x01(\x06\x12/\n\tcandidate\x18\x02 \x01(\x0b\x32\x1c.CBroadcast_WebRTC_Candidate\",\n*CBroadcast_WebRTCAddHostCandidate_Response\"\x96\x01\n+CBroadcast_WebRTCAddViewerCandidate_Request\x12\x1b\n\x13\x62roadcaster_steamid\x18\x01 \x01(\x06\x12\x19\n\x11webrtc_session_id\x18\x02 \x01(\x06\x12/\n\tcandidate\x18\x03 \x01(\x0b\x32\x1c.CBroadcast_WebRTC_Candidate\".\n,CBroadcast_WebRTCAddViewerCandidate_Response\"\x82\x01\n*CBroadcast_WebRTCGetHostCandidates_Request\x12\x1b\n\x13\x62roadcaster_steamid\x18\x01 \x01(\x06\x12\x19\n\x11webrtc_session_id\x18\x02 \x01(\x06\x12\x1c\n\x14\x63\x61ndidate_generation\x18\x03 \x01(\r\"}\n+CBroadcast_WebRTCGetHostCandidates_Response\x12\x1c\n\x14\x63\x61ndidate_generation\x18\x01 \x01(\r\x12\x30\n\ncandidates\x18\x02 \x03(\x0b\x32\x1c.CBroadcast_WebRTC_Candidate\"\xa4\x03\n*CBroadcast_GetBroadcastUploadStats_Request\x12:\n\trow_limit\x18\x01 \x01(\r:\x03\x31\x30\x30\x42\"\x82\xb5\x18\x1eHow many at maximum to return.\x12%\n\nstart_time\x18\x02 \x01(\r:\x01\x30\x42\x0e\x82\xb5\x18\nStart time\x12P\n\tupload_id\x18\x03 \x01(\x04\x42=\x82\xb5\x18\x39Optional relay upload ID - not compatible with session_id\x12i\n\x07steamid\x18\x04 \x01(\x06\x42X\x82\xb5\x18TOptional the steamid whose stats you want, otherwise the user logged in - admin only\x12V\n\nsession_id\x18\x05 \x01(\x04\x42\x42\x82\xb5\x18>Optional broadcast session ID - not compatiable with upload_id\"\x89\t\n+CBroadcast_GetBroadcastUploadStats_Response\x12N\n\x0cupload_stats\x18\x01 \x03(\x0b\x32\x38.CBroadcast_GetBroadcastUploadStats_Response.UploadStats\x1a\x89\x08\n\x0bUploadStats\x12\x1b\n\rupload_result\x18\x01 \x01(\rB\x04\x82\xb5\x18\x00\x12\x37\n\x0ctime_stopped\x18\x02 \x01(\rB!\x82\xb5\x18\x1dtime broadcast upload stopped\x12\x36\n\x10seconds_uploaded\x18\x03 \x01(\rB\x1c\x82\xb5\x18\x18seconds of vido uploaded\x12/\n\x0bmax_viewers\x18\x04 \x01(\rB\x1a\x82\xb5\x18\x16max concurrent viewers\x12.\n\x0cresolution_x\x18\x05 \x01(\rB\x18\x82\xb5\x18\x14horizontal resultion\x12,\n\x0cresolution_y\x18\x06 \x01(\rB\x16\x82\xb5\x18\x12vertical resultion\x12\x1b\n\ravg_bandwidth\x18\x07 \x01(\rB\x04\x82\xb5\x18\x00\x12;\n\x0btotal_bytes\x18\x08 \x01(\x04\x42&\x82\xb5\x18\"total byte uploaded by broadcaster\x12$\n\x06\x61pp_id\x18\t \x01(\rB\x14\x82\xb5\x18\x10game broadcasted\x12;\n\x14total_unique_viewers\x18\n \x01(\rB\x1d\x82\xb5\x18\x19total unique viewers seen\x12Q\n\x15total_seconds_watched\x18\x0b \x01(\x04\x42\x32\x82\xb5\x18.total number of seconds watched by all viewers\x12\x37\n\x0ctime_started\x18\x0c \x01(\rB!\x82\xb5\x18\x1dtime broadcast upload started\x12\x30\n\tupload_id\x18\r \x01(\x04\x42\x1d\x82\xb5\x18\x19\x62roadcast relay upload id\x12\x33\n\rlocal_address\x18\x0e \x01(\tB\x1c\x82\xb5\x18\x18upload to server address\x12\x36\n\x0eremote_address\x18\x0f \x01(\tB\x1e\x82\xb5\x18\x1aupload from client address\x12\x30\n\x11\x66rames_per_second\x18\x10 \x01(\rB\x15\x82\xb5\x18\x11\x66rames per second\x12?\n\x13num_representations\x18\x11 \x01(\rB\"\x82\xb5\x18\x1enumber of video represetations\x12\x1f\n\x08\x61pp_name\x18\x12 \x01(\tB\r\x82\xb5\x18\tgame name\x12\x33\n\tis_replay\x18\x13 \x01(\x08\x42 \x82\xb5\x18\x1creplay of previous recording\x12,\n\nsession_id\x18\x14 \x01(\x04\x42\x18\x82\xb5\x18\x14\x62roadcast session id\"\xbd\x01\n*CBroadcast_GetBroadcastViewerStats_Request\x12\x30\n\tupload_id\x18\x01 \x01(\x04\x42\x1d\x82\xb5\x18\x19Get stats for this stream\x12]\n\x07steamid\x18\x02 \x01(\x06\x42L\x82\xb5\x18HOptional: The steamid of the broadcast whose details you are requesting.\"\x98\x03\n+CBroadcast_GetBroadcastViewerStats_Response\x12N\n\x0cviewer_stats\x18\x01 \x03(\x0b\x32\x38.CBroadcast_GetBroadcastViewerStats_Response.ViewerStats\x12P\n\rcountry_stats\x18\x02 \x03(\x0b\x32\x39.CBroadcast_GetBroadcastViewerStats_Response.CountryStats\x1a\x63\n\x0bViewerStats\x12 \n\x04time\x18\x01 \x01(\rB\x12\x82\xb5\x18\x0etime of record\x12\x32\n\x0bnum_viewers\x18\x02 \x01(\rB\x1d\x82\xb5\x18\x19\x63urrent number of viewers\x1a\x62\n\x0c\x43ountryStats\x12&\n\x0c\x63ountry_code\x18\x01 \x01(\tB\x10\x82\xb5\x18\x0c\x63ountry code\x12*\n\x0bnum_viewers\x18\x02 \x01(\rB\x15\x82\xb5\x18\x11number of viewers\"\xf8\x01\n,CBroadcast_BroadcastViewerState_Notification\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12\x61\n\x05state\x18\x02 \x01(\x0e\x32:.CBroadcast_BroadcastViewerState_Notification.EViewerState:\x16k_EViewerNeedsApproval\"T\n\x0c\x45ViewerState\x12\x1a\n\x16k_EViewerNeedsApproval\x10\x01\x12\x15\n\x11k_EViewerWatching\x10\x02\x12\x11\n\rk_EViewerLeft\x10\x03\"F\n.CBroadcast_WaitingBroadcastViewer_Notification\x12\x14\n\x0c\x62roadcast_id\x18\x01 \x01(\x06\"\x8d\x02\n.CBroadcast_BroadcastUploadStarted_Notification\x12\x14\n\x0c\x62roadcast_id\x18\x01 \x01(\x06\x12\x14\n\x0cupload_token\x18\x02 \x01(\t\x12\x16\n\x0eupload_address\x18\x03 \x01(\t\x12\x14\n\x0chttp_address\x18\x04 \x01(\t\x12\x1b\n\x13\x62roadcast_upload_id\x18\x05 \x01(\x06\x12S\n\x1aheartbeat_interval_seconds\x18\x06 \x01(\rB/\x82\xb5\x18+how many seconds between session heartbeats\x12\x0f\n\x07is_rtmp\x18\x07 \x01(\x08\"\x95\x01\n+CBroadcast_StopBroadcastUpload_Notification\x12\x14\n\x0c\x62roadcast_id\x18\x01 \x01(\x06\x12\x1a\n\x12\x62roadcast_relay_id\x18\x02 \x01(\x06\x12\x15\n\rupload_result\x18\x03 \x01(\r\x12\x1d\n\x15too_many_poor_uploads\x18\x04 \x01(\x08\"=\n%CBroadcast_SessionClosed_Notification\x12\x14\n\x0c\x62roadcast_id\x18\x01 \x01(\x06\"L\n-CBroadcast_ViewerBroadcastInvite_Notification\x12\x1b\n\x13\x62roadcaster_steamid\x18\x01 \x01(\x06\"T\n\'CBroadcast_BroadcastStatus_Notification\x12\x14\n\x0c\x62roadcast_id\x18\x01 \x01(\x06\x12\x13\n\x0bnum_viewers\x18\x02 \x01(\x05\"\x8e\x01\n,CBroadcast_BroadcastChannelLive_Notification\x12\x1c\n\x14\x62roadcast_channel_id\x18\x01 \x01(\x06\x12\x1e\n\x16\x62roadcast_channel_name\x18\x02 \x01(\t\x12 \n\x18\x62roadcast_channel_avatar\x18\x03 \x01(\t\"\xc1\x01\n,CBroadcast_SendThumbnailToRelay_Notification\x12\x1e\n\x16thumbnail_upload_token\x18\x01 \x01(\t\x12&\n\x1ethumbnail_broadcast_session_id\x18\x02 \x01(\x06\x12\x16\n\x0ethumbnail_data\x18\x03 \x01(\x0c\x12\x17\n\x0fthumbnail_width\x18\x04 \x01(\r\x12\x18\n\x10thumbnail_height\x18\x05 \x01(\r\"L\n,CBroadcast_WebRTCNeedTURNServer_Notification\x12\x1c\n\x14\x62roadcast_session_id\x18\x01 \x01(\x06\"\x8c\x01\n#CBroadcast_WebRTCStart_Notification\x12\x1c\n\x14\x62roadcast_session_id\x18\x01 \x01(\x06\x12\x19\n\x11webrtc_session_id\x18\x02 \x01(\x06\x12\x16\n\x0eviewer_steamid\x18\x03 \x01(\x06\x12\x14\n\x0cviewer_token\x18\x04 \x01(\x06\"r\n\'CBroadcast_WebRTCSetAnswer_Notification\x12\x1c\n\x14\x62roadcast_session_id\x18\x01 \x01(\x06\x12\x19\n\x11webrtc_session_id\x18\x02 \x01(\x06\x12\x0e\n\x06\x61nswer\x18\x03 \x01(\t\"\x9c\x01\n0CBroadcast_WebRTCAddViewerCandidate_Notification\x12\x1c\n\x14\x62roadcast_session_id\x18\x01 \x01(\x06\x12\x19\n\x11webrtc_session_id\x18\x02 \x01(\x06\x12/\n\tcandidate\x18\x03 \x01(\x0b\x32\x1c.CBroadcast_WebRTC_Candidate*\xf5\x04\n\x17\x45\x42roadcastWatchLocation\x12%\n!k_EBroadcastWatchLocation_Invalid\x10\x00\x12)\n%k_EBroadcastWatchLocation_SteamTV_Tab\x10\x01\x12\x30\n,k_EBroadcastWatchLocation_SteamTV_WatchParty\x10\x02\x12&\n\"k_EBroadcastWatchLocation_Chat_Tab\x10\x03\x12-\n)k_EBroadcastWatchLocation_Chat_WatchParty\x10\x04\x12+\n\'k_EBroadcastWatchLocation_CommunityPage\x10\x05\x12*\n&k_EBroadcastWatchLocation_StoreAppPage\x10\x06\x12$\n k_EBroadcastWatchLocation_InGame\x10\x07\x12(\n$k_EBroadcastWatchLocation_BigPicture\x10\x08\x12\'\n#k_EBroadcastWatchLocation_SalesPage\x10\t\x12)\n%k_EBroadcastWatchLocation_CuratorPage\x10\n\x12+\n\'k_EBroadcastWatchLocation_DeveloperPage\x10\x0b\x12*\n&k_EBroadcastWatchLocation_Chat_Friends\x10\x0c\x12)\n%k_EBroadcastWatchLocation_SteamTV_Web\x10\r*g\n\x18\x45\x42roadcastChatPermission\x12$\n k_EBroadcastChatPermissionPublic\x10\x00\x12%\n!k_EBroadcastChatPermissionOwnsApp\x10\x01\x32\x86+\n\tBroadcast\x12\xed\x01\n\x15\x42\x65ginBroadcastSession\x12).CBroadcast_BeginBroadcastSession_Request\x1a*.CBroadcast_BeginBroadcastSession_Response\"}\x82\xb5\x18yRequest from client to directory to begin a broadcast session. No data being sent to relay; just available for broadcast.\x12\xba\x01\n\x13\x45ndBroadcastSession\x12\'.CBroadcast_EndBroadcastSession_Request\x1a(.CBroadcast_EndBroadcastSession_Response\"P\x82\xb5\x18LRequest from client to stop a broadcast session. Any uploads will terminate.\x12\xac\x01\n\x14StartBroadcastUpload\x12(.CBroadcast_StartBroadcastUpload_Request\x1a).CBroadcast_StartBroadcastUpload_Response\"?\x82\xb5\x18;Request from client to begin sending video for a broadcast.\x12\x99\x01\n\x19NotifyBroadcastUploadStop\x12\x32.CBroadcast_NotifyBroadcastUploadStop_Notification\x1a\x0b.NoResponse\";\x82\xb5\x18\x37Tells directory that client stopped uploading broadcast\x12\x87\x01\n\x0eWatchBroadcast\x12\".CBroadcast_WatchBroadcast_Request\x1a#.CBroadcast_WatchBroadcast_Response\",\x82\xb5\x18(Request from viewer to watch a broadcast\x12\x81\x01\n\x12HeartbeatBroadcast\x12+.CBroadcast_HeartbeatBroadcast_Notification\x1a\x0b.NoResponse\"1\x82\xb5\x18-Notify directory that user is still watching.\x12\xc1\x01\n\x15StopWatchingBroadcast\x12..CBroadcast_StopWatchingBroadcast_Notification\x1a\x0b.NoResponse\"k\x82\xb5\x18gRequest to immediately stop watching a broadcast. Optional Method, if not called, viewer will time out.\x12\x96\x01\n\x12GetBroadcastStatus\x12&.CBroadcast_GetBroadcastStatus_Request\x1a\'.CBroadcast_GetBroadcastStatus_Response\"/\x82\xb5\x18+Request from viewer about broadcast details\x12\x97\x01\n\x15GetBroadcastThumbnail\x12).CBroadcast_GetBroadcastThumbnail_Request\x1a*.CBroadcast_GetBroadcastThumbnail_Response\"\'\x82\xb5\x18#Request thumbnail URL for broadcast\x12\xa2\x01\n\x11InviteToBroadcast\x12%.CBroadcast_InviteToBroadcast_Request\x1a&.CBroadcast_InviteToBroadcast_Response\">\x82\xb5\x18:Invites another steam user to watch the caller\'s broadcast\x12\xc8\x01\n\x1aSendBroadcastStateToServer\x12..CBroadcast_SendBroadcastStateToServer_Request\x1a/.CBroadcast_SendBroadcastStateToServer_Response\"I\x82\xb5\x18\x45Sends users current broadcast state (permissions, game) to the server\x12\xa2\x01\n\x1fNotifyBroadcastSessionHeartbeat\x12\x38.CBroadcast_NotifyBroadcastSessionHeartbeat_Notification\x1a\x0b.NoResponse\"8\x82\xb5\x18\x34Tells directory broadcast session is still available\x12\x94\x01\n\x14GetBroadcastChatInfo\x12(.CBroadcast_GetBroadcastChatInfo_Request\x1a).CBroadcast_GetBroadcastChatInfo_Response\"\'\x82\xb5\x18#Gets chat room info for a broadcast\x12\x8a\x01\n\x0fPostChatMessage\x12#.CBroadcast_PostChatMessage_Request\x1a$.CBroadcast_PostChatMessage_Response\",\x82\xb5\x18(Post chat message to specified chat room\x12\xab\x01\n\x16UpdateChatMessageFlair\x12*.CBroadcast_UpdateChatMessageFlair_Request\x1a+.CBroadcast_UpdateChatMessageFlair_Response\"8\x82\xb5\x18\x34Update chat message flair in the specified chat room\x12\x96\x01\n\x15MuteBroadcastChatUser\x12).CBroadcast_MuteBroadcastChatUser_Request\x1a*.CBroadcast_MuteBroadcastChatUser_Response\"&\x82\xb5\x18\"Mute a user in your broadcast chat\x12\x94\x01\n\x12RemoveUserChatText\x12&.CBroadcast_RemoveUserChatText_Request\x1a\'.CBroadcast_RemoveUserChatText_Response\"-\x82\xb5\x18)Tell all viewers to remove user chat text\x12\xa3\x01\n\x19GetBroadcastChatUserNames\x12-.CBroadcast_GetBroadcastChatUserNames_Request\x1a..CBroadcast_GetBroadcastChatUserNames_Response\"\'\x82\xb5\x18#Get names for list of users in chat\x12~\n\x0eStartBuildClip\x12\".CBroadcast_StartBuildClip_Request\x1a#.CBroadcast_StartBuildClip_Response\"#\x82\xb5\x18\x1fStart building a broadcast clip\x12\x8a\x01\n\x12GetBuildClipStatus\x12&.CBroadcast_GetBuildClipStatus_Request\x1a\'.CBroadcast_GetBuildClipStatus_Response\"#\x82\xb5\x18\x1fStart building a broadcast clip\x12w\n\x0eSetClipDetails\x12\".CBroadcast_SetClipDetails_Request\x1a#.CBroadcast_SetClipDetails_Response\"\x1c\x82\xb5\x18\x18Updates a broadcast clip\x12~\n\x0eGetClipDetails\x12\".CBroadcast_GetClipDetails_Request\x1a#.CBroadcast_GetClipDetails_Response\"#\x82\xb5\x18\x1fGet details for Broadcast Clips\x12n\n\x0bSetRTMPInfo\x12\x1f.CBroadcast_SetRTMPInfo_Request\x1a .CBroadcast_SetRTMPInfo_Response\"\x1c\x82\xb5\x18\x18Sets RTMP broadcast info\x12n\n\x0bGetRTMPInfo\x12\x1f.CBroadcast_GetRTMPInfo_Request\x1a .CBroadcast_GetRTMPInfo_Response\"\x1c\x82\xb5\x18\x18Gets RTMP broadcast info\x12\x9e\x01\n\x1aNotifyWebRTCHaveTURNServer\x12-.CBroadcast_WebRTCHaveTURNServer_Notification\x1a\x0b.NoResponse\"D\x82\xb5\x18@Notification from client to server with the client\'s TURN server\x12\xac\x01\n\x11WebRTCStartResult\x12%.CBroadcast_WebRTCStartResult_Request\x1a&.CBroadcast_WebRTCStartResult_Response\"H\x82\xb5\x18\x44Notify the server that a WebRTC session has been created by the host\x12\xa0\x01\n\rWebRTCStopped\x12!.CBroadcast_WebRTCStopped_Request\x1a\".CBroadcast_WebRTCStopped_Response\"H\x82\xb5\x18\x44Notify the server that a WebRTC session has been stopped by the host\x12\xa8\x01\n\x0fWebRTCSetAnswer\x12#.CBroadcast_WebRTCSetAnswer_Request\x1a$.CBroadcast_WebRTCSetAnswer_Response\"J\x82\xb5\x18\x46Notify the server that a WebRTC session has been created by the viewer\x12\xa2\x01\n\x16WebRTCLookupTURNServer\x12*.CBroadcast_WebRTCLookupTURNServer_Request\x1a+.CBroadcast_WebRTCLookupTURNServer_Response\"/\x82\xb5\x18+Lookup the best TURN server for this client\x12\xb1\x01\n\x16WebRTCAddHostCandidate\x12*.CBroadcast_WebRTCAddHostCandidate_Request\x1a+.CBroadcast_WebRTCAddHostCandidate_Response\">\x82\xb5\x18:Add an ICE candidate for the host side of a WebRTC session\x12\xb9\x01\n\x18WebRTCAddViewerCandidate\x12,.CBroadcast_WebRTCAddViewerCandidate_Request\x1a-.CBroadcast_WebRTCAddViewerCandidate_Response\"@\x82\xb5\x18<Add an ICE candidate for the viewer side of a WebRTC session\x12\xb6\x01\n\x17WebRTCGetHostCandidates\x12+.CBroadcast_WebRTCGetHostCandidates_Request\x1a,.CBroadcast_WebRTCGetHostCandidates_Response\"@\x82\xb5\x18<Get the ICE candidates for the host side of a WebRTC session\x12\x9e\x01\n\x17GetBroadcastUploadStats\x12+.CBroadcast_GetBroadcastUploadStats_Request\x1a,.CBroadcast_GetBroadcastUploadStats_Response\"(\x82\xb5\x18$Gets broadcast upload stats for user\x12\x9f\x01\n\x17GetBroadcastViewerStats\x12+.CBroadcast_GetBroadcastViewerStats_Request\x1a,.CBroadcast_GetBroadcastViewerStats_Response\")\x82\xb5\x18%Gets viewer stats for given broadcast\x1a*\x82\xb5\x18&Methods for Steam broadcast operations2\xc4\x11\n\x0f\x42roadcastClient\x12\xa1\x01\n\x1aNotifyBroadcastViewerState\x12-.CBroadcast_BroadcastViewerState_Notification\x1a\x0b.NoResponse\"G\x82\xb5\x18\x43Notification from server to client that a viewers state has changed\x12\xbd\x01\n\x1cNotifyWaitingBroadcastViewer\x12/.CBroadcast_WaitingBroadcastViewer_Notification\x1a\x0b.NoResponse\"_\x82\xb5\x18[Notification from server to client one or more users is waiting for user to start broadcast\x12\xa7\x01\n\x1cNotifyBroadcastUploadStarted\x12/.CBroadcast_BroadcastUploadStarted_Notification\x1a\x0b.NoResponse\"I\x82\xb5\x18\x45Notification from server to client with information about a broadcast\x12\xd6\x01\n\x19NotifyStopBroadcastUpload\x12,.CBroadcast_StopBroadcastUpload_Notification\x1a\x0b.NoResponse\"~\x82\xb5\x18zNotification from server to client telling it to stop uploading when the last viewer has disconnected from their broadcast\x12\xb5\x01\n\x13NotifySessionClosed\x12&.CBroadcast_SessionClosed_Notification\x1a\x0b.NoResponse\"i\x82\xb5\x18\x65Notification from server to client telling it a session has been closed unexpectedly by the directory\x12\xc3\x01\n\x1bNotifyViewerBroadcastInvite\x12..CBroadcast_ViewerBroadcastInvite_Notification\x1a\x0b.NoResponse\"g\x82\xb5\x18\x63Notification from server to client that a broadcaster is inviting a viewer to watch their broadcast\x12\x95\x01\n\x15NotifyBroadcastStatus\x12(.CBroadcast_BroadcastStatus_Notification\x1a\x0b.NoResponse\"E\x82\xb5\x18\x41Notification from server to client about current broadcast status\x12\x9f\x01\n\x1aNotifyBroadcastChannelLive\x12-.CBroadcast_BroadcastChannelLive_Notification\x1a\x0b.NoResponse\"E\x82\xb5\x18\x41Notification from server to client about current broadcast status\x12p\n\x14SendThumbnailToRelay\x12-.CBroadcast_SendThumbnailToRelay_Notification\x1a\x0b.NoResponse\"\x1c\x82\xb5\x18\x18Send thumbnails to relay\x12\xa7\x01\n\x1aNotifyWebRTCNeedTURNServer\x12-.CBroadcast_WebRTCNeedTURNServer_Notification\x1a\x0b.NoResponse\"M\x82\xb5\x18INotification from server to client that it needs the client\'s TURN server\x12\x94\x01\n\x11NotifyWebRTCStart\x12$.CBroadcast_WebRTCStart_Notification\x1a\x0b.NoResponse\"L\x82\xb5\x18HNotification from server to client that it should start a WebRTC session\x12\x9f\x01\n\x15NotifyWebRTCSetAnswer\x12(.CBroadcast_WebRTCSetAnswer_Notification\x1a\x0b.NoResponse\"O\x82\xb5\x18KNotification from server to client about the broadcast viewer WebRTC answer\x12\xb6\x01\n\x1eNotifyWebRTCAddViewerCandidate\x12\x31.CBroadcast_WebRTCAddViewerCandidate_Notification\x1a\x0b.NoResponse\"T\x82\xb5\x18PNotification from server to client about a broadcast viewer WebRTC ICE candidate\x1a\x04\xc0\xb5\x18\x02\x42\x03\x90\x01\x01'
   ,
-  dependencies=[steammessages__unified__base__pb2.DESCRIPTOR,])
+  dependencies=[steammessages__base__pb2.DESCRIPTOR,steammessages__unified__base__pb2.DESCRIPTOR,])
 
 _EBROADCASTWATCHLOCATION = _descriptor.EnumDescriptor(
   name='EBroadcastWatchLocation',
   full_name='EBroadcastWatchLocation',
   filename=None,
   file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
   values=[
     _descriptor.EnumValueDescriptor(
       name='k_EBroadcastWatchLocation_Invalid', index=0, number=0,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EBroadcastWatchLocation_SteamTV_Tab', index=1, number=1,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EBroadcastWatchLocation_SteamTV_WatchParty', index=2, number=2,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EBroadcastWatchLocation_Chat_Tab', index=3, number=3,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EBroadcastWatchLocation_Chat_WatchParty', index=4, number=4,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EBroadcastWatchLocation_CommunityPage', index=5, number=5,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EBroadcastWatchLocation_StoreAppPage', index=6, number=6,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EBroadcastWatchLocation_InGame', index=7, number=7,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EBroadcastWatchLocation_BigPicture', index=8, number=8,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EBroadcastWatchLocation_SalesPage', index=9, number=9,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EBroadcastWatchLocation_CuratorPage', index=10, number=10,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EBroadcastWatchLocation_DeveloperPage', index=11, number=11,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EBroadcastWatchLocation_Chat_Friends', index=12, number=12,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EBroadcastWatchLocation_SteamTV_Web', index=13, number=13,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
   ],
   containing_type=None,
   serialized_options=None,
-  serialized_start=13723,
-  serialized_end=14352,
+  serialized_start=13955,
+  serialized_end=14584,
 )
 _sym_db.RegisterEnumDescriptor(_EBROADCASTWATCHLOCATION)
 
@@ -104,20 +119,23 @@ _EBROADCASTCHATPERMISSION = _descriptor.EnumDescriptor(
   full_name='EBroadcastChatPermission',
   filename=None,
   file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
   values=[
     _descriptor.EnumValueDescriptor(
       name='k_EBroadcastChatPermissionPublic', index=0, number=0,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EBroadcastChatPermissionOwnsApp', index=1, number=1,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
   ],
   containing_type=None,
   serialized_options=None,
-  serialized_start=14354,
-  serialized_end=14457,
+  serialized_start=14586,
+  serialized_end=14689,
 )
 _sym_db.RegisterEnumDescriptor(_EBROADCASTCHATPERMISSION)
 
@@ -145,60 +163,73 @@ _CBROADCAST_WATCHBROADCAST_RESPONSE_EWATCHRESPONSE = _descriptor.EnumDescriptor(
   full_name='CBroadcast_WatchBroadcast_Response.EWatchResponse',
   filename=None,
   file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
   values=[
     _descriptor.EnumValueDescriptor(
       name='k_EWatchResponseReady', index=0, number=1,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EWatchResponseNotAvailable', index=1, number=2,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EWatchResponseWaitingForApproval', index=2, number=3,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EWatchResponseWaitingForStart', index=3, number=4,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EWatchResponseInvalidSession', index=4, number=5,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EWatchResponseTooManyBroadcasts', index=5, number=6,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EWatchResponseWaitingForReconnect', index=6, number=7,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EWatchResponseSystemNotSupported', index=7, number=8,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EWatchResponseUserRestricted', index=8, number=9,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EWatchResponseClientOutOfDate', index=9, number=10,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EWatchResponsePoorUploadQuality', index=10, number=11,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EWatchResponseMissingSubscription', index=11, number=12,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
   ],
   containing_type=None,
   serialized_options=None,
-  serialized_start=2322,
-  serialized_end=2785,
+  serialized_start=2348,
+  serialized_end=2811,
 )
 _sym_db.RegisterEnumDescriptor(_CBROADCAST_WATCHBROADCAST_RESPONSE_EWATCHRESPONSE)
 
@@ -207,24 +238,28 @@ _CBROADCAST_BROADCASTVIEWERSTATE_NOTIFICATION_EVIEWERSTATE = _descriptor.EnumDes
   full_name='CBroadcast_BroadcastViewerState_Notification.EViewerState',
   filename=None,
   file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
   values=[
     _descriptor.EnumValueDescriptor(
       name='k_EViewerNeedsApproval', index=0, number=1,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EViewerWatching', index=1, number=2,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EViewerLeft', index=2, number=3,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
   ],
   containing_type=None,
   serialized_options=None,
-  serialized_start=12076,
-  serialized_end=12160,
+  serialized_start=12308,
+  serialized_end=12392,
 )
 _sym_db.RegisterEnumDescriptor(_CBROADCAST_BROADCASTVIEWERSTATE_NOTIFICATION_EVIEWERSTATE)
 
@@ -235,6 +270,7 @@ _CBROADCAST_BEGINBROADCASTSESSION_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='permission', full_name='CBroadcast_BeginBroadcastSession_Request.permission', index=0,
@@ -242,70 +278,70 @@ _CBROADCAST_BEGINBROADCASTSESSION_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='gameid', full_name='CBroadcast_BeginBroadcastSession_Request.gameid', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='client_instance_id', full_name='CBroadcast_BeginBroadcastSession_Request.client_instance_id', index=2,
       number=3, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='title', full_name='CBroadcast_BeginBroadcastSession_Request.title', index=3,
       number=4, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='cellid', full_name='CBroadcast_BeginBroadcastSession_Request.cellid', index=4,
       number=5, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='rtmp_token', full_name='CBroadcast_BeginBroadcastSession_Request.rtmp_token', index=5,
       number=6, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='thumbnail_upload', full_name='CBroadcast_BeginBroadcastSession_Request.thumbnail_upload', index=6,
       number=7, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='client_beta', full_name='CBroadcast_BeginBroadcastSession_Request.client_beta', index=7,
       number=8, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='sysid', full_name='CBroadcast_BeginBroadcastSession_Request.sysid', index=8,
       number=9, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='allow_webrtc', full_name='CBroadcast_BeginBroadcastSession_Request.allow_webrtc', index=9,
       number=10, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -318,8 +354,8 @@ _CBROADCAST_BEGINBROADCASTSESSION_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=68,
-  serialized_end=309,
+  serialized_start=94,
+  serialized_end=335,
 )
 
 
@@ -329,6 +365,7 @@ _CBROADCAST_BEGINBROADCASTSESSION_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='broadcast_id', full_name='CBroadcast_BeginBroadcastSession_Response.broadcast_id', index=0,
@@ -336,35 +373,35 @@ _CBROADCAST_BEGINBROADCASTSESSION_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='thumbnail_upload_address', full_name='CBroadcast_BeginBroadcastSession_Response.thumbnail_upload_address', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030*Http address to upload the thumbnail data.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030*Http address to upload the thumbnail data.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='thumbnail_upload_token', full_name='CBroadcast_BeginBroadcastSession_Response.thumbnail_upload_token', index=2,
       number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030Atoken to authorize as broadcaster to upload content to the relay.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030Atoken to authorize as broadcaster to upload content to the relay.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='thumbnail_interval_seconds', full_name='CBroadcast_BeginBroadcastSession_Response.thumbnail_interval_seconds', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030#how many seconds between thumbnails'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030#how many seconds between thumbnails', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='heartbeat_interval_seconds', full_name='CBroadcast_BeginBroadcastSession_Response.heartbeat_interval_seconds', index=4,
       number=5, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030+how many seconds between session heartbeats'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030+how many seconds between session heartbeats', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -377,8 +414,8 @@ _CBROADCAST_BEGINBROADCASTSESSION_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=312,
-  serialized_end=724,
+  serialized_start=338,
+  serialized_end=750,
 )
 
 
@@ -388,6 +425,7 @@ _CBROADCAST_ENDBROADCASTSESSION_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='broadcast_id', full_name='CBroadcast_EndBroadcastSession_Request.broadcast_id', index=0,
@@ -395,7 +433,7 @@ _CBROADCAST_ENDBROADCASTSESSION_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -408,8 +446,8 @@ _CBROADCAST_ENDBROADCASTSESSION_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=726,
-  serialized_end=788,
+  serialized_start=752,
+  serialized_end=814,
 )
 
 
@@ -419,6 +457,7 @@ _CBROADCAST_ENDBROADCASTSESSION_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -432,8 +471,8 @@ _CBROADCAST_ENDBROADCASTSESSION_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=790,
-  serialized_end=831,
+  serialized_start=816,
+  serialized_end=857,
 )
 
 
@@ -443,6 +482,7 @@ _CBROADCAST_STARTBROADCASTUPLOAD_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='broadcast_id', full_name='CBroadcast_StartBroadcastUpload_Request.broadcast_id', index=0,
@@ -450,56 +490,56 @@ _CBROADCAST_STARTBROADCASTUPLOAD_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='cellid', full_name='CBroadcast_StartBroadcastUpload_Request.cellid', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='as_rtmp', full_name='CBroadcast_StartBroadcastUpload_Request.as_rtmp', index=2,
       number=3, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='delay_seconds', full_name='CBroadcast_StartBroadcastUpload_Request.delay_seconds', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='rtmp_token', full_name='CBroadcast_StartBroadcastUpload_Request.rtmp_token', index=4,
       number=5, type=4, cpp_type=4, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\0307Only set during RTMP uploads; secret key from the user.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\0307Only set during RTMP uploads; secret key from the user.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='upload_ip_address', full_name='CBroadcast_StartBroadcastUpload_Request.upload_ip_address', index=5,
       number=6, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='is_replay', full_name='CBroadcast_StartBroadcastUpload_Request.is_replay', index=6,
       number=7, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='sysid', full_name='CBroadcast_StartBroadcastUpload_Request.sysid', index=7,
       number=8, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -512,8 +552,8 @@ _CBROADCAST_STARTBROADCASTUPLOAD_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=834,
-  serialized_end=1098,
+  serialized_start=860,
+  serialized_end=1124,
 )
 
 
@@ -523,42 +563,43 @@ _CBROADCAST_STARTBROADCASTUPLOAD_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='upload_token', full_name='CBroadcast_StartBroadcastUpload_Response.upload_token', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='upload_address', full_name='CBroadcast_StartBroadcastUpload_Response.upload_address', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='broadcast_upload_id', full_name='CBroadcast_StartBroadcastUpload_Response.broadcast_upload_id', index=2,
       number=3, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='enable_replay', full_name='CBroadcast_StartBroadcastUpload_Response.enable_replay', index=3,
       number=6, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='http_address', full_name='CBroadcast_StartBroadcastUpload_Response.http_address', index=4,
       number=7, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -571,8 +612,8 @@ _CBROADCAST_STARTBROADCASTUPLOAD_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1101,
-  serialized_end=1263,
+  serialized_start=1127,
+  serialized_end=1289,
 )
 
 
@@ -582,6 +623,7 @@ _CBROADCAST_NOTIFYBROADCASTUPLOADSTOP_NOTIFICATION = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='broadcast_upload_id', full_name='CBroadcast_NotifyBroadcastUploadStop_Notification.broadcast_upload_id', index=0,
@@ -589,14 +631,14 @@ _CBROADCAST_NOTIFYBROADCASTUPLOADSTOP_NOTIFICATION = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='upload_result', full_name='CBroadcast_NotifyBroadcastUploadStop_Notification.upload_result', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -609,8 +651,8 @@ _CBROADCAST_NOTIFYBROADCASTUPLOADSTOP_NOTIFICATION = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1265,
-  serialized_end=1368,
+  serialized_start=1291,
+  serialized_end=1394,
 )
 
 
@@ -620,6 +662,7 @@ _CBROADCAST_WATCHBROADCAST_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CBroadcast_WatchBroadcast_Request.steamid', index=0,
@@ -627,42 +670,42 @@ _CBROADCAST_WATCHBROADCAST_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\024broadcaster steamID.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\024broadcaster steamID.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='existing_broadcast_id', full_name='CBroadcast_WatchBroadcast_Request.existing_broadcast_id', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\0305broadcast session ID (optional, rejoin if specified).'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\0305broadcast session ID (optional, rejoin if specified).', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='viewer_token', full_name='CBroadcast_WatchBroadcast_Request.viewer_token', index=2,
       number=3, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030Hviewer token received from last WatchRequest call, from browser storage.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030Hviewer token received from last WatchRequest call, from browser storage.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='client_cell', full_name='CBroadcast_WatchBroadcast_Request.client_cell', index=3,
       number=5, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='watch_location', full_name='CBroadcast_WatchBroadcast_Request.watch_location', index=4,
       number=6, type=14, cpp_type=8, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='is_webrtc', full_name='CBroadcast_WatchBroadcast_Request.is_webrtc', index=5,
       number=7, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -675,8 +718,8 @@ _CBROADCAST_WATCHBROADCAST_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1371,
-  serialized_end=1764,
+  serialized_start=1397,
+  serialized_end=1790,
 )
 
 
@@ -686,6 +729,7 @@ _CBROADCAST_WATCHBROADCAST_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='response', full_name='CBroadcast_WatchBroadcast_Response.response', index=0,
@@ -693,140 +737,140 @@ _CBROADCAST_WATCHBROADCAST_RESPONSE = _descriptor.Descriptor(
       has_default_value=True, default_value=1,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='mpd_url', full_name='CBroadcast_WatchBroadcast_Response.mpd_url', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='broadcast_id', full_name='CBroadcast_WatchBroadcast_Response.broadcast_id', index=2,
       number=3, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='gameid', full_name='CBroadcast_WatchBroadcast_Response.gameid', index=3,
       number=4, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='title', full_name='CBroadcast_WatchBroadcast_Response.title', index=4,
       number=5, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='num_viewers', full_name='CBroadcast_WatchBroadcast_Response.num_viewers', index=5,
       number=6, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='permission', full_name='CBroadcast_WatchBroadcast_Response.permission', index=6,
       number=7, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='is_rtmp', full_name='CBroadcast_WatchBroadcast_Response.is_rtmp', index=7,
       number=8, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='seconds_delay', full_name='CBroadcast_WatchBroadcast_Response.seconds_delay', index=8,
       number=9, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='viewer_token', full_name='CBroadcast_WatchBroadcast_Response.viewer_token', index=9,
       number=10, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='hls_m3u8_master_url', full_name='CBroadcast_WatchBroadcast_Response.hls_m3u8_master_url', index=10,
       number=11, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='heartbeat_interval', full_name='CBroadcast_WatchBroadcast_Response.heartbeat_interval', index=11,
       number=12, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='thumbnail_url', full_name='CBroadcast_WatchBroadcast_Response.thumbnail_url', index=12,
       number=13, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='is_webrtc', full_name='CBroadcast_WatchBroadcast_Response.is_webrtc', index=13,
       number=14, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='webrtc_session_id', full_name='CBroadcast_WatchBroadcast_Response.webrtc_session_id', index=14,
       number=15, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='webrtc_offer_sdp', full_name='CBroadcast_WatchBroadcast_Response.webrtc_offer_sdp', index=15,
       number=16, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='webrtc_turn_server', full_name='CBroadcast_WatchBroadcast_Response.webrtc_turn_server', index=16,
       number=17, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='is_replay', full_name='CBroadcast_WatchBroadcast_Response.is_replay', index=17,
       number=18, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='duration', full_name='CBroadcast_WatchBroadcast_Response.duration', index=18,
       number=19, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='cdn_auth_url_parameters', full_name='CBroadcast_WatchBroadcast_Response.cdn_auth_url_parameters', index=19,
       number=20, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -840,8 +884,8 @@ _CBROADCAST_WATCHBROADCAST_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1767,
-  serialized_end=2785,
+  serialized_start=1793,
+  serialized_end=2811,
 )
 
 
@@ -851,6 +895,7 @@ _CBROADCAST_HEARTBEATBROADCAST_NOTIFICATION = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CBroadcast_HeartbeatBroadcast_Notification.steamid', index=0,
@@ -858,28 +903,28 @@ _CBROADCAST_HEARTBEATBROADCAST_NOTIFICATION = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\024broadcaster steamID.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\024broadcaster steamID.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='broadcast_id', full_name='CBroadcast_HeartbeatBroadcast_Notification.broadcast_id', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\025broadcast session ID.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\025broadcast session ID.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='viewer_token', full_name='CBroadcast_HeartbeatBroadcast_Notification.viewer_token', index=2,
       number=3, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030Hviewer token received from last WatchRequest call, from browser storage.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030Hviewer token received from last WatchRequest call, from browser storage.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='representation', full_name='CBroadcast_HeartbeatBroadcast_Notification.representation', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030$video stream representation watching'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030$video stream representation watching', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -892,8 +937,8 @@ _CBROADCAST_HEARTBEATBROADCAST_NOTIFICATION = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=2788,
-  serialized_end=3090,
+  serialized_start=2814,
+  serialized_end=3116,
 )
 
 
@@ -903,6 +948,7 @@ _CBROADCAST_STOPWATCHINGBROADCAST_NOTIFICATION = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CBroadcast_StopWatchingBroadcast_Notification.steamid', index=0,
@@ -910,21 +956,21 @@ _CBROADCAST_STOPWATCHINGBROADCAST_NOTIFICATION = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\024broadcaster steamID.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\024broadcaster steamID.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='broadcast_id', full_name='CBroadcast_StopWatchingBroadcast_Notification.broadcast_id', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\025broadcast session ID.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\025broadcast session ID.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='viewer_token', full_name='CBroadcast_StopWatchingBroadcast_Notification.viewer_token', index=2,
       number=3, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030Hviewer token received from last WatchRequest call, from browser storage.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030Hviewer token received from last WatchRequest call, from browser storage.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -937,8 +983,8 @@ _CBROADCAST_STOPWATCHINGBROADCAST_NOTIFICATION = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=3093,
-  serialized_end=3332,
+  serialized_start=3119,
+  serialized_end=3358,
 )
 
 
@@ -948,6 +994,7 @@ _CBROADCAST_GETBROADCASTSTATUS_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CBroadcast_GetBroadcastStatus_Request.steamid', index=0,
@@ -955,14 +1002,14 @@ _CBROADCAST_GETBROADCASTSTATUS_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\024broadcaster steamID.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\024broadcaster steamID.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='broadcast_id', full_name='CBroadcast_GetBroadcastStatus_Request.broadcast_id', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030Bbroadcast session ID to proof that user is allowed to see details.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030Bbroadcast session ID to proof that user is allowed to see details.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -975,8 +1022,8 @@ _CBROADCAST_GETBROADCASTSTATUS_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=3335,
-  serialized_end=3511,
+  serialized_start=3361,
+  serialized_end=3537,
 )
 
 
@@ -986,6 +1033,7 @@ _CBROADCAST_GETBROADCASTSTATUS_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='gameid', full_name='CBroadcast_GetBroadcastStatus_Response.gameid', index=0,
@@ -993,98 +1041,98 @@ _CBROADCAST_GETBROADCASTSTATUS_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='title', full_name='CBroadcast_GetBroadcastStatus_Response.title', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='num_viewers', full_name='CBroadcast_GetBroadcastStatus_Response.num_viewers', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='permission', full_name='CBroadcast_GetBroadcastStatus_Response.permission', index=3,
       number=4, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='is_rtmp', full_name='CBroadcast_GetBroadcastStatus_Response.is_rtmp', index=4,
       number=5, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='seconds_delay', full_name='CBroadcast_GetBroadcastStatus_Response.seconds_delay', index=5,
       number=6, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='is_publisher', full_name='CBroadcast_GetBroadcastStatus_Response.is_publisher', index=6,
       number=7, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='thumbnail_url', full_name='CBroadcast_GetBroadcastStatus_Response.thumbnail_url', index=7,
       number=8, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='update_interval', full_name='CBroadcast_GetBroadcastStatus_Response.update_interval', index=8,
       number=9, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='is_uploading', full_name='CBroadcast_GetBroadcastStatus_Response.is_uploading', index=9,
       number=10, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='duration', full_name='CBroadcast_GetBroadcastStatus_Response.duration', index=10,
       number=11, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='is_replay', full_name='CBroadcast_GetBroadcastStatus_Response.is_replay', index=11,
       number=12, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='is_capturing_vod', full_name='CBroadcast_GetBroadcastStatus_Response.is_capturing_vod', index=12,
       number=13, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='is_store_whitelisted', full_name='CBroadcast_GetBroadcastStatus_Response.is_store_whitelisted', index=13,
       number=14, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1097,8 +1145,8 @@ _CBROADCAST_GETBROADCASTSTATUS_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=3514,
-  serialized_end=3851,
+  serialized_start=3540,
+  serialized_end=3877,
 )
 
 
@@ -1108,6 +1156,7 @@ _CBROADCAST_GETBROADCASTTHUMBNAIL_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CBroadcast_GetBroadcastThumbnail_Request.steamid', index=0,
@@ -1115,14 +1164,14 @@ _CBROADCAST_GETBROADCASTTHUMBNAIL_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='broadcast_id', full_name='CBroadcast_GetBroadcastThumbnail_Request.broadcast_id', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1135,8 +1184,8 @@ _CBROADCAST_GETBROADCASTTHUMBNAIL_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=3853,
-  serialized_end=3934,
+  serialized_start=3879,
+  serialized_end=3960,
 )
 
 
@@ -1146,35 +1195,36 @@ _CBROADCAST_GETBROADCASTTHUMBNAIL_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='thumbnail_url', full_name='CBroadcast_GetBroadcastThumbnail_Response.thumbnail_url', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='update_interval', full_name='CBroadcast_GetBroadcastThumbnail_Response.update_interval', index=1,
       number=2, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='num_viewers', full_name='CBroadcast_GetBroadcastThumbnail_Response.num_viewers', index=2,
       number=3, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='duration', full_name='CBroadcast_GetBroadcastThumbnail_Response.duration', index=3,
       number=4, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1187,8 +1237,8 @@ _CBROADCAST_GETBROADCASTTHUMBNAIL_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=3937,
-  serialized_end=4067,
+  serialized_start=3963,
+  serialized_end=4093,
 )
 
 
@@ -1198,6 +1248,7 @@ _CBROADCAST_INVITETOBROADCAST_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CBroadcast_InviteToBroadcast_Request.steamid', index=0,
@@ -1205,14 +1256,14 @@ _CBROADCAST_INVITETOBROADCAST_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='approval_response', full_name='CBroadcast_InviteToBroadcast_Request.approval_response', index=1,
       number=2, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1225,8 +1276,8 @@ _CBROADCAST_INVITETOBROADCAST_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=4069,
-  serialized_end=4151,
+  serialized_start=4095,
+  serialized_end=4177,
 )
 
 
@@ -1236,6 +1287,7 @@ _CBROADCAST_INVITETOBROADCAST_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='success', full_name='CBroadcast_InviteToBroadcast_Response.success', index=0,
@@ -1243,7 +1295,7 @@ _CBROADCAST_INVITETOBROADCAST_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1256,8 +1308,8 @@ _CBROADCAST_INVITETOBROADCAST_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=4153,
-  serialized_end=4209,
+  serialized_start=4179,
+  serialized_end=4235,
 )
 
 
@@ -1267,6 +1319,7 @@ _CBROADCAST_SENDBROADCASTSTATETOSERVER_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='permission', full_name='CBroadcast_SendBroadcastStateToServer_Request.permission', index=0,
@@ -1274,28 +1327,28 @@ _CBROADCAST_SENDBROADCASTSTATETOSERVER_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='gameid', full_name='CBroadcast_SendBroadcastStateToServer_Request.gameid', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='title', full_name='CBroadcast_SendBroadcastStateToServer_Request.title', index=2,
       number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='game_data_config', full_name='CBroadcast_SendBroadcastStateToServer_Request.game_data_config', index=3,
       number=4, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1308,8 +1361,8 @@ _CBROADCAST_SENDBROADCASTSTATETOSERVER_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=4211,
-  serialized_end=4335,
+  serialized_start=4237,
+  serialized_end=4361,
 )
 
 
@@ -1319,6 +1372,7 @@ _CBROADCAST_SENDBROADCASTSTATETOSERVER_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -1332,8 +1386,8 @@ _CBROADCAST_SENDBROADCASTSTATETOSERVER_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=4337,
-  serialized_end=4385,
+  serialized_start=4363,
+  serialized_end=4411,
 )
 
 
@@ -1343,6 +1397,7 @@ _CBROADCAST_NOTIFYBROADCASTSESSIONHEARTBEAT_NOTIFICATION = _descriptor.Descripto
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='broadcast_id', full_name='CBroadcast_NotifyBroadcastSessionHeartbeat_Notification.broadcast_id', index=0,
@@ -1350,7 +1405,7 @@ _CBROADCAST_NOTIFYBROADCASTSESSIONHEARTBEAT_NOTIFICATION = _descriptor.Descripto
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1363,8 +1418,8 @@ _CBROADCAST_NOTIFYBROADCASTSESSIONHEARTBEAT_NOTIFICATION = _descriptor.Descripto
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=4387,
-  serialized_end=4466,
+  serialized_start=4413,
+  serialized_end=4492,
 )
 
 
@@ -1374,6 +1429,7 @@ _CBROADCAST_GETBROADCASTCHATINFO_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CBroadcast_GetBroadcastChatInfo_Request.steamid', index=0,
@@ -1381,28 +1437,28 @@ _CBROADCAST_GETBROADCASTCHATINFO_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='broadcast_id', full_name='CBroadcast_GetBroadcastChatInfo_Request.broadcast_id', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='client_ip', full_name='CBroadcast_GetBroadcastChatInfo_Request.client_ip', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='client_cell', full_name='CBroadcast_GetBroadcastChatInfo_Request.client_cell', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1415,8 +1471,8 @@ _CBROADCAST_GETBROADCASTCHATINFO_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=4468,
-  serialized_end=4588,
+  serialized_start=4494,
+  serialized_end=4614,
 )
 
 
@@ -1426,6 +1482,7 @@ _CBROADCAST_GETBROADCASTCHATINFO_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='chat_id', full_name='CBroadcast_GetBroadcastChatInfo_Response.chat_id', index=0,
@@ -1433,21 +1490,21 @@ _CBROADCAST_GETBROADCASTCHATINFO_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='view_url_template', full_name='CBroadcast_GetBroadcastChatInfo_Response.view_url_template', index=1,
       number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='flair_group_ids', full_name='CBroadcast_GetBroadcastChatInfo_Response.flair_group_ids', index=2,
       number=4, type=13, cpp_type=3, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1460,8 +1517,8 @@ _CBROADCAST_GETBROADCASTCHATINFO_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=4590,
-  serialized_end=4701,
+  serialized_start=4616,
+  serialized_end=4727,
 )
 
 
@@ -1471,6 +1528,7 @@ _CBROADCAST_POSTCHATMESSAGE_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='chat_id', full_name='CBroadcast_PostChatMessage_Request.chat_id', index=0,
@@ -1478,35 +1536,35 @@ _CBROADCAST_POSTCHATMESSAGE_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='message', full_name='CBroadcast_PostChatMessage_Request.message', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='instance_id', full_name='CBroadcast_PostChatMessage_Request.instance_id', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='language', full_name='CBroadcast_PostChatMessage_Request.language', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030=ELanguage of the user posting the message, default is english'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030=ELanguage of the user posting the message, default is english', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='country_code', full_name='CBroadcast_PostChatMessage_Request.country_code', index=4,
       number=5, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\033The two letter country code'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\033The two letter country code', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1519,8 +1577,8 @@ _CBROADCAST_POSTCHATMESSAGE_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=4704,
-  serialized_end=4938,
+  serialized_start=4730,
+  serialized_end=4964,
 )
 
 
@@ -1530,35 +1588,36 @@ _CBROADCAST_POSTCHATMESSAGE_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='persona_name', full_name='CBroadcast_PostChatMessage_Response.persona_name', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='in_game', full_name='CBroadcast_PostChatMessage_Response.in_game', index=1,
       number=2, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='result', full_name='CBroadcast_PostChatMessage_Response.result', index=2,
       number=3, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='cooldown_time_seconds', full_name='CBroadcast_PostChatMessage_Response.cooldown_time_seconds', index=3,
       number=4, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1571,8 +1630,8 @@ _CBROADCAST_POSTCHATMESSAGE_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=4940,
-  serialized_end=5063,
+  serialized_start=4966,
+  serialized_end=5089,
 )
 
 
@@ -1582,6 +1641,7 @@ _CBROADCAST_UPDATECHATMESSAGEFLAIR_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='chat_id', full_name='CBroadcast_UpdateChatMessageFlair_Request.chat_id', index=0,
@@ -1589,14 +1649,14 @@ _CBROADCAST_UPDATECHATMESSAGEFLAIR_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='flair', full_name='CBroadcast_UpdateChatMessageFlair_Request.flair', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1609,8 +1669,8 @@ _CBROADCAST_UPDATECHATMESSAGEFLAIR_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=5065,
-  serialized_end=5140,
+  serialized_start=5091,
+  serialized_end=5166,
 )
 
 
@@ -1620,6 +1680,7 @@ _CBROADCAST_UPDATECHATMESSAGEFLAIR_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='result', full_name='CBroadcast_UpdateChatMessageFlair_Response.result', index=0,
@@ -1627,21 +1688,21 @@ _CBROADCAST_UPDATECHATMESSAGEFLAIR_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='chat_id', full_name='CBroadcast_UpdateChatMessageFlair_Response.chat_id', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='flair', full_name='CBroadcast_UpdateChatMessageFlair_Response.flair', index=2,
       number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1654,8 +1715,8 @@ _CBROADCAST_UPDATECHATMESSAGEFLAIR_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=5142,
-  serialized_end=5234,
+  serialized_start=5168,
+  serialized_end=5260,
 )
 
 
@@ -1665,6 +1726,7 @@ _CBROADCAST_MUTEBROADCASTCHATUSER_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='chat_id', full_name='CBroadcast_MuteBroadcastChatUser_Request.chat_id', index=0,
@@ -1672,21 +1734,21 @@ _CBROADCAST_MUTEBROADCASTCHATUSER_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='user_steamid', full_name='CBroadcast_MuteBroadcastChatUser_Request.user_steamid', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='muted', full_name='CBroadcast_MuteBroadcastChatUser_Request.muted', index=2,
       number=3, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1699,8 +1761,8 @@ _CBROADCAST_MUTEBROADCASTCHATUSER_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=5236,
-  serialized_end=5332,
+  serialized_start=5262,
+  serialized_end=5358,
 )
 
 
@@ -1710,6 +1772,7 @@ _CBROADCAST_MUTEBROADCASTCHATUSER_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -1723,8 +1786,8 @@ _CBROADCAST_MUTEBROADCASTCHATUSER_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=5334,
-  serialized_end=5377,
+  serialized_start=5360,
+  serialized_end=5403,
 )
 
 
@@ -1734,6 +1797,7 @@ _CBROADCAST_REMOVEUSERCHATTEXT_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='chat_id', full_name='CBroadcast_RemoveUserChatText_Request.chat_id', index=0,
@@ -1741,14 +1805,14 @@ _CBROADCAST_REMOVEUSERCHATTEXT_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='user_steamid', full_name='CBroadcast_RemoveUserChatText_Request.user_steamid', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1761,8 +1825,8 @@ _CBROADCAST_REMOVEUSERCHATTEXT_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=5379,
-  serialized_end=5457,
+  serialized_start=5405,
+  serialized_end=5483,
 )
 
 
@@ -1772,6 +1836,7 @@ _CBROADCAST_REMOVEUSERCHATTEXT_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -1785,8 +1850,8 @@ _CBROADCAST_REMOVEUSERCHATTEXT_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=5459,
-  serialized_end=5499,
+  serialized_start=5485,
+  serialized_end=5525,
 )
 
 
@@ -1796,6 +1861,7 @@ _CBROADCAST_GETBROADCASTCHATUSERNAMES_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='chat_id', full_name='CBroadcast_GetBroadcastChatUserNames_Request.chat_id', index=0,
@@ -1803,14 +1869,14 @@ _CBROADCAST_GETBROADCASTCHATUSERNAMES_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='user_steamid', full_name='CBroadcast_GetBroadcastChatUserNames_Request.user_steamid', index=1,
       number=2, type=6, cpp_type=4, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1823,8 +1889,8 @@ _CBROADCAST_GETBROADCASTCHATUSERNAMES_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=5501,
-  serialized_end=5586,
+  serialized_start=5527,
+  serialized_end=5612,
 )
 
 
@@ -1834,6 +1900,7 @@ _CBROADCAST_GETBROADCASTCHATUSERNAMES_RESPONSE_PERSONANAME = _descriptor.Descrip
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steam_id', full_name='CBroadcast_GetBroadcastChatUserNames_Response.PersonaName.steam_id', index=0,
@@ -1841,14 +1908,14 @@ _CBROADCAST_GETBROADCASTCHATUSERNAMES_RESPONSE_PERSONANAME = _descriptor.Descrip
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=b'\300\266\030\001', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='persona', full_name='CBroadcast_GetBroadcastChatUserNames_Response.PersonaName.persona', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1861,8 +1928,8 @@ _CBROADCAST_GETBROADCASTCHATUSERNAMES_RESPONSE_PERSONANAME = _descriptor.Descrip
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=5721,
-  serialized_end=5769,
+  serialized_start=5747,
+  serialized_end=5801,
 )
 
 _CBROADCAST_GETBROADCASTCHATUSERNAMES_RESPONSE = _descriptor.Descriptor(
@@ -1871,6 +1938,7 @@ _CBROADCAST_GETBROADCASTCHATUSERNAMES_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='persona_names', full_name='CBroadcast_GetBroadcastChatUserNames_Response.persona_names', index=0,
@@ -1878,7 +1946,7 @@ _CBROADCAST_GETBROADCASTCHATUSERNAMES_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1891,8 +1959,8 @@ _CBROADCAST_GETBROADCASTCHATUSERNAMES_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=5589,
-  serialized_end=5769,
+  serialized_start=5615,
+  serialized_end=5801,
 )
 
 
@@ -1902,6 +1970,7 @@ _CBROADCAST_STARTBUILDCLIP_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CBroadcast_StartBuildClip_Request.steamid', index=0,
@@ -1909,35 +1978,35 @@ _CBROADCAST_STARTBUILDCLIP_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='broadcast_session_id', full_name='CBroadcast_StartBuildClip_Request.broadcast_session_id', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='first_segment', full_name='CBroadcast_StartBuildClip_Request.first_segment', index=2,
       number=3, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='num_segments', full_name='CBroadcast_StartBuildClip_Request.num_segments', index=3,
       number=4, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='clip_description', full_name='CBroadcast_StartBuildClip_Request.clip_description', index=4,
       number=5, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1950,8 +2019,8 @@ _CBROADCAST_STARTBUILDCLIP_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=5772,
-  serialized_end=5925,
+  serialized_start=5804,
+  serialized_end=5957,
 )
 
 
@@ -1961,6 +2030,7 @@ _CBROADCAST_STARTBUILDCLIP_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='broadcast_clip_id', full_name='CBroadcast_StartBuildClip_Response.broadcast_clip_id', index=0,
@@ -1968,7 +2038,7 @@ _CBROADCAST_STARTBUILDCLIP_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1981,8 +2051,8 @@ _CBROADCAST_STARTBUILDCLIP_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=5927,
-  serialized_end=5990,
+  serialized_start=5959,
+  serialized_end=6022,
 )
 
 
@@ -1992,6 +2062,7 @@ _CBROADCAST_GETBUILDCLIPSTATUS_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='broadcast_clip_id', full_name='CBroadcast_GetBuildClipStatus_Request.broadcast_clip_id', index=0,
@@ -1999,7 +2070,7 @@ _CBROADCAST_GETBUILDCLIPSTATUS_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2012,8 +2083,8 @@ _CBROADCAST_GETBUILDCLIPSTATUS_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=5992,
-  serialized_end=6058,
+  serialized_start=6024,
+  serialized_end=6090,
 )
 
 
@@ -2023,6 +2094,7 @@ _CBROADCAST_GETBUILDCLIPSTATUS_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -2036,8 +2108,8 @@ _CBROADCAST_GETBUILDCLIPSTATUS_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=6060,
-  serialized_end=6100,
+  serialized_start=6092,
+  serialized_end=6132,
 )
 
 
@@ -2047,6 +2119,7 @@ _CBROADCAST_SETCLIPDETAILS_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='broadcast_clip_id', full_name='CBroadcast_SetClipDetails_Request.broadcast_clip_id', index=0,
@@ -2054,28 +2127,28 @@ _CBROADCAST_SETCLIPDETAILS_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\007Clip ID'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\007Clip ID', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='start_time', full_name='CBroadcast_SetClipDetails_Request.start_time', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\026start time of the clip'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\026start time of the clip', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='end_time', full_name='CBroadcast_SetClipDetails_Request.end_time', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\024end time of the clip'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\024end time of the clip', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='video_description', full_name='CBroadcast_SetClipDetails_Request.video_description', index=3,
       number=4, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2088,8 +2161,8 @@ _CBROADCAST_SETCLIPDETAILS_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=6103,
-  serialized_end=6297,
+  serialized_start=6135,
+  serialized_end=6329,
 )
 
 
@@ -2099,6 +2172,7 @@ _CBROADCAST_SETCLIPDETAILS_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -2112,8 +2186,8 @@ _CBROADCAST_SETCLIPDETAILS_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=6299,
-  serialized_end=6335,
+  serialized_start=6331,
+  serialized_end=6367,
 )
 
 
@@ -2123,6 +2197,7 @@ _CBROADCAST_GETCLIPDETAILS_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='broadcast_clip_id', full_name='CBroadcast_GetClipDetails_Request.broadcast_clip_id', index=0,
@@ -2130,7 +2205,7 @@ _CBROADCAST_GETCLIPDETAILS_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030$List of clip IDs we want details for'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030$List of clip IDs we want details for', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2143,8 +2218,8 @@ _CBROADCAST_GETCLIPDETAILS_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=6337,
-  serialized_end=6441,
+  serialized_start=6369,
+  serialized_end=6473,
 )
 
 
@@ -2154,6 +2229,7 @@ _CBROADCAST_GETCLIPDETAILS_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='broadcast_clip_id', full_name='CBroadcast_GetClipDetails_Response.broadcast_clip_id', index=0,
@@ -2161,70 +2237,70 @@ _CBROADCAST_GETCLIPDETAILS_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\021broadcast clip ID'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\021broadcast clip ID', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='video_id', full_name='CBroadcast_GetClipDetails_Response.video_id', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\030matching unique video ID'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\030matching unique video ID', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='channel_id', full_name='CBroadcast_GetClipDetails_Response.channel_id', index=2,
       number=3, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\024Broadcast Channel ID'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\024Broadcast Channel ID', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CBroadcast_GetClipDetails_Response.app_id', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\034App ID stream is tagged with'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\034App ID stream is tagged with', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='accountid_broadcaster', full_name='CBroadcast_GetClipDetails_Response.accountid_broadcaster', index=4,
       number=5, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\031Account ID of broadcaster'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\031Account ID of broadcaster', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='accountid_clipmaker', full_name='CBroadcast_GetClipDetails_Response.accountid_clipmaker', index=5,
       number=6, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\030Account ID of clip-maker'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\030Account ID of clip-maker', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='video_description', full_name='CBroadcast_GetClipDetails_Response.video_description', index=6,
       number=7, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030&Short name or description of this clip'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030&Short name or description of this clip', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='start_time', full_name='CBroadcast_GetClipDetails_Response.start_time', index=7,
       number=8, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030#Wall time clip was broadcasted live'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030#Wall time clip was broadcasted live', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='length_milliseconds', full_name='CBroadcast_GetClipDetails_Response.length_milliseconds', index=8,
       number=9, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\025length of video in MS'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\025length of video in MS', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='thumbnail_path', full_name='CBroadcast_GetClipDetails_Response.thumbnail_path', index=9,
       number=10, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\026Path for thumbnail URL'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\026Path for thumbnail URL', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2237,8 +2313,8 @@ _CBROADCAST_GETCLIPDETAILS_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=6444,
-  serialized_end=7035,
+  serialized_start=6476,
+  serialized_end=7067,
 )
 
 
@@ -2248,6 +2324,7 @@ _CBROADCAST_SETRTMPINFO_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='broadcast_permission', full_name='CBroadcast_SetRTMPInfo_Request.broadcast_permission', index=0,
@@ -2255,70 +2332,77 @@ _CBROADCAST_SETRTMPINFO_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='update_token', full_name='CBroadcast_SetRTMPInfo_Request.update_token', index=1,
       number=2, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='broadcast_delay', full_name='CBroadcast_SetRTMPInfo_Request.broadcast_delay', index=2,
       number=3, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CBroadcast_SetRTMPInfo_Request.app_id', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='required_app_id', full_name='CBroadcast_SetRTMPInfo_Request.required_app_id', index=4,
       number=5, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='broadcast_chat_permission', full_name='CBroadcast_SetRTMPInfo_Request.broadcast_chat_permission', index=5,
       number=6, type=14, cpp_type=8, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\0308Who is permitted to send a chat message during broadcast'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\0308Who is permitted to send a chat message during broadcast', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='broadcast_buffer', full_name='CBroadcast_SetRTMPInfo_Request.broadcast_buffer', index=6,
       number=7, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\0300Previous seconds we keep of the stream available'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\0300Previous seconds we keep of the stream available', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CBroadcast_SetRTMPInfo_Request.steamid', index=7,
       number=8, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030)broadcaster steamID if not logged-in user'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030)broadcaster steamID if not logged-in user', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='chat_rate_limit', full_name='CBroadcast_SetRTMPInfo_Request.chat_rate_limit', index=8,
       number=9, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030&Seconds required between chat messages'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030&Seconds required between chat messages', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='enable_replay', full_name='CBroadcast_SetRTMPInfo_Request.enable_replay', index=9,
       number=10, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\034Enable replay of last upload'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\034Enable replay of last upload', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='is_partner_chat_only', full_name='CBroadcast_SetRTMPInfo_Request.is_partner_chat_only', index=10,
+      number=11, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030@When true, then only steamwork partner can create chat messages.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2331,8 +2415,8 @@ _CBROADCAST_SETRTMPINFO_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=7038,
-  serialized_end=7617,
+  serialized_start=7070,
+  serialized_end=7749,
 )
 
 
@@ -2342,6 +2426,7 @@ _CBROADCAST_SETRTMPINFO_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -2355,8 +2440,8 @@ _CBROADCAST_SETRTMPINFO_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=7619,
-  serialized_end=7652,
+  serialized_start=7751,
+  serialized_end=7784,
 )
 
 
@@ -2366,6 +2451,7 @@ _CBROADCAST_GETRTMPINFO_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='ip', full_name='CBroadcast_GetRTMPInfo_Request.ip', index=0,
@@ -2373,14 +2459,14 @@ _CBROADCAST_GETRTMPINFO_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CBroadcast_GetRTMPInfo_Request.steamid', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030)broadcaster steamID if not logged-in user'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030)broadcaster steamID if not logged-in user', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2393,8 +2479,8 @@ _CBROADCAST_GETRTMPINFO_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=7654,
-  serialized_end=7762,
+  serialized_start=7786,
+  serialized_end=7894,
 )
 
 
@@ -2404,6 +2490,7 @@ _CBROADCAST_GETRTMPINFO_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='broadcast_permission', full_name='CBroadcast_GetRTMPInfo_Response.broadcast_permission', index=0,
@@ -2411,77 +2498,84 @@ _CBROADCAST_GETRTMPINFO_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='rtmp_host', full_name='CBroadcast_GetRTMPInfo_Response.rtmp_host', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='rtmp_token', full_name='CBroadcast_GetRTMPInfo_Response.rtmp_token', index=2,
       number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='broadcast_delay', full_name='CBroadcast_GetRTMPInfo_Response.broadcast_delay', index=3,
       number=4, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CBroadcast_GetRTMPInfo_Response.app_id', index=4,
       number=5, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='required_app_id', full_name='CBroadcast_GetRTMPInfo_Response.required_app_id', index=5,
       number=6, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='broadcast_chat_permission', full_name='CBroadcast_GetRTMPInfo_Response.broadcast_chat_permission', index=6,
       number=7, type=14, cpp_type=8, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\0308Who is permitted to send a chat message during broadcast'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\0308Who is permitted to send a chat message during broadcast', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='broadcast_buffer', full_name='CBroadcast_GetRTMPInfo_Response.broadcast_buffer', index=7,
       number=8, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030!Seconds we keep streams available'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030!Seconds we keep streams available', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CBroadcast_GetRTMPInfo_Response.steamid', index=8,
       number=9, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\023broadcaster steamID'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\023broadcaster steamID', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='chat_rate_limit', full_name='CBroadcast_GetRTMPInfo_Response.chat_rate_limit', index=9,
       number=10, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030&Seconds required between chat messages'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030&Seconds required between chat messages', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='enable_replay', full_name='CBroadcast_GetRTMPInfo_Response.enable_replay', index=10,
       number=11, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\034Enable replay of last upload'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\034Enable replay of last upload', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='is_partner_chat_only', full_name='CBroadcast_GetRTMPInfo_Response.is_partner_chat_only', index=11,
+      number=12, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030@When true, then only steamwork partner can create chat messages.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2494,8 +2588,8 @@ _CBROADCAST_GETRTMPINFO_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=7765,
-  serialized_end=8325,
+  serialized_start=7897,
+  serialized_end=8557,
 )
 
 
@@ -2505,6 +2599,7 @@ _CBROADCAST_WEBRTCHAVETURNSERVER_NOTIFICATION = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='broadcast_session_id', full_name='CBroadcast_WebRTCHaveTURNServer_Notification.broadcast_session_id', index=0,
@@ -2512,14 +2607,14 @@ _CBROADCAST_WEBRTCHAVETURNSERVER_NOTIFICATION = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='turn_server', full_name='CBroadcast_WebRTCHaveTURNServer_Notification.turn_server', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2532,8 +2627,8 @@ _CBROADCAST_WEBRTCHAVETURNSERVER_NOTIFICATION = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=8327,
-  serialized_end=8424,
+  serialized_start=8559,
+  serialized_end=8656,
 )
 
 
@@ -2543,6 +2638,7 @@ _CBROADCAST_WEBRTCSTARTRESULT_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='webrtc_session_id', full_name='CBroadcast_WebRTCStartResult_Request.webrtc_session_id', index=0,
@@ -2550,42 +2646,42 @@ _CBROADCAST_WEBRTCSTARTRESULT_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='started', full_name='CBroadcast_WebRTCStartResult_Request.started', index=1,
       number=2, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='offer', full_name='CBroadcast_WebRTCStartResult_Request.offer', index=2,
       number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='resolution_x', full_name='CBroadcast_WebRTCStartResult_Request.resolution_x', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='resolution_y', full_name='CBroadcast_WebRTCStartResult_Request.resolution_y', index=4,
       number=5, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='fps', full_name='CBroadcast_WebRTCStartResult_Request.fps', index=5,
       number=6, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2598,8 +2694,8 @@ _CBROADCAST_WEBRTCSTARTRESULT_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=8427,
-  serialized_end=8581,
+  serialized_start=8659,
+  serialized_end=8813,
 )
 
 
@@ -2609,6 +2705,7 @@ _CBROADCAST_WEBRTCSTARTRESULT_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -2622,8 +2719,8 @@ _CBROADCAST_WEBRTCSTARTRESULT_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=8583,
-  serialized_end=8622,
+  serialized_start=8815,
+  serialized_end=8854,
 )
 
 
@@ -2633,6 +2730,7 @@ _CBROADCAST_WEBRTCSTOPPED_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='webrtc_session_id', full_name='CBroadcast_WebRTCStopped_Request.webrtc_session_id', index=0,
@@ -2640,7 +2738,7 @@ _CBROADCAST_WEBRTCSTOPPED_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2653,8 +2751,8 @@ _CBROADCAST_WEBRTCSTOPPED_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=8624,
-  serialized_end=8685,
+  serialized_start=8856,
+  serialized_end=8917,
 )
 
 
@@ -2664,6 +2762,7 @@ _CBROADCAST_WEBRTCSTOPPED_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -2677,8 +2776,8 @@ _CBROADCAST_WEBRTCSTOPPED_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=8687,
-  serialized_end=8722,
+  serialized_start=8919,
+  serialized_end=8954,
 )
 
 
@@ -2688,6 +2787,7 @@ _CBROADCAST_WEBRTCSETANSWER_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='broadcaster_steamid', full_name='CBroadcast_WebRTCSetAnswer_Request.broadcaster_steamid', index=0,
@@ -2695,21 +2795,21 @@ _CBROADCAST_WEBRTCSETANSWER_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='webrtc_session_id', full_name='CBroadcast_WebRTCSetAnswer_Request.webrtc_session_id', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='answer', full_name='CBroadcast_WebRTCSetAnswer_Request.answer', index=2,
       number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2722,8 +2822,8 @@ _CBROADCAST_WEBRTCSETANSWER_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=8724,
-  serialized_end=8832,
+  serialized_start=8956,
+  serialized_end=9064,
 )
 
 
@@ -2733,6 +2833,7 @@ _CBROADCAST_WEBRTCSETANSWER_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -2746,8 +2847,8 @@ _CBROADCAST_WEBRTCSETANSWER_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=8834,
-  serialized_end=8871,
+  serialized_start=9066,
+  serialized_end=9103,
 )
 
 
@@ -2757,6 +2858,7 @@ _CBROADCAST_WEBRTCLOOKUPTURNSERVER_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='cellid', full_name='CBroadcast_WebRTCLookupTURNServer_Request.cellid', index=0,
@@ -2764,7 +2866,7 @@ _CBROADCAST_WEBRTCLOOKUPTURNSERVER_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2777,8 +2879,8 @@ _CBROADCAST_WEBRTCLOOKUPTURNSERVER_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=8873,
-  serialized_end=8932,
+  serialized_start=9105,
+  serialized_end=9164,
 )
 
 
@@ -2788,14 +2890,15 @@ _CBROADCAST_WEBRTCLOOKUPTURNSERVER_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='turn_server', full_name='CBroadcast_WebRTCLookupTURNServer_Response.turn_server', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2808,8 +2911,8 @@ _CBROADCAST_WEBRTCLOOKUPTURNSERVER_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=8934,
-  serialized_end=8999,
+  serialized_start=9166,
+  serialized_end=9231,
 )
 
 
@@ -2819,28 +2922,29 @@ _CBROADCAST_WEBRTC_CANDIDATE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='sdp_mid', full_name='CBroadcast_WebRTC_Candidate.sdp_mid', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='sdp_mline_index', full_name='CBroadcast_WebRTC_Candidate.sdp_mline_index', index=1,
       number=2, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='candidate', full_name='CBroadcast_WebRTC_Candidate.candidate', index=2,
       number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2853,8 +2957,8 @@ _CBROADCAST_WEBRTC_CANDIDATE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=9001,
-  serialized_end=9091,
+  serialized_start=9233,
+  serialized_end=9323,
 )
 
 
@@ -2864,6 +2968,7 @@ _CBROADCAST_WEBRTCADDHOSTCANDIDATE_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='webrtc_session_id', full_name='CBroadcast_WebRTCAddHostCandidate_Request.webrtc_session_id', index=0,
@@ -2871,14 +2976,14 @@ _CBROADCAST_WEBRTCADDHOSTCANDIDATE_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='candidate', full_name='CBroadcast_WebRTCAddHostCandidate_Request.candidate', index=1,
       number=2, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2891,8 +2996,8 @@ _CBROADCAST_WEBRTCADDHOSTCANDIDATE_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=9093,
-  serialized_end=9212,
+  serialized_start=9325,
+  serialized_end=9444,
 )
 
 
@@ -2902,6 +3007,7 @@ _CBROADCAST_WEBRTCADDHOSTCANDIDATE_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -2915,8 +3021,8 @@ _CBROADCAST_WEBRTCADDHOSTCANDIDATE_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=9214,
-  serialized_end=9258,
+  serialized_start=9446,
+  serialized_end=9490,
 )
 
 
@@ -2926,6 +3032,7 @@ _CBROADCAST_WEBRTCADDVIEWERCANDIDATE_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='broadcaster_steamid', full_name='CBroadcast_WebRTCAddViewerCandidate_Request.broadcaster_steamid', index=0,
@@ -2933,21 +3040,21 @@ _CBROADCAST_WEBRTCADDVIEWERCANDIDATE_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='webrtc_session_id', full_name='CBroadcast_WebRTCAddViewerCandidate_Request.webrtc_session_id', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='candidate', full_name='CBroadcast_WebRTCAddViewerCandidate_Request.candidate', index=2,
       number=3, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2960,8 +3067,8 @@ _CBROADCAST_WEBRTCADDVIEWERCANDIDATE_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=9261,
-  serialized_end=9411,
+  serialized_start=9493,
+  serialized_end=9643,
 )
 
 
@@ -2971,6 +3078,7 @@ _CBROADCAST_WEBRTCADDVIEWERCANDIDATE_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -2984,8 +3092,8 @@ _CBROADCAST_WEBRTCADDVIEWERCANDIDATE_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=9413,
-  serialized_end=9459,
+  serialized_start=9645,
+  serialized_end=9691,
 )
 
 
@@ -2995,6 +3103,7 @@ _CBROADCAST_WEBRTCGETHOSTCANDIDATES_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='broadcaster_steamid', full_name='CBroadcast_WebRTCGetHostCandidates_Request.broadcaster_steamid', index=0,
@@ -3002,21 +3111,21 @@ _CBROADCAST_WEBRTCGETHOSTCANDIDATES_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='webrtc_session_id', full_name='CBroadcast_WebRTCGetHostCandidates_Request.webrtc_session_id', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='candidate_generation', full_name='CBroadcast_WebRTCGetHostCandidates_Request.candidate_generation', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3029,8 +3138,8 @@ _CBROADCAST_WEBRTCGETHOSTCANDIDATES_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=9462,
-  serialized_end=9592,
+  serialized_start=9694,
+  serialized_end=9824,
 )
 
 
@@ -3040,6 +3149,7 @@ _CBROADCAST_WEBRTCGETHOSTCANDIDATES_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='candidate_generation', full_name='CBroadcast_WebRTCGetHostCandidates_Response.candidate_generation', index=0,
@@ -3047,14 +3157,14 @@ _CBROADCAST_WEBRTCGETHOSTCANDIDATES_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='candidates', full_name='CBroadcast_WebRTCGetHostCandidates_Response.candidates', index=1,
       number=2, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3067,8 +3177,8 @@ _CBROADCAST_WEBRTCGETHOSTCANDIDATES_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=9594,
-  serialized_end=9719,
+  serialized_start=9826,
+  serialized_end=9951,
 )
 
 
@@ -3078,6 +3188,7 @@ _CBROADCAST_GETBROADCASTUPLOADSTATS_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='row_limit', full_name='CBroadcast_GetBroadcastUploadStats_Request.row_limit', index=0,
@@ -3085,35 +3196,35 @@ _CBROADCAST_GETBROADCASTUPLOADSTATS_REQUEST = _descriptor.Descriptor(
       has_default_value=True, default_value=100,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\036How many at maximum to return.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\036How many at maximum to return.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='start_time', full_name='CBroadcast_GetBroadcastUploadStats_Request.start_time', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\nStart time'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\nStart time', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='upload_id', full_name='CBroadcast_GetBroadcastUploadStats_Request.upload_id', index=2,
       number=3, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\0309Optional relay upload ID - not compatible with session_id'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\0309Optional relay upload ID - not compatible with session_id', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CBroadcast_GetBroadcastUploadStats_Request.steamid', index=3,
       number=4, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030TOptional the steamid whose stats you want, otherwise the user logged in - admin only'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030TOptional the steamid whose stats you want, otherwise the user logged in - admin only', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='session_id', full_name='CBroadcast_GetBroadcastUploadStats_Request.session_id', index=4,
       number=5, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030>Optional broadcast session ID - not compatiable with upload_id'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030>Optional broadcast session ID - not compatiable with upload_id', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3126,8 +3237,8 @@ _CBROADCAST_GETBROADCASTUPLOADSTATS_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=9722,
-  serialized_end=10142,
+  serialized_start=9954,
+  serialized_end=10374,
 )
 
 
@@ -3137,6 +3248,7 @@ _CBROADCAST_GETBROADCASTUPLOADSTATS_RESPONSE_UPLOADSTATS = _descriptor.Descripto
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='upload_result', full_name='CBroadcast_GetBroadcastUploadStats_Response.UploadStats.upload_result', index=0,
@@ -3144,140 +3256,140 @@ _CBROADCAST_GETBROADCASTUPLOADSTATS_RESPONSE_UPLOADSTATS = _descriptor.Descripto
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\000'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\000', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='time_stopped', full_name='CBroadcast_GetBroadcastUploadStats_Response.UploadStats.time_stopped', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\035time broadcast upload stopped'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\035time broadcast upload stopped', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='seconds_uploaded', full_name='CBroadcast_GetBroadcastUploadStats_Response.UploadStats.seconds_uploaded', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\030seconds of vido uploaded'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\030seconds of vido uploaded', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='max_viewers', full_name='CBroadcast_GetBroadcastUploadStats_Response.UploadStats.max_viewers', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\026max concurrent viewers'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\026max concurrent viewers', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='resolution_x', full_name='CBroadcast_GetBroadcastUploadStats_Response.UploadStats.resolution_x', index=4,
       number=5, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\024horizontal resultion'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\024horizontal resultion', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='resolution_y', full_name='CBroadcast_GetBroadcastUploadStats_Response.UploadStats.resolution_y', index=5,
       number=6, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\022vertical resultion'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\022vertical resultion', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='avg_bandwidth', full_name='CBroadcast_GetBroadcastUploadStats_Response.UploadStats.avg_bandwidth', index=6,
       number=7, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\000'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\000', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='total_bytes', full_name='CBroadcast_GetBroadcastUploadStats_Response.UploadStats.total_bytes', index=7,
       number=8, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\"total byte uploaded by broadcaster'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\"total byte uploaded by broadcaster', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CBroadcast_GetBroadcastUploadStats_Response.UploadStats.app_id', index=8,
       number=9, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\020game broadcasted'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\020game broadcasted', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='total_unique_viewers', full_name='CBroadcast_GetBroadcastUploadStats_Response.UploadStats.total_unique_viewers', index=9,
       number=10, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\031total unique viewers seen'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\031total unique viewers seen', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='total_seconds_watched', full_name='CBroadcast_GetBroadcastUploadStats_Response.UploadStats.total_seconds_watched', index=10,
       number=11, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030.total number of seconds watched by all viewers'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030.total number of seconds watched by all viewers', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='time_started', full_name='CBroadcast_GetBroadcastUploadStats_Response.UploadStats.time_started', index=11,
       number=12, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\035time broadcast upload started'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\035time broadcast upload started', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='upload_id', full_name='CBroadcast_GetBroadcastUploadStats_Response.UploadStats.upload_id', index=12,
       number=13, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\031broadcast relay upload id'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\031broadcast relay upload id', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='local_address', full_name='CBroadcast_GetBroadcastUploadStats_Response.UploadStats.local_address', index=13,
       number=14, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\030upload to server address'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\030upload to server address', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='remote_address', full_name='CBroadcast_GetBroadcastUploadStats_Response.UploadStats.remote_address', index=14,
       number=15, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\032upload from client address'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\032upload from client address', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='frames_per_second', full_name='CBroadcast_GetBroadcastUploadStats_Response.UploadStats.frames_per_second', index=15,
       number=16, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\021frames per second'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\021frames per second', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='num_representations', full_name='CBroadcast_GetBroadcastUploadStats_Response.UploadStats.num_representations', index=16,
       number=17, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\036number of video represetations'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\036number of video represetations', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='app_name', full_name='CBroadcast_GetBroadcastUploadStats_Response.UploadStats.app_name', index=17,
       number=18, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\tgame name'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\tgame name', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='is_replay', full_name='CBroadcast_GetBroadcastUploadStats_Response.UploadStats.is_replay', index=18,
       number=19, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\034replay of previous recording'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\034replay of previous recording', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='session_id', full_name='CBroadcast_GetBroadcastUploadStats_Response.UploadStats.session_id', index=19,
       number=20, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\024broadcast session id'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\024broadcast session id', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3290,8 +3402,8 @@ _CBROADCAST_GETBROADCASTUPLOADSTATS_RESPONSE_UPLOADSTATS = _descriptor.Descripto
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=10273,
-  serialized_end=11306,
+  serialized_start=10505,
+  serialized_end=11538,
 )
 
 _CBROADCAST_GETBROADCASTUPLOADSTATS_RESPONSE = _descriptor.Descriptor(
@@ -3300,6 +3412,7 @@ _CBROADCAST_GETBROADCASTUPLOADSTATS_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='upload_stats', full_name='CBroadcast_GetBroadcastUploadStats_Response.upload_stats', index=0,
@@ -3307,7 +3420,7 @@ _CBROADCAST_GETBROADCASTUPLOADSTATS_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3320,8 +3433,8 @@ _CBROADCAST_GETBROADCASTUPLOADSTATS_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=10145,
-  serialized_end=11306,
+  serialized_start=10377,
+  serialized_end=11538,
 )
 
 
@@ -3331,6 +3444,7 @@ _CBROADCAST_GETBROADCASTVIEWERSTATS_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='upload_id', full_name='CBroadcast_GetBroadcastViewerStats_Request.upload_id', index=0,
@@ -3338,14 +3452,14 @@ _CBROADCAST_GETBROADCASTVIEWERSTATS_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\031Get stats for this stream'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\031Get stats for this stream', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CBroadcast_GetBroadcastViewerStats_Request.steamid', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030HOptional: The steamid of the broadcast whose details you are requesting.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030HOptional: The steamid of the broadcast whose details you are requesting.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3358,8 +3472,8 @@ _CBROADCAST_GETBROADCASTVIEWERSTATS_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=11309,
-  serialized_end=11498,
+  serialized_start=11541,
+  serialized_end=11730,
 )
 
 
@@ -3369,6 +3483,7 @@ _CBROADCAST_GETBROADCASTVIEWERSTATS_RESPONSE_VIEWERSTATS = _descriptor.Descripto
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='time', full_name='CBroadcast_GetBroadcastViewerStats_Response.ViewerStats.time', index=0,
@@ -3376,14 +3491,14 @@ _CBROADCAST_GETBROADCASTVIEWERSTATS_RESPONSE_VIEWERSTATS = _descriptor.Descripto
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\016time of record'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\016time of record', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='num_viewers', full_name='CBroadcast_GetBroadcastViewerStats_Response.ViewerStats.num_viewers', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\031current number of viewers'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\031current number of viewers', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3396,8 +3511,8 @@ _CBROADCAST_GETBROADCASTVIEWERSTATS_RESPONSE_VIEWERSTATS = _descriptor.Descripto
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=11710,
-  serialized_end=11809,
+  serialized_start=11942,
+  serialized_end=12041,
 )
 
 _CBROADCAST_GETBROADCASTVIEWERSTATS_RESPONSE_COUNTRYSTATS = _descriptor.Descriptor(
@@ -3406,21 +3521,22 @@ _CBROADCAST_GETBROADCASTVIEWERSTATS_RESPONSE_COUNTRYSTATS = _descriptor.Descript
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='country_code', full_name='CBroadcast_GetBroadcastViewerStats_Response.CountryStats.country_code', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\014country code'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\014country code', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='num_viewers', full_name='CBroadcast_GetBroadcastViewerStats_Response.CountryStats.num_viewers', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\021number of viewers'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\021number of viewers', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3433,8 +3549,8 @@ _CBROADCAST_GETBROADCASTVIEWERSTATS_RESPONSE_COUNTRYSTATS = _descriptor.Descript
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=11811,
-  serialized_end=11909,
+  serialized_start=12043,
+  serialized_end=12141,
 )
 
 _CBROADCAST_GETBROADCASTVIEWERSTATS_RESPONSE = _descriptor.Descriptor(
@@ -3443,6 +3559,7 @@ _CBROADCAST_GETBROADCASTVIEWERSTATS_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='viewer_stats', full_name='CBroadcast_GetBroadcastViewerStats_Response.viewer_stats', index=0,
@@ -3450,14 +3567,14 @@ _CBROADCAST_GETBROADCASTVIEWERSTATS_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='country_stats', full_name='CBroadcast_GetBroadcastViewerStats_Response.country_stats', index=1,
       number=2, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3470,8 +3587,8 @@ _CBROADCAST_GETBROADCASTVIEWERSTATS_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=11501,
-  serialized_end=11909,
+  serialized_start=11733,
+  serialized_end=12141,
 )
 
 
@@ -3481,6 +3598,7 @@ _CBROADCAST_BROADCASTVIEWERSTATE_NOTIFICATION = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CBroadcast_BroadcastViewerState_Notification.steamid', index=0,
@@ -3488,14 +3606,14 @@ _CBROADCAST_BROADCASTVIEWERSTATE_NOTIFICATION = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='state', full_name='CBroadcast_BroadcastViewerState_Notification.state', index=1,
       number=2, type=14, cpp_type=8, label=1,
       has_default_value=True, default_value=1,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3509,8 +3627,8 @@ _CBROADCAST_BROADCASTVIEWERSTATE_NOTIFICATION = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=11912,
-  serialized_end=12160,
+  serialized_start=12144,
+  serialized_end=12392,
 )
 
 
@@ -3520,6 +3638,7 @@ _CBROADCAST_WAITINGBROADCASTVIEWER_NOTIFICATION = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='broadcast_id', full_name='CBroadcast_WaitingBroadcastViewer_Notification.broadcast_id', index=0,
@@ -3527,7 +3646,7 @@ _CBROADCAST_WAITINGBROADCASTVIEWER_NOTIFICATION = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3540,8 +3659,8 @@ _CBROADCAST_WAITINGBROADCASTVIEWER_NOTIFICATION = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=12162,
-  serialized_end=12232,
+  serialized_start=12394,
+  serialized_end=12464,
 )
 
 
@@ -3551,6 +3670,7 @@ _CBROADCAST_BROADCASTUPLOADSTARTED_NOTIFICATION = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='broadcast_id', full_name='CBroadcast_BroadcastUploadStarted_Notification.broadcast_id', index=0,
@@ -3558,49 +3678,49 @@ _CBROADCAST_BROADCASTUPLOADSTARTED_NOTIFICATION = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='upload_token', full_name='CBroadcast_BroadcastUploadStarted_Notification.upload_token', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='upload_address', full_name='CBroadcast_BroadcastUploadStarted_Notification.upload_address', index=2,
       number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='http_address', full_name='CBroadcast_BroadcastUploadStarted_Notification.http_address', index=3,
       number=4, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='broadcast_upload_id', full_name='CBroadcast_BroadcastUploadStarted_Notification.broadcast_upload_id', index=4,
       number=5, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='heartbeat_interval_seconds', full_name='CBroadcast_BroadcastUploadStarted_Notification.heartbeat_interval_seconds', index=5,
       number=6, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030+how many seconds between session heartbeats'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030+how many seconds between session heartbeats', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='is_rtmp', full_name='CBroadcast_BroadcastUploadStarted_Notification.is_rtmp', index=6,
       number=7, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3613,8 +3733,8 @@ _CBROADCAST_BROADCASTUPLOADSTARTED_NOTIFICATION = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=12235,
-  serialized_end=12504,
+  serialized_start=12467,
+  serialized_end=12736,
 )
 
 
@@ -3624,6 +3744,7 @@ _CBROADCAST_STOPBROADCASTUPLOAD_NOTIFICATION = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='broadcast_id', full_name='CBroadcast_StopBroadcastUpload_Notification.broadcast_id', index=0,
@@ -3631,28 +3752,28 @@ _CBROADCAST_STOPBROADCASTUPLOAD_NOTIFICATION = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='broadcast_relay_id', full_name='CBroadcast_StopBroadcastUpload_Notification.broadcast_relay_id', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='upload_result', full_name='CBroadcast_StopBroadcastUpload_Notification.upload_result', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='too_many_poor_uploads', full_name='CBroadcast_StopBroadcastUpload_Notification.too_many_poor_uploads', index=3,
       number=4, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3665,8 +3786,8 @@ _CBROADCAST_STOPBROADCASTUPLOAD_NOTIFICATION = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=12507,
-  serialized_end=12656,
+  serialized_start=12739,
+  serialized_end=12888,
 )
 
 
@@ -3676,6 +3797,7 @@ _CBROADCAST_SESSIONCLOSED_NOTIFICATION = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='broadcast_id', full_name='CBroadcast_SessionClosed_Notification.broadcast_id', index=0,
@@ -3683,7 +3805,7 @@ _CBROADCAST_SESSIONCLOSED_NOTIFICATION = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3696,8 +3818,8 @@ _CBROADCAST_SESSIONCLOSED_NOTIFICATION = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=12658,
-  serialized_end=12719,
+  serialized_start=12890,
+  serialized_end=12951,
 )
 
 
@@ -3707,6 +3829,7 @@ _CBROADCAST_VIEWERBROADCASTINVITE_NOTIFICATION = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='broadcaster_steamid', full_name='CBroadcast_ViewerBroadcastInvite_Notification.broadcaster_steamid', index=0,
@@ -3714,7 +3837,7 @@ _CBROADCAST_VIEWERBROADCASTINVITE_NOTIFICATION = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3727,8 +3850,8 @@ _CBROADCAST_VIEWERBROADCASTINVITE_NOTIFICATION = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=12721,
-  serialized_end=12797,
+  serialized_start=12953,
+  serialized_end=13029,
 )
 
 
@@ -3738,6 +3861,7 @@ _CBROADCAST_BROADCASTSTATUS_NOTIFICATION = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='broadcast_id', full_name='CBroadcast_BroadcastStatus_Notification.broadcast_id', index=0,
@@ -3745,14 +3869,14 @@ _CBROADCAST_BROADCASTSTATUS_NOTIFICATION = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='num_viewers', full_name='CBroadcast_BroadcastStatus_Notification.num_viewers', index=1,
       number=2, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3765,8 +3889,8 @@ _CBROADCAST_BROADCASTSTATUS_NOTIFICATION = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=12799,
-  serialized_end=12883,
+  serialized_start=13031,
+  serialized_end=13115,
 )
 
 
@@ -3776,6 +3900,7 @@ _CBROADCAST_BROADCASTCHANNELLIVE_NOTIFICATION = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='broadcast_channel_id', full_name='CBroadcast_BroadcastChannelLive_Notification.broadcast_channel_id', index=0,
@@ -3783,21 +3908,21 @@ _CBROADCAST_BROADCASTCHANNELLIVE_NOTIFICATION = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='broadcast_channel_name', full_name='CBroadcast_BroadcastChannelLive_Notification.broadcast_channel_name', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='broadcast_channel_avatar', full_name='CBroadcast_BroadcastChannelLive_Notification.broadcast_channel_avatar', index=2,
       number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3810,8 +3935,8 @@ _CBROADCAST_BROADCASTCHANNELLIVE_NOTIFICATION = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=12886,
-  serialized_end=13028,
+  serialized_start=13118,
+  serialized_end=13260,
 )
 
 
@@ -3821,42 +3946,43 @@ _CBROADCAST_SENDTHUMBNAILTORELAY_NOTIFICATION = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='thumbnail_upload_token', full_name='CBroadcast_SendThumbnailToRelay_Notification.thumbnail_upload_token', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='thumbnail_broadcast_session_id', full_name='CBroadcast_SendThumbnailToRelay_Notification.thumbnail_broadcast_session_id', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='thumbnail_data', full_name='CBroadcast_SendThumbnailToRelay_Notification.thumbnail_data', index=2,
       number=3, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='thumbnail_width', full_name='CBroadcast_SendThumbnailToRelay_Notification.thumbnail_width', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='thumbnail_height', full_name='CBroadcast_SendThumbnailToRelay_Notification.thumbnail_height', index=4,
       number=5, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3869,8 +3995,8 @@ _CBROADCAST_SENDTHUMBNAILTORELAY_NOTIFICATION = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=13031,
-  serialized_end=13224,
+  serialized_start=13263,
+  serialized_end=13456,
 )
 
 
@@ -3880,6 +4006,7 @@ _CBROADCAST_WEBRTCNEEDTURNSERVER_NOTIFICATION = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='broadcast_session_id', full_name='CBroadcast_WebRTCNeedTURNServer_Notification.broadcast_session_id', index=0,
@@ -3887,7 +4014,7 @@ _CBROADCAST_WEBRTCNEEDTURNSERVER_NOTIFICATION = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3900,8 +4027,8 @@ _CBROADCAST_WEBRTCNEEDTURNSERVER_NOTIFICATION = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=13226,
-  serialized_end=13302,
+  serialized_start=13458,
+  serialized_end=13534,
 )
 
 
@@ -3911,6 +4038,7 @@ _CBROADCAST_WEBRTCSTART_NOTIFICATION = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='broadcast_session_id', full_name='CBroadcast_WebRTCStart_Notification.broadcast_session_id', index=0,
@@ -3918,28 +4046,28 @@ _CBROADCAST_WEBRTCSTART_NOTIFICATION = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='webrtc_session_id', full_name='CBroadcast_WebRTCStart_Notification.webrtc_session_id', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='viewer_steamid', full_name='CBroadcast_WebRTCStart_Notification.viewer_steamid', index=2,
       number=3, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='viewer_token', full_name='CBroadcast_WebRTCStart_Notification.viewer_token', index=3,
       number=4, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3952,8 +4080,8 @@ _CBROADCAST_WEBRTCSTART_NOTIFICATION = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=13305,
-  serialized_end=13445,
+  serialized_start=13537,
+  serialized_end=13677,
 )
 
 
@@ -3963,6 +4091,7 @@ _CBROADCAST_WEBRTCSETANSWER_NOTIFICATION = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='broadcast_session_id', full_name='CBroadcast_WebRTCSetAnswer_Notification.broadcast_session_id', index=0,
@@ -3970,21 +4099,21 @@ _CBROADCAST_WEBRTCSETANSWER_NOTIFICATION = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='webrtc_session_id', full_name='CBroadcast_WebRTCSetAnswer_Notification.webrtc_session_id', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='answer', full_name='CBroadcast_WebRTCSetAnswer_Notification.answer', index=2,
       number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3997,8 +4126,8 @@ _CBROADCAST_WEBRTCSETANSWER_NOTIFICATION = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=13447,
-  serialized_end=13561,
+  serialized_start=13679,
+  serialized_end=13793,
 )
 
 
@@ -4008,6 +4137,7 @@ _CBROADCAST_WEBRTCADDVIEWERCANDIDATE_NOTIFICATION = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='broadcast_session_id', full_name='CBroadcast_WebRTCAddViewerCandidate_Notification.broadcast_session_id', index=0,
@@ -4015,21 +4145,21 @@ _CBROADCAST_WEBRTCADDVIEWERCANDIDATE_NOTIFICATION = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='webrtc_session_id', full_name='CBroadcast_WebRTCAddViewerCandidate_Notification.webrtc_session_id', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='candidate', full_name='CBroadcast_WebRTCAddViewerCandidate_Notification.candidate', index=2,
       number=3, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4042,8 +4172,8 @@ _CBROADCAST_WEBRTCADDVIEWERCANDIDATE_NOTIFICATION = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=13564,
-  serialized_end=13720,
+  serialized_start=13796,
+  serialized_end=13952,
 )
 
 _CBROADCAST_WATCHBROADCAST_REQUEST.fields_by_name['watch_location'].enum_type = _EBROADCASTWATCHLOCATION
@@ -4146,575 +4276,575 @@ DESCRIPTOR.enum_types_by_name['EBroadcastWatchLocation'] = _EBROADCASTWATCHLOCAT
 DESCRIPTOR.enum_types_by_name['EBroadcastChatPermission'] = _EBROADCASTCHATPERMISSION
 _sym_db.RegisterFileDescriptor(DESCRIPTOR)
 
-CBroadcast_BeginBroadcastSession_Request = _reflection.GeneratedProtocolMessageType('CBroadcast_BeginBroadcastSession_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CBROADCAST_BEGINBROADCASTSESSION_REQUEST,
-  __module__ = 'steammessages_broadcast_pb2'
+CBroadcast_BeginBroadcastSession_Request = _reflection.GeneratedProtocolMessageType('CBroadcast_BeginBroadcastSession_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CBROADCAST_BEGINBROADCASTSESSION_REQUEST,
+  '__module__' : 'steammessages_broadcast_pb2'
   # @@protoc_insertion_point(class_scope:CBroadcast_BeginBroadcastSession_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CBroadcast_BeginBroadcastSession_Request)
 
-CBroadcast_BeginBroadcastSession_Response = _reflection.GeneratedProtocolMessageType('CBroadcast_BeginBroadcastSession_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CBROADCAST_BEGINBROADCASTSESSION_RESPONSE,
-  __module__ = 'steammessages_broadcast_pb2'
+CBroadcast_BeginBroadcastSession_Response = _reflection.GeneratedProtocolMessageType('CBroadcast_BeginBroadcastSession_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CBROADCAST_BEGINBROADCASTSESSION_RESPONSE,
+  '__module__' : 'steammessages_broadcast_pb2'
   # @@protoc_insertion_point(class_scope:CBroadcast_BeginBroadcastSession_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CBroadcast_BeginBroadcastSession_Response)
 
-CBroadcast_EndBroadcastSession_Request = _reflection.GeneratedProtocolMessageType('CBroadcast_EndBroadcastSession_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CBROADCAST_ENDBROADCASTSESSION_REQUEST,
-  __module__ = 'steammessages_broadcast_pb2'
+CBroadcast_EndBroadcastSession_Request = _reflection.GeneratedProtocolMessageType('CBroadcast_EndBroadcastSession_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CBROADCAST_ENDBROADCASTSESSION_REQUEST,
+  '__module__' : 'steammessages_broadcast_pb2'
   # @@protoc_insertion_point(class_scope:CBroadcast_EndBroadcastSession_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CBroadcast_EndBroadcastSession_Request)
 
-CBroadcast_EndBroadcastSession_Response = _reflection.GeneratedProtocolMessageType('CBroadcast_EndBroadcastSession_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CBROADCAST_ENDBROADCASTSESSION_RESPONSE,
-  __module__ = 'steammessages_broadcast_pb2'
+CBroadcast_EndBroadcastSession_Response = _reflection.GeneratedProtocolMessageType('CBroadcast_EndBroadcastSession_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CBROADCAST_ENDBROADCASTSESSION_RESPONSE,
+  '__module__' : 'steammessages_broadcast_pb2'
   # @@protoc_insertion_point(class_scope:CBroadcast_EndBroadcastSession_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CBroadcast_EndBroadcastSession_Response)
 
-CBroadcast_StartBroadcastUpload_Request = _reflection.GeneratedProtocolMessageType('CBroadcast_StartBroadcastUpload_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CBROADCAST_STARTBROADCASTUPLOAD_REQUEST,
-  __module__ = 'steammessages_broadcast_pb2'
+CBroadcast_StartBroadcastUpload_Request = _reflection.GeneratedProtocolMessageType('CBroadcast_StartBroadcastUpload_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CBROADCAST_STARTBROADCASTUPLOAD_REQUEST,
+  '__module__' : 'steammessages_broadcast_pb2'
   # @@protoc_insertion_point(class_scope:CBroadcast_StartBroadcastUpload_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CBroadcast_StartBroadcastUpload_Request)
 
-CBroadcast_StartBroadcastUpload_Response = _reflection.GeneratedProtocolMessageType('CBroadcast_StartBroadcastUpload_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CBROADCAST_STARTBROADCASTUPLOAD_RESPONSE,
-  __module__ = 'steammessages_broadcast_pb2'
+CBroadcast_StartBroadcastUpload_Response = _reflection.GeneratedProtocolMessageType('CBroadcast_StartBroadcastUpload_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CBROADCAST_STARTBROADCASTUPLOAD_RESPONSE,
+  '__module__' : 'steammessages_broadcast_pb2'
   # @@protoc_insertion_point(class_scope:CBroadcast_StartBroadcastUpload_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CBroadcast_StartBroadcastUpload_Response)
 
-CBroadcast_NotifyBroadcastUploadStop_Notification = _reflection.GeneratedProtocolMessageType('CBroadcast_NotifyBroadcastUploadStop_Notification', (_message.Message,), dict(
-  DESCRIPTOR = _CBROADCAST_NOTIFYBROADCASTUPLOADSTOP_NOTIFICATION,
-  __module__ = 'steammessages_broadcast_pb2'
+CBroadcast_NotifyBroadcastUploadStop_Notification = _reflection.GeneratedProtocolMessageType('CBroadcast_NotifyBroadcastUploadStop_Notification', (_message.Message,), {
+  'DESCRIPTOR' : _CBROADCAST_NOTIFYBROADCASTUPLOADSTOP_NOTIFICATION,
+  '__module__' : 'steammessages_broadcast_pb2'
   # @@protoc_insertion_point(class_scope:CBroadcast_NotifyBroadcastUploadStop_Notification)
-  ))
+  })
 _sym_db.RegisterMessage(CBroadcast_NotifyBroadcastUploadStop_Notification)
 
-CBroadcast_WatchBroadcast_Request = _reflection.GeneratedProtocolMessageType('CBroadcast_WatchBroadcast_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CBROADCAST_WATCHBROADCAST_REQUEST,
-  __module__ = 'steammessages_broadcast_pb2'
+CBroadcast_WatchBroadcast_Request = _reflection.GeneratedProtocolMessageType('CBroadcast_WatchBroadcast_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CBROADCAST_WATCHBROADCAST_REQUEST,
+  '__module__' : 'steammessages_broadcast_pb2'
   # @@protoc_insertion_point(class_scope:CBroadcast_WatchBroadcast_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CBroadcast_WatchBroadcast_Request)
 
-CBroadcast_WatchBroadcast_Response = _reflection.GeneratedProtocolMessageType('CBroadcast_WatchBroadcast_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CBROADCAST_WATCHBROADCAST_RESPONSE,
-  __module__ = 'steammessages_broadcast_pb2'
+CBroadcast_WatchBroadcast_Response = _reflection.GeneratedProtocolMessageType('CBroadcast_WatchBroadcast_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CBROADCAST_WATCHBROADCAST_RESPONSE,
+  '__module__' : 'steammessages_broadcast_pb2'
   # @@protoc_insertion_point(class_scope:CBroadcast_WatchBroadcast_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CBroadcast_WatchBroadcast_Response)
 
-CBroadcast_HeartbeatBroadcast_Notification = _reflection.GeneratedProtocolMessageType('CBroadcast_HeartbeatBroadcast_Notification', (_message.Message,), dict(
-  DESCRIPTOR = _CBROADCAST_HEARTBEATBROADCAST_NOTIFICATION,
-  __module__ = 'steammessages_broadcast_pb2'
+CBroadcast_HeartbeatBroadcast_Notification = _reflection.GeneratedProtocolMessageType('CBroadcast_HeartbeatBroadcast_Notification', (_message.Message,), {
+  'DESCRIPTOR' : _CBROADCAST_HEARTBEATBROADCAST_NOTIFICATION,
+  '__module__' : 'steammessages_broadcast_pb2'
   # @@protoc_insertion_point(class_scope:CBroadcast_HeartbeatBroadcast_Notification)
-  ))
+  })
 _sym_db.RegisterMessage(CBroadcast_HeartbeatBroadcast_Notification)
 
-CBroadcast_StopWatchingBroadcast_Notification = _reflection.GeneratedProtocolMessageType('CBroadcast_StopWatchingBroadcast_Notification', (_message.Message,), dict(
-  DESCRIPTOR = _CBROADCAST_STOPWATCHINGBROADCAST_NOTIFICATION,
-  __module__ = 'steammessages_broadcast_pb2'
+CBroadcast_StopWatchingBroadcast_Notification = _reflection.GeneratedProtocolMessageType('CBroadcast_StopWatchingBroadcast_Notification', (_message.Message,), {
+  'DESCRIPTOR' : _CBROADCAST_STOPWATCHINGBROADCAST_NOTIFICATION,
+  '__module__' : 'steammessages_broadcast_pb2'
   # @@protoc_insertion_point(class_scope:CBroadcast_StopWatchingBroadcast_Notification)
-  ))
+  })
 _sym_db.RegisterMessage(CBroadcast_StopWatchingBroadcast_Notification)
 
-CBroadcast_GetBroadcastStatus_Request = _reflection.GeneratedProtocolMessageType('CBroadcast_GetBroadcastStatus_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CBROADCAST_GETBROADCASTSTATUS_REQUEST,
-  __module__ = 'steammessages_broadcast_pb2'
+CBroadcast_GetBroadcastStatus_Request = _reflection.GeneratedProtocolMessageType('CBroadcast_GetBroadcastStatus_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CBROADCAST_GETBROADCASTSTATUS_REQUEST,
+  '__module__' : 'steammessages_broadcast_pb2'
   # @@protoc_insertion_point(class_scope:CBroadcast_GetBroadcastStatus_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CBroadcast_GetBroadcastStatus_Request)
 
-CBroadcast_GetBroadcastStatus_Response = _reflection.GeneratedProtocolMessageType('CBroadcast_GetBroadcastStatus_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CBROADCAST_GETBROADCASTSTATUS_RESPONSE,
-  __module__ = 'steammessages_broadcast_pb2'
+CBroadcast_GetBroadcastStatus_Response = _reflection.GeneratedProtocolMessageType('CBroadcast_GetBroadcastStatus_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CBROADCAST_GETBROADCASTSTATUS_RESPONSE,
+  '__module__' : 'steammessages_broadcast_pb2'
   # @@protoc_insertion_point(class_scope:CBroadcast_GetBroadcastStatus_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CBroadcast_GetBroadcastStatus_Response)
 
-CBroadcast_GetBroadcastThumbnail_Request = _reflection.GeneratedProtocolMessageType('CBroadcast_GetBroadcastThumbnail_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CBROADCAST_GETBROADCASTTHUMBNAIL_REQUEST,
-  __module__ = 'steammessages_broadcast_pb2'
+CBroadcast_GetBroadcastThumbnail_Request = _reflection.GeneratedProtocolMessageType('CBroadcast_GetBroadcastThumbnail_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CBROADCAST_GETBROADCASTTHUMBNAIL_REQUEST,
+  '__module__' : 'steammessages_broadcast_pb2'
   # @@protoc_insertion_point(class_scope:CBroadcast_GetBroadcastThumbnail_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CBroadcast_GetBroadcastThumbnail_Request)
 
-CBroadcast_GetBroadcastThumbnail_Response = _reflection.GeneratedProtocolMessageType('CBroadcast_GetBroadcastThumbnail_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CBROADCAST_GETBROADCASTTHUMBNAIL_RESPONSE,
-  __module__ = 'steammessages_broadcast_pb2'
+CBroadcast_GetBroadcastThumbnail_Response = _reflection.GeneratedProtocolMessageType('CBroadcast_GetBroadcastThumbnail_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CBROADCAST_GETBROADCASTTHUMBNAIL_RESPONSE,
+  '__module__' : 'steammessages_broadcast_pb2'
   # @@protoc_insertion_point(class_scope:CBroadcast_GetBroadcastThumbnail_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CBroadcast_GetBroadcastThumbnail_Response)
 
-CBroadcast_InviteToBroadcast_Request = _reflection.GeneratedProtocolMessageType('CBroadcast_InviteToBroadcast_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CBROADCAST_INVITETOBROADCAST_REQUEST,
-  __module__ = 'steammessages_broadcast_pb2'
+CBroadcast_InviteToBroadcast_Request = _reflection.GeneratedProtocolMessageType('CBroadcast_InviteToBroadcast_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CBROADCAST_INVITETOBROADCAST_REQUEST,
+  '__module__' : 'steammessages_broadcast_pb2'
   # @@protoc_insertion_point(class_scope:CBroadcast_InviteToBroadcast_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CBroadcast_InviteToBroadcast_Request)
 
-CBroadcast_InviteToBroadcast_Response = _reflection.GeneratedProtocolMessageType('CBroadcast_InviteToBroadcast_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CBROADCAST_INVITETOBROADCAST_RESPONSE,
-  __module__ = 'steammessages_broadcast_pb2'
+CBroadcast_InviteToBroadcast_Response = _reflection.GeneratedProtocolMessageType('CBroadcast_InviteToBroadcast_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CBROADCAST_INVITETOBROADCAST_RESPONSE,
+  '__module__' : 'steammessages_broadcast_pb2'
   # @@protoc_insertion_point(class_scope:CBroadcast_InviteToBroadcast_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CBroadcast_InviteToBroadcast_Response)
 
-CBroadcast_SendBroadcastStateToServer_Request = _reflection.GeneratedProtocolMessageType('CBroadcast_SendBroadcastStateToServer_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CBROADCAST_SENDBROADCASTSTATETOSERVER_REQUEST,
-  __module__ = 'steammessages_broadcast_pb2'
+CBroadcast_SendBroadcastStateToServer_Request = _reflection.GeneratedProtocolMessageType('CBroadcast_SendBroadcastStateToServer_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CBROADCAST_SENDBROADCASTSTATETOSERVER_REQUEST,
+  '__module__' : 'steammessages_broadcast_pb2'
   # @@protoc_insertion_point(class_scope:CBroadcast_SendBroadcastStateToServer_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CBroadcast_SendBroadcastStateToServer_Request)
 
-CBroadcast_SendBroadcastStateToServer_Response = _reflection.GeneratedProtocolMessageType('CBroadcast_SendBroadcastStateToServer_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CBROADCAST_SENDBROADCASTSTATETOSERVER_RESPONSE,
-  __module__ = 'steammessages_broadcast_pb2'
+CBroadcast_SendBroadcastStateToServer_Response = _reflection.GeneratedProtocolMessageType('CBroadcast_SendBroadcastStateToServer_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CBROADCAST_SENDBROADCASTSTATETOSERVER_RESPONSE,
+  '__module__' : 'steammessages_broadcast_pb2'
   # @@protoc_insertion_point(class_scope:CBroadcast_SendBroadcastStateToServer_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CBroadcast_SendBroadcastStateToServer_Response)
 
-CBroadcast_NotifyBroadcastSessionHeartbeat_Notification = _reflection.GeneratedProtocolMessageType('CBroadcast_NotifyBroadcastSessionHeartbeat_Notification', (_message.Message,), dict(
-  DESCRIPTOR = _CBROADCAST_NOTIFYBROADCASTSESSIONHEARTBEAT_NOTIFICATION,
-  __module__ = 'steammessages_broadcast_pb2'
+CBroadcast_NotifyBroadcastSessionHeartbeat_Notification = _reflection.GeneratedProtocolMessageType('CBroadcast_NotifyBroadcastSessionHeartbeat_Notification', (_message.Message,), {
+  'DESCRIPTOR' : _CBROADCAST_NOTIFYBROADCASTSESSIONHEARTBEAT_NOTIFICATION,
+  '__module__' : 'steammessages_broadcast_pb2'
   # @@protoc_insertion_point(class_scope:CBroadcast_NotifyBroadcastSessionHeartbeat_Notification)
-  ))
+  })
 _sym_db.RegisterMessage(CBroadcast_NotifyBroadcastSessionHeartbeat_Notification)
 
-CBroadcast_GetBroadcastChatInfo_Request = _reflection.GeneratedProtocolMessageType('CBroadcast_GetBroadcastChatInfo_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CBROADCAST_GETBROADCASTCHATINFO_REQUEST,
-  __module__ = 'steammessages_broadcast_pb2'
+CBroadcast_GetBroadcastChatInfo_Request = _reflection.GeneratedProtocolMessageType('CBroadcast_GetBroadcastChatInfo_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CBROADCAST_GETBROADCASTCHATINFO_REQUEST,
+  '__module__' : 'steammessages_broadcast_pb2'
   # @@protoc_insertion_point(class_scope:CBroadcast_GetBroadcastChatInfo_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CBroadcast_GetBroadcastChatInfo_Request)
 
-CBroadcast_GetBroadcastChatInfo_Response = _reflection.GeneratedProtocolMessageType('CBroadcast_GetBroadcastChatInfo_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CBROADCAST_GETBROADCASTCHATINFO_RESPONSE,
-  __module__ = 'steammessages_broadcast_pb2'
+CBroadcast_GetBroadcastChatInfo_Response = _reflection.GeneratedProtocolMessageType('CBroadcast_GetBroadcastChatInfo_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CBROADCAST_GETBROADCASTCHATINFO_RESPONSE,
+  '__module__' : 'steammessages_broadcast_pb2'
   # @@protoc_insertion_point(class_scope:CBroadcast_GetBroadcastChatInfo_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CBroadcast_GetBroadcastChatInfo_Response)
 
-CBroadcast_PostChatMessage_Request = _reflection.GeneratedProtocolMessageType('CBroadcast_PostChatMessage_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CBROADCAST_POSTCHATMESSAGE_REQUEST,
-  __module__ = 'steammessages_broadcast_pb2'
+CBroadcast_PostChatMessage_Request = _reflection.GeneratedProtocolMessageType('CBroadcast_PostChatMessage_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CBROADCAST_POSTCHATMESSAGE_REQUEST,
+  '__module__' : 'steammessages_broadcast_pb2'
   # @@protoc_insertion_point(class_scope:CBroadcast_PostChatMessage_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CBroadcast_PostChatMessage_Request)
 
-CBroadcast_PostChatMessage_Response = _reflection.GeneratedProtocolMessageType('CBroadcast_PostChatMessage_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CBROADCAST_POSTCHATMESSAGE_RESPONSE,
-  __module__ = 'steammessages_broadcast_pb2'
+CBroadcast_PostChatMessage_Response = _reflection.GeneratedProtocolMessageType('CBroadcast_PostChatMessage_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CBROADCAST_POSTCHATMESSAGE_RESPONSE,
+  '__module__' : 'steammessages_broadcast_pb2'
   # @@protoc_insertion_point(class_scope:CBroadcast_PostChatMessage_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CBroadcast_PostChatMessage_Response)
 
-CBroadcast_UpdateChatMessageFlair_Request = _reflection.GeneratedProtocolMessageType('CBroadcast_UpdateChatMessageFlair_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CBROADCAST_UPDATECHATMESSAGEFLAIR_REQUEST,
-  __module__ = 'steammessages_broadcast_pb2'
+CBroadcast_UpdateChatMessageFlair_Request = _reflection.GeneratedProtocolMessageType('CBroadcast_UpdateChatMessageFlair_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CBROADCAST_UPDATECHATMESSAGEFLAIR_REQUEST,
+  '__module__' : 'steammessages_broadcast_pb2'
   # @@protoc_insertion_point(class_scope:CBroadcast_UpdateChatMessageFlair_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CBroadcast_UpdateChatMessageFlair_Request)
 
-CBroadcast_UpdateChatMessageFlair_Response = _reflection.GeneratedProtocolMessageType('CBroadcast_UpdateChatMessageFlair_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CBROADCAST_UPDATECHATMESSAGEFLAIR_RESPONSE,
-  __module__ = 'steammessages_broadcast_pb2'
+CBroadcast_UpdateChatMessageFlair_Response = _reflection.GeneratedProtocolMessageType('CBroadcast_UpdateChatMessageFlair_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CBROADCAST_UPDATECHATMESSAGEFLAIR_RESPONSE,
+  '__module__' : 'steammessages_broadcast_pb2'
   # @@protoc_insertion_point(class_scope:CBroadcast_UpdateChatMessageFlair_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CBroadcast_UpdateChatMessageFlair_Response)
 
-CBroadcast_MuteBroadcastChatUser_Request = _reflection.GeneratedProtocolMessageType('CBroadcast_MuteBroadcastChatUser_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CBROADCAST_MUTEBROADCASTCHATUSER_REQUEST,
-  __module__ = 'steammessages_broadcast_pb2'
+CBroadcast_MuteBroadcastChatUser_Request = _reflection.GeneratedProtocolMessageType('CBroadcast_MuteBroadcastChatUser_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CBROADCAST_MUTEBROADCASTCHATUSER_REQUEST,
+  '__module__' : 'steammessages_broadcast_pb2'
   # @@protoc_insertion_point(class_scope:CBroadcast_MuteBroadcastChatUser_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CBroadcast_MuteBroadcastChatUser_Request)
 
-CBroadcast_MuteBroadcastChatUser_Response = _reflection.GeneratedProtocolMessageType('CBroadcast_MuteBroadcastChatUser_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CBROADCAST_MUTEBROADCASTCHATUSER_RESPONSE,
-  __module__ = 'steammessages_broadcast_pb2'
+CBroadcast_MuteBroadcastChatUser_Response = _reflection.GeneratedProtocolMessageType('CBroadcast_MuteBroadcastChatUser_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CBROADCAST_MUTEBROADCASTCHATUSER_RESPONSE,
+  '__module__' : 'steammessages_broadcast_pb2'
   # @@protoc_insertion_point(class_scope:CBroadcast_MuteBroadcastChatUser_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CBroadcast_MuteBroadcastChatUser_Response)
 
-CBroadcast_RemoveUserChatText_Request = _reflection.GeneratedProtocolMessageType('CBroadcast_RemoveUserChatText_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CBROADCAST_REMOVEUSERCHATTEXT_REQUEST,
-  __module__ = 'steammessages_broadcast_pb2'
+CBroadcast_RemoveUserChatText_Request = _reflection.GeneratedProtocolMessageType('CBroadcast_RemoveUserChatText_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CBROADCAST_REMOVEUSERCHATTEXT_REQUEST,
+  '__module__' : 'steammessages_broadcast_pb2'
   # @@protoc_insertion_point(class_scope:CBroadcast_RemoveUserChatText_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CBroadcast_RemoveUserChatText_Request)
 
-CBroadcast_RemoveUserChatText_Response = _reflection.GeneratedProtocolMessageType('CBroadcast_RemoveUserChatText_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CBROADCAST_REMOVEUSERCHATTEXT_RESPONSE,
-  __module__ = 'steammessages_broadcast_pb2'
+CBroadcast_RemoveUserChatText_Response = _reflection.GeneratedProtocolMessageType('CBroadcast_RemoveUserChatText_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CBROADCAST_REMOVEUSERCHATTEXT_RESPONSE,
+  '__module__' : 'steammessages_broadcast_pb2'
   # @@protoc_insertion_point(class_scope:CBroadcast_RemoveUserChatText_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CBroadcast_RemoveUserChatText_Response)
 
-CBroadcast_GetBroadcastChatUserNames_Request = _reflection.GeneratedProtocolMessageType('CBroadcast_GetBroadcastChatUserNames_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CBROADCAST_GETBROADCASTCHATUSERNAMES_REQUEST,
-  __module__ = 'steammessages_broadcast_pb2'
+CBroadcast_GetBroadcastChatUserNames_Request = _reflection.GeneratedProtocolMessageType('CBroadcast_GetBroadcastChatUserNames_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CBROADCAST_GETBROADCASTCHATUSERNAMES_REQUEST,
+  '__module__' : 'steammessages_broadcast_pb2'
   # @@protoc_insertion_point(class_scope:CBroadcast_GetBroadcastChatUserNames_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CBroadcast_GetBroadcastChatUserNames_Request)
 
-CBroadcast_GetBroadcastChatUserNames_Response = _reflection.GeneratedProtocolMessageType('CBroadcast_GetBroadcastChatUserNames_Response', (_message.Message,), dict(
+CBroadcast_GetBroadcastChatUserNames_Response = _reflection.GeneratedProtocolMessageType('CBroadcast_GetBroadcastChatUserNames_Response', (_message.Message,), {
 
-  PersonaName = _reflection.GeneratedProtocolMessageType('PersonaName', (_message.Message,), dict(
-    DESCRIPTOR = _CBROADCAST_GETBROADCASTCHATUSERNAMES_RESPONSE_PERSONANAME,
-    __module__ = 'steammessages_broadcast_pb2'
+  'PersonaName' : _reflection.GeneratedProtocolMessageType('PersonaName', (_message.Message,), {
+    'DESCRIPTOR' : _CBROADCAST_GETBROADCASTCHATUSERNAMES_RESPONSE_PERSONANAME,
+    '__module__' : 'steammessages_broadcast_pb2'
     # @@protoc_insertion_point(class_scope:CBroadcast_GetBroadcastChatUserNames_Response.PersonaName)
-    ))
+    })
   ,
-  DESCRIPTOR = _CBROADCAST_GETBROADCASTCHATUSERNAMES_RESPONSE,
-  __module__ = 'steammessages_broadcast_pb2'
+  'DESCRIPTOR' : _CBROADCAST_GETBROADCASTCHATUSERNAMES_RESPONSE,
+  '__module__' : 'steammessages_broadcast_pb2'
   # @@protoc_insertion_point(class_scope:CBroadcast_GetBroadcastChatUserNames_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CBroadcast_GetBroadcastChatUserNames_Response)
 _sym_db.RegisterMessage(CBroadcast_GetBroadcastChatUserNames_Response.PersonaName)
 
-CBroadcast_StartBuildClip_Request = _reflection.GeneratedProtocolMessageType('CBroadcast_StartBuildClip_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CBROADCAST_STARTBUILDCLIP_REQUEST,
-  __module__ = 'steammessages_broadcast_pb2'
+CBroadcast_StartBuildClip_Request = _reflection.GeneratedProtocolMessageType('CBroadcast_StartBuildClip_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CBROADCAST_STARTBUILDCLIP_REQUEST,
+  '__module__' : 'steammessages_broadcast_pb2'
   # @@protoc_insertion_point(class_scope:CBroadcast_StartBuildClip_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CBroadcast_StartBuildClip_Request)
 
-CBroadcast_StartBuildClip_Response = _reflection.GeneratedProtocolMessageType('CBroadcast_StartBuildClip_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CBROADCAST_STARTBUILDCLIP_RESPONSE,
-  __module__ = 'steammessages_broadcast_pb2'
+CBroadcast_StartBuildClip_Response = _reflection.GeneratedProtocolMessageType('CBroadcast_StartBuildClip_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CBROADCAST_STARTBUILDCLIP_RESPONSE,
+  '__module__' : 'steammessages_broadcast_pb2'
   # @@protoc_insertion_point(class_scope:CBroadcast_StartBuildClip_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CBroadcast_StartBuildClip_Response)
 
-CBroadcast_GetBuildClipStatus_Request = _reflection.GeneratedProtocolMessageType('CBroadcast_GetBuildClipStatus_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CBROADCAST_GETBUILDCLIPSTATUS_REQUEST,
-  __module__ = 'steammessages_broadcast_pb2'
+CBroadcast_GetBuildClipStatus_Request = _reflection.GeneratedProtocolMessageType('CBroadcast_GetBuildClipStatus_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CBROADCAST_GETBUILDCLIPSTATUS_REQUEST,
+  '__module__' : 'steammessages_broadcast_pb2'
   # @@protoc_insertion_point(class_scope:CBroadcast_GetBuildClipStatus_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CBroadcast_GetBuildClipStatus_Request)
 
-CBroadcast_GetBuildClipStatus_Response = _reflection.GeneratedProtocolMessageType('CBroadcast_GetBuildClipStatus_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CBROADCAST_GETBUILDCLIPSTATUS_RESPONSE,
-  __module__ = 'steammessages_broadcast_pb2'
+CBroadcast_GetBuildClipStatus_Response = _reflection.GeneratedProtocolMessageType('CBroadcast_GetBuildClipStatus_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CBROADCAST_GETBUILDCLIPSTATUS_RESPONSE,
+  '__module__' : 'steammessages_broadcast_pb2'
   # @@protoc_insertion_point(class_scope:CBroadcast_GetBuildClipStatus_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CBroadcast_GetBuildClipStatus_Response)
 
-CBroadcast_SetClipDetails_Request = _reflection.GeneratedProtocolMessageType('CBroadcast_SetClipDetails_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CBROADCAST_SETCLIPDETAILS_REQUEST,
-  __module__ = 'steammessages_broadcast_pb2'
+CBroadcast_SetClipDetails_Request = _reflection.GeneratedProtocolMessageType('CBroadcast_SetClipDetails_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CBROADCAST_SETCLIPDETAILS_REQUEST,
+  '__module__' : 'steammessages_broadcast_pb2'
   # @@protoc_insertion_point(class_scope:CBroadcast_SetClipDetails_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CBroadcast_SetClipDetails_Request)
 
-CBroadcast_SetClipDetails_Response = _reflection.GeneratedProtocolMessageType('CBroadcast_SetClipDetails_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CBROADCAST_SETCLIPDETAILS_RESPONSE,
-  __module__ = 'steammessages_broadcast_pb2'
+CBroadcast_SetClipDetails_Response = _reflection.GeneratedProtocolMessageType('CBroadcast_SetClipDetails_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CBROADCAST_SETCLIPDETAILS_RESPONSE,
+  '__module__' : 'steammessages_broadcast_pb2'
   # @@protoc_insertion_point(class_scope:CBroadcast_SetClipDetails_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CBroadcast_SetClipDetails_Response)
 
-CBroadcast_GetClipDetails_Request = _reflection.GeneratedProtocolMessageType('CBroadcast_GetClipDetails_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CBROADCAST_GETCLIPDETAILS_REQUEST,
-  __module__ = 'steammessages_broadcast_pb2'
+CBroadcast_GetClipDetails_Request = _reflection.GeneratedProtocolMessageType('CBroadcast_GetClipDetails_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CBROADCAST_GETCLIPDETAILS_REQUEST,
+  '__module__' : 'steammessages_broadcast_pb2'
   # @@protoc_insertion_point(class_scope:CBroadcast_GetClipDetails_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CBroadcast_GetClipDetails_Request)
 
-CBroadcast_GetClipDetails_Response = _reflection.GeneratedProtocolMessageType('CBroadcast_GetClipDetails_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CBROADCAST_GETCLIPDETAILS_RESPONSE,
-  __module__ = 'steammessages_broadcast_pb2'
+CBroadcast_GetClipDetails_Response = _reflection.GeneratedProtocolMessageType('CBroadcast_GetClipDetails_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CBROADCAST_GETCLIPDETAILS_RESPONSE,
+  '__module__' : 'steammessages_broadcast_pb2'
   # @@protoc_insertion_point(class_scope:CBroadcast_GetClipDetails_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CBroadcast_GetClipDetails_Response)
 
-CBroadcast_SetRTMPInfo_Request = _reflection.GeneratedProtocolMessageType('CBroadcast_SetRTMPInfo_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CBROADCAST_SETRTMPINFO_REQUEST,
-  __module__ = 'steammessages_broadcast_pb2'
+CBroadcast_SetRTMPInfo_Request = _reflection.GeneratedProtocolMessageType('CBroadcast_SetRTMPInfo_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CBROADCAST_SETRTMPINFO_REQUEST,
+  '__module__' : 'steammessages_broadcast_pb2'
   # @@protoc_insertion_point(class_scope:CBroadcast_SetRTMPInfo_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CBroadcast_SetRTMPInfo_Request)
 
-CBroadcast_SetRTMPInfo_Response = _reflection.GeneratedProtocolMessageType('CBroadcast_SetRTMPInfo_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CBROADCAST_SETRTMPINFO_RESPONSE,
-  __module__ = 'steammessages_broadcast_pb2'
+CBroadcast_SetRTMPInfo_Response = _reflection.GeneratedProtocolMessageType('CBroadcast_SetRTMPInfo_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CBROADCAST_SETRTMPINFO_RESPONSE,
+  '__module__' : 'steammessages_broadcast_pb2'
   # @@protoc_insertion_point(class_scope:CBroadcast_SetRTMPInfo_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CBroadcast_SetRTMPInfo_Response)
 
-CBroadcast_GetRTMPInfo_Request = _reflection.GeneratedProtocolMessageType('CBroadcast_GetRTMPInfo_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CBROADCAST_GETRTMPINFO_REQUEST,
-  __module__ = 'steammessages_broadcast_pb2'
+CBroadcast_GetRTMPInfo_Request = _reflection.GeneratedProtocolMessageType('CBroadcast_GetRTMPInfo_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CBROADCAST_GETRTMPINFO_REQUEST,
+  '__module__' : 'steammessages_broadcast_pb2'
   # @@protoc_insertion_point(class_scope:CBroadcast_GetRTMPInfo_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CBroadcast_GetRTMPInfo_Request)
 
-CBroadcast_GetRTMPInfo_Response = _reflection.GeneratedProtocolMessageType('CBroadcast_GetRTMPInfo_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CBROADCAST_GETRTMPINFO_RESPONSE,
-  __module__ = 'steammessages_broadcast_pb2'
+CBroadcast_GetRTMPInfo_Response = _reflection.GeneratedProtocolMessageType('CBroadcast_GetRTMPInfo_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CBROADCAST_GETRTMPINFO_RESPONSE,
+  '__module__' : 'steammessages_broadcast_pb2'
   # @@protoc_insertion_point(class_scope:CBroadcast_GetRTMPInfo_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CBroadcast_GetRTMPInfo_Response)
 
-CBroadcast_WebRTCHaveTURNServer_Notification = _reflection.GeneratedProtocolMessageType('CBroadcast_WebRTCHaveTURNServer_Notification', (_message.Message,), dict(
-  DESCRIPTOR = _CBROADCAST_WEBRTCHAVETURNSERVER_NOTIFICATION,
-  __module__ = 'steammessages_broadcast_pb2'
+CBroadcast_WebRTCHaveTURNServer_Notification = _reflection.GeneratedProtocolMessageType('CBroadcast_WebRTCHaveTURNServer_Notification', (_message.Message,), {
+  'DESCRIPTOR' : _CBROADCAST_WEBRTCHAVETURNSERVER_NOTIFICATION,
+  '__module__' : 'steammessages_broadcast_pb2'
   # @@protoc_insertion_point(class_scope:CBroadcast_WebRTCHaveTURNServer_Notification)
-  ))
+  })
 _sym_db.RegisterMessage(CBroadcast_WebRTCHaveTURNServer_Notification)
 
-CBroadcast_WebRTCStartResult_Request = _reflection.GeneratedProtocolMessageType('CBroadcast_WebRTCStartResult_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CBROADCAST_WEBRTCSTARTRESULT_REQUEST,
-  __module__ = 'steammessages_broadcast_pb2'
+CBroadcast_WebRTCStartResult_Request = _reflection.GeneratedProtocolMessageType('CBroadcast_WebRTCStartResult_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CBROADCAST_WEBRTCSTARTRESULT_REQUEST,
+  '__module__' : 'steammessages_broadcast_pb2'
   # @@protoc_insertion_point(class_scope:CBroadcast_WebRTCStartResult_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CBroadcast_WebRTCStartResult_Request)
 
-CBroadcast_WebRTCStartResult_Response = _reflection.GeneratedProtocolMessageType('CBroadcast_WebRTCStartResult_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CBROADCAST_WEBRTCSTARTRESULT_RESPONSE,
-  __module__ = 'steammessages_broadcast_pb2'
+CBroadcast_WebRTCStartResult_Response = _reflection.GeneratedProtocolMessageType('CBroadcast_WebRTCStartResult_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CBROADCAST_WEBRTCSTARTRESULT_RESPONSE,
+  '__module__' : 'steammessages_broadcast_pb2'
   # @@protoc_insertion_point(class_scope:CBroadcast_WebRTCStartResult_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CBroadcast_WebRTCStartResult_Response)
 
-CBroadcast_WebRTCStopped_Request = _reflection.GeneratedProtocolMessageType('CBroadcast_WebRTCStopped_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CBROADCAST_WEBRTCSTOPPED_REQUEST,
-  __module__ = 'steammessages_broadcast_pb2'
+CBroadcast_WebRTCStopped_Request = _reflection.GeneratedProtocolMessageType('CBroadcast_WebRTCStopped_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CBROADCAST_WEBRTCSTOPPED_REQUEST,
+  '__module__' : 'steammessages_broadcast_pb2'
   # @@protoc_insertion_point(class_scope:CBroadcast_WebRTCStopped_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CBroadcast_WebRTCStopped_Request)
 
-CBroadcast_WebRTCStopped_Response = _reflection.GeneratedProtocolMessageType('CBroadcast_WebRTCStopped_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CBROADCAST_WEBRTCSTOPPED_RESPONSE,
-  __module__ = 'steammessages_broadcast_pb2'
+CBroadcast_WebRTCStopped_Response = _reflection.GeneratedProtocolMessageType('CBroadcast_WebRTCStopped_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CBROADCAST_WEBRTCSTOPPED_RESPONSE,
+  '__module__' : 'steammessages_broadcast_pb2'
   # @@protoc_insertion_point(class_scope:CBroadcast_WebRTCStopped_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CBroadcast_WebRTCStopped_Response)
 
-CBroadcast_WebRTCSetAnswer_Request = _reflection.GeneratedProtocolMessageType('CBroadcast_WebRTCSetAnswer_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CBROADCAST_WEBRTCSETANSWER_REQUEST,
-  __module__ = 'steammessages_broadcast_pb2'
+CBroadcast_WebRTCSetAnswer_Request = _reflection.GeneratedProtocolMessageType('CBroadcast_WebRTCSetAnswer_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CBROADCAST_WEBRTCSETANSWER_REQUEST,
+  '__module__' : 'steammessages_broadcast_pb2'
   # @@protoc_insertion_point(class_scope:CBroadcast_WebRTCSetAnswer_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CBroadcast_WebRTCSetAnswer_Request)
 
-CBroadcast_WebRTCSetAnswer_Response = _reflection.GeneratedProtocolMessageType('CBroadcast_WebRTCSetAnswer_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CBROADCAST_WEBRTCSETANSWER_RESPONSE,
-  __module__ = 'steammessages_broadcast_pb2'
+CBroadcast_WebRTCSetAnswer_Response = _reflection.GeneratedProtocolMessageType('CBroadcast_WebRTCSetAnswer_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CBROADCAST_WEBRTCSETANSWER_RESPONSE,
+  '__module__' : 'steammessages_broadcast_pb2'
   # @@protoc_insertion_point(class_scope:CBroadcast_WebRTCSetAnswer_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CBroadcast_WebRTCSetAnswer_Response)
 
-CBroadcast_WebRTCLookupTURNServer_Request = _reflection.GeneratedProtocolMessageType('CBroadcast_WebRTCLookupTURNServer_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CBROADCAST_WEBRTCLOOKUPTURNSERVER_REQUEST,
-  __module__ = 'steammessages_broadcast_pb2'
+CBroadcast_WebRTCLookupTURNServer_Request = _reflection.GeneratedProtocolMessageType('CBroadcast_WebRTCLookupTURNServer_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CBROADCAST_WEBRTCLOOKUPTURNSERVER_REQUEST,
+  '__module__' : 'steammessages_broadcast_pb2'
   # @@protoc_insertion_point(class_scope:CBroadcast_WebRTCLookupTURNServer_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CBroadcast_WebRTCLookupTURNServer_Request)
 
-CBroadcast_WebRTCLookupTURNServer_Response = _reflection.GeneratedProtocolMessageType('CBroadcast_WebRTCLookupTURNServer_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CBROADCAST_WEBRTCLOOKUPTURNSERVER_RESPONSE,
-  __module__ = 'steammessages_broadcast_pb2'
+CBroadcast_WebRTCLookupTURNServer_Response = _reflection.GeneratedProtocolMessageType('CBroadcast_WebRTCLookupTURNServer_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CBROADCAST_WEBRTCLOOKUPTURNSERVER_RESPONSE,
+  '__module__' : 'steammessages_broadcast_pb2'
   # @@protoc_insertion_point(class_scope:CBroadcast_WebRTCLookupTURNServer_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CBroadcast_WebRTCLookupTURNServer_Response)
 
-CBroadcast_WebRTC_Candidate = _reflection.GeneratedProtocolMessageType('CBroadcast_WebRTC_Candidate', (_message.Message,), dict(
-  DESCRIPTOR = _CBROADCAST_WEBRTC_CANDIDATE,
-  __module__ = 'steammessages_broadcast_pb2'
+CBroadcast_WebRTC_Candidate = _reflection.GeneratedProtocolMessageType('CBroadcast_WebRTC_Candidate', (_message.Message,), {
+  'DESCRIPTOR' : _CBROADCAST_WEBRTC_CANDIDATE,
+  '__module__' : 'steammessages_broadcast_pb2'
   # @@protoc_insertion_point(class_scope:CBroadcast_WebRTC_Candidate)
-  ))
+  })
 _sym_db.RegisterMessage(CBroadcast_WebRTC_Candidate)
 
-CBroadcast_WebRTCAddHostCandidate_Request = _reflection.GeneratedProtocolMessageType('CBroadcast_WebRTCAddHostCandidate_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CBROADCAST_WEBRTCADDHOSTCANDIDATE_REQUEST,
-  __module__ = 'steammessages_broadcast_pb2'
+CBroadcast_WebRTCAddHostCandidate_Request = _reflection.GeneratedProtocolMessageType('CBroadcast_WebRTCAddHostCandidate_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CBROADCAST_WEBRTCADDHOSTCANDIDATE_REQUEST,
+  '__module__' : 'steammessages_broadcast_pb2'
   # @@protoc_insertion_point(class_scope:CBroadcast_WebRTCAddHostCandidate_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CBroadcast_WebRTCAddHostCandidate_Request)
 
-CBroadcast_WebRTCAddHostCandidate_Response = _reflection.GeneratedProtocolMessageType('CBroadcast_WebRTCAddHostCandidate_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CBROADCAST_WEBRTCADDHOSTCANDIDATE_RESPONSE,
-  __module__ = 'steammessages_broadcast_pb2'
+CBroadcast_WebRTCAddHostCandidate_Response = _reflection.GeneratedProtocolMessageType('CBroadcast_WebRTCAddHostCandidate_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CBROADCAST_WEBRTCADDHOSTCANDIDATE_RESPONSE,
+  '__module__' : 'steammessages_broadcast_pb2'
   # @@protoc_insertion_point(class_scope:CBroadcast_WebRTCAddHostCandidate_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CBroadcast_WebRTCAddHostCandidate_Response)
 
-CBroadcast_WebRTCAddViewerCandidate_Request = _reflection.GeneratedProtocolMessageType('CBroadcast_WebRTCAddViewerCandidate_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CBROADCAST_WEBRTCADDVIEWERCANDIDATE_REQUEST,
-  __module__ = 'steammessages_broadcast_pb2'
+CBroadcast_WebRTCAddViewerCandidate_Request = _reflection.GeneratedProtocolMessageType('CBroadcast_WebRTCAddViewerCandidate_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CBROADCAST_WEBRTCADDVIEWERCANDIDATE_REQUEST,
+  '__module__' : 'steammessages_broadcast_pb2'
   # @@protoc_insertion_point(class_scope:CBroadcast_WebRTCAddViewerCandidate_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CBroadcast_WebRTCAddViewerCandidate_Request)
 
-CBroadcast_WebRTCAddViewerCandidate_Response = _reflection.GeneratedProtocolMessageType('CBroadcast_WebRTCAddViewerCandidate_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CBROADCAST_WEBRTCADDVIEWERCANDIDATE_RESPONSE,
-  __module__ = 'steammessages_broadcast_pb2'
+CBroadcast_WebRTCAddViewerCandidate_Response = _reflection.GeneratedProtocolMessageType('CBroadcast_WebRTCAddViewerCandidate_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CBROADCAST_WEBRTCADDVIEWERCANDIDATE_RESPONSE,
+  '__module__' : 'steammessages_broadcast_pb2'
   # @@protoc_insertion_point(class_scope:CBroadcast_WebRTCAddViewerCandidate_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CBroadcast_WebRTCAddViewerCandidate_Response)
 
-CBroadcast_WebRTCGetHostCandidates_Request = _reflection.GeneratedProtocolMessageType('CBroadcast_WebRTCGetHostCandidates_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CBROADCAST_WEBRTCGETHOSTCANDIDATES_REQUEST,
-  __module__ = 'steammessages_broadcast_pb2'
+CBroadcast_WebRTCGetHostCandidates_Request = _reflection.GeneratedProtocolMessageType('CBroadcast_WebRTCGetHostCandidates_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CBROADCAST_WEBRTCGETHOSTCANDIDATES_REQUEST,
+  '__module__' : 'steammessages_broadcast_pb2'
   # @@protoc_insertion_point(class_scope:CBroadcast_WebRTCGetHostCandidates_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CBroadcast_WebRTCGetHostCandidates_Request)
 
-CBroadcast_WebRTCGetHostCandidates_Response = _reflection.GeneratedProtocolMessageType('CBroadcast_WebRTCGetHostCandidates_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CBROADCAST_WEBRTCGETHOSTCANDIDATES_RESPONSE,
-  __module__ = 'steammessages_broadcast_pb2'
+CBroadcast_WebRTCGetHostCandidates_Response = _reflection.GeneratedProtocolMessageType('CBroadcast_WebRTCGetHostCandidates_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CBROADCAST_WEBRTCGETHOSTCANDIDATES_RESPONSE,
+  '__module__' : 'steammessages_broadcast_pb2'
   # @@protoc_insertion_point(class_scope:CBroadcast_WebRTCGetHostCandidates_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CBroadcast_WebRTCGetHostCandidates_Response)
 
-CBroadcast_GetBroadcastUploadStats_Request = _reflection.GeneratedProtocolMessageType('CBroadcast_GetBroadcastUploadStats_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CBROADCAST_GETBROADCASTUPLOADSTATS_REQUEST,
-  __module__ = 'steammessages_broadcast_pb2'
+CBroadcast_GetBroadcastUploadStats_Request = _reflection.GeneratedProtocolMessageType('CBroadcast_GetBroadcastUploadStats_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CBROADCAST_GETBROADCASTUPLOADSTATS_REQUEST,
+  '__module__' : 'steammessages_broadcast_pb2'
   # @@protoc_insertion_point(class_scope:CBroadcast_GetBroadcastUploadStats_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CBroadcast_GetBroadcastUploadStats_Request)
 
-CBroadcast_GetBroadcastUploadStats_Response = _reflection.GeneratedProtocolMessageType('CBroadcast_GetBroadcastUploadStats_Response', (_message.Message,), dict(
+CBroadcast_GetBroadcastUploadStats_Response = _reflection.GeneratedProtocolMessageType('CBroadcast_GetBroadcastUploadStats_Response', (_message.Message,), {
 
-  UploadStats = _reflection.GeneratedProtocolMessageType('UploadStats', (_message.Message,), dict(
-    DESCRIPTOR = _CBROADCAST_GETBROADCASTUPLOADSTATS_RESPONSE_UPLOADSTATS,
-    __module__ = 'steammessages_broadcast_pb2'
+  'UploadStats' : _reflection.GeneratedProtocolMessageType('UploadStats', (_message.Message,), {
+    'DESCRIPTOR' : _CBROADCAST_GETBROADCASTUPLOADSTATS_RESPONSE_UPLOADSTATS,
+    '__module__' : 'steammessages_broadcast_pb2'
     # @@protoc_insertion_point(class_scope:CBroadcast_GetBroadcastUploadStats_Response.UploadStats)
-    ))
+    })
   ,
-  DESCRIPTOR = _CBROADCAST_GETBROADCASTUPLOADSTATS_RESPONSE,
-  __module__ = 'steammessages_broadcast_pb2'
+  'DESCRIPTOR' : _CBROADCAST_GETBROADCASTUPLOADSTATS_RESPONSE,
+  '__module__' : 'steammessages_broadcast_pb2'
   # @@protoc_insertion_point(class_scope:CBroadcast_GetBroadcastUploadStats_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CBroadcast_GetBroadcastUploadStats_Response)
 _sym_db.RegisterMessage(CBroadcast_GetBroadcastUploadStats_Response.UploadStats)
 
-CBroadcast_GetBroadcastViewerStats_Request = _reflection.GeneratedProtocolMessageType('CBroadcast_GetBroadcastViewerStats_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CBROADCAST_GETBROADCASTVIEWERSTATS_REQUEST,
-  __module__ = 'steammessages_broadcast_pb2'
+CBroadcast_GetBroadcastViewerStats_Request = _reflection.GeneratedProtocolMessageType('CBroadcast_GetBroadcastViewerStats_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CBROADCAST_GETBROADCASTVIEWERSTATS_REQUEST,
+  '__module__' : 'steammessages_broadcast_pb2'
   # @@protoc_insertion_point(class_scope:CBroadcast_GetBroadcastViewerStats_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CBroadcast_GetBroadcastViewerStats_Request)
 
-CBroadcast_GetBroadcastViewerStats_Response = _reflection.GeneratedProtocolMessageType('CBroadcast_GetBroadcastViewerStats_Response', (_message.Message,), dict(
+CBroadcast_GetBroadcastViewerStats_Response = _reflection.GeneratedProtocolMessageType('CBroadcast_GetBroadcastViewerStats_Response', (_message.Message,), {
 
-  ViewerStats = _reflection.GeneratedProtocolMessageType('ViewerStats', (_message.Message,), dict(
-    DESCRIPTOR = _CBROADCAST_GETBROADCASTVIEWERSTATS_RESPONSE_VIEWERSTATS,
-    __module__ = 'steammessages_broadcast_pb2'
+  'ViewerStats' : _reflection.GeneratedProtocolMessageType('ViewerStats', (_message.Message,), {
+    'DESCRIPTOR' : _CBROADCAST_GETBROADCASTVIEWERSTATS_RESPONSE_VIEWERSTATS,
+    '__module__' : 'steammessages_broadcast_pb2'
     # @@protoc_insertion_point(class_scope:CBroadcast_GetBroadcastViewerStats_Response.ViewerStats)
-    ))
+    })
   ,
 
-  CountryStats = _reflection.GeneratedProtocolMessageType('CountryStats', (_message.Message,), dict(
-    DESCRIPTOR = _CBROADCAST_GETBROADCASTVIEWERSTATS_RESPONSE_COUNTRYSTATS,
-    __module__ = 'steammessages_broadcast_pb2'
+  'CountryStats' : _reflection.GeneratedProtocolMessageType('CountryStats', (_message.Message,), {
+    'DESCRIPTOR' : _CBROADCAST_GETBROADCASTVIEWERSTATS_RESPONSE_COUNTRYSTATS,
+    '__module__' : 'steammessages_broadcast_pb2'
     # @@protoc_insertion_point(class_scope:CBroadcast_GetBroadcastViewerStats_Response.CountryStats)
-    ))
+    })
   ,
-  DESCRIPTOR = _CBROADCAST_GETBROADCASTVIEWERSTATS_RESPONSE,
-  __module__ = 'steammessages_broadcast_pb2'
+  'DESCRIPTOR' : _CBROADCAST_GETBROADCASTVIEWERSTATS_RESPONSE,
+  '__module__' : 'steammessages_broadcast_pb2'
   # @@protoc_insertion_point(class_scope:CBroadcast_GetBroadcastViewerStats_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CBroadcast_GetBroadcastViewerStats_Response)
 _sym_db.RegisterMessage(CBroadcast_GetBroadcastViewerStats_Response.ViewerStats)
 _sym_db.RegisterMessage(CBroadcast_GetBroadcastViewerStats_Response.CountryStats)
 
-CBroadcast_BroadcastViewerState_Notification = _reflection.GeneratedProtocolMessageType('CBroadcast_BroadcastViewerState_Notification', (_message.Message,), dict(
-  DESCRIPTOR = _CBROADCAST_BROADCASTVIEWERSTATE_NOTIFICATION,
-  __module__ = 'steammessages_broadcast_pb2'
+CBroadcast_BroadcastViewerState_Notification = _reflection.GeneratedProtocolMessageType('CBroadcast_BroadcastViewerState_Notification', (_message.Message,), {
+  'DESCRIPTOR' : _CBROADCAST_BROADCASTVIEWERSTATE_NOTIFICATION,
+  '__module__' : 'steammessages_broadcast_pb2'
   # @@protoc_insertion_point(class_scope:CBroadcast_BroadcastViewerState_Notification)
-  ))
+  })
 _sym_db.RegisterMessage(CBroadcast_BroadcastViewerState_Notification)
 
-CBroadcast_WaitingBroadcastViewer_Notification = _reflection.GeneratedProtocolMessageType('CBroadcast_WaitingBroadcastViewer_Notification', (_message.Message,), dict(
-  DESCRIPTOR = _CBROADCAST_WAITINGBROADCASTVIEWER_NOTIFICATION,
-  __module__ = 'steammessages_broadcast_pb2'
+CBroadcast_WaitingBroadcastViewer_Notification = _reflection.GeneratedProtocolMessageType('CBroadcast_WaitingBroadcastViewer_Notification', (_message.Message,), {
+  'DESCRIPTOR' : _CBROADCAST_WAITINGBROADCASTVIEWER_NOTIFICATION,
+  '__module__' : 'steammessages_broadcast_pb2'
   # @@protoc_insertion_point(class_scope:CBroadcast_WaitingBroadcastViewer_Notification)
-  ))
+  })
 _sym_db.RegisterMessage(CBroadcast_WaitingBroadcastViewer_Notification)
 
-CBroadcast_BroadcastUploadStarted_Notification = _reflection.GeneratedProtocolMessageType('CBroadcast_BroadcastUploadStarted_Notification', (_message.Message,), dict(
-  DESCRIPTOR = _CBROADCAST_BROADCASTUPLOADSTARTED_NOTIFICATION,
-  __module__ = 'steammessages_broadcast_pb2'
+CBroadcast_BroadcastUploadStarted_Notification = _reflection.GeneratedProtocolMessageType('CBroadcast_BroadcastUploadStarted_Notification', (_message.Message,), {
+  'DESCRIPTOR' : _CBROADCAST_BROADCASTUPLOADSTARTED_NOTIFICATION,
+  '__module__' : 'steammessages_broadcast_pb2'
   # @@protoc_insertion_point(class_scope:CBroadcast_BroadcastUploadStarted_Notification)
-  ))
+  })
 _sym_db.RegisterMessage(CBroadcast_BroadcastUploadStarted_Notification)
 
-CBroadcast_StopBroadcastUpload_Notification = _reflection.GeneratedProtocolMessageType('CBroadcast_StopBroadcastUpload_Notification', (_message.Message,), dict(
-  DESCRIPTOR = _CBROADCAST_STOPBROADCASTUPLOAD_NOTIFICATION,
-  __module__ = 'steammessages_broadcast_pb2'
+CBroadcast_StopBroadcastUpload_Notification = _reflection.GeneratedProtocolMessageType('CBroadcast_StopBroadcastUpload_Notification', (_message.Message,), {
+  'DESCRIPTOR' : _CBROADCAST_STOPBROADCASTUPLOAD_NOTIFICATION,
+  '__module__' : 'steammessages_broadcast_pb2'
   # @@protoc_insertion_point(class_scope:CBroadcast_StopBroadcastUpload_Notification)
-  ))
+  })
 _sym_db.RegisterMessage(CBroadcast_StopBroadcastUpload_Notification)
 
-CBroadcast_SessionClosed_Notification = _reflection.GeneratedProtocolMessageType('CBroadcast_SessionClosed_Notification', (_message.Message,), dict(
-  DESCRIPTOR = _CBROADCAST_SESSIONCLOSED_NOTIFICATION,
-  __module__ = 'steammessages_broadcast_pb2'
+CBroadcast_SessionClosed_Notification = _reflection.GeneratedProtocolMessageType('CBroadcast_SessionClosed_Notification', (_message.Message,), {
+  'DESCRIPTOR' : _CBROADCAST_SESSIONCLOSED_NOTIFICATION,
+  '__module__' : 'steammessages_broadcast_pb2'
   # @@protoc_insertion_point(class_scope:CBroadcast_SessionClosed_Notification)
-  ))
+  })
 _sym_db.RegisterMessage(CBroadcast_SessionClosed_Notification)
 
-CBroadcast_ViewerBroadcastInvite_Notification = _reflection.GeneratedProtocolMessageType('CBroadcast_ViewerBroadcastInvite_Notification', (_message.Message,), dict(
-  DESCRIPTOR = _CBROADCAST_VIEWERBROADCASTINVITE_NOTIFICATION,
-  __module__ = 'steammessages_broadcast_pb2'
+CBroadcast_ViewerBroadcastInvite_Notification = _reflection.GeneratedProtocolMessageType('CBroadcast_ViewerBroadcastInvite_Notification', (_message.Message,), {
+  'DESCRIPTOR' : _CBROADCAST_VIEWERBROADCASTINVITE_NOTIFICATION,
+  '__module__' : 'steammessages_broadcast_pb2'
   # @@protoc_insertion_point(class_scope:CBroadcast_ViewerBroadcastInvite_Notification)
-  ))
+  })
 _sym_db.RegisterMessage(CBroadcast_ViewerBroadcastInvite_Notification)
 
-CBroadcast_BroadcastStatus_Notification = _reflection.GeneratedProtocolMessageType('CBroadcast_BroadcastStatus_Notification', (_message.Message,), dict(
-  DESCRIPTOR = _CBROADCAST_BROADCASTSTATUS_NOTIFICATION,
-  __module__ = 'steammessages_broadcast_pb2'
+CBroadcast_BroadcastStatus_Notification = _reflection.GeneratedProtocolMessageType('CBroadcast_BroadcastStatus_Notification', (_message.Message,), {
+  'DESCRIPTOR' : _CBROADCAST_BROADCASTSTATUS_NOTIFICATION,
+  '__module__' : 'steammessages_broadcast_pb2'
   # @@protoc_insertion_point(class_scope:CBroadcast_BroadcastStatus_Notification)
-  ))
+  })
 _sym_db.RegisterMessage(CBroadcast_BroadcastStatus_Notification)
 
-CBroadcast_BroadcastChannelLive_Notification = _reflection.GeneratedProtocolMessageType('CBroadcast_BroadcastChannelLive_Notification', (_message.Message,), dict(
-  DESCRIPTOR = _CBROADCAST_BROADCASTCHANNELLIVE_NOTIFICATION,
-  __module__ = 'steammessages_broadcast_pb2'
+CBroadcast_BroadcastChannelLive_Notification = _reflection.GeneratedProtocolMessageType('CBroadcast_BroadcastChannelLive_Notification', (_message.Message,), {
+  'DESCRIPTOR' : _CBROADCAST_BROADCASTCHANNELLIVE_NOTIFICATION,
+  '__module__' : 'steammessages_broadcast_pb2'
   # @@protoc_insertion_point(class_scope:CBroadcast_BroadcastChannelLive_Notification)
-  ))
+  })
 _sym_db.RegisterMessage(CBroadcast_BroadcastChannelLive_Notification)
 
-CBroadcast_SendThumbnailToRelay_Notification = _reflection.GeneratedProtocolMessageType('CBroadcast_SendThumbnailToRelay_Notification', (_message.Message,), dict(
-  DESCRIPTOR = _CBROADCAST_SENDTHUMBNAILTORELAY_NOTIFICATION,
-  __module__ = 'steammessages_broadcast_pb2'
+CBroadcast_SendThumbnailToRelay_Notification = _reflection.GeneratedProtocolMessageType('CBroadcast_SendThumbnailToRelay_Notification', (_message.Message,), {
+  'DESCRIPTOR' : _CBROADCAST_SENDTHUMBNAILTORELAY_NOTIFICATION,
+  '__module__' : 'steammessages_broadcast_pb2'
   # @@protoc_insertion_point(class_scope:CBroadcast_SendThumbnailToRelay_Notification)
-  ))
+  })
 _sym_db.RegisterMessage(CBroadcast_SendThumbnailToRelay_Notification)
 
-CBroadcast_WebRTCNeedTURNServer_Notification = _reflection.GeneratedProtocolMessageType('CBroadcast_WebRTCNeedTURNServer_Notification', (_message.Message,), dict(
-  DESCRIPTOR = _CBROADCAST_WEBRTCNEEDTURNSERVER_NOTIFICATION,
-  __module__ = 'steammessages_broadcast_pb2'
+CBroadcast_WebRTCNeedTURNServer_Notification = _reflection.GeneratedProtocolMessageType('CBroadcast_WebRTCNeedTURNServer_Notification', (_message.Message,), {
+  'DESCRIPTOR' : _CBROADCAST_WEBRTCNEEDTURNSERVER_NOTIFICATION,
+  '__module__' : 'steammessages_broadcast_pb2'
   # @@protoc_insertion_point(class_scope:CBroadcast_WebRTCNeedTURNServer_Notification)
-  ))
+  })
 _sym_db.RegisterMessage(CBroadcast_WebRTCNeedTURNServer_Notification)
 
-CBroadcast_WebRTCStart_Notification = _reflection.GeneratedProtocolMessageType('CBroadcast_WebRTCStart_Notification', (_message.Message,), dict(
-  DESCRIPTOR = _CBROADCAST_WEBRTCSTART_NOTIFICATION,
-  __module__ = 'steammessages_broadcast_pb2'
+CBroadcast_WebRTCStart_Notification = _reflection.GeneratedProtocolMessageType('CBroadcast_WebRTCStart_Notification', (_message.Message,), {
+  'DESCRIPTOR' : _CBROADCAST_WEBRTCSTART_NOTIFICATION,
+  '__module__' : 'steammessages_broadcast_pb2'
   # @@protoc_insertion_point(class_scope:CBroadcast_WebRTCStart_Notification)
-  ))
+  })
 _sym_db.RegisterMessage(CBroadcast_WebRTCStart_Notification)
 
-CBroadcast_WebRTCSetAnswer_Notification = _reflection.GeneratedProtocolMessageType('CBroadcast_WebRTCSetAnswer_Notification', (_message.Message,), dict(
-  DESCRIPTOR = _CBROADCAST_WEBRTCSETANSWER_NOTIFICATION,
-  __module__ = 'steammessages_broadcast_pb2'
+CBroadcast_WebRTCSetAnswer_Notification = _reflection.GeneratedProtocolMessageType('CBroadcast_WebRTCSetAnswer_Notification', (_message.Message,), {
+  'DESCRIPTOR' : _CBROADCAST_WEBRTCSETANSWER_NOTIFICATION,
+  '__module__' : 'steammessages_broadcast_pb2'
   # @@protoc_insertion_point(class_scope:CBroadcast_WebRTCSetAnswer_Notification)
-  ))
+  })
 _sym_db.RegisterMessage(CBroadcast_WebRTCSetAnswer_Notification)
 
-CBroadcast_WebRTCAddViewerCandidate_Notification = _reflection.GeneratedProtocolMessageType('CBroadcast_WebRTCAddViewerCandidate_Notification', (_message.Message,), dict(
-  DESCRIPTOR = _CBROADCAST_WEBRTCADDVIEWERCANDIDATE_NOTIFICATION,
-  __module__ = 'steammessages_broadcast_pb2'
+CBroadcast_WebRTCAddViewerCandidate_Notification = _reflection.GeneratedProtocolMessageType('CBroadcast_WebRTCAddViewerCandidate_Notification', (_message.Message,), {
+  'DESCRIPTOR' : _CBROADCAST_WEBRTCADDVIEWERCANDIDATE_NOTIFICATION,
+  '__module__' : 'steammessages_broadcast_pb2'
   # @@protoc_insertion_point(class_scope:CBroadcast_WebRTCAddViewerCandidate_Notification)
-  ))
+  })
 _sym_db.RegisterMessage(CBroadcast_WebRTCAddViewerCandidate_Notification)
 
 
@@ -4738,6 +4868,7 @@ _CBROADCAST_GETBROADCASTSTATUS_REQUEST.fields_by_name['steamid']._options = None
 _CBROADCAST_GETBROADCASTSTATUS_REQUEST.fields_by_name['broadcast_id']._options = None
 _CBROADCAST_POSTCHATMESSAGE_REQUEST.fields_by_name['language']._options = None
 _CBROADCAST_POSTCHATMESSAGE_REQUEST.fields_by_name['country_code']._options = None
+_CBROADCAST_GETBROADCASTCHATUSERNAMES_RESPONSE_PERSONANAME.fields_by_name['steam_id']._options = None
 _CBROADCAST_SETCLIPDETAILS_REQUEST.fields_by_name['broadcast_clip_id']._options = None
 _CBROADCAST_SETCLIPDETAILS_REQUEST.fields_by_name['start_time']._options = None
 _CBROADCAST_SETCLIPDETAILS_REQUEST.fields_by_name['end_time']._options = None
@@ -4757,12 +4888,14 @@ _CBROADCAST_SETRTMPINFO_REQUEST.fields_by_name['broadcast_buffer']._options = No
 _CBROADCAST_SETRTMPINFO_REQUEST.fields_by_name['steamid']._options = None
 _CBROADCAST_SETRTMPINFO_REQUEST.fields_by_name['chat_rate_limit']._options = None
 _CBROADCAST_SETRTMPINFO_REQUEST.fields_by_name['enable_replay']._options = None
+_CBROADCAST_SETRTMPINFO_REQUEST.fields_by_name['is_partner_chat_only']._options = None
 _CBROADCAST_GETRTMPINFO_REQUEST.fields_by_name['steamid']._options = None
 _CBROADCAST_GETRTMPINFO_RESPONSE.fields_by_name['broadcast_chat_permission']._options = None
 _CBROADCAST_GETRTMPINFO_RESPONSE.fields_by_name['broadcast_buffer']._options = None
 _CBROADCAST_GETRTMPINFO_RESPONSE.fields_by_name['steamid']._options = None
 _CBROADCAST_GETRTMPINFO_RESPONSE.fields_by_name['chat_rate_limit']._options = None
 _CBROADCAST_GETRTMPINFO_RESPONSE.fields_by_name['enable_replay']._options = None
+_CBROADCAST_GETRTMPINFO_RESPONSE.fields_by_name['is_partner_chat_only']._options = None
 _CBROADCAST_GETBROADCASTUPLOADSTATS_REQUEST.fields_by_name['row_limit']._options = None
 _CBROADCAST_GETBROADCASTUPLOADSTATS_REQUEST.fields_by_name['start_time']._options = None
 _CBROADCAST_GETBROADCASTUPLOADSTATS_REQUEST.fields_by_name['upload_id']._options = None
@@ -4801,9 +4934,10 @@ _BROADCAST = _descriptor.ServiceDescriptor(
   full_name='Broadcast',
   file=DESCRIPTOR,
   index=0,
-  serialized_options=_b('\202\265\030&Methods for Steam broadcast operations'),
-  serialized_start=14460,
-  serialized_end=19970,
+  serialized_options=b'\202\265\030&Methods for Steam broadcast operations',
+  create_key=_descriptor._internal_create_key,
+  serialized_start=14692,
+  serialized_end=20202,
   methods=[
   _descriptor.MethodDescriptor(
     name='BeginBroadcastSession',
@@ -4812,7 +4946,8 @@ _BROADCAST = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CBROADCAST_BEGINBROADCASTSESSION_REQUEST,
     output_type=_CBROADCAST_BEGINBROADCASTSESSION_RESPONSE,
-    serialized_options=_b('\202\265\030yRequest from client to directory to begin a broadcast session. No data being sent to relay; just available for broadcast.'),
+    serialized_options=b'\202\265\030yRequest from client to directory to begin a broadcast session. No data being sent to relay; just available for broadcast.',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='EndBroadcastSession',
@@ -4821,7 +4956,8 @@ _BROADCAST = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CBROADCAST_ENDBROADCASTSESSION_REQUEST,
     output_type=_CBROADCAST_ENDBROADCASTSESSION_RESPONSE,
-    serialized_options=_b('\202\265\030LRequest from client to stop a broadcast session. Any uploads will terminate.'),
+    serialized_options=b'\202\265\030LRequest from client to stop a broadcast session. Any uploads will terminate.',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='StartBroadcastUpload',
@@ -4830,7 +4966,8 @@ _BROADCAST = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CBROADCAST_STARTBROADCASTUPLOAD_REQUEST,
     output_type=_CBROADCAST_STARTBROADCASTUPLOAD_RESPONSE,
-    serialized_options=_b('\202\265\030;Request from client to begin sending video for a broadcast.'),
+    serialized_options=b'\202\265\030;Request from client to begin sending video for a broadcast.',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='NotifyBroadcastUploadStop',
@@ -4839,7 +4976,8 @@ _BROADCAST = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CBROADCAST_NOTIFYBROADCASTUPLOADSTOP_NOTIFICATION,
     output_type=steammessages__unified__base__pb2._NORESPONSE,
-    serialized_options=_b('\202\265\0307Tells directory that client stopped uploading broadcast'),
+    serialized_options=b'\202\265\0307Tells directory that client stopped uploading broadcast',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='WatchBroadcast',
@@ -4848,7 +4986,8 @@ _BROADCAST = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CBROADCAST_WATCHBROADCAST_REQUEST,
     output_type=_CBROADCAST_WATCHBROADCAST_RESPONSE,
-    serialized_options=_b('\202\265\030(Request from viewer to watch a broadcast'),
+    serialized_options=b'\202\265\030(Request from viewer to watch a broadcast',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='HeartbeatBroadcast',
@@ -4857,7 +4996,8 @@ _BROADCAST = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CBROADCAST_HEARTBEATBROADCAST_NOTIFICATION,
     output_type=steammessages__unified__base__pb2._NORESPONSE,
-    serialized_options=_b('\202\265\030-Notify directory that user is still watching.'),
+    serialized_options=b'\202\265\030-Notify directory that user is still watching.',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='StopWatchingBroadcast',
@@ -4866,7 +5006,8 @@ _BROADCAST = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CBROADCAST_STOPWATCHINGBROADCAST_NOTIFICATION,
     output_type=steammessages__unified__base__pb2._NORESPONSE,
-    serialized_options=_b('\202\265\030gRequest to immediately stop watching a broadcast. Optional Method, if not called, viewer will time out.'),
+    serialized_options=b'\202\265\030gRequest to immediately stop watching a broadcast. Optional Method, if not called, viewer will time out.',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetBroadcastStatus',
@@ -4875,7 +5016,8 @@ _BROADCAST = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CBROADCAST_GETBROADCASTSTATUS_REQUEST,
     output_type=_CBROADCAST_GETBROADCASTSTATUS_RESPONSE,
-    serialized_options=_b('\202\265\030+Request from viewer about broadcast details'),
+    serialized_options=b'\202\265\030+Request from viewer about broadcast details',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetBroadcastThumbnail',
@@ -4884,7 +5026,8 @@ _BROADCAST = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CBROADCAST_GETBROADCASTTHUMBNAIL_REQUEST,
     output_type=_CBROADCAST_GETBROADCASTTHUMBNAIL_RESPONSE,
-    serialized_options=_b('\202\265\030#Request thumbnail URL for broadcast'),
+    serialized_options=b'\202\265\030#Request thumbnail URL for broadcast',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='InviteToBroadcast',
@@ -4893,7 +5036,8 @@ _BROADCAST = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CBROADCAST_INVITETOBROADCAST_REQUEST,
     output_type=_CBROADCAST_INVITETOBROADCAST_RESPONSE,
-    serialized_options=_b('\202\265\030:Invites another steam user to watch the caller\'s broadcast'),
+    serialized_options=b'\202\265\030:Invites another steam user to watch the caller\'s broadcast',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='SendBroadcastStateToServer',
@@ -4902,7 +5046,8 @@ _BROADCAST = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CBROADCAST_SENDBROADCASTSTATETOSERVER_REQUEST,
     output_type=_CBROADCAST_SENDBROADCASTSTATETOSERVER_RESPONSE,
-    serialized_options=_b('\202\265\030ESends users current broadcast state (permissions, game) to the server'),
+    serialized_options=b'\202\265\030ESends users current broadcast state (permissions, game) to the server',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='NotifyBroadcastSessionHeartbeat',
@@ -4911,7 +5056,8 @@ _BROADCAST = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CBROADCAST_NOTIFYBROADCASTSESSIONHEARTBEAT_NOTIFICATION,
     output_type=steammessages__unified__base__pb2._NORESPONSE,
-    serialized_options=_b('\202\265\0304Tells directory broadcast session is still available'),
+    serialized_options=b'\202\265\0304Tells directory broadcast session is still available',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetBroadcastChatInfo',
@@ -4920,7 +5066,8 @@ _BROADCAST = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CBROADCAST_GETBROADCASTCHATINFO_REQUEST,
     output_type=_CBROADCAST_GETBROADCASTCHATINFO_RESPONSE,
-    serialized_options=_b('\202\265\030#Gets chat room info for a broadcast'),
+    serialized_options=b'\202\265\030#Gets chat room info for a broadcast',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='PostChatMessage',
@@ -4929,7 +5076,8 @@ _BROADCAST = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CBROADCAST_POSTCHATMESSAGE_REQUEST,
     output_type=_CBROADCAST_POSTCHATMESSAGE_RESPONSE,
-    serialized_options=_b('\202\265\030(Post chat message to specified chat room'),
+    serialized_options=b'\202\265\030(Post chat message to specified chat room',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='UpdateChatMessageFlair',
@@ -4938,7 +5086,8 @@ _BROADCAST = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CBROADCAST_UPDATECHATMESSAGEFLAIR_REQUEST,
     output_type=_CBROADCAST_UPDATECHATMESSAGEFLAIR_RESPONSE,
-    serialized_options=_b('\202\265\0304Update chat message flair in the specified chat room'),
+    serialized_options=b'\202\265\0304Update chat message flair in the specified chat room',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='MuteBroadcastChatUser',
@@ -4947,7 +5096,8 @@ _BROADCAST = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CBROADCAST_MUTEBROADCASTCHATUSER_REQUEST,
     output_type=_CBROADCAST_MUTEBROADCASTCHATUSER_RESPONSE,
-    serialized_options=_b('\202\265\030\"Mute a user in your broadcast chat'),
+    serialized_options=b'\202\265\030\"Mute a user in your broadcast chat',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='RemoveUserChatText',
@@ -4956,7 +5106,8 @@ _BROADCAST = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CBROADCAST_REMOVEUSERCHATTEXT_REQUEST,
     output_type=_CBROADCAST_REMOVEUSERCHATTEXT_RESPONSE,
-    serialized_options=_b('\202\265\030)Tell all viewers to remove user chat text'),
+    serialized_options=b'\202\265\030)Tell all viewers to remove user chat text',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetBroadcastChatUserNames',
@@ -4965,7 +5116,8 @@ _BROADCAST = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CBROADCAST_GETBROADCASTCHATUSERNAMES_REQUEST,
     output_type=_CBROADCAST_GETBROADCASTCHATUSERNAMES_RESPONSE,
-    serialized_options=_b('\202\265\030#Get names for list of users in chat'),
+    serialized_options=b'\202\265\030#Get names for list of users in chat',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='StartBuildClip',
@@ -4974,7 +5126,8 @@ _BROADCAST = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CBROADCAST_STARTBUILDCLIP_REQUEST,
     output_type=_CBROADCAST_STARTBUILDCLIP_RESPONSE,
-    serialized_options=_b('\202\265\030\037Start building a broadcast clip'),
+    serialized_options=b'\202\265\030\037Start building a broadcast clip',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetBuildClipStatus',
@@ -4983,7 +5136,8 @@ _BROADCAST = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CBROADCAST_GETBUILDCLIPSTATUS_REQUEST,
     output_type=_CBROADCAST_GETBUILDCLIPSTATUS_RESPONSE,
-    serialized_options=_b('\202\265\030\037Start building a broadcast clip'),
+    serialized_options=b'\202\265\030\037Start building a broadcast clip',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='SetClipDetails',
@@ -4992,7 +5146,8 @@ _BROADCAST = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CBROADCAST_SETCLIPDETAILS_REQUEST,
     output_type=_CBROADCAST_SETCLIPDETAILS_RESPONSE,
-    serialized_options=_b('\202\265\030\030Updates a broadcast clip'),
+    serialized_options=b'\202\265\030\030Updates a broadcast clip',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetClipDetails',
@@ -5001,7 +5156,8 @@ _BROADCAST = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CBROADCAST_GETCLIPDETAILS_REQUEST,
     output_type=_CBROADCAST_GETCLIPDETAILS_RESPONSE,
-    serialized_options=_b('\202\265\030\037Get details for Broadcast Clips'),
+    serialized_options=b'\202\265\030\037Get details for Broadcast Clips',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='SetRTMPInfo',
@@ -5010,7 +5166,8 @@ _BROADCAST = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CBROADCAST_SETRTMPINFO_REQUEST,
     output_type=_CBROADCAST_SETRTMPINFO_RESPONSE,
-    serialized_options=_b('\202\265\030\030Sets RTMP broadcast info'),
+    serialized_options=b'\202\265\030\030Sets RTMP broadcast info',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetRTMPInfo',
@@ -5019,7 +5176,8 @@ _BROADCAST = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CBROADCAST_GETRTMPINFO_REQUEST,
     output_type=_CBROADCAST_GETRTMPINFO_RESPONSE,
-    serialized_options=_b('\202\265\030\030Gets RTMP broadcast info'),
+    serialized_options=b'\202\265\030\030Gets RTMP broadcast info',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='NotifyWebRTCHaveTURNServer',
@@ -5028,7 +5186,8 @@ _BROADCAST = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CBROADCAST_WEBRTCHAVETURNSERVER_NOTIFICATION,
     output_type=steammessages__unified__base__pb2._NORESPONSE,
-    serialized_options=_b('\202\265\030@Notification from client to server with the client\'s TURN server'),
+    serialized_options=b'\202\265\030@Notification from client to server with the client\'s TURN server',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='WebRTCStartResult',
@@ -5037,7 +5196,8 @@ _BROADCAST = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CBROADCAST_WEBRTCSTARTRESULT_REQUEST,
     output_type=_CBROADCAST_WEBRTCSTARTRESULT_RESPONSE,
-    serialized_options=_b('\202\265\030DNotify the server that a WebRTC session has been created by the host'),
+    serialized_options=b'\202\265\030DNotify the server that a WebRTC session has been created by the host',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='WebRTCStopped',
@@ -5046,7 +5206,8 @@ _BROADCAST = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CBROADCAST_WEBRTCSTOPPED_REQUEST,
     output_type=_CBROADCAST_WEBRTCSTOPPED_RESPONSE,
-    serialized_options=_b('\202\265\030DNotify the server that a WebRTC session has been stopped by the host'),
+    serialized_options=b'\202\265\030DNotify the server that a WebRTC session has been stopped by the host',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='WebRTCSetAnswer',
@@ -5055,7 +5216,8 @@ _BROADCAST = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CBROADCAST_WEBRTCSETANSWER_REQUEST,
     output_type=_CBROADCAST_WEBRTCSETANSWER_RESPONSE,
-    serialized_options=_b('\202\265\030FNotify the server that a WebRTC session has been created by the viewer'),
+    serialized_options=b'\202\265\030FNotify the server that a WebRTC session has been created by the viewer',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='WebRTCLookupTURNServer',
@@ -5064,7 +5226,8 @@ _BROADCAST = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CBROADCAST_WEBRTCLOOKUPTURNSERVER_REQUEST,
     output_type=_CBROADCAST_WEBRTCLOOKUPTURNSERVER_RESPONSE,
-    serialized_options=_b('\202\265\030+Lookup the best TURN server for this client'),
+    serialized_options=b'\202\265\030+Lookup the best TURN server for this client',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='WebRTCAddHostCandidate',
@@ -5073,7 +5236,8 @@ _BROADCAST = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CBROADCAST_WEBRTCADDHOSTCANDIDATE_REQUEST,
     output_type=_CBROADCAST_WEBRTCADDHOSTCANDIDATE_RESPONSE,
-    serialized_options=_b('\202\265\030:Add an ICE candidate for the host side of a WebRTC session'),
+    serialized_options=b'\202\265\030:Add an ICE candidate for the host side of a WebRTC session',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='WebRTCAddViewerCandidate',
@@ -5082,7 +5246,8 @@ _BROADCAST = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CBROADCAST_WEBRTCADDVIEWERCANDIDATE_REQUEST,
     output_type=_CBROADCAST_WEBRTCADDVIEWERCANDIDATE_RESPONSE,
-    serialized_options=_b('\202\265\030<Add an ICE candidate for the viewer side of a WebRTC session'),
+    serialized_options=b'\202\265\030<Add an ICE candidate for the viewer side of a WebRTC session',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='WebRTCGetHostCandidates',
@@ -5091,7 +5256,8 @@ _BROADCAST = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CBROADCAST_WEBRTCGETHOSTCANDIDATES_REQUEST,
     output_type=_CBROADCAST_WEBRTCGETHOSTCANDIDATES_RESPONSE,
-    serialized_options=_b('\202\265\030<Get the ICE candidates for the host side of a WebRTC session'),
+    serialized_options=b'\202\265\030<Get the ICE candidates for the host side of a WebRTC session',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetBroadcastUploadStats',
@@ -5100,7 +5266,8 @@ _BROADCAST = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CBROADCAST_GETBROADCASTUPLOADSTATS_REQUEST,
     output_type=_CBROADCAST_GETBROADCASTUPLOADSTATS_RESPONSE,
-    serialized_options=_b('\202\265\030$Gets broadcast upload stats for user'),
+    serialized_options=b'\202\265\030$Gets broadcast upload stats for user',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetBroadcastViewerStats',
@@ -5109,7 +5276,8 @@ _BROADCAST = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CBROADCAST_GETBROADCASTVIEWERSTATS_REQUEST,
     output_type=_CBROADCAST_GETBROADCASTVIEWERSTATS_RESPONSE,
-    serialized_options=_b('\202\265\030%Gets viewer stats for given broadcast'),
+    serialized_options=b'\202\265\030%Gets viewer stats for given broadcast',
+    create_key=_descriptor._internal_create_key,
   ),
 ])
 _sym_db.RegisterServiceDescriptor(_BROADCAST)
@@ -5122,9 +5290,10 @@ _BROADCASTCLIENT = _descriptor.ServiceDescriptor(
   full_name='BroadcastClient',
   file=DESCRIPTOR,
   index=1,
-  serialized_options=_b('\300\265\030\002'),
-  serialized_start=19973,
-  serialized_end=22217,
+  serialized_options=b'\300\265\030\002',
+  create_key=_descriptor._internal_create_key,
+  serialized_start=20205,
+  serialized_end=22449,
   methods=[
   _descriptor.MethodDescriptor(
     name='NotifyBroadcastViewerState',
@@ -5133,7 +5302,8 @@ _BROADCASTCLIENT = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CBROADCAST_BROADCASTVIEWERSTATE_NOTIFICATION,
     output_type=steammessages__unified__base__pb2._NORESPONSE,
-    serialized_options=_b('\202\265\030CNotification from server to client that a viewers state has changed'),
+    serialized_options=b'\202\265\030CNotification from server to client that a viewers state has changed',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='NotifyWaitingBroadcastViewer',
@@ -5142,7 +5312,8 @@ _BROADCASTCLIENT = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CBROADCAST_WAITINGBROADCASTVIEWER_NOTIFICATION,
     output_type=steammessages__unified__base__pb2._NORESPONSE,
-    serialized_options=_b('\202\265\030[Notification from server to client one or more users is waiting for user to start broadcast'),
+    serialized_options=b'\202\265\030[Notification from server to client one or more users is waiting for user to start broadcast',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='NotifyBroadcastUploadStarted',
@@ -5151,7 +5322,8 @@ _BROADCASTCLIENT = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CBROADCAST_BROADCASTUPLOADSTARTED_NOTIFICATION,
     output_type=steammessages__unified__base__pb2._NORESPONSE,
-    serialized_options=_b('\202\265\030ENotification from server to client with information about a broadcast'),
+    serialized_options=b'\202\265\030ENotification from server to client with information about a broadcast',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='NotifyStopBroadcastUpload',
@@ -5160,7 +5332,8 @@ _BROADCASTCLIENT = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CBROADCAST_STOPBROADCASTUPLOAD_NOTIFICATION,
     output_type=steammessages__unified__base__pb2._NORESPONSE,
-    serialized_options=_b('\202\265\030zNotification from server to client telling it to stop uploading when the last viewer has disconnected from their broadcast'),
+    serialized_options=b'\202\265\030zNotification from server to client telling it to stop uploading when the last viewer has disconnected from their broadcast',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='NotifySessionClosed',
@@ -5169,7 +5342,8 @@ _BROADCASTCLIENT = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CBROADCAST_SESSIONCLOSED_NOTIFICATION,
     output_type=steammessages__unified__base__pb2._NORESPONSE,
-    serialized_options=_b('\202\265\030eNotification from server to client telling it a session has been closed unexpectedly by the directory'),
+    serialized_options=b'\202\265\030eNotification from server to client telling it a session has been closed unexpectedly by the directory',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='NotifyViewerBroadcastInvite',
@@ -5178,7 +5352,8 @@ _BROADCASTCLIENT = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CBROADCAST_VIEWERBROADCASTINVITE_NOTIFICATION,
     output_type=steammessages__unified__base__pb2._NORESPONSE,
-    serialized_options=_b('\202\265\030cNotification from server to client that a broadcaster is inviting a viewer to watch their broadcast'),
+    serialized_options=b'\202\265\030cNotification from server to client that a broadcaster is inviting a viewer to watch their broadcast',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='NotifyBroadcastStatus',
@@ -5187,7 +5362,8 @@ _BROADCASTCLIENT = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CBROADCAST_BROADCASTSTATUS_NOTIFICATION,
     output_type=steammessages__unified__base__pb2._NORESPONSE,
-    serialized_options=_b('\202\265\030ANotification from server to client about current broadcast status'),
+    serialized_options=b'\202\265\030ANotification from server to client about current broadcast status',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='NotifyBroadcastChannelLive',
@@ -5196,7 +5372,8 @@ _BROADCASTCLIENT = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CBROADCAST_BROADCASTCHANNELLIVE_NOTIFICATION,
     output_type=steammessages__unified__base__pb2._NORESPONSE,
-    serialized_options=_b('\202\265\030ANotification from server to client about current broadcast status'),
+    serialized_options=b'\202\265\030ANotification from server to client about current broadcast status',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='SendThumbnailToRelay',
@@ -5205,7 +5382,8 @@ _BROADCASTCLIENT = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CBROADCAST_SENDTHUMBNAILTORELAY_NOTIFICATION,
     output_type=steammessages__unified__base__pb2._NORESPONSE,
-    serialized_options=_b('\202\265\030\030Send thumbnails to relay'),
+    serialized_options=b'\202\265\030\030Send thumbnails to relay',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='NotifyWebRTCNeedTURNServer',
@@ -5214,7 +5392,8 @@ _BROADCASTCLIENT = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CBROADCAST_WEBRTCNEEDTURNSERVER_NOTIFICATION,
     output_type=steammessages__unified__base__pb2._NORESPONSE,
-    serialized_options=_b('\202\265\030INotification from server to client that it needs the client\'s TURN server'),
+    serialized_options=b'\202\265\030INotification from server to client that it needs the client\'s TURN server',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='NotifyWebRTCStart',
@@ -5223,7 +5402,8 @@ _BROADCASTCLIENT = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CBROADCAST_WEBRTCSTART_NOTIFICATION,
     output_type=steammessages__unified__base__pb2._NORESPONSE,
-    serialized_options=_b('\202\265\030HNotification from server to client that it should start a WebRTC session'),
+    serialized_options=b'\202\265\030HNotification from server to client that it should start a WebRTC session',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='NotifyWebRTCSetAnswer',
@@ -5232,7 +5412,8 @@ _BROADCASTCLIENT = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CBROADCAST_WEBRTCSETANSWER_NOTIFICATION,
     output_type=steammessages__unified__base__pb2._NORESPONSE,
-    serialized_options=_b('\202\265\030KNotification from server to client about the broadcast viewer WebRTC answer'),
+    serialized_options=b'\202\265\030KNotification from server to client about the broadcast viewer WebRTC answer',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='NotifyWebRTCAddViewerCandidate',
@@ -5241,7 +5422,8 @@ _BROADCASTCLIENT = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CBROADCAST_WEBRTCADDVIEWERCANDIDATE_NOTIFICATION,
     output_type=steammessages__unified__base__pb2._NORESPONSE,
-    serialized_options=_b('\202\265\030PNotification from server to client about a broadcast viewer WebRTC ICE candidate'),
+    serialized_options=b'\202\265\030PNotification from server to client about a broadcast viewer WebRTC ICE candidate',
+    create_key=_descriptor._internal_create_key,
   ),
 ])
 _sym_db.RegisterServiceDescriptor(_BROADCASTCLIENT)
diff --git a/steam/protobufs/steammessages_chat_pb2.py b/steam/protobufs/steammessages_chat_pb2.py
index 1db37f9..574809b 100644
--- a/steam/protobufs/steammessages_chat_pb2.py
+++ b/steam/protobufs/steammessages_chat_pb2.py
@@ -1,9 +1,7 @@
 # -*- coding: utf-8 -*-
 # Generated by the protocol buffer compiler.  DO NOT EDIT!
 # source: steammessages_chat.proto
-
-import sys
-_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1'))
+"""Generated protocol buffer code."""
 from google.protobuf.internal import enum_type_wrapper
 from google.protobuf import descriptor as _descriptor
 from google.protobuf import message as _message
@@ -16,6 +14,7 @@ from google.protobuf import service_reflection
 _sym_db = _symbol_database.Default()
 
 
+import steam.protobufs.steammessages_base_pb2 as steammessages__base__pb2
 import steam.protobufs.steammessages_unified_base_pb2 as steammessages__unified__base__pb2
 import steam.protobufs.steammessages_clientserver_friends_pb2 as steammessages__clientserver__friends__pb2
 
@@ -24,38 +23,44 @@ DESCRIPTOR = _descriptor.FileDescriptor(
   name='steammessages_chat.proto',
   package='',
   syntax='proto2',
-  serialized_options=_b('\220\001\001'),
-  serialized_pb=_b('\n\x18steammessages_chat.proto\x1a steammessages_unified_base.proto\x1a(steammessages_clientserver_friends.proto\"*\n(CChat_RequestFriendPersonaStates_Request\"+\n)CChat_RequestFriendPersonaStates_Response\"\xce\x01\n%CChatRoom_CreateChatRoomGroup_Request\x12\x17\n\x0fsteamid_partner\x18\x01 \x01(\x06\x12\x17\n\x0fsteamid_invited\x18\x02 \x01(\x06\x12\x0c\n\x04name\x18\x03 \x01(\t\x12\x18\n\x10steamid_invitees\x18\x04 \x03(\x06\x12$\n\x1cwatching_broadcast_accountid\x18\x06 \x01(\r\x12%\n\x1dwatching_broadcast_channel_id\x18\x07 \x01(\x04\";\n\tCChatRole\x12\x0f\n\x07role_id\x18\x01 \x01(\x04\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x0f\n\x07ordinal\x18\x03 \x01(\r\"\xd4\x02\n\x10\x43\x43hatRoleActions\x12\x0f\n\x07role_id\x18\x01 \x01(\x04\x12(\n can_create_rename_delete_channel\x18\x02 \x01(\x08\x12\x10\n\x08\x63\x61n_kick\x18\x03 \x01(\x08\x12\x0f\n\x07\x63\x61n_ban\x18\x04 \x01(\x08\x12\x12\n\ncan_invite\x18\x05 \x01(\x08\x12&\n\x1e\x63\x61n_change_tagline_avatar_name\x18\x06 \x01(\x08\x12\x10\n\x08\x63\x61n_chat\x18\x07 \x01(\x08\x12\x18\n\x10\x63\x61n_view_history\x18\x08 \x01(\x08\x12\x1e\n\x16\x63\x61n_change_group_roles\x18\t \x01(\x08\x12\x1d\n\x15\x63\x61n_change_user_roles\x18\n \x01(\x08\x12\x17\n\x0f\x63\x61n_mention_all\x18\x0b \x01(\x08\x12\"\n\x1a\x63\x61n_set_watching_broadcast\x18\x0c \x01(\x08\"c\n\x10\x43\x43hatPartyBeacon\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x15\n\rsteamid_owner\x18\x02 \x01(\x06\x12\x11\n\tbeacon_id\x18\x03 \x01(\x06\x12\x15\n\rgame_metadata\x18\x04 \x01(\t\"\xbc\x03\n\x19\x43\x43hatRoomGroupHeaderState\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12\x11\n\tchat_name\x18\x02 \x01(\t\x12\x0e\n\x06\x63lanid\x18\r \x01(\r\x12\x17\n\x0f\x61\x63\x63ountid_owner\x18\x0e \x01(\r\x12\r\n\x05\x61ppid\x18\x15 \x01(\r\x12\x0f\n\x07tagline\x18\x0f \x01(\t\x12\x12\n\navatar_sha\x18\x10 \x01(\x0c\x12\x17\n\x0f\x64\x65\x66\x61ult_role_id\x18\x11 \x01(\x04\x12\x19\n\x05roles\x18\x12 \x03(\x0b\x32\n.CChatRole\x12\'\n\x0crole_actions\x18\x13 \x03(\x0b\x32\x11.CChatRoleActions\x12$\n\x1cwatching_broadcast_accountid\x18\x14 \x01(\r\x12(\n\rparty_beacons\x18\x16 \x03(\x0b\x32\x11.CChatPartyBeacon\x12%\n\x1dwatching_broadcast_channel_id\x18\x17 \x01(\x04\x12\x1a\n\x12\x61\x63tive_minigame_id\x18\x18 \x01(\x04\x12\x16\n\x0e\x61vatar_ugc_url\x18\x19 \x01(\t\x12\x10\n\x08\x64isabled\x18\x1a \x01(\x08\"\xd3\x01\n\x0f\x43\x43hatRoomMember\x12\x11\n\taccountid\x18\x01 \x01(\r\x12@\n\x05state\x18\x03 \x01(\x0e\x32\x13.EChatRoomJoinState:\x1ck_EChatRoomJoinState_Default\x12?\n\x04rank\x18\x04 \x01(\x0e\x32\x13.EChatRoomGroupRank:\x1ck_EChatRoomGroupRank_Default\x12\x18\n\x10time_kick_expire\x18\x06 \x01(\r\x12\x10\n\x08role_ids\x18\x07 \x03(\x04\"\xca\x01\n\x0e\x43\x43hatRoomState\x12\x0f\n\x07\x63hat_id\x18\x01 \x01(\x04\x12\x11\n\tchat_name\x18\x02 \x01(\t\x12\x15\n\rvoice_allowed\x18\x03 \x01(\x08\x12\x18\n\x10members_in_voice\x18\x04 \x03(\r\x12\x19\n\x11time_last_message\x18\x05 \x01(\r\x12\x12\n\nsort_order\x18\x06 \x01(\r\x12\x14\n\x0clast_message\x18\x07 \x01(\t\x12\x1e\n\x16\x61\x63\x63ountid_last_message\x18\x08 \x01(\r\"\xca\x01\n\x13\x43\x43hatRoomGroupState\x12\x30\n\x0cheader_state\x18\x01 \x01(\x0b\x32\x1a.CChatRoomGroupHeaderState\x12!\n\x07members\x18\x02 \x03(\x0b\x32\x10.CChatRoomMember\x12\x17\n\x0f\x64\x65\x66\x61ult_chat_id\x18\x04 \x01(\x04\x12#\n\nchat_rooms\x18\x05 \x03(\x0b\x32\x0f.CChatRoomState\x12 \n\x06kicked\x18\x07 \x03(\x0b\x32\x10.CChatRoomMember\"\xfb\x02\n\x12\x43UserChatRoomState\x12\x0f\n\x07\x63hat_id\x18\x01 \x01(\x04\x12\x13\n\x0btime_joined\x18\x02 \x01(\r\x12\x15\n\rtime_last_ack\x18\x03 \x01(\r\x12\x65\n\x1a\x64\x65sktop_notification_level\x18\x04 \x01(\x0e\x32\x1b.EChatRoomNotificationLevel:$k_EChatroomNotificationLevel_Invalid\x12\x64\n\x19mobile_notification_level\x18\x05 \x01(\x0e\x32\x1b.EChatRoomNotificationLevel:$k_EChatroomNotificationLevel_Invalid\x12\x19\n\x11time_last_mention\x18\x06 \x01(\r\x12%\n\x16unread_indicator_muted\x18\x07 \x01(\x08:\x05\x66\x61lse\x12\x19\n\x11time_first_unread\x18\x08 \x01(\r\"\x89\x03\n\x17\x43UserChatRoomGroupState\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12\x13\n\x0btime_joined\x18\x02 \x01(\r\x12\x31\n\x14user_chat_room_state\x18\x03 \x03(\x0b\x32\x13.CUserChatRoomState\x12\x65\n\x1a\x64\x65sktop_notification_level\x18\x04 \x01(\x0e\x32\x1b.EChatRoomNotificationLevel:$k_EChatroomNotificationLevel_Invalid\x12\x64\n\x19mobile_notification_level\x18\x05 \x01(\x0e\x32\x1b.EChatRoomNotificationLevel:$k_EChatroomNotificationLevel_Invalid\x12\x1b\n\x13time_last_group_ack\x18\x06 \x01(\r\x12%\n\x16unread_indicator_muted\x18\x07 \x01(\x08:\x05\x66\x61lse\"\x97\x01\n&CChatRoom_CreateChatRoomGroup_Response\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12#\n\x05state\x18\x02 \x01(\x0b\x32\x14.CChatRoomGroupState\x12\x31\n\x0fuser_chat_state\x18\x03 \x01(\x0b\x32\x18.CUserChatRoomGroupState\"J\n#CChatRoom_SaveChatRoomGroup_Request\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12\x0c\n\x04name\x18\x02 \x01(\t\"&\n$CChatRoom_SaveChatRoomGroup_Response\"L\n%CChatRoom_RenameChatRoomGroup_Request\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12\x0c\n\x04name\x18\x02 \x01(\t\"6\n&CChatRoom_RenameChatRoomGroup_Response\x12\x0c\n\x04name\x18\x01 \x01(\t\"S\n)CChatRoom_SetChatRoomGroupTagline_Request\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12\x0f\n\x07tagline\x18\x02 \x01(\t\",\n*CChatRoom_SetChatRoomGroupTagline_Response\"U\n(CChatRoom_SetChatRoomGroupAvatar_Request\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12\x12\n\navatar_sha\x18\x02 \x01(\x0c\"+\n)CChatRoom_SetChatRoomGroupAvatar_Response\"\x99\x01\n3CChatRoom_SetChatRoomGroupWatchingBroadcast_Request\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12$\n\x1cwatching_broadcast_accountid\x18\x02 \x01(\r\x12%\n\x1dwatching_broadcast_channel_id\x18\x03 \x01(\x04\"6\n4CChatRoom_SetChatRoomGroupWatchingBroadcast_Response\"X\n.CChatRoom_JoinMiniGameForChatRoomGroup_Request\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12\x0f\n\x07\x63hat_id\x18\x02 \x01(\x04\"F\n/CChatRoom_JoinMiniGameForChatRoomGroup_Response\x12\x13\n\x0bminigame_id\x18\x01 \x01(\x04\"l\n-CChatRoom_EndMiniGameForChatRoomGroup_Request\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12\x0f\n\x07\x63hat_id\x18\x02 \x01(\x04\x12\x13\n\x0bminigame_id\x18\x03 \x01(\x04\"0\n.CChatRoom_EndMiniGameForChatRoomGroup_Response\"X\n\x1a\x43\x43hatRoom_MuteUser_Request\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12\x0f\n\x07steamid\x18\x02 \x01(\x06\x12\x12\n\nexpiration\x18\x03 \x01(\x05\"\x1d\n\x1b\x43\x43hatRoom_MuteUser_Response\"X\n\x1a\x43\x43hatRoom_KickUser_Request\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12\x0f\n\x07steamid\x18\x02 \x01(\x06\x12\x12\n\nexpiration\x18\x03 \x01(\x05\"\x1d\n\x1b\x43\x43hatRoom_KickUser_Response\"^\n!CChatRoom_SetUserBanState_Request\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12\x0f\n\x07steamid\x18\x02 \x01(\x06\x12\x11\n\tban_state\x18\x03 \x01(\x08\"$\n\"CChatRoom_SetUserBanState_Response\"H\n\x1e\x43\x43hatRoom_RevokeInvite_Request\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12\x0f\n\x07steamid\x18\x02 \x01(\x06\"!\n\x1f\x43\x43hatRoom_RevokeInvite_Response\"C\n\x1c\x43\x43hatRoom_CreateRole_Request\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12\x0c\n\x04name\x18\x02 \x01(\t\"C\n\x1d\x43\x43hatRoom_CreateRole_Response\x12\"\n\x07\x61\x63tions\x18\x02 \x01(\x0b\x32\x11.CChatRoleActions\"3\n\x1a\x43\x43hatRoom_GetRoles_Request\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\"8\n\x1b\x43\x43hatRoom_GetRoles_Response\x12\x19\n\x05roles\x18\x01 \x03(\x0b\x32\n.CChatRole\"T\n\x1c\x43\x43hatRoom_RenameRole_Request\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12\x0f\n\x07role_id\x18\x02 \x01(\x04\x12\x0c\n\x04name\x18\x03 \x01(\t\"\x1f\n\x1d\x43\x43hatRoom_RenameRole_Response\"X\n\x1d\x43\x43hatRoom_ReorderRole_Request\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12\x0f\n\x07role_id\x18\x02 \x01(\x04\x12\x0f\n\x07ordinal\x18\x03 \x01(\r\" \n\x1e\x43\x43hatRoom_ReorderRole_Response\"F\n\x1c\x43\x43hatRoom_DeleteRole_Request\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12\x0f\n\x07role_id\x18\x02 \x01(\x04\"\x1f\n\x1d\x43\x43hatRoom_DeleteRole_Response\"J\n CChatRoom_GetRoleActions_Request\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12\x0f\n\x07role_id\x18\x02 \x01(\x04\"G\n!CChatRoom_GetRoleActions_Response\x12\"\n\x07\x61\x63tions\x18\x01 \x03(\x0b\x32\x11.CChatRoleActions\"r\n$CChatRoom_ReplaceRoleActions_Request\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12\x0f\n\x07role_id\x18\x02 \x01(\x04\x12\"\n\x07\x61\x63tions\x18\x04 \x01(\x0b\x32\x11.CChatRoleActions\"\'\n%CChatRoom_ReplaceRoleActions_Response\"Z\n\x1f\x43\x43hatRoom_AddRoleToUser_Request\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12\x0f\n\x07role_id\x18\x03 \x01(\x04\x12\x0f\n\x07steamid\x18\x04 \x01(\x06\"\"\n CChatRoom_AddRoleToUser_Response\"K\n!CChatRoom_GetRolesForUser_Request\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12\x0f\n\x07steamid\x18\x03 \x01(\x06\"6\n\"CChatRoom_GetRolesForUser_Response\x12\x10\n\x08role_ids\x18\x01 \x03(\x04\"_\n$CChatRoom_DeleteRoleFromUser_Request\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12\x0f\n\x07role_id\x18\x03 \x01(\x04\x12\x0f\n\x07steamid\x18\x04 \x01(\x06\"\'\n%CChatRoom_DeleteRoleFromUser_Response\"b\n#CChatRoom_JoinChatRoomGroup_Request\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12\x13\n\x0binvite_code\x18\x02 \x01(\t\x12\x0f\n\x07\x63hat_id\x18\x03 \x01(\x04\"\xa9\x01\n$CChatRoom_JoinChatRoomGroup_Response\x12#\n\x05state\x18\x01 \x01(\x0b\x32\x14.CChatRoomGroupState\x12\x31\n\x0fuser_chat_state\x18\x03 \x01(\x0b\x32\x18.CUserChatRoomGroupState\x12\x14\n\x0cjoin_chat_id\x18\x04 \x01(\x04\x12\x13\n\x0btime_expire\x18\x05 \x01(\r\"\x86\x01\n-CChatRoom_InviteFriendToChatRoomGroup_Request\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12\x0f\n\x07steamid\x18\x02 \x01(\x06\x12\x0f\n\x07\x63hat_id\x18\x03 \x01(\x04\x12\x1c\n\x14skip_friendsui_check\x18\x04 \x01(\x08\"0\n.CChatRoom_InviteFriendToChatRoomGroup_Response\"=\n$CChatRoom_LeaveChatRoomGroup_Request\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\"\'\n%CChatRoom_LeaveChatRoomGroup_Response\"\\\n CChatRoom_CreateChatRoom_Request\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x13\n\x0b\x61llow_voice\x18\x03 \x01(\x08\"G\n!CChatRoom_CreateChatRoom_Response\x12\"\n\tchat_room\x18\x01 \x01(\x0b\x32\x0f.CChatRoomState\"J\n CChatRoom_DeleteChatRoom_Request\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12\x0f\n\x07\x63hat_id\x18\x02 \x01(\x04\"#\n!CChatRoom_DeleteChatRoom_Response\"X\n CChatRoom_RenameChatRoom_Request\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12\x0f\n\x07\x63hat_id\x18\x02 \x01(\x04\x12\x0c\n\x04name\x18\x03 \x01(\t\"#\n!CChatRoom_RenameChatRoom_Response\"g\n!CChatRoom_ReorderChatRoom_Request\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12\x0f\n\x07\x63hat_id\x18\x02 \x01(\x04\x12\x1a\n\x12move_after_chat_id\x18\x03 \x01(\x04\"$\n\"CChatRoom_ReorderChatRoom_Response\"t\n!CChatRoom_SendChatMessage_Request\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12\x0f\n\x07\x63hat_id\x18\x02 \x01(\x04\x12\x0f\n\x07message\x18\x03 \x01(\t\x12\x16\n\x0e\x65\x63ho_to_sender\x18\x04 \x01(\x08\"\x8a\x01\n\"CChatRoom_SendChatMessage_Response\x12\x18\n\x10modified_message\x18\x01 \x01(\t\x12\x18\n\x10server_timestamp\x18\x02 \x01(\r\x12\x0f\n\x07ordinal\x18\x03 \x01(\r\x12\x1f\n\x17message_without_bb_code\x18\x04 \x01(\t\"I\n\x1f\x43\x43hatRoom_JoinVoiceChat_Request\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12\x0f\n\x07\x63hat_id\x18\x02 \x01(\x04\"8\n CChatRoom_JoinVoiceChat_Response\x12\x14\n\x0cvoice_chatid\x18\x01 \x01(\x04\"J\n CChatRoom_LeaveVoiceChat_Request\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12\x0f\n\x07\x63hat_id\x18\x02 \x01(\x04\"#\n!CChatRoom_LeaveVoiceChat_Response\"\xb4\x01\n#CChatRoom_GetMessageHistory_Request\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12\x0f\n\x07\x63hat_id\x18\x02 \x01(\x04\x12\x11\n\tlast_time\x18\x03 \x01(\r\x12\x14\n\x0clast_ordinal\x18\x04 \x01(\r\x12\x12\n\nstart_time\x18\x05 \x01(\r\x12\x15\n\rstart_ordinal\x18\x06 \x01(\r\x12\x11\n\tmax_count\x18\x07 \x01(\r\"\x86\x01\n\rServerMessage\x12\x46\n\x07message\x18\x01 \x01(\x0e\x32\x17.EChatRoomServerMessage:\x1ck_EChatRoomServerMsg_Invalid\x12\x14\n\x0cstring_param\x18\x02 \x01(\t\x12\x17\n\x0f\x61\x63\x63ountid_param\x18\x03 \x01(\r\"\xa2\x04\n$CChatRoom_GetMessageHistory_Response\x12\x43\n\x08messages\x18\x01 \x03(\x0b\x32\x31.CChatRoom_GetMessageHistory_Response.ChatMessage\x12\x16\n\x0emore_available\x18\x04 \x01(\x08\x1a\x9c\x03\n\x0b\x43hatMessage\x12\x0e\n\x06sender\x18\x01 \x01(\r\x12\x18\n\x10server_timestamp\x18\x02 \x01(\r\x12\x0f\n\x07message\x18\x03 \x01(\t\x12\x0f\n\x07ordinal\x18\x04 \x01(\r\x12&\n\x0eserver_message\x18\x05 \x01(\x0b\x32\x0e.ServerMessage\x12\x0f\n\x07\x64\x65leted\x18\x06 \x01(\x08\x12T\n\treactions\x18\x07 \x03(\x0b\x32\x41.CChatRoom_GetMessageHistory_Response.ChatMessage.MessageReaction\x1a\xb1\x01\n\x0fMessageReaction\x12\\\n\rreaction_type\x18\x01 \x01(\x0e\x32\x1d.EChatRoomMessageReactionType:&k_EChatRoomMessageReactionType_Invalid\x12\x10\n\x08reaction\x18\x02 \x01(\t\x12\x14\n\x0cnum_reactors\x18\x03 \x01(\r\x12\x18\n\x10has_user_reacted\x18\x04 \x01(\x08\"\'\n%CChatRoom_GetMyChatRoomGroups_Request\"\xb4\x05\n*CChatRoom_GetChatRoomGroupSummary_Response\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12\x17\n\x0f\x63hat_group_name\x18\x02 \x01(\t\x12\x1b\n\x13\x61\x63tive_member_count\x18\x03 \x01(\r\x12!\n\x19\x61\x63tive_voice_member_count\x18\x04 \x01(\r\x12\x17\n\x0f\x64\x65\x66\x61ult_chat_id\x18\x05 \x01(\x04\x12#\n\nchat_rooms\x18\x06 \x03(\x0b\x32\x0f.CChatRoomState\x12\x0e\n\x06\x63lanid\x18\x07 \x01(\r\x12\x1a\n\x12\x63hat_group_tagline\x18\x08 \x01(\t\x12\x17\n\x0f\x61\x63\x63ountid_owner\x18\t \x01(\r\x12\x13\n\x0btop_members\x18\n \x03(\r\x12\x1d\n\x15\x63hat_group_avatar_sha\x18\x0b \x01(\x0c\x12?\n\x04rank\x18\x0c \x01(\x0e\x32\x13.EChatRoomGroupRank:\x1ck_EChatRoomGroupRank_Default\x12\x17\n\x0f\x64\x65\x66\x61ult_role_id\x18\r \x01(\x04\x12\x10\n\x08role_ids\x18\x0e \x03(\x04\x12\'\n\x0crole_actions\x18\x0f \x03(\x0b\x32\x11.CChatRoleActions\x12$\n\x1cwatching_broadcast_accountid\x18\x10 \x01(\r\x12\r\n\x05\x61ppid\x18\x11 \x01(\r\x12(\n\rparty_beacons\x18\x12 \x03(\x0b\x32\x11.CChatPartyBeacon\x12%\n\x1dwatching_broadcast_channel_id\x18\x13 \x01(\x04\x12\x1a\n\x12\x61\x63tive_minigame_id\x18\x14 \x01(\x04\x12\x16\n\x0e\x61vatar_ugc_url\x18\x15 \x01(\t\x12\x10\n\x08\x64isabled\x18\x16 \x01(\x08\"\x93\x01\n\x14\x43\x43hatRoomSummaryPair\x12\x37\n\x15user_chat_group_state\x18\x01 \x01(\x0b\x32\x18.CUserChatRoomGroupState\x12\x42\n\rgroup_summary\x18\x02 \x01(\x0b\x32+.CChatRoom_GetChatRoomGroupSummary_Response\"Y\n&CChatRoom_GetMyChatRoomGroups_Response\x12/\n\x10\x63hat_room_groups\x18\x01 \x03(\x0b\x32\x15.CChatRoomSummaryPair\"@\n\'CChatRoom_GetChatRoomGroupState_Request\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\"O\n(CChatRoom_GetChatRoomGroupState_Response\x12#\n\x05state\x18\x01 \x01(\x0b\x32\x14.CChatRoomGroupState\"B\n)CChatRoom_GetChatRoomGroupSummary_Request\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\"d\n0CChatRoom_SetAppChatRoomGroupForceActive_Request\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12\x19\n\x11requesting_app_id\x18\x02 \x01(\r\"`\n1CChatRoom_SetAppChatRoomGroupForceActive_Response\x12\x0e\n\x06result\x18\x01 \x01(\r\x12\x1b\n\x13\x61\x63\x63ounts_in_channel\x18\x02 \x03(\r\"m\n9CChatRoom_SetAppChatRoomGroupStopForceActive_Notification\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12\x19\n\x11requesting_app_id\x18\x02 \x01(\r\"b\n%CChatRoom_AckChatMessage_Notification\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12\x0f\n\x07\x63hat_id\x18\x02 \x01(\x04\x12\x11\n\ttimestamp\x18\x03 \x01(\r\"c\n\"CChatRoom_CreateInviteLink_Request\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12\x15\n\rseconds_valid\x18\x02 \x01(\r\x12\x0f\n\x07\x63hat_id\x18\x03 \x01(\x04\"Q\n#CChatRoom_CreateInviteLink_Response\x12\x13\n\x0binvite_code\x18\x01 \x01(\t\x12\x15\n\rseconds_valid\x18\x02 \x01(\r\":\n#CChatRoom_GetInviteLinkInfo_Request\x12\x13\n\x0binvite_code\x18\x01 \x01(\t\"\x8c\x02\n$CChatRoom_GetInviteLinkInfo_Response\x12\x16\n\x0esteamid_sender\x18\x03 \x01(\x06\x12\x14\n\x0ctime_expires\x18\x04 \x01(\r\x12\x0f\n\x07\x63hat_id\x18\x06 \x01(\x04\x12\x42\n\rgroup_summary\x18\x08 \x01(\x0b\x32+.CChatRoom_GetChatRoomGroupSummary_Response\x12\x37\n\x15user_chat_group_state\x18\t \x01(\x0b\x32\x18.CUserChatRoomGroupState\x12\x18\n\x10time_kick_expire\x18\n \x01(\r\x12\x0e\n\x06\x62\x61nned\x18\x0b \x01(\x08\"w\n\x1f\x43\x43hatRoom_GetInviteInfo_Request\x12\x17\n\x0fsteamid_invitee\x18\x01 \x01(\x06\x12\x15\n\rchat_group_id\x18\x02 \x01(\x04\x12\x0f\n\x07\x63hat_id\x18\x03 \x01(\x04\x12\x13\n\x0binvite_code\x18\x04 \x01(\t\"\x90\x01\n CChatRoom_GetInviteInfo_Response\x12\x42\n\rgroup_summary\x18\x01 \x01(\x0b\x32+.CChatRoom_GetChatRoomGroupSummary_Response\x12\x18\n\x10time_kick_expire\x18\x02 \x01(\r\x12\x0e\n\x06\x62\x61nned\x18\x03 \x01(\x08\"A\n(CChatRoom_GetInviteLinksForGroup_Request\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\"\xd7\x01\n)CChatRoom_GetInviteLinksForGroup_Response\x12I\n\x0cinvite_links\x18\x01 \x03(\x0b\x32\x33.CChatRoom_GetInviteLinksForGroup_Response.LinkInfo\x1a_\n\x08LinkInfo\x12\x13\n\x0binvite_code\x18\x01 \x01(\t\x12\x17\n\x0fsteamid_creator\x18\x02 \x01(\x06\x12\x14\n\x0ctime_expires\x18\x03 \x01(\r\x12\x0f\n\x07\x63hat_id\x18\x04 \x01(\x04\"5\n\x1c\x43\x43hatRoom_GetBanList_Request\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\"\xb5\x01\n\x1d\x43\x43hatRoom_GetBanList_Response\x12\x34\n\x04\x62\x61ns\x18\x01 \x03(\x0b\x32&.CChatRoom_GetBanList_Response.BanInfo\x1a^\n\x07\x42\x61nInfo\x12\x11\n\taccountid\x18\x01 \x01(\r\x12\x17\n\x0f\x61\x63\x63ountid_actor\x18\x02 \x01(\r\x12\x13\n\x0btime_banned\x18\x03 \x01(\r\x12\x12\n\nban_reason\x18\x04 \x01(\t\"8\n\x1f\x43\x43hatRoom_GetInviteList_Request\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\"X\n\x14\x43\x43hatRoomGroupInvite\x12\x11\n\taccountid\x18\x01 \x01(\r\x12\x17\n\x0f\x61\x63\x63ountid_actor\x18\x02 \x01(\r\x12\x14\n\x0ctime_invited\x18\x03 \x01(\r\"J\n CChatRoom_GetInviteList_Response\x12&\n\x07invites\x18\x01 \x03(\x0b\x32\x15.CChatRoomGroupInvite\"P\n\"CChatRoom_DeleteInviteLink_Request\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12\x13\n\x0binvite_code\x18\x02 \x01(\t\"%\n#CChatRoom_DeleteInviteLink_Response\"\xf4\x01\n0CChatRoom_SetSessionActiveChatRoomGroups_Request\x12\x16\n\x0e\x63hat_group_ids\x18\x01 \x03(\x04\x12\"\n\x1a\x63hat_groups_data_requested\x18\x02 \x03(\x04\x12\x83\x01\n\x1cvirtualize_members_threshold\x18\x03 \x01(\x05\x42]\x82\xb5\x18YIf a chat room has more members than this threshold, we will opt in to a virtualized list\"\x89\x01\n1CChatRoom_SetSessionActiveChatRoomGroups_Response\x12)\n\x0b\x63hat_states\x18\x01 \x03(\x0b\x32\x14.CChatRoomGroupState\x12)\n!virtualize_members_chat_group_ids\x18\x02 \x03(\x04\"\xaa\x06\n-CChatRoom_SetUserChatGroupPreferences_Request\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12\x63\n\x16\x63hat_group_preferences\x18\x02 \x01(\x0b\x32\x43.CChatRoom_SetUserChatGroupPreferences_Request.ChatGroupPreferences\x12\x61\n\x15\x63hat_room_preferences\x18\x03 \x03(\x0b\x32\x42.CChatRoom_SetUserChatGroupPreferences_Request.ChatRoomPreferences\x1a\x83\x02\n\x14\x43hatGroupPreferences\x12\x65\n\x1a\x64\x65sktop_notification_level\x18\x01 \x01(\x0e\x32\x1b.EChatRoomNotificationLevel:$k_EChatroomNotificationLevel_Invalid\x12\x64\n\x19mobile_notification_level\x18\x02 \x01(\x0e\x32\x1b.EChatRoomNotificationLevel:$k_EChatroomNotificationLevel_Invalid\x12\x1e\n\x16unread_indicator_muted\x18\x03 \x01(\x08\x1a\x93\x02\n\x13\x43hatRoomPreferences\x12\x0f\n\x07\x63hat_id\x18\x01 \x01(\x04\x12\x65\n\x1a\x64\x65sktop_notification_level\x18\x02 \x01(\x0e\x32\x1b.EChatRoomNotificationLevel:$k_EChatroomNotificationLevel_Invalid\x12\x64\n\x19mobile_notification_level\x18\x03 \x01(\x0e\x32\x1b.EChatRoomNotificationLevel:$k_EChatroomNotificationLevel_Invalid\x12\x1e\n\x16unread_indicator_muted\x18\x04 \x01(\x08\"0\n.CChatRoom_SetUserChatGroupPreferences_Response\"\xc5\x01\n$CChatRoom_DeleteChatMessages_Request\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12\x0f\n\x07\x63hat_id\x18\x02 \x01(\x04\x12?\n\x08messages\x18\x03 \x03(\x0b\x32-.CChatRoom_DeleteChatMessages_Request.Message\x1a\x34\n\x07Message\x12\x18\n\x10server_timestamp\x18\x01 \x01(\r\x12\x0f\n\x07ordinal\x18\x02 \x01(\r\"\'\n%CChatRoom_DeleteChatMessages_Response\"\xe9\x03\n+CChatRoom_UpdateMemberListView_Notification\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12g\n\x07view_id\x18\x02 \x01(\x04\x42V\x82\xb5\x18RClient-generated ID.  Should send the same value on all requests for the same view\x12\r\n\x05start\x18\x03 \x01(\x05\x12\x0b\n\x03\x65nd\x18\x04 \x01(\x05\x12\x8f\x01\n\x13\x63lient_changenumber\x18\x05 \x01(\x05\x42r\x82\xb5\x18nAny updates from this call on will have this changenumber present.  Can be used to guarantee in-order updates.\x12>\n\x0b\x64\x65lete_view\x18\x06 \x01(\x08\x42)\x82\xb5\x18%Indicates this view has been deleted.\x12$\n\x1cpersona_subscribe_accountids\x18\x07 \x03(\x05\x12&\n\x1epersona_unsubscribe_accountids\x18\x08 \x03(\x05\"\x97\x02\n\x1f\x43\x43hatRoom_SearchMembers_Request\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12\xb2\x01\n\tsearch_id\x18\x02 \x01(\x04\x42\x9e\x01\x82\xb5\x18\x99\x01\x43lient-supplied id.  For find-as-you-type searches, as search narrows the server will not return persona states previously returned for a given searchid.\x12\x13\n\x0bsearch_text\x18\x03 \x01(\t\x12\x13\n\x0bmax_results\x18\x04 \x01(\x05\"\xd4\x01\n CChatRoom_SearchMembers_Response\x12G\n\x10matching_members\x18\x01 \x03(\x0b\x32-.CChatRoom_SearchMembers_Response.MemberMatch\x12\x14\n\x0cstatus_flags\x18\x02 \x01(\r\x1aQ\n\x0bMemberMatch\x12\x11\n\taccountid\x18\x01 \x01(\x05\x12/\n\x07persona\x18\x02 \x01(\x0b\x32\x1e.CMsgClientPersonaState.Friend\"\xfc\x01\n\'CChatRoom_UpdateMessageReaction_Request\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12\x0f\n\x07\x63hat_id\x18\x02 \x01(\x04\x12\x18\n\x10server_timestamp\x18\x03 \x01(\r\x12\x0f\n\x07ordinal\x18\x04 \x01(\r\x12\\\n\rreaction_type\x18\x05 \x01(\x0e\x32\x1d.EChatRoomMessageReactionType:&k_EChatRoomMessageReactionType_Invalid\x12\x10\n\x08reaction\x18\x06 \x01(\t\x12\x0e\n\x06is_add\x18\x07 \x01(\x08\"@\n(CChatRoom_UpdateMessageReaction_Response\x12\x14\n\x0cnum_reactors\x18\x01 \x01(\r\"\x80\x02\n,CChatRoom_GetMessageReactionReactors_Request\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12\x0f\n\x07\x63hat_id\x18\x02 \x01(\x04\x12\x18\n\x10server_timestamp\x18\x03 \x01(\r\x12\x0f\n\x07ordinal\x18\x04 \x01(\r\x12\\\n\rreaction_type\x18\x05 \x01(\x0e\x32\x1d.EChatRoomMessageReactionType:&k_EChatRoomMessageReactionType_Invalid\x12\x10\n\x08reaction\x18\x06 \x01(\t\x12\r\n\x05limit\x18\x07 \x01(\r\"A\n-CChatRoom_GetMessageReactionReactors_Response\x12\x10\n\x08reactors\x18\x01 \x03(\r\"\x98\x01\n*CClanChatRooms_GetClanChatRoomInfo_Request\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12Y\n\nautocreate\x18\x02 \x01(\x08:\x04trueB?\x82\xb5\x18;Create a default chat room if none has been created before.\"v\n+CClanChatRooms_GetClanChatRoomInfo_Response\x12G\n\x12\x63hat_group_summary\x18\x01 \x01(\x0b\x32+.CChatRoom_GetChatRoomGroupSummary_Response\"[\n-CClanChatRooms_SetClanChatRoomPrivate_Request\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12\x19\n\x11\x63hat_room_private\x18\x02 \x01(\x08\"K\n.CClanChatRooms_SetClanChatRoomPrivate_Response\x12\x19\n\x11\x63hat_room_private\x18\x01 \x01(\x08\"V\n\rCChatMentions\x12\x13\n\x0bmention_all\x18\x01 \x01(\x08\x12\x14\n\x0cmention_here\x18\x02 \x01(\x08\x12\x1a\n\x12mention_accountids\x18\x03 \x03(\r\"\xd5\x02\n*CChatRoom_IncomingChatMessage_Notification\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12\x0f\n\x07\x63hat_id\x18\x02 \x01(\x04\x12\x16\n\x0esteamid_sender\x18\x03 \x01(\x06\x12\x0f\n\x07message\x18\x04 \x01(\t\x12\x11\n\ttimestamp\x18\x05 \x01(\r\x12 \n\x08mentions\x18\x06 \x01(\x0b\x32\x0e.CChatMentions\x12\x0f\n\x07ordinal\x18\x07 \x01(\r\x12&\n\x0eserver_message\x18\x08 \x01(\x0b\x32\x0e.ServerMessage\x12\x19\n\x11message_no_bbcode\x18\t \x01(\t\x12M\n\tchat_name\x18\n \x01(\tB:\x82\xb5\x18\x36\x41 name to use for the chat, intended for notifications\"\xea\x01\n*CChatRoom_ChatMessageModified_Notification\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12\x0f\n\x07\x63hat_id\x18\x02 \x01(\x04\x12I\n\x08messages\x18\x03 \x03(\x0b\x32\x37.CChatRoom_ChatMessageModified_Notification.ChatMessage\x1aI\n\x0b\x43hatMessage\x12\x18\n\x10server_timestamp\x18\x01 \x01(\r\x12\x0f\n\x07ordinal\x18\x02 \x01(\r\x12\x0f\n\x07\x64\x65leted\x18\x03 \x01(\x08\"\xb6\x01\n(CChatRoom_MemberStateChange_Notification\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12 \n\x06member\x18\x02 \x01(\x0b\x32\x10.CChatRoomMember\x12Q\n\x06\x63hange\x18\x03 \x01(\x0e\x32\x1b.EChatRoomMemberStateChange:$k_EChatRoomMemberStateChange_Invalid\"^\n*CChatRoom_ChatRoomHeaderState_Notification\x12\x30\n\x0cheader_state\x18\x01 \x01(\x0b\x32\x1a.CChatRoomGroupHeaderState\"\x86\x01\n/CChatRoom_ChatRoomGroupRoomsChange_Notification\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12\x17\n\x0f\x64\x65\x66\x61ult_chat_id\x18\x02 \x01(\x04\x12#\n\nchat_rooms\x18\x03 \x03(\x0b\x32\x0f.CChatRoomState\"d\n:CChatRoom_NotifyShouldRejoinChatRoomVoiceChat_Notification\x12\x0f\n\x07\x63hat_id\x18\x01 \x01(\x04\x12\x15\n\rchat_group_id\x18\x02 \x01(\x04\"\xa9\x02\n;ChatRoomClient_NotifyChatGroupUserStateChanged_Notification\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12\x37\n\x15user_chat_group_state\x18\x02 \x01(\x0b\x32\x18.CUserChatRoomGroupState\x12\x42\n\rgroup_summary\x18\x03 \x01(\x0b\x32+.CChatRoom_GetChatRoomGroupSummary_Response\x12V\n\x0buser_action\x18\x04 \x01(\x0e\x32\x1b.EChatRoomMemberStateChange:$k_EChatRoomMemberStateChange_Invalid\"N\n4ChatRoomClient_NotifyChatRoomDisconnect_Notification\x12\x16\n\x0e\x63hat_group_ids\x18\x01 \x03(\x04\"\x94\x02\n\x17\x43\x43hatRoomMemberListView\x12\r\n\x05start\x18\x03 \x01(\x05\x12\x0b\n\x03\x65nd\x18\x04 \x01(\x05\x12\x13\n\x0btotal_count\x18\x05 \x01(\x05\x12\x61\n\x13\x63lient_changenumber\x18\x06 \x01(\x05\x42\x44\x82\xb5\x18@Value sent by the client on the last UpdateMemberListView call. \x12\x65\n\x13server_changenumber\x18\x07 \x01(\x05\x42H\x82\xb5\x18\x44Value incremented by the server on each MemberListViewUpdated call. \"O\n\x1c\x43\x43hatRoomMemberSummaryCounts\x12\x0e\n\x06ingame\x18\x01 \x01(\x05\x12\x0e\n\x06online\x18\x02 \x01(\x05\x12\x0f\n\x07offline\x18\x03 \x01(\x05\"\x8f\x04\n2CChatRoomClient_MemberListViewUpdated_Notification\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12M\n\x07view_id\x18\x02 \x01(\x04\x42<\x82\xb5\x18\x38Thew view_id supplied when the client created the view. \x12&\n\x04view\x18\x03 \x01(\x0b\x32\x18.CChatRoomMemberListView\x12X\n\x07members\x18\x04 \x03(\x0b\x32G.CChatRoomClient_MemberListViewUpdated_Notification.MemberListViewEntry\x12\x14\n\x0cstatus_flags\x18\x05 \x01(\r\x12\x35\n\x0emember_summary\x18\x06 \x01(\x0b\x32\x1d.CChatRoomMemberSummaryCounts\x12;\n\x13subscribed_personas\x18\x07 \x03(\x0b\x32\x1e.CMsgClientPersonaState.Friend\x1ag\n\x13MemberListViewEntry\x12\x0c\n\x04rank\x18\x01 \x01(\x05\x12\x11\n\taccountid\x18\x02 \x01(\r\x12/\n\x07persona\x18\x03 \x01(\x0b\x32\x1e.CMsgClientPersonaState.Friend\"\x8c\x02\n&CChatRoom_MessageReaction_Notification\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12\x0f\n\x07\x63hat_id\x18\x02 \x01(\x04\x12\x18\n\x10server_timestamp\x18\x03 \x01(\r\x12\x0f\n\x07ordinal\x18\x04 \x01(\r\x12\x0f\n\x07reactor\x18\x05 \x01(\x06\x12\\\n\rreaction_type\x18\x06 \x01(\x0e\x32\x1d.EChatRoomMessageReactionType:&k_EChatRoomMessageReactionType_Invalid\x12\x10\n\x08reaction\x18\x07 \x01(\t\x12\x0e\n\x06is_add\x18\x08 \x01(\x08\"\xdf\x15\n2CChatUsability_ClientUsabilityMetrics_Notification\x12\x16\n\x0emetrics_run_id\x18\x01 \x01(\r\x12\x14\n\x0c\x63lient_build\x18\x02 \x01(\r\x12\x17\n\x0fmetrics_version\x18\x03 \x01(\r\x12\x0e\n\x06in_web\x18\x04 \x01(\x08\x12N\n\x08settings\x18\n \x01(\x0b\x32<.CChatUsability_ClientUsabilityMetrics_Notification.Settings\x12Y\n\x0evoice_settings\x18\x0b \x01(\x0b\x32\x41.CChatUsability_ClientUsabilityMetrics_Notification.VoiceSettings\x12M\n\x08ui_state\x18\x0c \x01(\x0b\x32;.CChatUsability_ClientUsabilityMetrics_Notification.UIState\x12L\n\x07metrics\x18\r \x01(\x0b\x32;.CChatUsability_ClientUsabilityMetrics_Notification.Metrics\x1a\xd9\x06\n\x08Settings\x12!\n\x19notifications_show_ingame\x18\x01 \x01(\x08\x12!\n\x19notifications_show_online\x18\x02 \x01(\x08\x12\"\n\x1anotifications_show_message\x18\x03 \x01(\x08\x12.\n&notifications_events_and_announcements\x18\x04 \x01(\x08\x12\x1a\n\x12sounds_play_ingame\x18\x05 \x01(\x08\x12\x1a\n\x12sounds_play_online\x18\x06 \x01(\x08\x12\x1b\n\x13sounds_play_message\x18\x07 \x01(\x08\x12\'\n\x1fsounds_events_and_announcements\x18\x08 \x01(\x08\x12\x1e\n\x16\x61lways_new_chat_window\x18\t \x01(\x08\x12\'\n\x1f\x66orce_alphabetic_friend_sorting\x18\n \x01(\x08\x12\x17\n\x0f\x63hat_flash_mode\x18\x0b \x01(\x05\x12\x1b\n\x13remember_open_chats\x18\x0c \x01(\x08\x12\x1c\n\x14\x63ompact_quick_access\x18\r \x01(\x08\x12\x1c\n\x14\x63ompact_friends_list\x18\x0e \x01(\x08\x12\x31\n)notifications_show_chat_room_notification\x18\x0f \x01(\x08\x12*\n\"sounds_play_chat_room_notification\x18\x10 \x01(\x08\x12*\n\"hide_offline_friends_in_tag_groups\x18\x11 \x01(\x08\x12 \n\x18hide_categorized_friends\x18\x12 \x01(\x08\x12*\n\"categorize_in_game_friends_by_game\x18\x13 \x01(\x08\x12\x16\n\x0e\x63hat_font_size\x18\x14 \x01(\x05\x12\x17\n\x0fuse24hour_clock\x18\x15 \x01(\x08\x12\x1b\n\x13\x64o_not_disturb_mode\x18\x16 \x01(\x08\x12\x1e\n\x16\x64isable_embed_inlining\x18\x17 \x01(\x08\x12\x19\n\x11sign_into_friends\x18\x18 \x01(\x08\x12\x18\n\x10\x61nimated_avatars\x18\x19 \x01(\x08\x1a\xea\x02\n\rVoiceSettings\x12\x18\n\x10voice_input_gain\x18\x01 \x01(\x02\x12\x19\n\x11voice_output_gain\x18\x02 \x01(\x02\x12\x18\n\x10noise_gate_level\x18\x03 \x01(\x05\x12#\n\x1bvoice_use_echo_cancellation\x18\x04 \x01(\x08\x12$\n\x1cvoice_use_noise_cancellation\x18\x05 \x01(\x08\x12#\n\x1bvoice_use_auto_gain_control\x18\x06 \x01(\x08\x12 \n\x18selected_non_default_mic\x18\x07 \x01(\x08\x12#\n\x1bselected_non_default_output\x18\x08 \x01(\x08\x12\x1c\n\x14push_to_talk_enabled\x18\t \x01(\x08\x12\x1c\n\x14push_to_mute_enabled\x18\n \x01(\x08\x12\x17\n\x0fplay_ptt_sounds\x18\x0b \x01(\x08\x1a\xfd\x05\n\x07UIState\x12\x1b\n\x13\x66riends_list_height\x18\x01 \x01(\x05\x12\x1a\n\x12\x66riends_list_width\x18\x02 \x01(\x05\x12\x1b\n\x13\x66riends_list_docked\x18\x03 \x01(\x08\x12\x1e\n\x16\x66riends_list_collapsed\x18\x04 \x01(\x08\x12\'\n\x1f\x66riends_list_group_chats_height\x18\x05 \x01(\x05\x12\x1c\n\x14\x66riends_list_visible\x18\x06 \x01(\x08\x12\x1a\n\x12\x63hat_popups_opened\x18\x07 \x01(\x05\x12\x1e\n\x16group_chat_tabs_opened\x18\x08 \x01(\x05\x12\x1f\n\x17\x66riend_chat_tabs_opened\x18\t \x01(\x05\x12\x19\n\x11\x63hat_window_width\x18\n \x01(\x05\x12\x1a\n\x12\x63hat_window_height\x18\x0b \x01(\x05\x12l\n\x11\x63\x61tegory_collapse\x18\x0c \x01(\x0b\x32Q.CChatUsability_ClientUsabilityMetrics_Notification.UIState.CategoryCollapseState\x12%\n\x1dgroup_chat_left_col_collapsed\x18\r \x01(\x05\x12&\n\x1egroup_chat_right_col_collapsed\x18\x0e \x01(\x05\x12 \n\x18in_one_on_one_voice_chat\x18\x0f \x01(\x08\x12\x1b\n\x13in_group_voice_chat\x18\x10 \x01(\x08\x1a\xa4\x01\n\x15\x43\x61tegoryCollapseState\x12\x19\n\x11in_game_collapsed\x18\x01 \x01(\x08\x12\x18\n\x10online_collapsed\x18\x02 \x01(\x08\x12\x19\n\x11offline_collapsed\x18\x03 \x01(\x08\x12\x1d\n\x15game_groups_collapsed\x18\x04 \x01(\x05\x12\x1c\n\x14\x63\x61tegories_collapsed\x18\x05 \x01(\x05\x1a\xc0\x02\n\x07Metrics\x12\x15\n\rfriends_count\x18\x01 \x01(\x05\x12\x1e\n\x16\x66riends_category_count\x18\x02 \x01(\x05\x12!\n\x19\x66riends_categorized_count\x18\x03 \x01(\x05\x12\x1c\n\x14\x66riends_online_count\x18\x04 \x01(\x05\x12\x1d\n\x15\x66riends_in_game_count\x18\x05 \x01(\x05\x12\'\n\x1f\x66riends_in_game_singleton_count\x18\x06 \x01(\x05\x12\x18\n\x10game_group_count\x18\x07 \x01(\x05\x12\x1e\n\x16\x66riends_favorite_count\x18\x08 \x01(\x05\x12\x18\n\x10group_chat_count\x18\t \x01(\x05\x12!\n\x19group_chat_favorite_count\x18\n \x01(\x05\"S\n9CChatUsability_RequestClientUsabilityMetrics_Notification\x12\x16\n\x0emetrics_run_id\x18\x01 \x01(\r*\x9c\x01\n\x12\x45\x43hatRoomJoinState\x12 \n\x1ck_EChatRoomJoinState_Default\x10\x00\x12\x1d\n\x19k_EChatRoomJoinState_None\x10\x01\x12\x1f\n\x1bk_EChatRoomJoinState_Joined\x10\x02\x12$\n k_EChatRoomJoinState_TestInvalid\x10\x63*\xa4\x02\n\x12\x45\x43hatRoomGroupRank\x12 \n\x1ck_EChatRoomGroupRank_Default\x10\x00\x12\x1f\n\x1bk_EChatRoomGroupRank_Viewer\x10\n\x12\x1e\n\x1ak_EChatRoomGroupRank_Guest\x10\x0f\x12\x1f\n\x1bk_EChatRoomGroupRank_Member\x10\x14\x12\"\n\x1ek_EChatRoomGroupRank_Moderator\x10\x1e\x12 \n\x1ck_EChatRoomGroupRank_Officer\x10(\x12\x1e\n\x1ak_EChatRoomGroupRank_Owner\x10\x32\x12$\n k_EChatRoomGroupRank_TestInvalid\x10\x63*\xf4\x01\n\x1a\x45\x43hatRoomNotificationLevel\x12(\n$k_EChatroomNotificationLevel_Invalid\x10\x00\x12%\n!k_EChatroomNotificationLevel_None\x10\x01\x12*\n&k_EChatroomNotificationLevel_MentionMe\x10\x02\x12+\n\'k_EChatroomNotificationLevel_MentionAll\x10\x03\x12,\n(k_EChatroomNotificationLevel_AllMessages\x10\x04*\x97\x03\n\x16\x45\x43hatRoomServerMessage\x12 \n\x1ck_EChatRoomServerMsg_Invalid\x10\x00\x12\'\n#k_EChatRoomServerMsg_RenameChatRoom\x10\x01\x12\x1f\n\x1bk_EChatRoomServerMsg_Joined\x10\x02\x12\x1f\n\x1bk_EChatRoomServerMsg_Parted\x10\x03\x12\x1f\n\x1bk_EChatRoomServerMsg_Kicked\x10\x04\x12 \n\x1ck_EChatRoomServerMsg_Invited\x10\x05\x12(\n$k_EChatRoomServerMsg_InviteDismissed\x10\x08\x12/\n+k_EChatRoomServerMsg_ChatRoomTaglineChanged\x10\t\x12.\n*k_EChatRoomServerMsg_ChatRoomAvatarChanged\x10\n\x12\"\n\x1ek_EChatRoomServerMsg_AppCustom\x10\x0b*\xa3\x01\n\x1c\x45\x43hatRoomMessageReactionType\x12*\n&k_EChatRoomMessageReactionType_Invalid\x10\x00\x12+\n\'k_EChatRoomMessageReactionType_Emoticon\x10\x01\x12*\n&k_EChatRoomMessageReactionType_Sticker\x10\x02*\xcb\x03\n\x1a\x45\x43hatRoomMemberStateChange\x12(\n$k_EChatRoomMemberStateChange_Invalid\x10\x00\x12\'\n#k_EChatRoomMemberStateChange_Joined\x10\x01\x12\'\n#k_EChatRoomMemberStateChange_Parted\x10\x02\x12\'\n#k_EChatRoomMemberStateChange_Kicked\x10\x03\x12(\n$k_EChatRoomMemberStateChange_Invited\x10\x04\x12,\n(k_EChatRoomMemberStateChange_RankChanged\x10\x07\x12\x30\n,k_EChatRoomMemberStateChange_InviteDismissed\x10\x08\x12&\n\"k_EChatRoomMemberStateChange_Muted\x10\t\x12\'\n#k_EChatRoomMemberStateChange_Banned\x10\n\x12-\n)k_EChatRoomMemberStateChange_RolesChanged\x10\x0c\x32\x8b\x02\n\x04\x43hat\x12\xe7\x01\n\x1aRequestFriendPersonaStates\x12).CChat_RequestFriendPersonaStates_Request\x1a*.CChat_RequestFriendPersonaStates_Response\"r\x82\xb5\x18nRequest to be notified of online friend persona state information.  Responses sent via CMsgClientPersonaState.\x1a\x19\x82\xb5\x18\x15\x43hat-related services2\xb9>\n\x08\x43hatRoom\x12\xa3\x01\n\x13\x43reateChatRoomGroup\x12&.CChatRoom_CreateChatRoomGroup_Request\x1a\'.CChatRoom_CreateChatRoomGroup_Response\";\x82\xb5\x18\x37\x43reate\'s a chat group that can contain other chat rooms\x12z\n\x11SaveChatRoomGroup\x12$.CChatRoom_SaveChatRoomGroup_Request\x1a%.CChatRoom_SaveChatRoomGroup_Response\"\x18\x82\xb5\x18\x14Saves\'s a chat group\x12\x84\x01\n\x13RenameChatRoomGroup\x12&.CChatRoom_RenameChatRoomGroup_Request\x1a\'.CChatRoom_RenameChatRoomGroup_Response\"\x1c\x82\xb5\x18\x18Rename a chat room group\x12\x99\x01\n\x17SetChatRoomGroupTagline\x12*.CChatRoom_SetChatRoomGroupTagline_Request\x1a+.CChatRoom_SetChatRoomGroupTagline_Response\"%\x82\xb5\x18!Set tagline for a chat room group\x12\x99\x01\n\x16SetChatRoomGroupAvatar\x12).CChatRoom_SetChatRoomGroupAvatar_Request\x1a*.CChatRoom_SetChatRoomGroupAvatar_Response\"(\x82\xb5\x18$Set avatar SHA for a chat room group\x12\xcb\x01\n!SetChatRoomGroupWatchingBroadcast\x12\x34.CChatRoom_SetChatRoomGroupWatchingBroadcast_Request\x1a\x35.CChatRoom_SetChatRoomGroupWatchingBroadcast_Response\"9\x82\xb5\x18\x35Sets a broadcast that the chat room group is watching\x12\xe3\x01\n\x1cJoinMiniGameForChatRoomGroup\x12/.CChatRoom_JoinMiniGameForChatRoomGroup_Request\x1a\x30.CChatRoom_JoinMiniGameForChatRoomGroup_Response\"`\x82\xb5\x18\\Joins the minigame for the chat room group or starts a new one (Winter 2019 sale party game)\x12\xac\x01\n\x1b\x45ndMiniGameForChatRoomGroup\x12..CChatRoom_EndMiniGameForChatRoomGroup_Request\x1a/.CChatRoom_EndMiniGameForChatRoomGroup_Response\",\x82\xb5\x18(Ends the minigame in the chat room group\x12\x64\n\x0fMuteUserInGroup\x12\x1b.CChatRoom_MuteUser_Request\x1a\x1c.CChatRoom_MuteUser_Response\"\x16\x82\xb5\x18\x12Mute user in group\x12h\n\x11KickUserFromGroup\x12\x1b.CChatRoom_KickUser_Request\x1a\x1c.CChatRoom_KickUser_Response\"\x18\x82\xb5\x18\x14Kick user from group\x12y\n\x0fSetUserBanState\x12\".CChatRoom_SetUserBanState_Request\x1a#.CChatRoom_SetUserBanState_Response\"\x1d\x82\xb5\x18\x19\x42\x61n/unban user from group\x12\x82\x01\n\x13RevokeInviteToGroup\x12\x1f.CChatRoom_RevokeInvite_Request\x1a .CChatRoom_RevokeInvite_Response\"(\x82\xb5\x18$Revoke a direct invitation of a user\x12\x65\n\nCreateRole\x12\x1d.CChatRoom_CreateRole_Request\x1a\x1e.CChatRoom_CreateRole_Response\"\x18\x82\xb5\x18\x14\x43reate role for goup\x12\x61\n\x08GetRoles\x12\x1b.CChatRoom_GetRoles_Request\x1a\x1c.CChatRoom_GetRoles_Response\"\x1a\x82\xb5\x18\x16Get all roles in group\x12\x65\n\nRenameRole\x12\x1d.CChatRoom_RenameRole_Request\x1a\x1e.CChatRoom_RenameRole_Response\"\x18\x82\xb5\x18\x14Rename role for goup\x12l\n\x0bReorderRole\x12\x1e.CChatRoom_ReorderRole_Request\x1a\x1f.CChatRoom_ReorderRole_Response\"\x1c\x82\xb5\x18\x18Reorder role with a goup\x12g\n\nDeleteRole\x12\x1d.CChatRoom_DeleteRole_Request\x1a\x1e.CChatRoom_DeleteRole_Response\"\x1a\x82\xb5\x18\x16\x44\x65lete role from group\x12\x87\x01\n\x0eGetRoleActions\x12!.CChatRoom_GetRoleActions_Request\x1a\".CChatRoom_GetRoleActions_Response\".\x82\xb5\x18*Get all defined roles and actions in group\x12\x86\x01\n\x12ReplaceRoleActions\x12%.CChatRoom_ReplaceRoleActions_Request\x1a&.CChatRoom_ReplaceRoleActions_Response\"!\x82\xb5\x18\x1dReplace role actions in group\x12s\n\rAddRoleToUser\x12 .CChatRoom_AddRoleToUser_Request\x1a!.CChatRoom_AddRoleToUser_Response\"\x1d\x82\xb5\x18\x19\x41\x64\x64 role to user in group\x12\x87\x01\n\x0fGetRolesForUser\x12\".CChatRoom_GetRolesForUser_Request\x1a#.CChatRoom_GetRolesForUser_Response\"+\x82\xb5\x18\'Get all roles assigned to user in group\x12\x87\x01\n\x12\x44\x65leteRoleFromUser\x12%.CChatRoom_DeleteRoleFromUser_Request\x1a&.CChatRoom_DeleteRoleFromUser_Response\"\"\x82\xb5\x18\x1e\x44\x65lete role from user in group\x12\x81\x01\n\x11JoinChatRoomGroup\x12$.CChatRoom_JoinChatRoomGroup_Request\x1a%.CChatRoom_JoinChatRoomGroup_Response\"\x1f\x82\xb5\x18\x1bJoin a multi-user chat room\x12\xad\x01\n\x1bInviteFriendToChatRoomGroup\x12..CChatRoom_InviteFriendToChatRoomGroup_Request\x1a/.CChatRoom_InviteFriendToChatRoomGroup_Response\"-\x82\xb5\x18)Invite a friend to a multi-user chat room\x12\x97\x01\n\x12LeaveChatRoomGroup\x12%.CChatRoom_LeaveChatRoomGroup_Request\x1a&.CChatRoom_LeaveChatRoomGroup_Response\"2\x82\xb5\x18.Leaves a chat room group and all related chats\x12\x89\x01\n\x0e\x43reateChatRoom\x12!.CChatRoom_CreateChatRoom_Request\x1a\".CChatRoom_CreateChatRoom_Response\"0\x82\xb5\x18,Creates a chat room inside a chat room group\x12\x89\x01\n\x0e\x44\x65leteChatRoom\x12!.CChatRoom_DeleteChatRoom_Request\x1a\".CChatRoom_DeleteChatRoom_Response\"0\x82\xb5\x18,Deletes a chat room inside a chat room group\x12\x89\x01\n\x0eRenameChatRoom\x12!.CChatRoom_RenameChatRoom_Request\x1a\".CChatRoom_RenameChatRoom_Response\"0\x82\xb5\x18,Renames a chat room inside a chat room group\x12\x8d\x01\n\x0fReorderChatRoom\x12\".CChatRoom_ReorderChatRoom_Request\x1a#.CChatRoom_ReorderChatRoom_Response\"1\x82\xb5\x18-Reorders a chat room inside a chat room group\x12\x8d\x01\n\x0fSendChatMessage\x12\".CChatRoom_SendChatMessage_Request\x1a#.CChatRoom_SendChatMessage_Response\"1\x82\xb5\x18-Send a chat message to a multi-user chat room\x12\xa7\x01\n\rJoinVoiceChat\x12 .CChatRoom_JoinVoiceChat_Request\x1a!.CChatRoom_JoinVoiceChat_Response\"Q\x82\xb5\x18MJoin the voice chat in a multi-room chat (should already be in the chat room)\x12\x86\x01\n\x0eLeaveVoiceChat\x12!.CChatRoom_LeaveVoiceChat_Request\x1a\".CChatRoom_LeaveVoiceChat_Response\"-\x82\xb5\x18)Leave the voice chat in a multi-room chat\x12\xc3\x01\n\x11GetMessageHistory\x12$.CChatRoom_GetMessageHistory_Request\x1a%.CChatRoom_GetMessageHistory_Response\"a\x82\xb5\x18]Get the history of messages in a chat room.  You must currently be a member of the chat room.\x12\x88\x01\n\x13GetMyChatRoomGroups\x12&.CChatRoom_GetMyChatRoomGroups_Request\x1a\'.CChatRoom_GetMyChatRoomGroups_Response\" \x82\xb5\x18\x1cGet a list of our chat rooms\x12\x9a\x01\n\x15GetChatRoomGroupState\x12(.CChatRoom_GetChatRoomGroupState_Request\x1a).CChatRoom_GetChatRoomGroupState_Response\",\x82\xb5\x18(Get information about a single chat room\x12\xa5\x01\n\x17GetChatRoomGroupSummary\x12*.CChatRoom_GetChatRoomGroupSummary_Request\x1a+.CChatRoom_GetChatRoomGroupSummary_Response\"1\x82\xb5\x18-Get basic information about a chat room group\x12\xd3\x01\n\x1eSetAppChatRoomGroupForceActive\x12\x31.CChatRoom_SetAppChatRoomGroupForceActive_Request\x1a\x32.CChatRoom_SetAppChatRoomGroupForceActive_Response\"J\x82\xb5\x18\x46\x46orce a group chat to be considered active on the server for this user\x12\xd3\x01\n\"SetAppChatRoomGroupStopForceActive\x12:.CChatRoom_SetAppChatRoomGroupStopForceActive_Notification\x1a\x0b.NoResponse\"d\x82\xb5\x18`If a group chat is forced active (see SetAppChatRoomGroupForceActive), decrement the force count\x12\x8f\x01\n\x0e\x41\x63kChatMessage\x12&.CChatRoom_AckChatMessage_Notification\x1a\x0b.NoResponse\"H\x82\xb5\x18\x44\x41\x63knowledge that we have seen the most recent chat message in a chat\x12\x81\x01\n\x10\x43reateInviteLink\x12#.CChatRoom_CreateInviteLink_Request\x1a$.CChatRoom_CreateInviteLink_Response\"\"\x82\xb5\x18\x1e\x43reates a chatroom invite link\x12\x90\x01\n\x11GetInviteLinkInfo\x12$.CChatRoom_GetInviteLinkInfo_Request\x1a%.CChatRoom_GetInviteLinkInfo_Response\".\x82\xb5\x18*Returns chat room info about provided link\x12\xaa\x01\n\rGetInviteInfo\x12 .CChatRoom_GetInviteInfo_Request\x1a!.CChatRoom_GetInviteInfo_Response\"T\x82\xb5\x18PReturns chat room info about any invite involving the sender and passed group id\x12\xa5\x01\n\x16GetInviteLinksForGroup\x12).CChatRoom_GetInviteLinksForGroup_Request\x1a*.CChatRoom_GetInviteLinksForGroup_Response\"4\x82\xb5\x18\x30Returns all invite links for the specified group\x12\x8b\x01\n\nGetBanList\x12\x1d.CChatRoom_GetBanList_Request\x1a\x1e.CChatRoom_GetBanList_Response\">\x82\xb5\x18:Gets a list of users who have been banned from a chat room\x12\x93\x01\n\rGetInviteList\x12 .CChatRoom_GetInviteList_Request\x1a!.CChatRoom_GetInviteList_Response\"=\x82\xb5\x18\x39Gets a list of users who have been invited to a chat room\x12\x80\x01\n\x10\x44\x65leteInviteLink\x12#.CChatRoom_DeleteInviteLink_Request\x1a$.CChatRoom_DeleteInviteLink_Response\"!\x82\xb5\x18\x1d\x44\x65letes specified invite link\x12\xc4\x01\n\x1eSetSessionActiveChatRoomGroups\x12\x31.CChatRoom_SetSessionActiveChatRoomGroups_Request\x1a\x32.CChatRoom_SetSessionActiveChatRoomGroups_Response\";\x82\xb5\x18\x37Set which chat rooms we are using in the active session\x12\xb9\x01\n\x1bSetUserChatGroupPreferences\x12..CChatRoom_SetUserChatGroupPreferences_Request\x1a/.CChatRoom_SetUserChatGroupPreferences_Response\"9\x82\xb5\x18\x35Set preferences around chat notifications for a group\x12\x88\x01\n\x12\x44\x65leteChatMessages\x12%.CChatRoom_DeleteChatMessages_Request\x1a&.CChatRoom_DeleteChatMessages_Response\"#\x82\xb5\x18\x1f\x44\x65letes specified chat messages\x12\x9a\x01\n\x14UpdateMemberListView\x12,.CChatRoom_UpdateMemberListView_Notification\x1a\x0b.NoResponse\"G\x82\xb5\x18\x43\x41 client is indicating it has an active view into the members list.\x12{\n\rSearchMembers\x12 .CChatRoom_SearchMembers_Request\x1a!.CChatRoom_SearchMembers_Response\"%\x82\xb5\x18!Search chat room members by name.\x12\xa5\x01\n\x15UpdateMessageReaction\x12(.CChatRoom_UpdateMessageReaction_Request\x1a).CChatRoom_UpdateMessageReaction_Response\"7\x82\xb5\x18\x33\x41\x64\x64s/removes a reaction to/from a chat room message\x12\xb4\x01\n\x1aGetMessageReactionReactors\x12-.CChatRoom_GetMessageReactionReactors_Request\x1a..CChatRoom_GetMessageReactionReactors_Response\"7\x82\xb5\x18\x33\x46\x65tches a list of reactors for a specified reaction\x1a\x42\x82\xb5\x18>Service for joining, managing, and using multi-user chat rooms2\xae\x03\n\rClanChatRooms\x12\xb8\x01\n\x13GetClanChatRoomInfo\x12+.CClanChatRooms_GetClanChatRoomInfo_Request\x1a,.CClanChatRooms_GetClanChatRoomInfo_Response\"F\x82\xb5\x18\x42Get a list of chat rooms for a clan, optionally creating a new one\x12\xb2\x01\n\x16SetClanChatRoomPrivate\x12..CClanChatRooms_SetClanChatRoomPrivate_Request\x1a/.CClanChatRooms_SetClanChatRoomPrivate_Response\"7\x82\xb5\x18\x33Set a clan chat room to be members only (or public)\x1a-\x82\xb5\x18)Methods for getting clan chat information2\xef\x0e\n\x0e\x43hatRoomClient\x12{\n\x19NotifyIncomingChatMessage\x12+.CChatRoom_IncomingChatMessage_Notification\x1a\x0b.NoResponse\"$\x82\xb5\x18 New chat message for a chat room\x12\x94\x01\n\x19NotifyChatMessageModified\x12+.CChatRoom_ChatMessageModified_Notification\x1a\x0b.NoResponse\"=\x82\xb5\x18\x39\x41n existing chat message has been modified on the backend\x12\x95\x01\n\x17NotifyMemberStateChange\x12).CChatRoom_MemberStateChange_Notification\x1a\x0b.NoResponse\"B\x82\xb5\x18>A chat room member\'s state has changed (join/part/permissions)\x12\x88\x01\n\x1fNotifyChatRoomHeaderStateChange\x12+.CChatRoom_ChatRoomHeaderState_Notification\x1a\x0b.NoResponse\"+\x82\xb5\x18\'Chat Room header / metadata has changed\x12\xa6\x01\n\x1eNotifyChatRoomGroupRoomsChange\x12\x30.CChatRoom_ChatRoomGroupRoomsChange_Notification\x1a\x0b.NoResponse\"E\x82\xb5\x18\x41Something about a chatroom group changed (created, deleted, etc.)\x12\xd5\x01\n#NotifyShouldRejoinChatRoomVoiceChat\x12;.CChatRoom_NotifyShouldRejoinChatRoomVoiceChat_Notification\x1a\x0b.NoResponse\"d\x82\xb5\x18`Voice chat was recreated or dropped on the backend and client needs to rejoin to remain in chat.\x12\xb3\x01\n\x1fNotifyChatGroupUserStateChanged\x12<.ChatRoomClient_NotifyChatGroupUserStateChanged_Notification\x1a\x0b.NoResponse\"E\x82\xb5\x18\x41User chat group state (preferences, ack state, etc) have changed.\x12\x8f\x01\n\x18NotifyAckChatMessageEcho\x12&.CChatRoom_AckChatMessage_Notification\x1a\x0b.NoResponse\">\x82\xb5\x18:A session acked an unread message, echo to other sessions.\x12\xed\x01\n\x18NotifyChatRoomDisconnect\x12\x35.ChatRoomClient_NotifyChatRoomDisconnect_Notification\x1a\x0b.NoResponse\"\x8c\x01\x82\xb5\x18\x87\x01The ChatRoom server hosting the chat rooms has reconnected to the user\'s Chat server (may have restarted), client should refresh state.\x12\xd5\x01\n\x1bNotifyMemberListViewUpdated\x12\x33.CChatRoomClient_MemberListViewUpdated_Notification\x1a\x0b.NoResponse\"t\x82\xb5\x18pThe list of members for a chat room with virtualized member list has changed on the server (or client requested)\x12g\n\x15NotifyMessageReaction\x12\'.CChatRoom_MessageReaction_Notification\x1a\x0b.NoResponse\"\x18\x82\xb5\x18\x14New message reaction\x1a,\x82\xb5\x18$Client notifications for chat events\xc0\xb5\x18\x02\x32\xc2\x01\n\rChatUsability\x12\x86\x01\n\x1cNotifyClientUsabilityMetrics\x12\x33.CChatUsability_ClientUsabilityMetrics_Notification\x1a\x0b.NoResponse\"$\x82\xb5\x18 Incoming metrics from the client\x1a(\x82\xb5\x18$Client notifications for chat events2\xe2\x01\n\x13\x43hatUsabilityClient\x12\x99\x01\n#NotifyRequestClientUsabilityMetrics\x12:.CChatUsability_RequestClientUsabilityMetrics_Notification\x1a\x0b.NoResponse\")\x82\xb5\x18%Request client send usability metrics\x1a/\x82\xb5\x18\'Client notifications for chat usability\xc0\xb5\x18\x02\x42\x03\x90\x01\x01')
+  serialized_options=b'\220\001\001',
+  create_key=_descriptor._internal_create_key,
+  serialized_pb=b'\n\x18steammessages_chat.proto\x1a\x18steammessages_base.proto\x1a steammessages_unified_base.proto\x1a(steammessages_clientserver_friends.proto\"*\n(CChat_RequestFriendPersonaStates_Request\"+\n)CChat_RequestFriendPersonaStates_Response\"\xce\x01\n%CChatRoom_CreateChatRoomGroup_Request\x12\x17\n\x0fsteamid_partner\x18\x01 \x01(\x06\x12\x17\n\x0fsteamid_invited\x18\x02 \x01(\x06\x12\x0c\n\x04name\x18\x03 \x01(\t\x12\x18\n\x10steamid_invitees\x18\x04 \x03(\x06\x12$\n\x1cwatching_broadcast_accountid\x18\x06 \x01(\r\x12%\n\x1dwatching_broadcast_channel_id\x18\x07 \x01(\x04\";\n\tCChatRole\x12\x0f\n\x07role_id\x18\x01 \x01(\x04\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x0f\n\x07ordinal\x18\x03 \x01(\r\"\xd4\x02\n\x10\x43\x43hatRoleActions\x12\x0f\n\x07role_id\x18\x01 \x01(\x04\x12(\n can_create_rename_delete_channel\x18\x02 \x01(\x08\x12\x10\n\x08\x63\x61n_kick\x18\x03 \x01(\x08\x12\x0f\n\x07\x63\x61n_ban\x18\x04 \x01(\x08\x12\x12\n\ncan_invite\x18\x05 \x01(\x08\x12&\n\x1e\x63\x61n_change_tagline_avatar_name\x18\x06 \x01(\x08\x12\x10\n\x08\x63\x61n_chat\x18\x07 \x01(\x08\x12\x18\n\x10\x63\x61n_view_history\x18\x08 \x01(\x08\x12\x1e\n\x16\x63\x61n_change_group_roles\x18\t \x01(\x08\x12\x1d\n\x15\x63\x61n_change_user_roles\x18\n \x01(\x08\x12\x17\n\x0f\x63\x61n_mention_all\x18\x0b \x01(\x08\x12\"\n\x1a\x63\x61n_set_watching_broadcast\x18\x0c \x01(\x08\"c\n\x10\x43\x43hatPartyBeacon\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x15\n\rsteamid_owner\x18\x02 \x01(\x06\x12\x11\n\tbeacon_id\x18\x03 \x01(\x06\x12\x15\n\rgame_metadata\x18\x04 \x01(\t\"\xbc\x03\n\x19\x43\x43hatRoomGroupHeaderState\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12\x11\n\tchat_name\x18\x02 \x01(\t\x12\x0e\n\x06\x63lanid\x18\r \x01(\r\x12\x17\n\x0f\x61\x63\x63ountid_owner\x18\x0e \x01(\r\x12\r\n\x05\x61ppid\x18\x15 \x01(\r\x12\x0f\n\x07tagline\x18\x0f \x01(\t\x12\x12\n\navatar_sha\x18\x10 \x01(\x0c\x12\x17\n\x0f\x64\x65\x66\x61ult_role_id\x18\x11 \x01(\x04\x12\x19\n\x05roles\x18\x12 \x03(\x0b\x32\n.CChatRole\x12\'\n\x0crole_actions\x18\x13 \x03(\x0b\x32\x11.CChatRoleActions\x12$\n\x1cwatching_broadcast_accountid\x18\x14 \x01(\r\x12(\n\rparty_beacons\x18\x16 \x03(\x0b\x32\x11.CChatPartyBeacon\x12%\n\x1dwatching_broadcast_channel_id\x18\x17 \x01(\x04\x12\x1a\n\x12\x61\x63tive_minigame_id\x18\x18 \x01(\x04\x12\x16\n\x0e\x61vatar_ugc_url\x18\x19 \x01(\t\x12\x10\n\x08\x64isabled\x18\x1a \x01(\x08\"\xd3\x01\n\x0f\x43\x43hatRoomMember\x12\x11\n\taccountid\x18\x01 \x01(\r\x12@\n\x05state\x18\x03 \x01(\x0e\x32\x13.EChatRoomJoinState:\x1ck_EChatRoomJoinState_Default\x12?\n\x04rank\x18\x04 \x01(\x0e\x32\x13.EChatRoomGroupRank:\x1ck_EChatRoomGroupRank_Default\x12\x18\n\x10time_kick_expire\x18\x06 \x01(\r\x12\x10\n\x08role_ids\x18\x07 \x03(\x04\"\xca\x01\n\x0e\x43\x43hatRoomState\x12\x0f\n\x07\x63hat_id\x18\x01 \x01(\x04\x12\x11\n\tchat_name\x18\x02 \x01(\t\x12\x15\n\rvoice_allowed\x18\x03 \x01(\x08\x12\x18\n\x10members_in_voice\x18\x04 \x03(\r\x12\x19\n\x11time_last_message\x18\x05 \x01(\r\x12\x12\n\nsort_order\x18\x06 \x01(\r\x12\x14\n\x0clast_message\x18\x07 \x01(\t\x12\x1e\n\x16\x61\x63\x63ountid_last_message\x18\x08 \x01(\r\"\xca\x01\n\x13\x43\x43hatRoomGroupState\x12\x30\n\x0cheader_state\x18\x01 \x01(\x0b\x32\x1a.CChatRoomGroupHeaderState\x12!\n\x07members\x18\x02 \x03(\x0b\x32\x10.CChatRoomMember\x12\x17\n\x0f\x64\x65\x66\x61ult_chat_id\x18\x04 \x01(\x04\x12#\n\nchat_rooms\x18\x05 \x03(\x0b\x32\x0f.CChatRoomState\x12 \n\x06kicked\x18\x07 \x03(\x0b\x32\x10.CChatRoomMember\"\xfb\x02\n\x12\x43UserChatRoomState\x12\x0f\n\x07\x63hat_id\x18\x01 \x01(\x04\x12\x13\n\x0btime_joined\x18\x02 \x01(\r\x12\x15\n\rtime_last_ack\x18\x03 \x01(\r\x12\x65\n\x1a\x64\x65sktop_notification_level\x18\x04 \x01(\x0e\x32\x1b.EChatRoomNotificationLevel:$k_EChatroomNotificationLevel_Invalid\x12\x64\n\x19mobile_notification_level\x18\x05 \x01(\x0e\x32\x1b.EChatRoomNotificationLevel:$k_EChatroomNotificationLevel_Invalid\x12\x19\n\x11time_last_mention\x18\x06 \x01(\r\x12%\n\x16unread_indicator_muted\x18\x07 \x01(\x08:\x05\x66\x61lse\x12\x19\n\x11time_first_unread\x18\x08 \x01(\r\"\x89\x03\n\x17\x43UserChatRoomGroupState\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12\x13\n\x0btime_joined\x18\x02 \x01(\r\x12\x31\n\x14user_chat_room_state\x18\x03 \x03(\x0b\x32\x13.CUserChatRoomState\x12\x65\n\x1a\x64\x65sktop_notification_level\x18\x04 \x01(\x0e\x32\x1b.EChatRoomNotificationLevel:$k_EChatroomNotificationLevel_Invalid\x12\x64\n\x19mobile_notification_level\x18\x05 \x01(\x0e\x32\x1b.EChatRoomNotificationLevel:$k_EChatroomNotificationLevel_Invalid\x12\x1b\n\x13time_last_group_ack\x18\x06 \x01(\r\x12%\n\x16unread_indicator_muted\x18\x07 \x01(\x08:\x05\x66\x61lse\"\x97\x01\n&CChatRoom_CreateChatRoomGroup_Response\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12#\n\x05state\x18\x02 \x01(\x0b\x32\x14.CChatRoomGroupState\x12\x31\n\x0fuser_chat_state\x18\x03 \x01(\x0b\x32\x18.CUserChatRoomGroupState\"J\n#CChatRoom_SaveChatRoomGroup_Request\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12\x0c\n\x04name\x18\x02 \x01(\t\"&\n$CChatRoom_SaveChatRoomGroup_Response\"L\n%CChatRoom_RenameChatRoomGroup_Request\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12\x0c\n\x04name\x18\x02 \x01(\t\"6\n&CChatRoom_RenameChatRoomGroup_Response\x12\x0c\n\x04name\x18\x01 \x01(\t\"S\n)CChatRoom_SetChatRoomGroupTagline_Request\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12\x0f\n\x07tagline\x18\x02 \x01(\t\",\n*CChatRoom_SetChatRoomGroupTagline_Response\"U\n(CChatRoom_SetChatRoomGroupAvatar_Request\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12\x12\n\navatar_sha\x18\x02 \x01(\x0c\"+\n)CChatRoom_SetChatRoomGroupAvatar_Response\"\x99\x01\n3CChatRoom_SetChatRoomGroupWatchingBroadcast_Request\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12$\n\x1cwatching_broadcast_accountid\x18\x02 \x01(\r\x12%\n\x1dwatching_broadcast_channel_id\x18\x03 \x01(\x04\"6\n4CChatRoom_SetChatRoomGroupWatchingBroadcast_Response\"X\n.CChatRoom_JoinMiniGameForChatRoomGroup_Request\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12\x0f\n\x07\x63hat_id\x18\x02 \x01(\x04\"F\n/CChatRoom_JoinMiniGameForChatRoomGroup_Response\x12\x13\n\x0bminigame_id\x18\x01 \x01(\x04\"l\n-CChatRoom_EndMiniGameForChatRoomGroup_Request\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12\x0f\n\x07\x63hat_id\x18\x02 \x01(\x04\x12\x13\n\x0bminigame_id\x18\x03 \x01(\x04\"0\n.CChatRoom_EndMiniGameForChatRoomGroup_Response\"X\n\x1a\x43\x43hatRoom_MuteUser_Request\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12\x0f\n\x07steamid\x18\x02 \x01(\x06\x12\x12\n\nexpiration\x18\x03 \x01(\x05\"\x1d\n\x1b\x43\x43hatRoom_MuteUser_Response\"X\n\x1a\x43\x43hatRoom_KickUser_Request\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12\x0f\n\x07steamid\x18\x02 \x01(\x06\x12\x12\n\nexpiration\x18\x03 \x01(\x05\"\x1d\n\x1b\x43\x43hatRoom_KickUser_Response\"^\n!CChatRoom_SetUserBanState_Request\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12\x0f\n\x07steamid\x18\x02 \x01(\x06\x12\x11\n\tban_state\x18\x03 \x01(\x08\"$\n\"CChatRoom_SetUserBanState_Response\"H\n\x1e\x43\x43hatRoom_RevokeInvite_Request\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12\x0f\n\x07steamid\x18\x02 \x01(\x06\"!\n\x1f\x43\x43hatRoom_RevokeInvite_Response\"C\n\x1c\x43\x43hatRoom_CreateRole_Request\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12\x0c\n\x04name\x18\x02 \x01(\t\"C\n\x1d\x43\x43hatRoom_CreateRole_Response\x12\"\n\x07\x61\x63tions\x18\x02 \x01(\x0b\x32\x11.CChatRoleActions\"3\n\x1a\x43\x43hatRoom_GetRoles_Request\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\"8\n\x1b\x43\x43hatRoom_GetRoles_Response\x12\x19\n\x05roles\x18\x01 \x03(\x0b\x32\n.CChatRole\"T\n\x1c\x43\x43hatRoom_RenameRole_Request\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12\x0f\n\x07role_id\x18\x02 \x01(\x04\x12\x0c\n\x04name\x18\x03 \x01(\t\"\x1f\n\x1d\x43\x43hatRoom_RenameRole_Response\"X\n\x1d\x43\x43hatRoom_ReorderRole_Request\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12\x0f\n\x07role_id\x18\x02 \x01(\x04\x12\x0f\n\x07ordinal\x18\x03 \x01(\r\" \n\x1e\x43\x43hatRoom_ReorderRole_Response\"F\n\x1c\x43\x43hatRoom_DeleteRole_Request\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12\x0f\n\x07role_id\x18\x02 \x01(\x04\"\x1f\n\x1d\x43\x43hatRoom_DeleteRole_Response\"J\n CChatRoom_GetRoleActions_Request\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12\x0f\n\x07role_id\x18\x02 \x01(\x04\"G\n!CChatRoom_GetRoleActions_Response\x12\"\n\x07\x61\x63tions\x18\x01 \x03(\x0b\x32\x11.CChatRoleActions\"r\n$CChatRoom_ReplaceRoleActions_Request\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12\x0f\n\x07role_id\x18\x02 \x01(\x04\x12\"\n\x07\x61\x63tions\x18\x04 \x01(\x0b\x32\x11.CChatRoleActions\"\'\n%CChatRoom_ReplaceRoleActions_Response\"Z\n\x1f\x43\x43hatRoom_AddRoleToUser_Request\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12\x0f\n\x07role_id\x18\x03 \x01(\x04\x12\x0f\n\x07steamid\x18\x04 \x01(\x06\"\"\n CChatRoom_AddRoleToUser_Response\"K\n!CChatRoom_GetRolesForUser_Request\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12\x0f\n\x07steamid\x18\x03 \x01(\x06\"6\n\"CChatRoom_GetRolesForUser_Response\x12\x10\n\x08role_ids\x18\x01 \x03(\x04\"_\n$CChatRoom_DeleteRoleFromUser_Request\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12\x0f\n\x07role_id\x18\x03 \x01(\x04\x12\x0f\n\x07steamid\x18\x04 \x01(\x06\"\'\n%CChatRoom_DeleteRoleFromUser_Response\"b\n#CChatRoom_JoinChatRoomGroup_Request\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12\x13\n\x0binvite_code\x18\x02 \x01(\t\x12\x0f\n\x07\x63hat_id\x18\x03 \x01(\x04\"\xa9\x01\n$CChatRoom_JoinChatRoomGroup_Response\x12#\n\x05state\x18\x01 \x01(\x0b\x32\x14.CChatRoomGroupState\x12\x31\n\x0fuser_chat_state\x18\x03 \x01(\x0b\x32\x18.CUserChatRoomGroupState\x12\x14\n\x0cjoin_chat_id\x18\x04 \x01(\x04\x12\x13\n\x0btime_expire\x18\x05 \x01(\r\"\x86\x01\n-CChatRoom_InviteFriendToChatRoomGroup_Request\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12\x0f\n\x07steamid\x18\x02 \x01(\x06\x12\x0f\n\x07\x63hat_id\x18\x03 \x01(\x04\x12\x1c\n\x14skip_friendsui_check\x18\x04 \x01(\x08\"0\n.CChatRoom_InviteFriendToChatRoomGroup_Response\"=\n$CChatRoom_LeaveChatRoomGroup_Request\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\"\'\n%CChatRoom_LeaveChatRoomGroup_Response\"\\\n CChatRoom_CreateChatRoom_Request\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x13\n\x0b\x61llow_voice\x18\x03 \x01(\x08\"G\n!CChatRoom_CreateChatRoom_Response\x12\"\n\tchat_room\x18\x01 \x01(\x0b\x32\x0f.CChatRoomState\"J\n CChatRoom_DeleteChatRoom_Request\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12\x0f\n\x07\x63hat_id\x18\x02 \x01(\x04\"#\n!CChatRoom_DeleteChatRoom_Response\"X\n CChatRoom_RenameChatRoom_Request\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12\x0f\n\x07\x63hat_id\x18\x02 \x01(\x04\x12\x0c\n\x04name\x18\x03 \x01(\t\"#\n!CChatRoom_RenameChatRoom_Response\"g\n!CChatRoom_ReorderChatRoom_Request\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12\x0f\n\x07\x63hat_id\x18\x02 \x01(\x04\x12\x1a\n\x12move_after_chat_id\x18\x03 \x01(\x04\"$\n\"CChatRoom_ReorderChatRoom_Response\"t\n!CChatRoom_SendChatMessage_Request\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12\x0f\n\x07\x63hat_id\x18\x02 \x01(\x04\x12\x0f\n\x07message\x18\x03 \x01(\t\x12\x16\n\x0e\x65\x63ho_to_sender\x18\x04 \x01(\x08\"\x8a\x01\n\"CChatRoom_SendChatMessage_Response\x12\x18\n\x10modified_message\x18\x01 \x01(\t\x12\x18\n\x10server_timestamp\x18\x02 \x01(\r\x12\x0f\n\x07ordinal\x18\x03 \x01(\r\x12\x1f\n\x17message_without_bb_code\x18\x04 \x01(\t\"I\n\x1f\x43\x43hatRoom_JoinVoiceChat_Request\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12\x0f\n\x07\x63hat_id\x18\x02 \x01(\x04\"8\n CChatRoom_JoinVoiceChat_Response\x12\x14\n\x0cvoice_chatid\x18\x01 \x01(\x04\"J\n CChatRoom_LeaveVoiceChat_Request\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12\x0f\n\x07\x63hat_id\x18\x02 \x01(\x04\"#\n!CChatRoom_LeaveVoiceChat_Response\"\xb4\x01\n#CChatRoom_GetMessageHistory_Request\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12\x0f\n\x07\x63hat_id\x18\x02 \x01(\x04\x12\x11\n\tlast_time\x18\x03 \x01(\r\x12\x14\n\x0clast_ordinal\x18\x04 \x01(\r\x12\x12\n\nstart_time\x18\x05 \x01(\r\x12\x15\n\rstart_ordinal\x18\x06 \x01(\r\x12\x11\n\tmax_count\x18\x07 \x01(\r\"\x86\x01\n\rServerMessage\x12\x46\n\x07message\x18\x01 \x01(\x0e\x32\x17.EChatRoomServerMessage:\x1ck_EChatRoomServerMsg_Invalid\x12\x14\n\x0cstring_param\x18\x02 \x01(\t\x12\x17\n\x0f\x61\x63\x63ountid_param\x18\x03 \x01(\r\"\xa2\x04\n$CChatRoom_GetMessageHistory_Response\x12\x43\n\x08messages\x18\x01 \x03(\x0b\x32\x31.CChatRoom_GetMessageHistory_Response.ChatMessage\x12\x16\n\x0emore_available\x18\x04 \x01(\x08\x1a\x9c\x03\n\x0b\x43hatMessage\x12\x0e\n\x06sender\x18\x01 \x01(\r\x12\x18\n\x10server_timestamp\x18\x02 \x01(\r\x12\x0f\n\x07message\x18\x03 \x01(\t\x12\x0f\n\x07ordinal\x18\x04 \x01(\r\x12&\n\x0eserver_message\x18\x05 \x01(\x0b\x32\x0e.ServerMessage\x12\x0f\n\x07\x64\x65leted\x18\x06 \x01(\x08\x12T\n\treactions\x18\x07 \x03(\x0b\x32\x41.CChatRoom_GetMessageHistory_Response.ChatMessage.MessageReaction\x1a\xb1\x01\n\x0fMessageReaction\x12\\\n\rreaction_type\x18\x01 \x01(\x0e\x32\x1d.EChatRoomMessageReactionType:&k_EChatRoomMessageReactionType_Invalid\x12\x10\n\x08reaction\x18\x02 \x01(\t\x12\x14\n\x0cnum_reactors\x18\x03 \x01(\r\x12\x18\n\x10has_user_reacted\x18\x04 \x01(\x08\"\'\n%CChatRoom_GetMyChatRoomGroups_Request\"\xb4\x05\n*CChatRoom_GetChatRoomGroupSummary_Response\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12\x17\n\x0f\x63hat_group_name\x18\x02 \x01(\t\x12\x1b\n\x13\x61\x63tive_member_count\x18\x03 \x01(\r\x12!\n\x19\x61\x63tive_voice_member_count\x18\x04 \x01(\r\x12\x17\n\x0f\x64\x65\x66\x61ult_chat_id\x18\x05 \x01(\x04\x12#\n\nchat_rooms\x18\x06 \x03(\x0b\x32\x0f.CChatRoomState\x12\x0e\n\x06\x63lanid\x18\x07 \x01(\r\x12\x1a\n\x12\x63hat_group_tagline\x18\x08 \x01(\t\x12\x17\n\x0f\x61\x63\x63ountid_owner\x18\t \x01(\r\x12\x13\n\x0btop_members\x18\n \x03(\r\x12\x1d\n\x15\x63hat_group_avatar_sha\x18\x0b \x01(\x0c\x12?\n\x04rank\x18\x0c \x01(\x0e\x32\x13.EChatRoomGroupRank:\x1ck_EChatRoomGroupRank_Default\x12\x17\n\x0f\x64\x65\x66\x61ult_role_id\x18\r \x01(\x04\x12\x10\n\x08role_ids\x18\x0e \x03(\x04\x12\'\n\x0crole_actions\x18\x0f \x03(\x0b\x32\x11.CChatRoleActions\x12$\n\x1cwatching_broadcast_accountid\x18\x10 \x01(\r\x12\r\n\x05\x61ppid\x18\x11 \x01(\r\x12(\n\rparty_beacons\x18\x12 \x03(\x0b\x32\x11.CChatPartyBeacon\x12%\n\x1dwatching_broadcast_channel_id\x18\x13 \x01(\x04\x12\x1a\n\x12\x61\x63tive_minigame_id\x18\x14 \x01(\x04\x12\x16\n\x0e\x61vatar_ugc_url\x18\x15 \x01(\t\x12\x10\n\x08\x64isabled\x18\x16 \x01(\x08\"\x93\x01\n\x14\x43\x43hatRoomSummaryPair\x12\x37\n\x15user_chat_group_state\x18\x01 \x01(\x0b\x32\x18.CUserChatRoomGroupState\x12\x42\n\rgroup_summary\x18\x02 \x01(\x0b\x32+.CChatRoom_GetChatRoomGroupSummary_Response\"Y\n&CChatRoom_GetMyChatRoomGroups_Response\x12/\n\x10\x63hat_room_groups\x18\x01 \x03(\x0b\x32\x15.CChatRoomSummaryPair\"@\n\'CChatRoom_GetChatRoomGroupState_Request\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\"O\n(CChatRoom_GetChatRoomGroupState_Response\x12#\n\x05state\x18\x01 \x01(\x0b\x32\x14.CChatRoomGroupState\"B\n)CChatRoom_GetChatRoomGroupSummary_Request\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\"d\n0CChatRoom_SetAppChatRoomGroupForceActive_Request\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12\x19\n\x11requesting_app_id\x18\x02 \x01(\r\"`\n1CChatRoom_SetAppChatRoomGroupForceActive_Response\x12\x0e\n\x06result\x18\x01 \x01(\r\x12\x1b\n\x13\x61\x63\x63ounts_in_channel\x18\x02 \x03(\r\"m\n9CChatRoom_SetAppChatRoomGroupStopForceActive_Notification\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12\x19\n\x11requesting_app_id\x18\x02 \x01(\r\"b\n%CChatRoom_AckChatMessage_Notification\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12\x0f\n\x07\x63hat_id\x18\x02 \x01(\x04\x12\x11\n\ttimestamp\x18\x03 \x01(\r\"c\n\"CChatRoom_CreateInviteLink_Request\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12\x15\n\rseconds_valid\x18\x02 \x01(\r\x12\x0f\n\x07\x63hat_id\x18\x03 \x01(\x04\"Q\n#CChatRoom_CreateInviteLink_Response\x12\x13\n\x0binvite_code\x18\x01 \x01(\t\x12\x15\n\rseconds_valid\x18\x02 \x01(\r\":\n#CChatRoom_GetInviteLinkInfo_Request\x12\x13\n\x0binvite_code\x18\x01 \x01(\t\"\x8c\x02\n$CChatRoom_GetInviteLinkInfo_Response\x12\x16\n\x0esteamid_sender\x18\x03 \x01(\x06\x12\x14\n\x0ctime_expires\x18\x04 \x01(\r\x12\x0f\n\x07\x63hat_id\x18\x06 \x01(\x04\x12\x42\n\rgroup_summary\x18\x08 \x01(\x0b\x32+.CChatRoom_GetChatRoomGroupSummary_Response\x12\x37\n\x15user_chat_group_state\x18\t \x01(\x0b\x32\x18.CUserChatRoomGroupState\x12\x18\n\x10time_kick_expire\x18\n \x01(\r\x12\x0e\n\x06\x62\x61nned\x18\x0b \x01(\x08\"w\n\x1f\x43\x43hatRoom_GetInviteInfo_Request\x12\x17\n\x0fsteamid_invitee\x18\x01 \x01(\x06\x12\x15\n\rchat_group_id\x18\x02 \x01(\x04\x12\x0f\n\x07\x63hat_id\x18\x03 \x01(\x04\x12\x13\n\x0binvite_code\x18\x04 \x01(\t\"\x90\x01\n CChatRoom_GetInviteInfo_Response\x12\x42\n\rgroup_summary\x18\x01 \x01(\x0b\x32+.CChatRoom_GetChatRoomGroupSummary_Response\x12\x18\n\x10time_kick_expire\x18\x02 \x01(\r\x12\x0e\n\x06\x62\x61nned\x18\x03 \x01(\x08\"A\n(CChatRoom_GetInviteLinksForGroup_Request\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\"\xd7\x01\n)CChatRoom_GetInviteLinksForGroup_Response\x12I\n\x0cinvite_links\x18\x01 \x03(\x0b\x32\x33.CChatRoom_GetInviteLinksForGroup_Response.LinkInfo\x1a_\n\x08LinkInfo\x12\x13\n\x0binvite_code\x18\x01 \x01(\t\x12\x17\n\x0fsteamid_creator\x18\x02 \x01(\x06\x12\x14\n\x0ctime_expires\x18\x03 \x01(\r\x12\x0f\n\x07\x63hat_id\x18\x04 \x01(\x04\"5\n\x1c\x43\x43hatRoom_GetBanList_Request\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\"\xb5\x01\n\x1d\x43\x43hatRoom_GetBanList_Response\x12\x34\n\x04\x62\x61ns\x18\x01 \x03(\x0b\x32&.CChatRoom_GetBanList_Response.BanInfo\x1a^\n\x07\x42\x61nInfo\x12\x11\n\taccountid\x18\x01 \x01(\r\x12\x17\n\x0f\x61\x63\x63ountid_actor\x18\x02 \x01(\r\x12\x13\n\x0btime_banned\x18\x03 \x01(\r\x12\x12\n\nban_reason\x18\x04 \x01(\t\"8\n\x1f\x43\x43hatRoom_GetInviteList_Request\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\"X\n\x14\x43\x43hatRoomGroupInvite\x12\x11\n\taccountid\x18\x01 \x01(\r\x12\x17\n\x0f\x61\x63\x63ountid_actor\x18\x02 \x01(\r\x12\x14\n\x0ctime_invited\x18\x03 \x01(\r\"J\n CChatRoom_GetInviteList_Response\x12&\n\x07invites\x18\x01 \x03(\x0b\x32\x15.CChatRoomGroupInvite\"P\n\"CChatRoom_DeleteInviteLink_Request\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12\x13\n\x0binvite_code\x18\x02 \x01(\t\"%\n#CChatRoom_DeleteInviteLink_Response\"\xf4\x01\n0CChatRoom_SetSessionActiveChatRoomGroups_Request\x12\x16\n\x0e\x63hat_group_ids\x18\x01 \x03(\x04\x12\"\n\x1a\x63hat_groups_data_requested\x18\x02 \x03(\x04\x12\x83\x01\n\x1cvirtualize_members_threshold\x18\x03 \x01(\x05\x42]\x82\xb5\x18YIf a chat room has more members than this threshold, we will opt in to a virtualized list\"\x89\x01\n1CChatRoom_SetSessionActiveChatRoomGroups_Response\x12)\n\x0b\x63hat_states\x18\x01 \x03(\x0b\x32\x14.CChatRoomGroupState\x12)\n!virtualize_members_chat_group_ids\x18\x02 \x03(\x04\"\xaa\x06\n-CChatRoom_SetUserChatGroupPreferences_Request\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12\x63\n\x16\x63hat_group_preferences\x18\x02 \x01(\x0b\x32\x43.CChatRoom_SetUserChatGroupPreferences_Request.ChatGroupPreferences\x12\x61\n\x15\x63hat_room_preferences\x18\x03 \x03(\x0b\x32\x42.CChatRoom_SetUserChatGroupPreferences_Request.ChatRoomPreferences\x1a\x83\x02\n\x14\x43hatGroupPreferences\x12\x65\n\x1a\x64\x65sktop_notification_level\x18\x01 \x01(\x0e\x32\x1b.EChatRoomNotificationLevel:$k_EChatroomNotificationLevel_Invalid\x12\x64\n\x19mobile_notification_level\x18\x02 \x01(\x0e\x32\x1b.EChatRoomNotificationLevel:$k_EChatroomNotificationLevel_Invalid\x12\x1e\n\x16unread_indicator_muted\x18\x03 \x01(\x08\x1a\x93\x02\n\x13\x43hatRoomPreferences\x12\x0f\n\x07\x63hat_id\x18\x01 \x01(\x04\x12\x65\n\x1a\x64\x65sktop_notification_level\x18\x02 \x01(\x0e\x32\x1b.EChatRoomNotificationLevel:$k_EChatroomNotificationLevel_Invalid\x12\x64\n\x19mobile_notification_level\x18\x03 \x01(\x0e\x32\x1b.EChatRoomNotificationLevel:$k_EChatroomNotificationLevel_Invalid\x12\x1e\n\x16unread_indicator_muted\x18\x04 \x01(\x08\"0\n.CChatRoom_SetUserChatGroupPreferences_Response\"\xc5\x01\n$CChatRoom_DeleteChatMessages_Request\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12\x0f\n\x07\x63hat_id\x18\x02 \x01(\x04\x12?\n\x08messages\x18\x03 \x03(\x0b\x32-.CChatRoom_DeleteChatMessages_Request.Message\x1a\x34\n\x07Message\x12\x18\n\x10server_timestamp\x18\x01 \x01(\r\x12\x0f\n\x07ordinal\x18\x02 \x01(\r\"\'\n%CChatRoom_DeleteChatMessages_Response\"\xe9\x03\n+CChatRoom_UpdateMemberListView_Notification\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12g\n\x07view_id\x18\x02 \x01(\x04\x42V\x82\xb5\x18RClient-generated ID.  Should send the same value on all requests for the same view\x12\r\n\x05start\x18\x03 \x01(\x05\x12\x0b\n\x03\x65nd\x18\x04 \x01(\x05\x12\x8f\x01\n\x13\x63lient_changenumber\x18\x05 \x01(\x05\x42r\x82\xb5\x18nAny updates from this call on will have this changenumber present.  Can be used to guarantee in-order updates.\x12>\n\x0b\x64\x65lete_view\x18\x06 \x01(\x08\x42)\x82\xb5\x18%Indicates this view has been deleted.\x12$\n\x1cpersona_subscribe_accountids\x18\x07 \x03(\x05\x12&\n\x1epersona_unsubscribe_accountids\x18\x08 \x03(\x05\"\x97\x02\n\x1f\x43\x43hatRoom_SearchMembers_Request\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12\xb2\x01\n\tsearch_id\x18\x02 \x01(\x04\x42\x9e\x01\x82\xb5\x18\x99\x01\x43lient-supplied id.  For find-as-you-type searches, as search narrows the server will not return persona states previously returned for a given searchid.\x12\x13\n\x0bsearch_text\x18\x03 \x01(\t\x12\x13\n\x0bmax_results\x18\x04 \x01(\x05\"\xd4\x01\n CChatRoom_SearchMembers_Response\x12G\n\x10matching_members\x18\x01 \x03(\x0b\x32-.CChatRoom_SearchMembers_Response.MemberMatch\x12\x14\n\x0cstatus_flags\x18\x02 \x01(\r\x1aQ\n\x0bMemberMatch\x12\x11\n\taccountid\x18\x01 \x01(\x05\x12/\n\x07persona\x18\x02 \x01(\x0b\x32\x1e.CMsgClientPersonaState.Friend\"\xfc\x01\n\'CChatRoom_UpdateMessageReaction_Request\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12\x0f\n\x07\x63hat_id\x18\x02 \x01(\x04\x12\x18\n\x10server_timestamp\x18\x03 \x01(\r\x12\x0f\n\x07ordinal\x18\x04 \x01(\r\x12\\\n\rreaction_type\x18\x05 \x01(\x0e\x32\x1d.EChatRoomMessageReactionType:&k_EChatRoomMessageReactionType_Invalid\x12\x10\n\x08reaction\x18\x06 \x01(\t\x12\x0e\n\x06is_add\x18\x07 \x01(\x08\"@\n(CChatRoom_UpdateMessageReaction_Response\x12\x14\n\x0cnum_reactors\x18\x01 \x01(\r\"\x80\x02\n,CChatRoom_GetMessageReactionReactors_Request\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12\x0f\n\x07\x63hat_id\x18\x02 \x01(\x04\x12\x18\n\x10server_timestamp\x18\x03 \x01(\r\x12\x0f\n\x07ordinal\x18\x04 \x01(\r\x12\\\n\rreaction_type\x18\x05 \x01(\x0e\x32\x1d.EChatRoomMessageReactionType:&k_EChatRoomMessageReactionType_Invalid\x12\x10\n\x08reaction\x18\x06 \x01(\t\x12\r\n\x05limit\x18\x07 \x01(\r\"A\n-CChatRoom_GetMessageReactionReactors_Response\x12\x10\n\x08reactors\x18\x01 \x03(\r\"\x98\x01\n*CClanChatRooms_GetClanChatRoomInfo_Request\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12Y\n\nautocreate\x18\x02 \x01(\x08:\x04trueB?\x82\xb5\x18;Create a default chat room if none has been created before.\"v\n+CClanChatRooms_GetClanChatRoomInfo_Response\x12G\n\x12\x63hat_group_summary\x18\x01 \x01(\x0b\x32+.CChatRoom_GetChatRoomGroupSummary_Response\"[\n-CClanChatRooms_SetClanChatRoomPrivate_Request\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12\x19\n\x11\x63hat_room_private\x18\x02 \x01(\x08\"K\n.CClanChatRooms_SetClanChatRoomPrivate_Response\x12\x19\n\x11\x63hat_room_private\x18\x01 \x01(\x08\"V\n\rCChatMentions\x12\x13\n\x0bmention_all\x18\x01 \x01(\x08\x12\x14\n\x0cmention_here\x18\x02 \x01(\x08\x12\x1a\n\x12mention_accountids\x18\x03 \x03(\r\"\xd5\x02\n*CChatRoom_IncomingChatMessage_Notification\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12\x0f\n\x07\x63hat_id\x18\x02 \x01(\x04\x12\x16\n\x0esteamid_sender\x18\x03 \x01(\x06\x12\x0f\n\x07message\x18\x04 \x01(\t\x12\x11\n\ttimestamp\x18\x05 \x01(\r\x12 \n\x08mentions\x18\x06 \x01(\x0b\x32\x0e.CChatMentions\x12\x0f\n\x07ordinal\x18\x07 \x01(\r\x12&\n\x0eserver_message\x18\x08 \x01(\x0b\x32\x0e.ServerMessage\x12\x19\n\x11message_no_bbcode\x18\t \x01(\t\x12M\n\tchat_name\x18\n \x01(\tB:\x82\xb5\x18\x36\x41 name to use for the chat, intended for notifications\"\xea\x01\n*CChatRoom_ChatMessageModified_Notification\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12\x0f\n\x07\x63hat_id\x18\x02 \x01(\x04\x12I\n\x08messages\x18\x03 \x03(\x0b\x32\x37.CChatRoom_ChatMessageModified_Notification.ChatMessage\x1aI\n\x0b\x43hatMessage\x12\x18\n\x10server_timestamp\x18\x01 \x01(\r\x12\x0f\n\x07ordinal\x18\x02 \x01(\r\x12\x0f\n\x07\x64\x65leted\x18\x03 \x01(\x08\"\xb6\x01\n(CChatRoom_MemberStateChange_Notification\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12 \n\x06member\x18\x02 \x01(\x0b\x32\x10.CChatRoomMember\x12Q\n\x06\x63hange\x18\x03 \x01(\x0e\x32\x1b.EChatRoomMemberStateChange:$k_EChatRoomMemberStateChange_Invalid\"^\n*CChatRoom_ChatRoomHeaderState_Notification\x12\x30\n\x0cheader_state\x18\x01 \x01(\x0b\x32\x1a.CChatRoomGroupHeaderState\"\x86\x01\n/CChatRoom_ChatRoomGroupRoomsChange_Notification\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12\x17\n\x0f\x64\x65\x66\x61ult_chat_id\x18\x02 \x01(\x04\x12#\n\nchat_rooms\x18\x03 \x03(\x0b\x32\x0f.CChatRoomState\"d\n:CChatRoom_NotifyShouldRejoinChatRoomVoiceChat_Notification\x12\x0f\n\x07\x63hat_id\x18\x01 \x01(\x04\x12\x15\n\rchat_group_id\x18\x02 \x01(\x04\"\xa9\x02\n;ChatRoomClient_NotifyChatGroupUserStateChanged_Notification\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12\x37\n\x15user_chat_group_state\x18\x02 \x01(\x0b\x32\x18.CUserChatRoomGroupState\x12\x42\n\rgroup_summary\x18\x03 \x01(\x0b\x32+.CChatRoom_GetChatRoomGroupSummary_Response\x12V\n\x0buser_action\x18\x04 \x01(\x0e\x32\x1b.EChatRoomMemberStateChange:$k_EChatRoomMemberStateChange_Invalid\"N\n4ChatRoomClient_NotifyChatRoomDisconnect_Notification\x12\x16\n\x0e\x63hat_group_ids\x18\x01 \x03(\x04\"\x94\x02\n\x17\x43\x43hatRoomMemberListView\x12\r\n\x05start\x18\x03 \x01(\x05\x12\x0b\n\x03\x65nd\x18\x04 \x01(\x05\x12\x13\n\x0btotal_count\x18\x05 \x01(\x05\x12\x61\n\x13\x63lient_changenumber\x18\x06 \x01(\x05\x42\x44\x82\xb5\x18@Value sent by the client on the last UpdateMemberListView call. \x12\x65\n\x13server_changenumber\x18\x07 \x01(\x05\x42H\x82\xb5\x18\x44Value incremented by the server on each MemberListViewUpdated call. \"O\n\x1c\x43\x43hatRoomMemberSummaryCounts\x12\x0e\n\x06ingame\x18\x01 \x01(\x05\x12\x0e\n\x06online\x18\x02 \x01(\x05\x12\x0f\n\x07offline\x18\x03 \x01(\x05\"\x8f\x04\n2CChatRoomClient_MemberListViewUpdated_Notification\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12M\n\x07view_id\x18\x02 \x01(\x04\x42<\x82\xb5\x18\x38Thew view_id supplied when the client created the view. \x12&\n\x04view\x18\x03 \x01(\x0b\x32\x18.CChatRoomMemberListView\x12X\n\x07members\x18\x04 \x03(\x0b\x32G.CChatRoomClient_MemberListViewUpdated_Notification.MemberListViewEntry\x12\x14\n\x0cstatus_flags\x18\x05 \x01(\r\x12\x35\n\x0emember_summary\x18\x06 \x01(\x0b\x32\x1d.CChatRoomMemberSummaryCounts\x12;\n\x13subscribed_personas\x18\x07 \x03(\x0b\x32\x1e.CMsgClientPersonaState.Friend\x1ag\n\x13MemberListViewEntry\x12\x0c\n\x04rank\x18\x01 \x01(\x05\x12\x11\n\taccountid\x18\x02 \x01(\r\x12/\n\x07persona\x18\x03 \x01(\x0b\x32\x1e.CMsgClientPersonaState.Friend\"\x8c\x02\n&CChatRoom_MessageReaction_Notification\x12\x15\n\rchat_group_id\x18\x01 \x01(\x04\x12\x0f\n\x07\x63hat_id\x18\x02 \x01(\x04\x12\x18\n\x10server_timestamp\x18\x03 \x01(\r\x12\x0f\n\x07ordinal\x18\x04 \x01(\r\x12\x0f\n\x07reactor\x18\x05 \x01(\x06\x12\\\n\rreaction_type\x18\x06 \x01(\x0e\x32\x1d.EChatRoomMessageReactionType:&k_EChatRoomMessageReactionType_Invalid\x12\x10\n\x08reaction\x18\x07 \x01(\t\x12\x0e\n\x06is_add\x18\x08 \x01(\x08\"\xdf\x15\n2CChatUsability_ClientUsabilityMetrics_Notification\x12\x16\n\x0emetrics_run_id\x18\x01 \x01(\r\x12\x14\n\x0c\x63lient_build\x18\x02 \x01(\r\x12\x17\n\x0fmetrics_version\x18\x03 \x01(\r\x12\x0e\n\x06in_web\x18\x04 \x01(\x08\x12N\n\x08settings\x18\n \x01(\x0b\x32<.CChatUsability_ClientUsabilityMetrics_Notification.Settings\x12Y\n\x0evoice_settings\x18\x0b \x01(\x0b\x32\x41.CChatUsability_ClientUsabilityMetrics_Notification.VoiceSettings\x12M\n\x08ui_state\x18\x0c \x01(\x0b\x32;.CChatUsability_ClientUsabilityMetrics_Notification.UIState\x12L\n\x07metrics\x18\r \x01(\x0b\x32;.CChatUsability_ClientUsabilityMetrics_Notification.Metrics\x1a\xd9\x06\n\x08Settings\x12!\n\x19notifications_show_ingame\x18\x01 \x01(\x08\x12!\n\x19notifications_show_online\x18\x02 \x01(\x08\x12\"\n\x1anotifications_show_message\x18\x03 \x01(\x08\x12.\n&notifications_events_and_announcements\x18\x04 \x01(\x08\x12\x1a\n\x12sounds_play_ingame\x18\x05 \x01(\x08\x12\x1a\n\x12sounds_play_online\x18\x06 \x01(\x08\x12\x1b\n\x13sounds_play_message\x18\x07 \x01(\x08\x12\'\n\x1fsounds_events_and_announcements\x18\x08 \x01(\x08\x12\x1e\n\x16\x61lways_new_chat_window\x18\t \x01(\x08\x12\'\n\x1f\x66orce_alphabetic_friend_sorting\x18\n \x01(\x08\x12\x17\n\x0f\x63hat_flash_mode\x18\x0b \x01(\x05\x12\x1b\n\x13remember_open_chats\x18\x0c \x01(\x08\x12\x1c\n\x14\x63ompact_quick_access\x18\r \x01(\x08\x12\x1c\n\x14\x63ompact_friends_list\x18\x0e \x01(\x08\x12\x31\n)notifications_show_chat_room_notification\x18\x0f \x01(\x08\x12*\n\"sounds_play_chat_room_notification\x18\x10 \x01(\x08\x12*\n\"hide_offline_friends_in_tag_groups\x18\x11 \x01(\x08\x12 \n\x18hide_categorized_friends\x18\x12 \x01(\x08\x12*\n\"categorize_in_game_friends_by_game\x18\x13 \x01(\x08\x12\x16\n\x0e\x63hat_font_size\x18\x14 \x01(\x05\x12\x17\n\x0fuse24hour_clock\x18\x15 \x01(\x08\x12\x1b\n\x13\x64o_not_disturb_mode\x18\x16 \x01(\x08\x12\x1e\n\x16\x64isable_embed_inlining\x18\x17 \x01(\x08\x12\x19\n\x11sign_into_friends\x18\x18 \x01(\x08\x12\x18\n\x10\x61nimated_avatars\x18\x19 \x01(\x08\x1a\xea\x02\n\rVoiceSettings\x12\x18\n\x10voice_input_gain\x18\x01 \x01(\x02\x12\x19\n\x11voice_output_gain\x18\x02 \x01(\x02\x12\x18\n\x10noise_gate_level\x18\x03 \x01(\x05\x12#\n\x1bvoice_use_echo_cancellation\x18\x04 \x01(\x08\x12$\n\x1cvoice_use_noise_cancellation\x18\x05 \x01(\x08\x12#\n\x1bvoice_use_auto_gain_control\x18\x06 \x01(\x08\x12 \n\x18selected_non_default_mic\x18\x07 \x01(\x08\x12#\n\x1bselected_non_default_output\x18\x08 \x01(\x08\x12\x1c\n\x14push_to_talk_enabled\x18\t \x01(\x08\x12\x1c\n\x14push_to_mute_enabled\x18\n \x01(\x08\x12\x17\n\x0fplay_ptt_sounds\x18\x0b \x01(\x08\x1a\xfd\x05\n\x07UIState\x12\x1b\n\x13\x66riends_list_height\x18\x01 \x01(\x05\x12\x1a\n\x12\x66riends_list_width\x18\x02 \x01(\x05\x12\x1b\n\x13\x66riends_list_docked\x18\x03 \x01(\x08\x12\x1e\n\x16\x66riends_list_collapsed\x18\x04 \x01(\x08\x12\'\n\x1f\x66riends_list_group_chats_height\x18\x05 \x01(\x05\x12\x1c\n\x14\x66riends_list_visible\x18\x06 \x01(\x08\x12\x1a\n\x12\x63hat_popups_opened\x18\x07 \x01(\x05\x12\x1e\n\x16group_chat_tabs_opened\x18\x08 \x01(\x05\x12\x1f\n\x17\x66riend_chat_tabs_opened\x18\t \x01(\x05\x12\x19\n\x11\x63hat_window_width\x18\n \x01(\x05\x12\x1a\n\x12\x63hat_window_height\x18\x0b \x01(\x05\x12l\n\x11\x63\x61tegory_collapse\x18\x0c \x01(\x0b\x32Q.CChatUsability_ClientUsabilityMetrics_Notification.UIState.CategoryCollapseState\x12%\n\x1dgroup_chat_left_col_collapsed\x18\r \x01(\x05\x12&\n\x1egroup_chat_right_col_collapsed\x18\x0e \x01(\x05\x12 \n\x18in_one_on_one_voice_chat\x18\x0f \x01(\x08\x12\x1b\n\x13in_group_voice_chat\x18\x10 \x01(\x08\x1a\xa4\x01\n\x15\x43\x61tegoryCollapseState\x12\x19\n\x11in_game_collapsed\x18\x01 \x01(\x08\x12\x18\n\x10online_collapsed\x18\x02 \x01(\x08\x12\x19\n\x11offline_collapsed\x18\x03 \x01(\x08\x12\x1d\n\x15game_groups_collapsed\x18\x04 \x01(\x05\x12\x1c\n\x14\x63\x61tegories_collapsed\x18\x05 \x01(\x05\x1a\xc0\x02\n\x07Metrics\x12\x15\n\rfriends_count\x18\x01 \x01(\x05\x12\x1e\n\x16\x66riends_category_count\x18\x02 \x01(\x05\x12!\n\x19\x66riends_categorized_count\x18\x03 \x01(\x05\x12\x1c\n\x14\x66riends_online_count\x18\x04 \x01(\x05\x12\x1d\n\x15\x66riends_in_game_count\x18\x05 \x01(\x05\x12\'\n\x1f\x66riends_in_game_singleton_count\x18\x06 \x01(\x05\x12\x18\n\x10game_group_count\x18\x07 \x01(\x05\x12\x1e\n\x16\x66riends_favorite_count\x18\x08 \x01(\x05\x12\x18\n\x10group_chat_count\x18\t \x01(\x05\x12!\n\x19group_chat_favorite_count\x18\n \x01(\x05\"S\n9CChatUsability_RequestClientUsabilityMetrics_Notification\x12\x16\n\x0emetrics_run_id\x18\x01 \x01(\r*\x9c\x01\n\x12\x45\x43hatRoomJoinState\x12 \n\x1ck_EChatRoomJoinState_Default\x10\x00\x12\x1d\n\x19k_EChatRoomJoinState_None\x10\x01\x12\x1f\n\x1bk_EChatRoomJoinState_Joined\x10\x02\x12$\n k_EChatRoomJoinState_TestInvalid\x10\x63*\xa4\x02\n\x12\x45\x43hatRoomGroupRank\x12 \n\x1ck_EChatRoomGroupRank_Default\x10\x00\x12\x1f\n\x1bk_EChatRoomGroupRank_Viewer\x10\n\x12\x1e\n\x1ak_EChatRoomGroupRank_Guest\x10\x0f\x12\x1f\n\x1bk_EChatRoomGroupRank_Member\x10\x14\x12\"\n\x1ek_EChatRoomGroupRank_Moderator\x10\x1e\x12 \n\x1ck_EChatRoomGroupRank_Officer\x10(\x12\x1e\n\x1ak_EChatRoomGroupRank_Owner\x10\x32\x12$\n k_EChatRoomGroupRank_TestInvalid\x10\x63*\xf4\x01\n\x1a\x45\x43hatRoomNotificationLevel\x12(\n$k_EChatroomNotificationLevel_Invalid\x10\x00\x12%\n!k_EChatroomNotificationLevel_None\x10\x01\x12*\n&k_EChatroomNotificationLevel_MentionMe\x10\x02\x12+\n\'k_EChatroomNotificationLevel_MentionAll\x10\x03\x12,\n(k_EChatroomNotificationLevel_AllMessages\x10\x04*\x97\x03\n\x16\x45\x43hatRoomServerMessage\x12 \n\x1ck_EChatRoomServerMsg_Invalid\x10\x00\x12\'\n#k_EChatRoomServerMsg_RenameChatRoom\x10\x01\x12\x1f\n\x1bk_EChatRoomServerMsg_Joined\x10\x02\x12\x1f\n\x1bk_EChatRoomServerMsg_Parted\x10\x03\x12\x1f\n\x1bk_EChatRoomServerMsg_Kicked\x10\x04\x12 \n\x1ck_EChatRoomServerMsg_Invited\x10\x05\x12(\n$k_EChatRoomServerMsg_InviteDismissed\x10\x08\x12/\n+k_EChatRoomServerMsg_ChatRoomTaglineChanged\x10\t\x12.\n*k_EChatRoomServerMsg_ChatRoomAvatarChanged\x10\n\x12\"\n\x1ek_EChatRoomServerMsg_AppCustom\x10\x0b*\xa3\x01\n\x1c\x45\x43hatRoomMessageReactionType\x12*\n&k_EChatRoomMessageReactionType_Invalid\x10\x00\x12+\n\'k_EChatRoomMessageReactionType_Emoticon\x10\x01\x12*\n&k_EChatRoomMessageReactionType_Sticker\x10\x02*\xcb\x03\n\x1a\x45\x43hatRoomMemberStateChange\x12(\n$k_EChatRoomMemberStateChange_Invalid\x10\x00\x12\'\n#k_EChatRoomMemberStateChange_Joined\x10\x01\x12\'\n#k_EChatRoomMemberStateChange_Parted\x10\x02\x12\'\n#k_EChatRoomMemberStateChange_Kicked\x10\x03\x12(\n$k_EChatRoomMemberStateChange_Invited\x10\x04\x12,\n(k_EChatRoomMemberStateChange_RankChanged\x10\x07\x12\x30\n,k_EChatRoomMemberStateChange_InviteDismissed\x10\x08\x12&\n\"k_EChatRoomMemberStateChange_Muted\x10\t\x12\'\n#k_EChatRoomMemberStateChange_Banned\x10\n\x12-\n)k_EChatRoomMemberStateChange_RolesChanged\x10\x0c\x32\x8b\x02\n\x04\x43hat\x12\xe7\x01\n\x1aRequestFriendPersonaStates\x12).CChat_RequestFriendPersonaStates_Request\x1a*.CChat_RequestFriendPersonaStates_Response\"r\x82\xb5\x18nRequest to be notified of online friend persona state information.  Responses sent via CMsgClientPersonaState.\x1a\x19\x82\xb5\x18\x15\x43hat-related services2\xb9>\n\x08\x43hatRoom\x12\xa3\x01\n\x13\x43reateChatRoomGroup\x12&.CChatRoom_CreateChatRoomGroup_Request\x1a\'.CChatRoom_CreateChatRoomGroup_Response\";\x82\xb5\x18\x37\x43reate\'s a chat group that can contain other chat rooms\x12z\n\x11SaveChatRoomGroup\x12$.CChatRoom_SaveChatRoomGroup_Request\x1a%.CChatRoom_SaveChatRoomGroup_Response\"\x18\x82\xb5\x18\x14Saves\'s a chat group\x12\x84\x01\n\x13RenameChatRoomGroup\x12&.CChatRoom_RenameChatRoomGroup_Request\x1a\'.CChatRoom_RenameChatRoomGroup_Response\"\x1c\x82\xb5\x18\x18Rename a chat room group\x12\x99\x01\n\x17SetChatRoomGroupTagline\x12*.CChatRoom_SetChatRoomGroupTagline_Request\x1a+.CChatRoom_SetChatRoomGroupTagline_Response\"%\x82\xb5\x18!Set tagline for a chat room group\x12\x99\x01\n\x16SetChatRoomGroupAvatar\x12).CChatRoom_SetChatRoomGroupAvatar_Request\x1a*.CChatRoom_SetChatRoomGroupAvatar_Response\"(\x82\xb5\x18$Set avatar SHA for a chat room group\x12\xcb\x01\n!SetChatRoomGroupWatchingBroadcast\x12\x34.CChatRoom_SetChatRoomGroupWatchingBroadcast_Request\x1a\x35.CChatRoom_SetChatRoomGroupWatchingBroadcast_Response\"9\x82\xb5\x18\x35Sets a broadcast that the chat room group is watching\x12\xe3\x01\n\x1cJoinMiniGameForChatRoomGroup\x12/.CChatRoom_JoinMiniGameForChatRoomGroup_Request\x1a\x30.CChatRoom_JoinMiniGameForChatRoomGroup_Response\"`\x82\xb5\x18\\Joins the minigame for the chat room group or starts a new one (Winter 2019 sale party game)\x12\xac\x01\n\x1b\x45ndMiniGameForChatRoomGroup\x12..CChatRoom_EndMiniGameForChatRoomGroup_Request\x1a/.CChatRoom_EndMiniGameForChatRoomGroup_Response\",\x82\xb5\x18(Ends the minigame in the chat room group\x12\x64\n\x0fMuteUserInGroup\x12\x1b.CChatRoom_MuteUser_Request\x1a\x1c.CChatRoom_MuteUser_Response\"\x16\x82\xb5\x18\x12Mute user in group\x12h\n\x11KickUserFromGroup\x12\x1b.CChatRoom_KickUser_Request\x1a\x1c.CChatRoom_KickUser_Response\"\x18\x82\xb5\x18\x14Kick user from group\x12y\n\x0fSetUserBanState\x12\".CChatRoom_SetUserBanState_Request\x1a#.CChatRoom_SetUserBanState_Response\"\x1d\x82\xb5\x18\x19\x42\x61n/unban user from group\x12\x82\x01\n\x13RevokeInviteToGroup\x12\x1f.CChatRoom_RevokeInvite_Request\x1a .CChatRoom_RevokeInvite_Response\"(\x82\xb5\x18$Revoke a direct invitation of a user\x12\x65\n\nCreateRole\x12\x1d.CChatRoom_CreateRole_Request\x1a\x1e.CChatRoom_CreateRole_Response\"\x18\x82\xb5\x18\x14\x43reate role for goup\x12\x61\n\x08GetRoles\x12\x1b.CChatRoom_GetRoles_Request\x1a\x1c.CChatRoom_GetRoles_Response\"\x1a\x82\xb5\x18\x16Get all roles in group\x12\x65\n\nRenameRole\x12\x1d.CChatRoom_RenameRole_Request\x1a\x1e.CChatRoom_RenameRole_Response\"\x18\x82\xb5\x18\x14Rename role for goup\x12l\n\x0bReorderRole\x12\x1e.CChatRoom_ReorderRole_Request\x1a\x1f.CChatRoom_ReorderRole_Response\"\x1c\x82\xb5\x18\x18Reorder role with a goup\x12g\n\nDeleteRole\x12\x1d.CChatRoom_DeleteRole_Request\x1a\x1e.CChatRoom_DeleteRole_Response\"\x1a\x82\xb5\x18\x16\x44\x65lete role from group\x12\x87\x01\n\x0eGetRoleActions\x12!.CChatRoom_GetRoleActions_Request\x1a\".CChatRoom_GetRoleActions_Response\".\x82\xb5\x18*Get all defined roles and actions in group\x12\x86\x01\n\x12ReplaceRoleActions\x12%.CChatRoom_ReplaceRoleActions_Request\x1a&.CChatRoom_ReplaceRoleActions_Response\"!\x82\xb5\x18\x1dReplace role actions in group\x12s\n\rAddRoleToUser\x12 .CChatRoom_AddRoleToUser_Request\x1a!.CChatRoom_AddRoleToUser_Response\"\x1d\x82\xb5\x18\x19\x41\x64\x64 role to user in group\x12\x87\x01\n\x0fGetRolesForUser\x12\".CChatRoom_GetRolesForUser_Request\x1a#.CChatRoom_GetRolesForUser_Response\"+\x82\xb5\x18\'Get all roles assigned to user in group\x12\x87\x01\n\x12\x44\x65leteRoleFromUser\x12%.CChatRoom_DeleteRoleFromUser_Request\x1a&.CChatRoom_DeleteRoleFromUser_Response\"\"\x82\xb5\x18\x1e\x44\x65lete role from user in group\x12\x81\x01\n\x11JoinChatRoomGroup\x12$.CChatRoom_JoinChatRoomGroup_Request\x1a%.CChatRoom_JoinChatRoomGroup_Response\"\x1f\x82\xb5\x18\x1bJoin a multi-user chat room\x12\xad\x01\n\x1bInviteFriendToChatRoomGroup\x12..CChatRoom_InviteFriendToChatRoomGroup_Request\x1a/.CChatRoom_InviteFriendToChatRoomGroup_Response\"-\x82\xb5\x18)Invite a friend to a multi-user chat room\x12\x97\x01\n\x12LeaveChatRoomGroup\x12%.CChatRoom_LeaveChatRoomGroup_Request\x1a&.CChatRoom_LeaveChatRoomGroup_Response\"2\x82\xb5\x18.Leaves a chat room group and all related chats\x12\x89\x01\n\x0e\x43reateChatRoom\x12!.CChatRoom_CreateChatRoom_Request\x1a\".CChatRoom_CreateChatRoom_Response\"0\x82\xb5\x18,Creates a chat room inside a chat room group\x12\x89\x01\n\x0e\x44\x65leteChatRoom\x12!.CChatRoom_DeleteChatRoom_Request\x1a\".CChatRoom_DeleteChatRoom_Response\"0\x82\xb5\x18,Deletes a chat room inside a chat room group\x12\x89\x01\n\x0eRenameChatRoom\x12!.CChatRoom_RenameChatRoom_Request\x1a\".CChatRoom_RenameChatRoom_Response\"0\x82\xb5\x18,Renames a chat room inside a chat room group\x12\x8d\x01\n\x0fReorderChatRoom\x12\".CChatRoom_ReorderChatRoom_Request\x1a#.CChatRoom_ReorderChatRoom_Response\"1\x82\xb5\x18-Reorders a chat room inside a chat room group\x12\x8d\x01\n\x0fSendChatMessage\x12\".CChatRoom_SendChatMessage_Request\x1a#.CChatRoom_SendChatMessage_Response\"1\x82\xb5\x18-Send a chat message to a multi-user chat room\x12\xa7\x01\n\rJoinVoiceChat\x12 .CChatRoom_JoinVoiceChat_Request\x1a!.CChatRoom_JoinVoiceChat_Response\"Q\x82\xb5\x18MJoin the voice chat in a multi-room chat (should already be in the chat room)\x12\x86\x01\n\x0eLeaveVoiceChat\x12!.CChatRoom_LeaveVoiceChat_Request\x1a\".CChatRoom_LeaveVoiceChat_Response\"-\x82\xb5\x18)Leave the voice chat in a multi-room chat\x12\xc3\x01\n\x11GetMessageHistory\x12$.CChatRoom_GetMessageHistory_Request\x1a%.CChatRoom_GetMessageHistory_Response\"a\x82\xb5\x18]Get the history of messages in a chat room.  You must currently be a member of the chat room.\x12\x88\x01\n\x13GetMyChatRoomGroups\x12&.CChatRoom_GetMyChatRoomGroups_Request\x1a\'.CChatRoom_GetMyChatRoomGroups_Response\" \x82\xb5\x18\x1cGet a list of our chat rooms\x12\x9a\x01\n\x15GetChatRoomGroupState\x12(.CChatRoom_GetChatRoomGroupState_Request\x1a).CChatRoom_GetChatRoomGroupState_Response\",\x82\xb5\x18(Get information about a single chat room\x12\xa5\x01\n\x17GetChatRoomGroupSummary\x12*.CChatRoom_GetChatRoomGroupSummary_Request\x1a+.CChatRoom_GetChatRoomGroupSummary_Response\"1\x82\xb5\x18-Get basic information about a chat room group\x12\xd3\x01\n\x1eSetAppChatRoomGroupForceActive\x12\x31.CChatRoom_SetAppChatRoomGroupForceActive_Request\x1a\x32.CChatRoom_SetAppChatRoomGroupForceActive_Response\"J\x82\xb5\x18\x46\x46orce a group chat to be considered active on the server for this user\x12\xd3\x01\n\"SetAppChatRoomGroupStopForceActive\x12:.CChatRoom_SetAppChatRoomGroupStopForceActive_Notification\x1a\x0b.NoResponse\"d\x82\xb5\x18`If a group chat is forced active (see SetAppChatRoomGroupForceActive), decrement the force count\x12\x8f\x01\n\x0e\x41\x63kChatMessage\x12&.CChatRoom_AckChatMessage_Notification\x1a\x0b.NoResponse\"H\x82\xb5\x18\x44\x41\x63knowledge that we have seen the most recent chat message in a chat\x12\x81\x01\n\x10\x43reateInviteLink\x12#.CChatRoom_CreateInviteLink_Request\x1a$.CChatRoom_CreateInviteLink_Response\"\"\x82\xb5\x18\x1e\x43reates a chatroom invite link\x12\x90\x01\n\x11GetInviteLinkInfo\x12$.CChatRoom_GetInviteLinkInfo_Request\x1a%.CChatRoom_GetInviteLinkInfo_Response\".\x82\xb5\x18*Returns chat room info about provided link\x12\xaa\x01\n\rGetInviteInfo\x12 .CChatRoom_GetInviteInfo_Request\x1a!.CChatRoom_GetInviteInfo_Response\"T\x82\xb5\x18PReturns chat room info about any invite involving the sender and passed group id\x12\xa5\x01\n\x16GetInviteLinksForGroup\x12).CChatRoom_GetInviteLinksForGroup_Request\x1a*.CChatRoom_GetInviteLinksForGroup_Response\"4\x82\xb5\x18\x30Returns all invite links for the specified group\x12\x8b\x01\n\nGetBanList\x12\x1d.CChatRoom_GetBanList_Request\x1a\x1e.CChatRoom_GetBanList_Response\">\x82\xb5\x18:Gets a list of users who have been banned from a chat room\x12\x93\x01\n\rGetInviteList\x12 .CChatRoom_GetInviteList_Request\x1a!.CChatRoom_GetInviteList_Response\"=\x82\xb5\x18\x39Gets a list of users who have been invited to a chat room\x12\x80\x01\n\x10\x44\x65leteInviteLink\x12#.CChatRoom_DeleteInviteLink_Request\x1a$.CChatRoom_DeleteInviteLink_Response\"!\x82\xb5\x18\x1d\x44\x65letes specified invite link\x12\xc4\x01\n\x1eSetSessionActiveChatRoomGroups\x12\x31.CChatRoom_SetSessionActiveChatRoomGroups_Request\x1a\x32.CChatRoom_SetSessionActiveChatRoomGroups_Response\";\x82\xb5\x18\x37Set which chat rooms we are using in the active session\x12\xb9\x01\n\x1bSetUserChatGroupPreferences\x12..CChatRoom_SetUserChatGroupPreferences_Request\x1a/.CChatRoom_SetUserChatGroupPreferences_Response\"9\x82\xb5\x18\x35Set preferences around chat notifications for a group\x12\x88\x01\n\x12\x44\x65leteChatMessages\x12%.CChatRoom_DeleteChatMessages_Request\x1a&.CChatRoom_DeleteChatMessages_Response\"#\x82\xb5\x18\x1f\x44\x65letes specified chat messages\x12\x9a\x01\n\x14UpdateMemberListView\x12,.CChatRoom_UpdateMemberListView_Notification\x1a\x0b.NoResponse\"G\x82\xb5\x18\x43\x41 client is indicating it has an active view into the members list.\x12{\n\rSearchMembers\x12 .CChatRoom_SearchMembers_Request\x1a!.CChatRoom_SearchMembers_Response\"%\x82\xb5\x18!Search chat room members by name.\x12\xa5\x01\n\x15UpdateMessageReaction\x12(.CChatRoom_UpdateMessageReaction_Request\x1a).CChatRoom_UpdateMessageReaction_Response\"7\x82\xb5\x18\x33\x41\x64\x64s/removes a reaction to/from a chat room message\x12\xb4\x01\n\x1aGetMessageReactionReactors\x12-.CChatRoom_GetMessageReactionReactors_Request\x1a..CChatRoom_GetMessageReactionReactors_Response\"7\x82\xb5\x18\x33\x46\x65tches a list of reactors for a specified reaction\x1a\x42\x82\xb5\x18>Service for joining, managing, and using multi-user chat rooms2\xae\x03\n\rClanChatRooms\x12\xb8\x01\n\x13GetClanChatRoomInfo\x12+.CClanChatRooms_GetClanChatRoomInfo_Request\x1a,.CClanChatRooms_GetClanChatRoomInfo_Response\"F\x82\xb5\x18\x42Get a list of chat rooms for a clan, optionally creating a new one\x12\xb2\x01\n\x16SetClanChatRoomPrivate\x12..CClanChatRooms_SetClanChatRoomPrivate_Request\x1a/.CClanChatRooms_SetClanChatRoomPrivate_Response\"7\x82\xb5\x18\x33Set a clan chat room to be members only (or public)\x1a-\x82\xb5\x18)Methods for getting clan chat information2\xef\x0e\n\x0e\x43hatRoomClient\x12{\n\x19NotifyIncomingChatMessage\x12+.CChatRoom_IncomingChatMessage_Notification\x1a\x0b.NoResponse\"$\x82\xb5\x18 New chat message for a chat room\x12\x94\x01\n\x19NotifyChatMessageModified\x12+.CChatRoom_ChatMessageModified_Notification\x1a\x0b.NoResponse\"=\x82\xb5\x18\x39\x41n existing chat message has been modified on the backend\x12\x95\x01\n\x17NotifyMemberStateChange\x12).CChatRoom_MemberStateChange_Notification\x1a\x0b.NoResponse\"B\x82\xb5\x18>A chat room member\'s state has changed (join/part/permissions)\x12\x88\x01\n\x1fNotifyChatRoomHeaderStateChange\x12+.CChatRoom_ChatRoomHeaderState_Notification\x1a\x0b.NoResponse\"+\x82\xb5\x18\'Chat Room header / metadata has changed\x12\xa6\x01\n\x1eNotifyChatRoomGroupRoomsChange\x12\x30.CChatRoom_ChatRoomGroupRoomsChange_Notification\x1a\x0b.NoResponse\"E\x82\xb5\x18\x41Something about a chatroom group changed (created, deleted, etc.)\x12\xd5\x01\n#NotifyShouldRejoinChatRoomVoiceChat\x12;.CChatRoom_NotifyShouldRejoinChatRoomVoiceChat_Notification\x1a\x0b.NoResponse\"d\x82\xb5\x18`Voice chat was recreated or dropped on the backend and client needs to rejoin to remain in chat.\x12\xb3\x01\n\x1fNotifyChatGroupUserStateChanged\x12<.ChatRoomClient_NotifyChatGroupUserStateChanged_Notification\x1a\x0b.NoResponse\"E\x82\xb5\x18\x41User chat group state (preferences, ack state, etc) have changed.\x12\x8f\x01\n\x18NotifyAckChatMessageEcho\x12&.CChatRoom_AckChatMessage_Notification\x1a\x0b.NoResponse\">\x82\xb5\x18:A session acked an unread message, echo to other sessions.\x12\xed\x01\n\x18NotifyChatRoomDisconnect\x12\x35.ChatRoomClient_NotifyChatRoomDisconnect_Notification\x1a\x0b.NoResponse\"\x8c\x01\x82\xb5\x18\x87\x01The ChatRoom server hosting the chat rooms has reconnected to the user\'s Chat server (may have restarted), client should refresh state.\x12\xd5\x01\n\x1bNotifyMemberListViewUpdated\x12\x33.CChatRoomClient_MemberListViewUpdated_Notification\x1a\x0b.NoResponse\"t\x82\xb5\x18pThe list of members for a chat room with virtualized member list has changed on the server (or client requested)\x12g\n\x15NotifyMessageReaction\x12\'.CChatRoom_MessageReaction_Notification\x1a\x0b.NoResponse\"\x18\x82\xb5\x18\x14New message reaction\x1a,\x82\xb5\x18$Client notifications for chat events\xc0\xb5\x18\x02\x32\xc2\x01\n\rChatUsability\x12\x86\x01\n\x1cNotifyClientUsabilityMetrics\x12\x33.CChatUsability_ClientUsabilityMetrics_Notification\x1a\x0b.NoResponse\"$\x82\xb5\x18 Incoming metrics from the client\x1a(\x82\xb5\x18$Client notifications for chat events2\xe2\x01\n\x13\x43hatUsabilityClient\x12\x99\x01\n#NotifyRequestClientUsabilityMetrics\x12:.CChatUsability_RequestClientUsabilityMetrics_Notification\x1a\x0b.NoResponse\")\x82\xb5\x18%Request client send usability metrics\x1a/\x82\xb5\x18\'Client notifications for chat usability\xc0\xb5\x18\x02\x42\x03\x90\x01\x01'
   ,
-  dependencies=[steammessages__unified__base__pb2.DESCRIPTOR,steammessages__clientserver__friends__pb2.DESCRIPTOR,])
+  dependencies=[steammessages__base__pb2.DESCRIPTOR,steammessages__unified__base__pb2.DESCRIPTOR,steammessages__clientserver__friends__pb2.DESCRIPTOR,])
 
 _ECHATROOMJOINSTATE = _descriptor.EnumDescriptor(
   name='EChatRoomJoinState',
   full_name='EChatRoomJoinState',
   filename=None,
   file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
   values=[
     _descriptor.EnumValueDescriptor(
       name='k_EChatRoomJoinState_Default', index=0, number=0,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EChatRoomJoinState_None', index=1, number=1,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EChatRoomJoinState_Joined', index=2, number=2,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EChatRoomJoinState_TestInvalid', index=3, number=99,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
   ],
   containing_type=None,
   serialized_options=None,
-  serialized_start=20660,
-  serialized_end=20816,
+  serialized_start=20686,
+  serialized_end=20842,
 )
 _sym_db.RegisterEnumDescriptor(_ECHATROOMJOINSTATE)
 
@@ -65,44 +70,53 @@ _ECHATROOMGROUPRANK = _descriptor.EnumDescriptor(
   full_name='EChatRoomGroupRank',
   filename=None,
   file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
   values=[
     _descriptor.EnumValueDescriptor(
       name='k_EChatRoomGroupRank_Default', index=0, number=0,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EChatRoomGroupRank_Viewer', index=1, number=10,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EChatRoomGroupRank_Guest', index=2, number=15,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EChatRoomGroupRank_Member', index=3, number=20,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EChatRoomGroupRank_Moderator', index=4, number=30,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EChatRoomGroupRank_Officer', index=5, number=40,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EChatRoomGroupRank_Owner', index=6, number=50,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EChatRoomGroupRank_TestInvalid', index=7, number=99,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
   ],
   containing_type=None,
   serialized_options=None,
-  serialized_start=20819,
-  serialized_end=21111,
+  serialized_start=20845,
+  serialized_end=21137,
 )
 _sym_db.RegisterEnumDescriptor(_ECHATROOMGROUPRANK)
 
@@ -112,32 +126,38 @@ _ECHATROOMNOTIFICATIONLEVEL = _descriptor.EnumDescriptor(
   full_name='EChatRoomNotificationLevel',
   filename=None,
   file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
   values=[
     _descriptor.EnumValueDescriptor(
       name='k_EChatroomNotificationLevel_Invalid', index=0, number=0,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EChatroomNotificationLevel_None', index=1, number=1,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EChatroomNotificationLevel_MentionMe', index=2, number=2,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EChatroomNotificationLevel_MentionAll', index=3, number=3,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EChatroomNotificationLevel_AllMessages', index=4, number=4,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
   ],
   containing_type=None,
   serialized_options=None,
-  serialized_start=21114,
-  serialized_end=21358,
+  serialized_start=21140,
+  serialized_end=21384,
 )
 _sym_db.RegisterEnumDescriptor(_ECHATROOMNOTIFICATIONLEVEL)
 
@@ -147,52 +167,63 @@ _ECHATROOMSERVERMESSAGE = _descriptor.EnumDescriptor(
   full_name='EChatRoomServerMessage',
   filename=None,
   file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
   values=[
     _descriptor.EnumValueDescriptor(
       name='k_EChatRoomServerMsg_Invalid', index=0, number=0,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EChatRoomServerMsg_RenameChatRoom', index=1, number=1,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EChatRoomServerMsg_Joined', index=2, number=2,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EChatRoomServerMsg_Parted', index=3, number=3,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EChatRoomServerMsg_Kicked', index=4, number=4,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EChatRoomServerMsg_Invited', index=5, number=5,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EChatRoomServerMsg_InviteDismissed', index=6, number=8,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EChatRoomServerMsg_ChatRoomTaglineChanged', index=7, number=9,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EChatRoomServerMsg_ChatRoomAvatarChanged', index=8, number=10,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EChatRoomServerMsg_AppCustom', index=9, number=11,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
   ],
   containing_type=None,
   serialized_options=None,
-  serialized_start=21361,
-  serialized_end=21768,
+  serialized_start=21387,
+  serialized_end=21794,
 )
 _sym_db.RegisterEnumDescriptor(_ECHATROOMSERVERMESSAGE)
 
@@ -202,24 +233,28 @@ _ECHATROOMMESSAGEREACTIONTYPE = _descriptor.EnumDescriptor(
   full_name='EChatRoomMessageReactionType',
   filename=None,
   file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
   values=[
     _descriptor.EnumValueDescriptor(
       name='k_EChatRoomMessageReactionType_Invalid', index=0, number=0,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EChatRoomMessageReactionType_Emoticon', index=1, number=1,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EChatRoomMessageReactionType_Sticker', index=2, number=2,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
   ],
   containing_type=None,
   serialized_options=None,
-  serialized_start=21771,
-  serialized_end=21934,
+  serialized_start=21797,
+  serialized_end=21960,
 )
 _sym_db.RegisterEnumDescriptor(_ECHATROOMMESSAGEREACTIONTYPE)
 
@@ -229,52 +264,63 @@ _ECHATROOMMEMBERSTATECHANGE = _descriptor.EnumDescriptor(
   full_name='EChatRoomMemberStateChange',
   filename=None,
   file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
   values=[
     _descriptor.EnumValueDescriptor(
       name='k_EChatRoomMemberStateChange_Invalid', index=0, number=0,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EChatRoomMemberStateChange_Joined', index=1, number=1,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EChatRoomMemberStateChange_Parted', index=2, number=2,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EChatRoomMemberStateChange_Kicked', index=3, number=3,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EChatRoomMemberStateChange_Invited', index=4, number=4,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EChatRoomMemberStateChange_RankChanged', index=5, number=7,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EChatRoomMemberStateChange_InviteDismissed', index=6, number=8,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EChatRoomMemberStateChange_Muted', index=7, number=9,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EChatRoomMemberStateChange_Banned', index=8, number=10,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EChatRoomMemberStateChange_RolesChanged', index=9, number=12,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
   ],
   containing_type=None,
   serialized_options=None,
-  serialized_start=21937,
-  serialized_end=22396,
+  serialized_start=21963,
+  serialized_end=22422,
 )
 _sym_db.RegisterEnumDescriptor(_ECHATROOMMEMBERSTATECHANGE)
 
@@ -328,6 +374,7 @@ _CCHAT_REQUESTFRIENDPERSONASTATES_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -341,8 +388,8 @@ _CCHAT_REQUESTFRIENDPERSONASTATES_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=104,
-  serialized_end=146,
+  serialized_start=130,
+  serialized_end=172,
 )
 
 
@@ -352,6 +399,7 @@ _CCHAT_REQUESTFRIENDPERSONASTATES_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -365,8 +413,8 @@ _CCHAT_REQUESTFRIENDPERSONASTATES_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=148,
-  serialized_end=191,
+  serialized_start=174,
+  serialized_end=217,
 )
 
 
@@ -376,6 +424,7 @@ _CCHATROOM_CREATECHATROOMGROUP_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid_partner', full_name='CChatRoom_CreateChatRoomGroup_Request.steamid_partner', index=0,
@@ -383,42 +432,42 @@ _CCHATROOM_CREATECHATROOMGROUP_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steamid_invited', full_name='CChatRoom_CreateChatRoomGroup_Request.steamid_invited', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='name', full_name='CChatRoom_CreateChatRoomGroup_Request.name', index=2,
       number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steamid_invitees', full_name='CChatRoom_CreateChatRoomGroup_Request.steamid_invitees', index=3,
       number=4, type=6, cpp_type=4, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='watching_broadcast_accountid', full_name='CChatRoom_CreateChatRoomGroup_Request.watching_broadcast_accountid', index=4,
       number=6, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='watching_broadcast_channel_id', full_name='CChatRoom_CreateChatRoomGroup_Request.watching_broadcast_channel_id', index=5,
       number=7, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -431,8 +480,8 @@ _CCHATROOM_CREATECHATROOMGROUP_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=194,
-  serialized_end=400,
+  serialized_start=220,
+  serialized_end=426,
 )
 
 
@@ -442,6 +491,7 @@ _CCHATROLE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='role_id', full_name='CChatRole.role_id', index=0,
@@ -449,21 +499,21 @@ _CCHATROLE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='name', full_name='CChatRole.name', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='ordinal', full_name='CChatRole.ordinal', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -476,8 +526,8 @@ _CCHATROLE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=402,
-  serialized_end=461,
+  serialized_start=428,
+  serialized_end=487,
 )
 
 
@@ -487,6 +537,7 @@ _CCHATROLEACTIONS = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='role_id', full_name='CChatRoleActions.role_id', index=0,
@@ -494,84 +545,84 @@ _CCHATROLEACTIONS = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='can_create_rename_delete_channel', full_name='CChatRoleActions.can_create_rename_delete_channel', index=1,
       number=2, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='can_kick', full_name='CChatRoleActions.can_kick', index=2,
       number=3, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='can_ban', full_name='CChatRoleActions.can_ban', index=3,
       number=4, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='can_invite', full_name='CChatRoleActions.can_invite', index=4,
       number=5, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='can_change_tagline_avatar_name', full_name='CChatRoleActions.can_change_tagline_avatar_name', index=5,
       number=6, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='can_chat', full_name='CChatRoleActions.can_chat', index=6,
       number=7, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='can_view_history', full_name='CChatRoleActions.can_view_history', index=7,
       number=8, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='can_change_group_roles', full_name='CChatRoleActions.can_change_group_roles', index=8,
       number=9, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='can_change_user_roles', full_name='CChatRoleActions.can_change_user_roles', index=9,
       number=10, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='can_mention_all', full_name='CChatRoleActions.can_mention_all', index=10,
       number=11, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='can_set_watching_broadcast', full_name='CChatRoleActions.can_set_watching_broadcast', index=11,
       number=12, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -584,8 +635,8 @@ _CCHATROLEACTIONS = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=464,
-  serialized_end=804,
+  serialized_start=490,
+  serialized_end=830,
 )
 
 
@@ -595,6 +646,7 @@ _CCHATPARTYBEACON = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CChatPartyBeacon.app_id', index=0,
@@ -602,28 +654,28 @@ _CCHATPARTYBEACON = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steamid_owner', full_name='CChatPartyBeacon.steamid_owner', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='beacon_id', full_name='CChatPartyBeacon.beacon_id', index=2,
       number=3, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='game_metadata', full_name='CChatPartyBeacon.game_metadata', index=3,
       number=4, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -636,8 +688,8 @@ _CCHATPARTYBEACON = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=806,
-  serialized_end=905,
+  serialized_start=832,
+  serialized_end=931,
 )
 
 
@@ -647,6 +699,7 @@ _CCHATROOMGROUPHEADERSTATE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='chat_group_id', full_name='CChatRoomGroupHeaderState.chat_group_id', index=0,
@@ -654,112 +707,112 @@ _CCHATROOMGROUPHEADERSTATE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='chat_name', full_name='CChatRoomGroupHeaderState.chat_name', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='clanid', full_name='CChatRoomGroupHeaderState.clanid', index=2,
       number=13, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='accountid_owner', full_name='CChatRoomGroupHeaderState.accountid_owner', index=3,
       number=14, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='appid', full_name='CChatRoomGroupHeaderState.appid', index=4,
       number=21, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='tagline', full_name='CChatRoomGroupHeaderState.tagline', index=5,
       number=15, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='avatar_sha', full_name='CChatRoomGroupHeaderState.avatar_sha', index=6,
       number=16, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='default_role_id', full_name='CChatRoomGroupHeaderState.default_role_id', index=7,
       number=17, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='roles', full_name='CChatRoomGroupHeaderState.roles', index=8,
       number=18, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='role_actions', full_name='CChatRoomGroupHeaderState.role_actions', index=9,
       number=19, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='watching_broadcast_accountid', full_name='CChatRoomGroupHeaderState.watching_broadcast_accountid', index=10,
       number=20, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='party_beacons', full_name='CChatRoomGroupHeaderState.party_beacons', index=11,
       number=22, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='watching_broadcast_channel_id', full_name='CChatRoomGroupHeaderState.watching_broadcast_channel_id', index=12,
       number=23, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='active_minigame_id', full_name='CChatRoomGroupHeaderState.active_minigame_id', index=13,
       number=24, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='avatar_ugc_url', full_name='CChatRoomGroupHeaderState.avatar_ugc_url', index=14,
       number=25, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='disabled', full_name='CChatRoomGroupHeaderState.disabled', index=15,
       number=26, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -772,8 +825,8 @@ _CCHATROOMGROUPHEADERSTATE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=908,
-  serialized_end=1352,
+  serialized_start=934,
+  serialized_end=1378,
 )
 
 
@@ -783,6 +836,7 @@ _CCHATROOMMEMBER = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='accountid', full_name='CChatRoomMember.accountid', index=0,
@@ -790,35 +844,35 @@ _CCHATROOMMEMBER = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='state', full_name='CChatRoomMember.state', index=1,
       number=3, type=14, cpp_type=8, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='rank', full_name='CChatRoomMember.rank', index=2,
       number=4, type=14, cpp_type=8, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='time_kick_expire', full_name='CChatRoomMember.time_kick_expire', index=3,
       number=6, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='role_ids', full_name='CChatRoomMember.role_ids', index=4,
       number=7, type=4, cpp_type=4, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -831,8 +885,8 @@ _CCHATROOMMEMBER = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1355,
-  serialized_end=1566,
+  serialized_start=1381,
+  serialized_end=1592,
 )
 
 
@@ -842,6 +896,7 @@ _CCHATROOMSTATE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='chat_id', full_name='CChatRoomState.chat_id', index=0,
@@ -849,56 +904,56 @@ _CCHATROOMSTATE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='chat_name', full_name='CChatRoomState.chat_name', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='voice_allowed', full_name='CChatRoomState.voice_allowed', index=2,
       number=3, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='members_in_voice', full_name='CChatRoomState.members_in_voice', index=3,
       number=4, type=13, cpp_type=3, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='time_last_message', full_name='CChatRoomState.time_last_message', index=4,
       number=5, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='sort_order', full_name='CChatRoomState.sort_order', index=5,
       number=6, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='last_message', full_name='CChatRoomState.last_message', index=6,
       number=7, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='accountid_last_message', full_name='CChatRoomState.accountid_last_message', index=7,
       number=8, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -911,8 +966,8 @@ _CCHATROOMSTATE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1569,
-  serialized_end=1771,
+  serialized_start=1595,
+  serialized_end=1797,
 )
 
 
@@ -922,6 +977,7 @@ _CCHATROOMGROUPSTATE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='header_state', full_name='CChatRoomGroupState.header_state', index=0,
@@ -929,35 +985,35 @@ _CCHATROOMGROUPSTATE = _descriptor.Descriptor(
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='members', full_name='CChatRoomGroupState.members', index=1,
       number=2, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='default_chat_id', full_name='CChatRoomGroupState.default_chat_id', index=2,
       number=4, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='chat_rooms', full_name='CChatRoomGroupState.chat_rooms', index=3,
       number=5, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='kicked', full_name='CChatRoomGroupState.kicked', index=4,
       number=7, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -970,8 +1026,8 @@ _CCHATROOMGROUPSTATE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1774,
-  serialized_end=1976,
+  serialized_start=1800,
+  serialized_end=2002,
 )
 
 
@@ -981,6 +1037,7 @@ _CUSERCHATROOMSTATE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='chat_id', full_name='CUserChatRoomState.chat_id', index=0,
@@ -988,56 +1045,56 @@ _CUSERCHATROOMSTATE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='time_joined', full_name='CUserChatRoomState.time_joined', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='time_last_ack', full_name='CUserChatRoomState.time_last_ack', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='desktop_notification_level', full_name='CUserChatRoomState.desktop_notification_level', index=3,
       number=4, type=14, cpp_type=8, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='mobile_notification_level', full_name='CUserChatRoomState.mobile_notification_level', index=4,
       number=5, type=14, cpp_type=8, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='time_last_mention', full_name='CUserChatRoomState.time_last_mention', index=5,
       number=6, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='unread_indicator_muted', full_name='CUserChatRoomState.unread_indicator_muted', index=6,
       number=7, type=8, cpp_type=7, label=1,
       has_default_value=True, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='time_first_unread', full_name='CUserChatRoomState.time_first_unread', index=7,
       number=8, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1050,8 +1107,8 @@ _CUSERCHATROOMSTATE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1979,
-  serialized_end=2358,
+  serialized_start=2005,
+  serialized_end=2384,
 )
 
 
@@ -1061,6 +1118,7 @@ _CUSERCHATROOMGROUPSTATE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='chat_group_id', full_name='CUserChatRoomGroupState.chat_group_id', index=0,
@@ -1068,49 +1126,49 @@ _CUSERCHATROOMGROUPSTATE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='time_joined', full_name='CUserChatRoomGroupState.time_joined', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='user_chat_room_state', full_name='CUserChatRoomGroupState.user_chat_room_state', index=2,
       number=3, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='desktop_notification_level', full_name='CUserChatRoomGroupState.desktop_notification_level', index=3,
       number=4, type=14, cpp_type=8, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='mobile_notification_level', full_name='CUserChatRoomGroupState.mobile_notification_level', index=4,
       number=5, type=14, cpp_type=8, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='time_last_group_ack', full_name='CUserChatRoomGroupState.time_last_group_ack', index=5,
       number=6, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='unread_indicator_muted', full_name='CUserChatRoomGroupState.unread_indicator_muted', index=6,
       number=7, type=8, cpp_type=7, label=1,
       has_default_value=True, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1123,8 +1181,8 @@ _CUSERCHATROOMGROUPSTATE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=2361,
-  serialized_end=2754,
+  serialized_start=2387,
+  serialized_end=2780,
 )
 
 
@@ -1134,6 +1192,7 @@ _CCHATROOM_CREATECHATROOMGROUP_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='chat_group_id', full_name='CChatRoom_CreateChatRoomGroup_Response.chat_group_id', index=0,
@@ -1141,21 +1200,21 @@ _CCHATROOM_CREATECHATROOMGROUP_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='state', full_name='CChatRoom_CreateChatRoomGroup_Response.state', index=1,
       number=2, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='user_chat_state', full_name='CChatRoom_CreateChatRoomGroup_Response.user_chat_state', index=2,
       number=3, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1168,8 +1227,8 @@ _CCHATROOM_CREATECHATROOMGROUP_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=2757,
-  serialized_end=2908,
+  serialized_start=2783,
+  serialized_end=2934,
 )
 
 
@@ -1179,6 +1238,7 @@ _CCHATROOM_SAVECHATROOMGROUP_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='chat_group_id', full_name='CChatRoom_SaveChatRoomGroup_Request.chat_group_id', index=0,
@@ -1186,14 +1246,14 @@ _CCHATROOM_SAVECHATROOMGROUP_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='name', full_name='CChatRoom_SaveChatRoomGroup_Request.name', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1206,8 +1266,8 @@ _CCHATROOM_SAVECHATROOMGROUP_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=2910,
-  serialized_end=2984,
+  serialized_start=2936,
+  serialized_end=3010,
 )
 
 
@@ -1217,6 +1277,7 @@ _CCHATROOM_SAVECHATROOMGROUP_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -1230,8 +1291,8 @@ _CCHATROOM_SAVECHATROOMGROUP_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=2986,
-  serialized_end=3024,
+  serialized_start=3012,
+  serialized_end=3050,
 )
 
 
@@ -1241,6 +1302,7 @@ _CCHATROOM_RENAMECHATROOMGROUP_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='chat_group_id', full_name='CChatRoom_RenameChatRoomGroup_Request.chat_group_id', index=0,
@@ -1248,14 +1310,14 @@ _CCHATROOM_RENAMECHATROOMGROUP_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='name', full_name='CChatRoom_RenameChatRoomGroup_Request.name', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1268,8 +1330,8 @@ _CCHATROOM_RENAMECHATROOMGROUP_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=3026,
-  serialized_end=3102,
+  serialized_start=3052,
+  serialized_end=3128,
 )
 
 
@@ -1279,14 +1341,15 @@ _CCHATROOM_RENAMECHATROOMGROUP_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='name', full_name='CChatRoom_RenameChatRoomGroup_Response.name', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1299,8 +1362,8 @@ _CCHATROOM_RENAMECHATROOMGROUP_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=3104,
-  serialized_end=3158,
+  serialized_start=3130,
+  serialized_end=3184,
 )
 
 
@@ -1310,6 +1373,7 @@ _CCHATROOM_SETCHATROOMGROUPTAGLINE_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='chat_group_id', full_name='CChatRoom_SetChatRoomGroupTagline_Request.chat_group_id', index=0,
@@ -1317,14 +1381,14 @@ _CCHATROOM_SETCHATROOMGROUPTAGLINE_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='tagline', full_name='CChatRoom_SetChatRoomGroupTagline_Request.tagline', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1337,8 +1401,8 @@ _CCHATROOM_SETCHATROOMGROUPTAGLINE_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=3160,
-  serialized_end=3243,
+  serialized_start=3186,
+  serialized_end=3269,
 )
 
 
@@ -1348,6 +1412,7 @@ _CCHATROOM_SETCHATROOMGROUPTAGLINE_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -1361,8 +1426,8 @@ _CCHATROOM_SETCHATROOMGROUPTAGLINE_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=3245,
-  serialized_end=3289,
+  serialized_start=3271,
+  serialized_end=3315,
 )
 
 
@@ -1372,6 +1437,7 @@ _CCHATROOM_SETCHATROOMGROUPAVATAR_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='chat_group_id', full_name='CChatRoom_SetChatRoomGroupAvatar_Request.chat_group_id', index=0,
@@ -1379,14 +1445,14 @@ _CCHATROOM_SETCHATROOMGROUPAVATAR_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='avatar_sha', full_name='CChatRoom_SetChatRoomGroupAvatar_Request.avatar_sha', index=1,
       number=2, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1399,8 +1465,8 @@ _CCHATROOM_SETCHATROOMGROUPAVATAR_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=3291,
-  serialized_end=3376,
+  serialized_start=3317,
+  serialized_end=3402,
 )
 
 
@@ -1410,6 +1476,7 @@ _CCHATROOM_SETCHATROOMGROUPAVATAR_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -1423,8 +1490,8 @@ _CCHATROOM_SETCHATROOMGROUPAVATAR_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=3378,
-  serialized_end=3421,
+  serialized_start=3404,
+  serialized_end=3447,
 )
 
 
@@ -1434,6 +1501,7 @@ _CCHATROOM_SETCHATROOMGROUPWATCHINGBROADCAST_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='chat_group_id', full_name='CChatRoom_SetChatRoomGroupWatchingBroadcast_Request.chat_group_id', index=0,
@@ -1441,21 +1509,21 @@ _CCHATROOM_SETCHATROOMGROUPWATCHINGBROADCAST_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='watching_broadcast_accountid', full_name='CChatRoom_SetChatRoomGroupWatchingBroadcast_Request.watching_broadcast_accountid', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='watching_broadcast_channel_id', full_name='CChatRoom_SetChatRoomGroupWatchingBroadcast_Request.watching_broadcast_channel_id', index=2,
       number=3, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1468,8 +1536,8 @@ _CCHATROOM_SETCHATROOMGROUPWATCHINGBROADCAST_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=3424,
-  serialized_end=3577,
+  serialized_start=3450,
+  serialized_end=3603,
 )
 
 
@@ -1479,6 +1547,7 @@ _CCHATROOM_SETCHATROOMGROUPWATCHINGBROADCAST_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -1492,8 +1561,8 @@ _CCHATROOM_SETCHATROOMGROUPWATCHINGBROADCAST_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=3579,
-  serialized_end=3633,
+  serialized_start=3605,
+  serialized_end=3659,
 )
 
 
@@ -1503,6 +1572,7 @@ _CCHATROOM_JOINMINIGAMEFORCHATROOMGROUP_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='chat_group_id', full_name='CChatRoom_JoinMiniGameForChatRoomGroup_Request.chat_group_id', index=0,
@@ -1510,14 +1580,14 @@ _CCHATROOM_JOINMINIGAMEFORCHATROOMGROUP_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='chat_id', full_name='CChatRoom_JoinMiniGameForChatRoomGroup_Request.chat_id', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1530,8 +1600,8 @@ _CCHATROOM_JOINMINIGAMEFORCHATROOMGROUP_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=3635,
-  serialized_end=3723,
+  serialized_start=3661,
+  serialized_end=3749,
 )
 
 
@@ -1541,6 +1611,7 @@ _CCHATROOM_JOINMINIGAMEFORCHATROOMGROUP_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='minigame_id', full_name='CChatRoom_JoinMiniGameForChatRoomGroup_Response.minigame_id', index=0,
@@ -1548,7 +1619,7 @@ _CCHATROOM_JOINMINIGAMEFORCHATROOMGROUP_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1561,8 +1632,8 @@ _CCHATROOM_JOINMINIGAMEFORCHATROOMGROUP_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=3725,
-  serialized_end=3795,
+  serialized_start=3751,
+  serialized_end=3821,
 )
 
 
@@ -1572,6 +1643,7 @@ _CCHATROOM_ENDMINIGAMEFORCHATROOMGROUP_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='chat_group_id', full_name='CChatRoom_EndMiniGameForChatRoomGroup_Request.chat_group_id', index=0,
@@ -1579,21 +1651,21 @@ _CCHATROOM_ENDMINIGAMEFORCHATROOMGROUP_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='chat_id', full_name='CChatRoom_EndMiniGameForChatRoomGroup_Request.chat_id', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='minigame_id', full_name='CChatRoom_EndMiniGameForChatRoomGroup_Request.minigame_id', index=2,
       number=3, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1606,8 +1678,8 @@ _CCHATROOM_ENDMINIGAMEFORCHATROOMGROUP_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=3797,
-  serialized_end=3905,
+  serialized_start=3823,
+  serialized_end=3931,
 )
 
 
@@ -1617,6 +1689,7 @@ _CCHATROOM_ENDMINIGAMEFORCHATROOMGROUP_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -1630,8 +1703,8 @@ _CCHATROOM_ENDMINIGAMEFORCHATROOMGROUP_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=3907,
-  serialized_end=3955,
+  serialized_start=3933,
+  serialized_end=3981,
 )
 
 
@@ -1641,6 +1714,7 @@ _CCHATROOM_MUTEUSER_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='chat_group_id', full_name='CChatRoom_MuteUser_Request.chat_group_id', index=0,
@@ -1648,21 +1722,21 @@ _CCHATROOM_MUTEUSER_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CChatRoom_MuteUser_Request.steamid', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='expiration', full_name='CChatRoom_MuteUser_Request.expiration', index=2,
       number=3, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1675,8 +1749,8 @@ _CCHATROOM_MUTEUSER_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=3957,
-  serialized_end=4045,
+  serialized_start=3983,
+  serialized_end=4071,
 )
 
 
@@ -1686,6 +1760,7 @@ _CCHATROOM_MUTEUSER_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -1699,8 +1774,8 @@ _CCHATROOM_MUTEUSER_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=4047,
-  serialized_end=4076,
+  serialized_start=4073,
+  serialized_end=4102,
 )
 
 
@@ -1710,6 +1785,7 @@ _CCHATROOM_KICKUSER_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='chat_group_id', full_name='CChatRoom_KickUser_Request.chat_group_id', index=0,
@@ -1717,21 +1793,21 @@ _CCHATROOM_KICKUSER_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CChatRoom_KickUser_Request.steamid', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='expiration', full_name='CChatRoom_KickUser_Request.expiration', index=2,
       number=3, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1744,8 +1820,8 @@ _CCHATROOM_KICKUSER_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=4078,
-  serialized_end=4166,
+  serialized_start=4104,
+  serialized_end=4192,
 )
 
 
@@ -1755,6 +1831,7 @@ _CCHATROOM_KICKUSER_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -1768,8 +1845,8 @@ _CCHATROOM_KICKUSER_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=4168,
-  serialized_end=4197,
+  serialized_start=4194,
+  serialized_end=4223,
 )
 
 
@@ -1779,6 +1856,7 @@ _CCHATROOM_SETUSERBANSTATE_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='chat_group_id', full_name='CChatRoom_SetUserBanState_Request.chat_group_id', index=0,
@@ -1786,21 +1864,21 @@ _CCHATROOM_SETUSERBANSTATE_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CChatRoom_SetUserBanState_Request.steamid', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='ban_state', full_name='CChatRoom_SetUserBanState_Request.ban_state', index=2,
       number=3, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1813,8 +1891,8 @@ _CCHATROOM_SETUSERBANSTATE_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=4199,
-  serialized_end=4293,
+  serialized_start=4225,
+  serialized_end=4319,
 )
 
 
@@ -1824,6 +1902,7 @@ _CCHATROOM_SETUSERBANSTATE_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -1837,8 +1916,8 @@ _CCHATROOM_SETUSERBANSTATE_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=4295,
-  serialized_end=4331,
+  serialized_start=4321,
+  serialized_end=4357,
 )
 
 
@@ -1848,6 +1927,7 @@ _CCHATROOM_REVOKEINVITE_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='chat_group_id', full_name='CChatRoom_RevokeInvite_Request.chat_group_id', index=0,
@@ -1855,14 +1935,14 @@ _CCHATROOM_REVOKEINVITE_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CChatRoom_RevokeInvite_Request.steamid', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1875,8 +1955,8 @@ _CCHATROOM_REVOKEINVITE_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=4333,
-  serialized_end=4405,
+  serialized_start=4359,
+  serialized_end=4431,
 )
 
 
@@ -1886,6 +1966,7 @@ _CCHATROOM_REVOKEINVITE_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -1899,8 +1980,8 @@ _CCHATROOM_REVOKEINVITE_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=4407,
-  serialized_end=4440,
+  serialized_start=4433,
+  serialized_end=4466,
 )
 
 
@@ -1910,6 +1991,7 @@ _CCHATROOM_CREATEROLE_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='chat_group_id', full_name='CChatRoom_CreateRole_Request.chat_group_id', index=0,
@@ -1917,14 +1999,14 @@ _CCHATROOM_CREATEROLE_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='name', full_name='CChatRoom_CreateRole_Request.name', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1937,8 +2019,8 @@ _CCHATROOM_CREATEROLE_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=4442,
-  serialized_end=4509,
+  serialized_start=4468,
+  serialized_end=4535,
 )
 
 
@@ -1948,6 +2030,7 @@ _CCHATROOM_CREATEROLE_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='actions', full_name='CChatRoom_CreateRole_Response.actions', index=0,
@@ -1955,7 +2038,7 @@ _CCHATROOM_CREATEROLE_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1968,8 +2051,8 @@ _CCHATROOM_CREATEROLE_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=4511,
-  serialized_end=4578,
+  serialized_start=4537,
+  serialized_end=4604,
 )
 
 
@@ -1979,6 +2062,7 @@ _CCHATROOM_GETROLES_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='chat_group_id', full_name='CChatRoom_GetRoles_Request.chat_group_id', index=0,
@@ -1986,7 +2070,7 @@ _CCHATROOM_GETROLES_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1999,8 +2083,8 @@ _CCHATROOM_GETROLES_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=4580,
-  serialized_end=4631,
+  serialized_start=4606,
+  serialized_end=4657,
 )
 
 
@@ -2010,6 +2094,7 @@ _CCHATROOM_GETROLES_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='roles', full_name='CChatRoom_GetRoles_Response.roles', index=0,
@@ -2017,7 +2102,7 @@ _CCHATROOM_GETROLES_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2030,8 +2115,8 @@ _CCHATROOM_GETROLES_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=4633,
-  serialized_end=4689,
+  serialized_start=4659,
+  serialized_end=4715,
 )
 
 
@@ -2041,6 +2126,7 @@ _CCHATROOM_RENAMEROLE_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='chat_group_id', full_name='CChatRoom_RenameRole_Request.chat_group_id', index=0,
@@ -2048,21 +2134,21 @@ _CCHATROOM_RENAMEROLE_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='role_id', full_name='CChatRoom_RenameRole_Request.role_id', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='name', full_name='CChatRoom_RenameRole_Request.name', index=2,
       number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2075,8 +2161,8 @@ _CCHATROOM_RENAMEROLE_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=4691,
-  serialized_end=4775,
+  serialized_start=4717,
+  serialized_end=4801,
 )
 
 
@@ -2086,6 +2172,7 @@ _CCHATROOM_RENAMEROLE_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -2099,8 +2186,8 @@ _CCHATROOM_RENAMEROLE_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=4777,
-  serialized_end=4808,
+  serialized_start=4803,
+  serialized_end=4834,
 )
 
 
@@ -2110,6 +2197,7 @@ _CCHATROOM_REORDERROLE_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='chat_group_id', full_name='CChatRoom_ReorderRole_Request.chat_group_id', index=0,
@@ -2117,21 +2205,21 @@ _CCHATROOM_REORDERROLE_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='role_id', full_name='CChatRoom_ReorderRole_Request.role_id', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='ordinal', full_name='CChatRoom_ReorderRole_Request.ordinal', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2144,8 +2232,8 @@ _CCHATROOM_REORDERROLE_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=4810,
-  serialized_end=4898,
+  serialized_start=4836,
+  serialized_end=4924,
 )
 
 
@@ -2155,6 +2243,7 @@ _CCHATROOM_REORDERROLE_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -2168,8 +2257,8 @@ _CCHATROOM_REORDERROLE_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=4900,
-  serialized_end=4932,
+  serialized_start=4926,
+  serialized_end=4958,
 )
 
 
@@ -2179,6 +2268,7 @@ _CCHATROOM_DELETEROLE_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='chat_group_id', full_name='CChatRoom_DeleteRole_Request.chat_group_id', index=0,
@@ -2186,14 +2276,14 @@ _CCHATROOM_DELETEROLE_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='role_id', full_name='CChatRoom_DeleteRole_Request.role_id', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2206,8 +2296,8 @@ _CCHATROOM_DELETEROLE_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=4934,
-  serialized_end=5004,
+  serialized_start=4960,
+  serialized_end=5030,
 )
 
 
@@ -2217,6 +2307,7 @@ _CCHATROOM_DELETEROLE_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -2230,8 +2321,8 @@ _CCHATROOM_DELETEROLE_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=5006,
-  serialized_end=5037,
+  serialized_start=5032,
+  serialized_end=5063,
 )
 
 
@@ -2241,6 +2332,7 @@ _CCHATROOM_GETROLEACTIONS_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='chat_group_id', full_name='CChatRoom_GetRoleActions_Request.chat_group_id', index=0,
@@ -2248,14 +2340,14 @@ _CCHATROOM_GETROLEACTIONS_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='role_id', full_name='CChatRoom_GetRoleActions_Request.role_id', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2268,8 +2360,8 @@ _CCHATROOM_GETROLEACTIONS_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=5039,
-  serialized_end=5113,
+  serialized_start=5065,
+  serialized_end=5139,
 )
 
 
@@ -2279,6 +2371,7 @@ _CCHATROOM_GETROLEACTIONS_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='actions', full_name='CChatRoom_GetRoleActions_Response.actions', index=0,
@@ -2286,7 +2379,7 @@ _CCHATROOM_GETROLEACTIONS_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2299,8 +2392,8 @@ _CCHATROOM_GETROLEACTIONS_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=5115,
-  serialized_end=5186,
+  serialized_start=5141,
+  serialized_end=5212,
 )
 
 
@@ -2310,6 +2403,7 @@ _CCHATROOM_REPLACEROLEACTIONS_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='chat_group_id', full_name='CChatRoom_ReplaceRoleActions_Request.chat_group_id', index=0,
@@ -2317,21 +2411,21 @@ _CCHATROOM_REPLACEROLEACTIONS_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='role_id', full_name='CChatRoom_ReplaceRoleActions_Request.role_id', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='actions', full_name='CChatRoom_ReplaceRoleActions_Request.actions', index=2,
       number=4, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2344,8 +2438,8 @@ _CCHATROOM_REPLACEROLEACTIONS_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=5188,
-  serialized_end=5302,
+  serialized_start=5214,
+  serialized_end=5328,
 )
 
 
@@ -2355,6 +2449,7 @@ _CCHATROOM_REPLACEROLEACTIONS_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -2368,8 +2463,8 @@ _CCHATROOM_REPLACEROLEACTIONS_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=5304,
-  serialized_end=5343,
+  serialized_start=5330,
+  serialized_end=5369,
 )
 
 
@@ -2379,6 +2474,7 @@ _CCHATROOM_ADDROLETOUSER_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='chat_group_id', full_name='CChatRoom_AddRoleToUser_Request.chat_group_id', index=0,
@@ -2386,21 +2482,21 @@ _CCHATROOM_ADDROLETOUSER_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='role_id', full_name='CChatRoom_AddRoleToUser_Request.role_id', index=1,
       number=3, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CChatRoom_AddRoleToUser_Request.steamid', index=2,
       number=4, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2413,8 +2509,8 @@ _CCHATROOM_ADDROLETOUSER_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=5345,
-  serialized_end=5435,
+  serialized_start=5371,
+  serialized_end=5461,
 )
 
 
@@ -2424,6 +2520,7 @@ _CCHATROOM_ADDROLETOUSER_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -2437,8 +2534,8 @@ _CCHATROOM_ADDROLETOUSER_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=5437,
-  serialized_end=5471,
+  serialized_start=5463,
+  serialized_end=5497,
 )
 
 
@@ -2448,6 +2545,7 @@ _CCHATROOM_GETROLESFORUSER_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='chat_group_id', full_name='CChatRoom_GetRolesForUser_Request.chat_group_id', index=0,
@@ -2455,14 +2553,14 @@ _CCHATROOM_GETROLESFORUSER_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CChatRoom_GetRolesForUser_Request.steamid', index=1,
       number=3, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2475,8 +2573,8 @@ _CCHATROOM_GETROLESFORUSER_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=5473,
-  serialized_end=5548,
+  serialized_start=5499,
+  serialized_end=5574,
 )
 
 
@@ -2486,6 +2584,7 @@ _CCHATROOM_GETROLESFORUSER_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='role_ids', full_name='CChatRoom_GetRolesForUser_Response.role_ids', index=0,
@@ -2493,7 +2592,7 @@ _CCHATROOM_GETROLESFORUSER_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2506,8 +2605,8 @@ _CCHATROOM_GETROLESFORUSER_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=5550,
-  serialized_end=5604,
+  serialized_start=5576,
+  serialized_end=5630,
 )
 
 
@@ -2517,6 +2616,7 @@ _CCHATROOM_DELETEROLEFROMUSER_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='chat_group_id', full_name='CChatRoom_DeleteRoleFromUser_Request.chat_group_id', index=0,
@@ -2524,21 +2624,21 @@ _CCHATROOM_DELETEROLEFROMUSER_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='role_id', full_name='CChatRoom_DeleteRoleFromUser_Request.role_id', index=1,
       number=3, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CChatRoom_DeleteRoleFromUser_Request.steamid', index=2,
       number=4, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2551,8 +2651,8 @@ _CCHATROOM_DELETEROLEFROMUSER_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=5606,
-  serialized_end=5701,
+  serialized_start=5632,
+  serialized_end=5727,
 )
 
 
@@ -2562,6 +2662,7 @@ _CCHATROOM_DELETEROLEFROMUSER_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -2575,8 +2676,8 @@ _CCHATROOM_DELETEROLEFROMUSER_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=5703,
-  serialized_end=5742,
+  serialized_start=5729,
+  serialized_end=5768,
 )
 
 
@@ -2586,6 +2687,7 @@ _CCHATROOM_JOINCHATROOMGROUP_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='chat_group_id', full_name='CChatRoom_JoinChatRoomGroup_Request.chat_group_id', index=0,
@@ -2593,21 +2695,21 @@ _CCHATROOM_JOINCHATROOMGROUP_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='invite_code', full_name='CChatRoom_JoinChatRoomGroup_Request.invite_code', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='chat_id', full_name='CChatRoom_JoinChatRoomGroup_Request.chat_id', index=2,
       number=3, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2620,8 +2722,8 @@ _CCHATROOM_JOINCHATROOMGROUP_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=5744,
-  serialized_end=5842,
+  serialized_start=5770,
+  serialized_end=5868,
 )
 
 
@@ -2631,6 +2733,7 @@ _CCHATROOM_JOINCHATROOMGROUP_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='state', full_name='CChatRoom_JoinChatRoomGroup_Response.state', index=0,
@@ -2638,28 +2741,28 @@ _CCHATROOM_JOINCHATROOMGROUP_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='user_chat_state', full_name='CChatRoom_JoinChatRoomGroup_Response.user_chat_state', index=1,
       number=3, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='join_chat_id', full_name='CChatRoom_JoinChatRoomGroup_Response.join_chat_id', index=2,
       number=4, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='time_expire', full_name='CChatRoom_JoinChatRoomGroup_Response.time_expire', index=3,
       number=5, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2672,8 +2775,8 @@ _CCHATROOM_JOINCHATROOMGROUP_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=5845,
-  serialized_end=6014,
+  serialized_start=5871,
+  serialized_end=6040,
 )
 
 
@@ -2683,6 +2786,7 @@ _CCHATROOM_INVITEFRIENDTOCHATROOMGROUP_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='chat_group_id', full_name='CChatRoom_InviteFriendToChatRoomGroup_Request.chat_group_id', index=0,
@@ -2690,28 +2794,28 @@ _CCHATROOM_INVITEFRIENDTOCHATROOMGROUP_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CChatRoom_InviteFriendToChatRoomGroup_Request.steamid', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='chat_id', full_name='CChatRoom_InviteFriendToChatRoomGroup_Request.chat_id', index=2,
       number=3, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='skip_friendsui_check', full_name='CChatRoom_InviteFriendToChatRoomGroup_Request.skip_friendsui_check', index=3,
       number=4, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2724,8 +2828,8 @@ _CCHATROOM_INVITEFRIENDTOCHATROOMGROUP_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=6017,
-  serialized_end=6151,
+  serialized_start=6043,
+  serialized_end=6177,
 )
 
 
@@ -2735,6 +2839,7 @@ _CCHATROOM_INVITEFRIENDTOCHATROOMGROUP_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -2748,8 +2853,8 @@ _CCHATROOM_INVITEFRIENDTOCHATROOMGROUP_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=6153,
-  serialized_end=6201,
+  serialized_start=6179,
+  serialized_end=6227,
 )
 
 
@@ -2759,6 +2864,7 @@ _CCHATROOM_LEAVECHATROOMGROUP_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='chat_group_id', full_name='CChatRoom_LeaveChatRoomGroup_Request.chat_group_id', index=0,
@@ -2766,7 +2872,7 @@ _CCHATROOM_LEAVECHATROOMGROUP_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2779,8 +2885,8 @@ _CCHATROOM_LEAVECHATROOMGROUP_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=6203,
-  serialized_end=6264,
+  serialized_start=6229,
+  serialized_end=6290,
 )
 
 
@@ -2790,6 +2896,7 @@ _CCHATROOM_LEAVECHATROOMGROUP_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -2803,8 +2910,8 @@ _CCHATROOM_LEAVECHATROOMGROUP_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=6266,
-  serialized_end=6305,
+  serialized_start=6292,
+  serialized_end=6331,
 )
 
 
@@ -2814,6 +2921,7 @@ _CCHATROOM_CREATECHATROOM_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='chat_group_id', full_name='CChatRoom_CreateChatRoom_Request.chat_group_id', index=0,
@@ -2821,21 +2929,21 @@ _CCHATROOM_CREATECHATROOM_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='name', full_name='CChatRoom_CreateChatRoom_Request.name', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='allow_voice', full_name='CChatRoom_CreateChatRoom_Request.allow_voice', index=2,
       number=3, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2848,8 +2956,8 @@ _CCHATROOM_CREATECHATROOM_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=6307,
-  serialized_end=6399,
+  serialized_start=6333,
+  serialized_end=6425,
 )
 
 
@@ -2859,6 +2967,7 @@ _CCHATROOM_CREATECHATROOM_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='chat_room', full_name='CChatRoom_CreateChatRoom_Response.chat_room', index=0,
@@ -2866,7 +2975,7 @@ _CCHATROOM_CREATECHATROOM_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2879,8 +2988,8 @@ _CCHATROOM_CREATECHATROOM_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=6401,
-  serialized_end=6472,
+  serialized_start=6427,
+  serialized_end=6498,
 )
 
 
@@ -2890,6 +2999,7 @@ _CCHATROOM_DELETECHATROOM_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='chat_group_id', full_name='CChatRoom_DeleteChatRoom_Request.chat_group_id', index=0,
@@ -2897,14 +3007,14 @@ _CCHATROOM_DELETECHATROOM_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='chat_id', full_name='CChatRoom_DeleteChatRoom_Request.chat_id', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2917,8 +3027,8 @@ _CCHATROOM_DELETECHATROOM_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=6474,
-  serialized_end=6548,
+  serialized_start=6500,
+  serialized_end=6574,
 )
 
 
@@ -2928,6 +3038,7 @@ _CCHATROOM_DELETECHATROOM_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -2941,8 +3052,8 @@ _CCHATROOM_DELETECHATROOM_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=6550,
-  serialized_end=6585,
+  serialized_start=6576,
+  serialized_end=6611,
 )
 
 
@@ -2952,6 +3063,7 @@ _CCHATROOM_RENAMECHATROOM_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='chat_group_id', full_name='CChatRoom_RenameChatRoom_Request.chat_group_id', index=0,
@@ -2959,21 +3071,21 @@ _CCHATROOM_RENAMECHATROOM_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='chat_id', full_name='CChatRoom_RenameChatRoom_Request.chat_id', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='name', full_name='CChatRoom_RenameChatRoom_Request.name', index=2,
       number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2986,8 +3098,8 @@ _CCHATROOM_RENAMECHATROOM_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=6587,
-  serialized_end=6675,
+  serialized_start=6613,
+  serialized_end=6701,
 )
 
 
@@ -2997,6 +3109,7 @@ _CCHATROOM_RENAMECHATROOM_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -3010,8 +3123,8 @@ _CCHATROOM_RENAMECHATROOM_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=6677,
-  serialized_end=6712,
+  serialized_start=6703,
+  serialized_end=6738,
 )
 
 
@@ -3021,6 +3134,7 @@ _CCHATROOM_REORDERCHATROOM_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='chat_group_id', full_name='CChatRoom_ReorderChatRoom_Request.chat_group_id', index=0,
@@ -3028,21 +3142,21 @@ _CCHATROOM_REORDERCHATROOM_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='chat_id', full_name='CChatRoom_ReorderChatRoom_Request.chat_id', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='move_after_chat_id', full_name='CChatRoom_ReorderChatRoom_Request.move_after_chat_id', index=2,
       number=3, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3055,8 +3169,8 @@ _CCHATROOM_REORDERCHATROOM_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=6714,
-  serialized_end=6817,
+  serialized_start=6740,
+  serialized_end=6843,
 )
 
 
@@ -3066,6 +3180,7 @@ _CCHATROOM_REORDERCHATROOM_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -3079,8 +3194,8 @@ _CCHATROOM_REORDERCHATROOM_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=6819,
-  serialized_end=6855,
+  serialized_start=6845,
+  serialized_end=6881,
 )
 
 
@@ -3090,6 +3205,7 @@ _CCHATROOM_SENDCHATMESSAGE_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='chat_group_id', full_name='CChatRoom_SendChatMessage_Request.chat_group_id', index=0,
@@ -3097,28 +3213,28 @@ _CCHATROOM_SENDCHATMESSAGE_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='chat_id', full_name='CChatRoom_SendChatMessage_Request.chat_id', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='message', full_name='CChatRoom_SendChatMessage_Request.message', index=2,
       number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='echo_to_sender', full_name='CChatRoom_SendChatMessage_Request.echo_to_sender', index=3,
       number=4, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3131,8 +3247,8 @@ _CCHATROOM_SENDCHATMESSAGE_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=6857,
-  serialized_end=6973,
+  serialized_start=6883,
+  serialized_end=6999,
 )
 
 
@@ -3142,35 +3258,36 @@ _CCHATROOM_SENDCHATMESSAGE_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='modified_message', full_name='CChatRoom_SendChatMessage_Response.modified_message', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='server_timestamp', full_name='CChatRoom_SendChatMessage_Response.server_timestamp', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='ordinal', full_name='CChatRoom_SendChatMessage_Response.ordinal', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='message_without_bb_code', full_name='CChatRoom_SendChatMessage_Response.message_without_bb_code', index=3,
       number=4, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3183,8 +3300,8 @@ _CCHATROOM_SENDCHATMESSAGE_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=6976,
-  serialized_end=7114,
+  serialized_start=7002,
+  serialized_end=7140,
 )
 
 
@@ -3194,6 +3311,7 @@ _CCHATROOM_JOINVOICECHAT_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='chat_group_id', full_name='CChatRoom_JoinVoiceChat_Request.chat_group_id', index=0,
@@ -3201,14 +3319,14 @@ _CCHATROOM_JOINVOICECHAT_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='chat_id', full_name='CChatRoom_JoinVoiceChat_Request.chat_id', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3221,8 +3339,8 @@ _CCHATROOM_JOINVOICECHAT_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=7116,
-  serialized_end=7189,
+  serialized_start=7142,
+  serialized_end=7215,
 )
 
 
@@ -3232,6 +3350,7 @@ _CCHATROOM_JOINVOICECHAT_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='voice_chatid', full_name='CChatRoom_JoinVoiceChat_Response.voice_chatid', index=0,
@@ -3239,7 +3358,7 @@ _CCHATROOM_JOINVOICECHAT_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3252,8 +3371,8 @@ _CCHATROOM_JOINVOICECHAT_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=7191,
-  serialized_end=7247,
+  serialized_start=7217,
+  serialized_end=7273,
 )
 
 
@@ -3263,6 +3382,7 @@ _CCHATROOM_LEAVEVOICECHAT_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='chat_group_id', full_name='CChatRoom_LeaveVoiceChat_Request.chat_group_id', index=0,
@@ -3270,14 +3390,14 @@ _CCHATROOM_LEAVEVOICECHAT_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='chat_id', full_name='CChatRoom_LeaveVoiceChat_Request.chat_id', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3290,8 +3410,8 @@ _CCHATROOM_LEAVEVOICECHAT_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=7249,
-  serialized_end=7323,
+  serialized_start=7275,
+  serialized_end=7349,
 )
 
 
@@ -3301,6 +3421,7 @@ _CCHATROOM_LEAVEVOICECHAT_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -3314,8 +3435,8 @@ _CCHATROOM_LEAVEVOICECHAT_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=7325,
-  serialized_end=7360,
+  serialized_start=7351,
+  serialized_end=7386,
 )
 
 
@@ -3325,6 +3446,7 @@ _CCHATROOM_GETMESSAGEHISTORY_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='chat_group_id', full_name='CChatRoom_GetMessageHistory_Request.chat_group_id', index=0,
@@ -3332,49 +3454,49 @@ _CCHATROOM_GETMESSAGEHISTORY_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='chat_id', full_name='CChatRoom_GetMessageHistory_Request.chat_id', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='last_time', full_name='CChatRoom_GetMessageHistory_Request.last_time', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='last_ordinal', full_name='CChatRoom_GetMessageHistory_Request.last_ordinal', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='start_time', full_name='CChatRoom_GetMessageHistory_Request.start_time', index=4,
       number=5, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='start_ordinal', full_name='CChatRoom_GetMessageHistory_Request.start_ordinal', index=5,
       number=6, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='max_count', full_name='CChatRoom_GetMessageHistory_Request.max_count', index=6,
       number=7, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3387,8 +3509,8 @@ _CCHATROOM_GETMESSAGEHISTORY_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=7363,
-  serialized_end=7543,
+  serialized_start=7389,
+  serialized_end=7569,
 )
 
 
@@ -3398,6 +3520,7 @@ _SERVERMESSAGE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='message', full_name='ServerMessage.message', index=0,
@@ -3405,21 +3528,21 @@ _SERVERMESSAGE = _descriptor.Descriptor(
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='string_param', full_name='ServerMessage.string_param', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='accountid_param', full_name='ServerMessage.accountid_param', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3432,8 +3555,8 @@ _SERVERMESSAGE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=7546,
-  serialized_end=7680,
+  serialized_start=7572,
+  serialized_end=7706,
 )
 
 
@@ -3443,6 +3566,7 @@ _CCHATROOM_GETMESSAGEHISTORY_RESPONSE_CHATMESSAGE_MESSAGEREACTION = _descriptor.
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='reaction_type', full_name='CChatRoom_GetMessageHistory_Response.ChatMessage.MessageReaction.reaction_type', index=0,
@@ -3450,28 +3574,28 @@ _CCHATROOM_GETMESSAGEHISTORY_RESPONSE_CHATMESSAGE_MESSAGEREACTION = _descriptor.
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='reaction', full_name='CChatRoom_GetMessageHistory_Response.ChatMessage.MessageReaction.reaction', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='num_reactors', full_name='CChatRoom_GetMessageHistory_Response.ChatMessage.MessageReaction.num_reactors', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='has_user_reacted', full_name='CChatRoom_GetMessageHistory_Response.ChatMessage.MessageReaction.has_user_reacted', index=3,
       number=4, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3484,8 +3608,8 @@ _CCHATROOM_GETMESSAGEHISTORY_RESPONSE_CHATMESSAGE_MESSAGEREACTION = _descriptor.
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=8052,
-  serialized_end=8229,
+  serialized_start=8078,
+  serialized_end=8255,
 )
 
 _CCHATROOM_GETMESSAGEHISTORY_RESPONSE_CHATMESSAGE = _descriptor.Descriptor(
@@ -3494,6 +3618,7 @@ _CCHATROOM_GETMESSAGEHISTORY_RESPONSE_CHATMESSAGE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='sender', full_name='CChatRoom_GetMessageHistory_Response.ChatMessage.sender', index=0,
@@ -3501,49 +3626,49 @@ _CCHATROOM_GETMESSAGEHISTORY_RESPONSE_CHATMESSAGE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='server_timestamp', full_name='CChatRoom_GetMessageHistory_Response.ChatMessage.server_timestamp', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='message', full_name='CChatRoom_GetMessageHistory_Response.ChatMessage.message', index=2,
       number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='ordinal', full_name='CChatRoom_GetMessageHistory_Response.ChatMessage.ordinal', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='server_message', full_name='CChatRoom_GetMessageHistory_Response.ChatMessage.server_message', index=4,
       number=5, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='deleted', full_name='CChatRoom_GetMessageHistory_Response.ChatMessage.deleted', index=5,
       number=6, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='reactions', full_name='CChatRoom_GetMessageHistory_Response.ChatMessage.reactions', index=6,
       number=7, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3556,8 +3681,8 @@ _CCHATROOM_GETMESSAGEHISTORY_RESPONSE_CHATMESSAGE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=7817,
-  serialized_end=8229,
+  serialized_start=7843,
+  serialized_end=8255,
 )
 
 _CCHATROOM_GETMESSAGEHISTORY_RESPONSE = _descriptor.Descriptor(
@@ -3566,6 +3691,7 @@ _CCHATROOM_GETMESSAGEHISTORY_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='messages', full_name='CChatRoom_GetMessageHistory_Response.messages', index=0,
@@ -3573,14 +3699,14 @@ _CCHATROOM_GETMESSAGEHISTORY_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='more_available', full_name='CChatRoom_GetMessageHistory_Response.more_available', index=1,
       number=4, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3593,8 +3719,8 @@ _CCHATROOM_GETMESSAGEHISTORY_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=7683,
-  serialized_end=8229,
+  serialized_start=7709,
+  serialized_end=8255,
 )
 
 
@@ -3604,6 +3730,7 @@ _CCHATROOM_GETMYCHATROOMGROUPS_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -3617,8 +3744,8 @@ _CCHATROOM_GETMYCHATROOMGROUPS_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=8231,
-  serialized_end=8270,
+  serialized_start=8257,
+  serialized_end=8296,
 )
 
 
@@ -3628,6 +3755,7 @@ _CCHATROOM_GETCHATROOMGROUPSUMMARY_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='chat_group_id', full_name='CChatRoom_GetChatRoomGroupSummary_Response.chat_group_id', index=0,
@@ -3635,154 +3763,154 @@ _CCHATROOM_GETCHATROOMGROUPSUMMARY_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='chat_group_name', full_name='CChatRoom_GetChatRoomGroupSummary_Response.chat_group_name', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='active_member_count', full_name='CChatRoom_GetChatRoomGroupSummary_Response.active_member_count', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='active_voice_member_count', full_name='CChatRoom_GetChatRoomGroupSummary_Response.active_voice_member_count', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='default_chat_id', full_name='CChatRoom_GetChatRoomGroupSummary_Response.default_chat_id', index=4,
       number=5, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='chat_rooms', full_name='CChatRoom_GetChatRoomGroupSummary_Response.chat_rooms', index=5,
       number=6, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='clanid', full_name='CChatRoom_GetChatRoomGroupSummary_Response.clanid', index=6,
       number=7, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='chat_group_tagline', full_name='CChatRoom_GetChatRoomGroupSummary_Response.chat_group_tagline', index=7,
       number=8, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='accountid_owner', full_name='CChatRoom_GetChatRoomGroupSummary_Response.accountid_owner', index=8,
       number=9, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='top_members', full_name='CChatRoom_GetChatRoomGroupSummary_Response.top_members', index=9,
       number=10, type=13, cpp_type=3, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='chat_group_avatar_sha', full_name='CChatRoom_GetChatRoomGroupSummary_Response.chat_group_avatar_sha', index=10,
       number=11, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='rank', full_name='CChatRoom_GetChatRoomGroupSummary_Response.rank', index=11,
       number=12, type=14, cpp_type=8, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='default_role_id', full_name='CChatRoom_GetChatRoomGroupSummary_Response.default_role_id', index=12,
       number=13, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='role_ids', full_name='CChatRoom_GetChatRoomGroupSummary_Response.role_ids', index=13,
       number=14, type=4, cpp_type=4, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='role_actions', full_name='CChatRoom_GetChatRoomGroupSummary_Response.role_actions', index=14,
       number=15, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='watching_broadcast_accountid', full_name='CChatRoom_GetChatRoomGroupSummary_Response.watching_broadcast_accountid', index=15,
       number=16, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='appid', full_name='CChatRoom_GetChatRoomGroupSummary_Response.appid', index=16,
       number=17, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='party_beacons', full_name='CChatRoom_GetChatRoomGroupSummary_Response.party_beacons', index=17,
       number=18, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='watching_broadcast_channel_id', full_name='CChatRoom_GetChatRoomGroupSummary_Response.watching_broadcast_channel_id', index=18,
       number=19, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='active_minigame_id', full_name='CChatRoom_GetChatRoomGroupSummary_Response.active_minigame_id', index=19,
       number=20, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='avatar_ugc_url', full_name='CChatRoom_GetChatRoomGroupSummary_Response.avatar_ugc_url', index=20,
       number=21, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='disabled', full_name='CChatRoom_GetChatRoomGroupSummary_Response.disabled', index=21,
       number=22, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3795,8 +3923,8 @@ _CCHATROOM_GETCHATROOMGROUPSUMMARY_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=8273,
-  serialized_end=8965,
+  serialized_start=8299,
+  serialized_end=8991,
 )
 
 
@@ -3806,6 +3934,7 @@ _CCHATROOMSUMMARYPAIR = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='user_chat_group_state', full_name='CChatRoomSummaryPair.user_chat_group_state', index=0,
@@ -3813,14 +3942,14 @@ _CCHATROOMSUMMARYPAIR = _descriptor.Descriptor(
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='group_summary', full_name='CChatRoomSummaryPair.group_summary', index=1,
       number=2, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3833,8 +3962,8 @@ _CCHATROOMSUMMARYPAIR = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=8968,
-  serialized_end=9115,
+  serialized_start=8994,
+  serialized_end=9141,
 )
 
 
@@ -3844,6 +3973,7 @@ _CCHATROOM_GETMYCHATROOMGROUPS_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='chat_room_groups', full_name='CChatRoom_GetMyChatRoomGroups_Response.chat_room_groups', index=0,
@@ -3851,7 +3981,7 @@ _CCHATROOM_GETMYCHATROOMGROUPS_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3864,8 +3994,8 @@ _CCHATROOM_GETMYCHATROOMGROUPS_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=9117,
-  serialized_end=9206,
+  serialized_start=9143,
+  serialized_end=9232,
 )
 
 
@@ -3875,6 +4005,7 @@ _CCHATROOM_GETCHATROOMGROUPSTATE_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='chat_group_id', full_name='CChatRoom_GetChatRoomGroupState_Request.chat_group_id', index=0,
@@ -3882,7 +4013,7 @@ _CCHATROOM_GETCHATROOMGROUPSTATE_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3895,8 +4026,8 @@ _CCHATROOM_GETCHATROOMGROUPSTATE_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=9208,
-  serialized_end=9272,
+  serialized_start=9234,
+  serialized_end=9298,
 )
 
 
@@ -3906,6 +4037,7 @@ _CCHATROOM_GETCHATROOMGROUPSTATE_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='state', full_name='CChatRoom_GetChatRoomGroupState_Response.state', index=0,
@@ -3913,7 +4045,7 @@ _CCHATROOM_GETCHATROOMGROUPSTATE_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3926,8 +4058,8 @@ _CCHATROOM_GETCHATROOMGROUPSTATE_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=9274,
-  serialized_end=9353,
+  serialized_start=9300,
+  serialized_end=9379,
 )
 
 
@@ -3937,6 +4069,7 @@ _CCHATROOM_GETCHATROOMGROUPSUMMARY_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='chat_group_id', full_name='CChatRoom_GetChatRoomGroupSummary_Request.chat_group_id', index=0,
@@ -3944,7 +4077,7 @@ _CCHATROOM_GETCHATROOMGROUPSUMMARY_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3957,8 +4090,8 @@ _CCHATROOM_GETCHATROOMGROUPSUMMARY_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=9355,
-  serialized_end=9421,
+  serialized_start=9381,
+  serialized_end=9447,
 )
 
 
@@ -3968,6 +4101,7 @@ _CCHATROOM_SETAPPCHATROOMGROUPFORCEACTIVE_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='chat_group_id', full_name='CChatRoom_SetAppChatRoomGroupForceActive_Request.chat_group_id', index=0,
@@ -3975,14 +4109,14 @@ _CCHATROOM_SETAPPCHATROOMGROUPFORCEACTIVE_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='requesting_app_id', full_name='CChatRoom_SetAppChatRoomGroupForceActive_Request.requesting_app_id', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3995,8 +4129,8 @@ _CCHATROOM_SETAPPCHATROOMGROUPFORCEACTIVE_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=9423,
-  serialized_end=9523,
+  serialized_start=9449,
+  serialized_end=9549,
 )
 
 
@@ -4006,6 +4140,7 @@ _CCHATROOM_SETAPPCHATROOMGROUPFORCEACTIVE_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='result', full_name='CChatRoom_SetAppChatRoomGroupForceActive_Response.result', index=0,
@@ -4013,14 +4148,14 @@ _CCHATROOM_SETAPPCHATROOMGROUPFORCEACTIVE_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='accounts_in_channel', full_name='CChatRoom_SetAppChatRoomGroupForceActive_Response.accounts_in_channel', index=1,
       number=2, type=13, cpp_type=3, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4033,8 +4168,8 @@ _CCHATROOM_SETAPPCHATROOMGROUPFORCEACTIVE_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=9525,
-  serialized_end=9621,
+  serialized_start=9551,
+  serialized_end=9647,
 )
 
 
@@ -4044,6 +4179,7 @@ _CCHATROOM_SETAPPCHATROOMGROUPSTOPFORCEACTIVE_NOTIFICATION = _descriptor.Descrip
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='chat_group_id', full_name='CChatRoom_SetAppChatRoomGroupStopForceActive_Notification.chat_group_id', index=0,
@@ -4051,14 +4187,14 @@ _CCHATROOM_SETAPPCHATROOMGROUPSTOPFORCEACTIVE_NOTIFICATION = _descriptor.Descrip
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='requesting_app_id', full_name='CChatRoom_SetAppChatRoomGroupStopForceActive_Notification.requesting_app_id', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4071,8 +4207,8 @@ _CCHATROOM_SETAPPCHATROOMGROUPSTOPFORCEACTIVE_NOTIFICATION = _descriptor.Descrip
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=9623,
-  serialized_end=9732,
+  serialized_start=9649,
+  serialized_end=9758,
 )
 
 
@@ -4082,6 +4218,7 @@ _CCHATROOM_ACKCHATMESSAGE_NOTIFICATION = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='chat_group_id', full_name='CChatRoom_AckChatMessage_Notification.chat_group_id', index=0,
@@ -4089,21 +4226,21 @@ _CCHATROOM_ACKCHATMESSAGE_NOTIFICATION = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='chat_id', full_name='CChatRoom_AckChatMessage_Notification.chat_id', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='timestamp', full_name='CChatRoom_AckChatMessage_Notification.timestamp', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4116,8 +4253,8 @@ _CCHATROOM_ACKCHATMESSAGE_NOTIFICATION = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=9734,
-  serialized_end=9832,
+  serialized_start=9760,
+  serialized_end=9858,
 )
 
 
@@ -4127,6 +4264,7 @@ _CCHATROOM_CREATEINVITELINK_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='chat_group_id', full_name='CChatRoom_CreateInviteLink_Request.chat_group_id', index=0,
@@ -4134,21 +4272,21 @@ _CCHATROOM_CREATEINVITELINK_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='seconds_valid', full_name='CChatRoom_CreateInviteLink_Request.seconds_valid', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='chat_id', full_name='CChatRoom_CreateInviteLink_Request.chat_id', index=2,
       number=3, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4161,8 +4299,8 @@ _CCHATROOM_CREATEINVITELINK_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=9834,
-  serialized_end=9933,
+  serialized_start=9860,
+  serialized_end=9959,
 )
 
 
@@ -4172,21 +4310,22 @@ _CCHATROOM_CREATEINVITELINK_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='invite_code', full_name='CChatRoom_CreateInviteLink_Response.invite_code', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='seconds_valid', full_name='CChatRoom_CreateInviteLink_Response.seconds_valid', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4199,8 +4338,8 @@ _CCHATROOM_CREATEINVITELINK_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=9935,
-  serialized_end=10016,
+  serialized_start=9961,
+  serialized_end=10042,
 )
 
 
@@ -4210,14 +4349,15 @@ _CCHATROOM_GETINVITELINKINFO_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='invite_code', full_name='CChatRoom_GetInviteLinkInfo_Request.invite_code', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4230,8 +4370,8 @@ _CCHATROOM_GETINVITELINKINFO_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=10018,
-  serialized_end=10076,
+  serialized_start=10044,
+  serialized_end=10102,
 )
 
 
@@ -4241,6 +4381,7 @@ _CCHATROOM_GETINVITELINKINFO_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid_sender', full_name='CChatRoom_GetInviteLinkInfo_Response.steamid_sender', index=0,
@@ -4248,49 +4389,49 @@ _CCHATROOM_GETINVITELINKINFO_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='time_expires', full_name='CChatRoom_GetInviteLinkInfo_Response.time_expires', index=1,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='chat_id', full_name='CChatRoom_GetInviteLinkInfo_Response.chat_id', index=2,
       number=6, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='group_summary', full_name='CChatRoom_GetInviteLinkInfo_Response.group_summary', index=3,
       number=8, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='user_chat_group_state', full_name='CChatRoom_GetInviteLinkInfo_Response.user_chat_group_state', index=4,
       number=9, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='time_kick_expire', full_name='CChatRoom_GetInviteLinkInfo_Response.time_kick_expire', index=5,
       number=10, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='banned', full_name='CChatRoom_GetInviteLinkInfo_Response.banned', index=6,
       number=11, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4303,8 +4444,8 @@ _CCHATROOM_GETINVITELINKINFO_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=10079,
-  serialized_end=10347,
+  serialized_start=10105,
+  serialized_end=10373,
 )
 
 
@@ -4314,6 +4455,7 @@ _CCHATROOM_GETINVITEINFO_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid_invitee', full_name='CChatRoom_GetInviteInfo_Request.steamid_invitee', index=0,
@@ -4321,28 +4463,28 @@ _CCHATROOM_GETINVITEINFO_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='chat_group_id', full_name='CChatRoom_GetInviteInfo_Request.chat_group_id', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='chat_id', full_name='CChatRoom_GetInviteInfo_Request.chat_id', index=2,
       number=3, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='invite_code', full_name='CChatRoom_GetInviteInfo_Request.invite_code', index=3,
       number=4, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4355,8 +4497,8 @@ _CCHATROOM_GETINVITEINFO_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=10349,
-  serialized_end=10468,
+  serialized_start=10375,
+  serialized_end=10494,
 )
 
 
@@ -4366,6 +4508,7 @@ _CCHATROOM_GETINVITEINFO_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='group_summary', full_name='CChatRoom_GetInviteInfo_Response.group_summary', index=0,
@@ -4373,21 +4516,21 @@ _CCHATROOM_GETINVITEINFO_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='time_kick_expire', full_name='CChatRoom_GetInviteInfo_Response.time_kick_expire', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='banned', full_name='CChatRoom_GetInviteInfo_Response.banned', index=2,
       number=3, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4400,8 +4543,8 @@ _CCHATROOM_GETINVITEINFO_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=10471,
-  serialized_end=10615,
+  serialized_start=10497,
+  serialized_end=10641,
 )
 
 
@@ -4411,6 +4554,7 @@ _CCHATROOM_GETINVITELINKSFORGROUP_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='chat_group_id', full_name='CChatRoom_GetInviteLinksForGroup_Request.chat_group_id', index=0,
@@ -4418,7 +4562,7 @@ _CCHATROOM_GETINVITELINKSFORGROUP_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4431,8 +4575,8 @@ _CCHATROOM_GETINVITELINKSFORGROUP_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=10617,
-  serialized_end=10682,
+  serialized_start=10643,
+  serialized_end=10708,
 )
 
 
@@ -4442,35 +4586,36 @@ _CCHATROOM_GETINVITELINKSFORGROUP_RESPONSE_LINKINFO = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='invite_code', full_name='CChatRoom_GetInviteLinksForGroup_Response.LinkInfo.invite_code', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steamid_creator', full_name='CChatRoom_GetInviteLinksForGroup_Response.LinkInfo.steamid_creator', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='time_expires', full_name='CChatRoom_GetInviteLinksForGroup_Response.LinkInfo.time_expires', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='chat_id', full_name='CChatRoom_GetInviteLinksForGroup_Response.LinkInfo.chat_id', index=3,
       number=4, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4483,8 +4628,8 @@ _CCHATROOM_GETINVITELINKSFORGROUP_RESPONSE_LINKINFO = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=10805,
-  serialized_end=10900,
+  serialized_start=10831,
+  serialized_end=10926,
 )
 
 _CCHATROOM_GETINVITELINKSFORGROUP_RESPONSE = _descriptor.Descriptor(
@@ -4493,6 +4638,7 @@ _CCHATROOM_GETINVITELINKSFORGROUP_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='invite_links', full_name='CChatRoom_GetInviteLinksForGroup_Response.invite_links', index=0,
@@ -4500,7 +4646,7 @@ _CCHATROOM_GETINVITELINKSFORGROUP_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4513,8 +4659,8 @@ _CCHATROOM_GETINVITELINKSFORGROUP_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=10685,
-  serialized_end=10900,
+  serialized_start=10711,
+  serialized_end=10926,
 )
 
 
@@ -4524,6 +4670,7 @@ _CCHATROOM_GETBANLIST_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='chat_group_id', full_name='CChatRoom_GetBanList_Request.chat_group_id', index=0,
@@ -4531,7 +4678,7 @@ _CCHATROOM_GETBANLIST_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4544,8 +4691,8 @@ _CCHATROOM_GETBANLIST_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=10902,
-  serialized_end=10955,
+  serialized_start=10928,
+  serialized_end=10981,
 )
 
 
@@ -4555,6 +4702,7 @@ _CCHATROOM_GETBANLIST_RESPONSE_BANINFO = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='accountid', full_name='CChatRoom_GetBanList_Response.BanInfo.accountid', index=0,
@@ -4562,28 +4710,28 @@ _CCHATROOM_GETBANLIST_RESPONSE_BANINFO = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='accountid_actor', full_name='CChatRoom_GetBanList_Response.BanInfo.accountid_actor', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='time_banned', full_name='CChatRoom_GetBanList_Response.BanInfo.time_banned', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='ban_reason', full_name='CChatRoom_GetBanList_Response.BanInfo.ban_reason', index=3,
       number=4, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4596,8 +4744,8 @@ _CCHATROOM_GETBANLIST_RESPONSE_BANINFO = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=11045,
-  serialized_end=11139,
+  serialized_start=11071,
+  serialized_end=11165,
 )
 
 _CCHATROOM_GETBANLIST_RESPONSE = _descriptor.Descriptor(
@@ -4606,6 +4754,7 @@ _CCHATROOM_GETBANLIST_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='bans', full_name='CChatRoom_GetBanList_Response.bans', index=0,
@@ -4613,7 +4762,7 @@ _CCHATROOM_GETBANLIST_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4626,8 +4775,8 @@ _CCHATROOM_GETBANLIST_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=10958,
-  serialized_end=11139,
+  serialized_start=10984,
+  serialized_end=11165,
 )
 
 
@@ -4637,6 +4786,7 @@ _CCHATROOM_GETINVITELIST_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='chat_group_id', full_name='CChatRoom_GetInviteList_Request.chat_group_id', index=0,
@@ -4644,7 +4794,7 @@ _CCHATROOM_GETINVITELIST_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4657,8 +4807,8 @@ _CCHATROOM_GETINVITELIST_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=11141,
-  serialized_end=11197,
+  serialized_start=11167,
+  serialized_end=11223,
 )
 
 
@@ -4668,6 +4818,7 @@ _CCHATROOMGROUPINVITE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='accountid', full_name='CChatRoomGroupInvite.accountid', index=0,
@@ -4675,21 +4826,21 @@ _CCHATROOMGROUPINVITE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='accountid_actor', full_name='CChatRoomGroupInvite.accountid_actor', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='time_invited', full_name='CChatRoomGroupInvite.time_invited', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4702,8 +4853,8 @@ _CCHATROOMGROUPINVITE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=11199,
-  serialized_end=11287,
+  serialized_start=11225,
+  serialized_end=11313,
 )
 
 
@@ -4713,6 +4864,7 @@ _CCHATROOM_GETINVITELIST_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='invites', full_name='CChatRoom_GetInviteList_Response.invites', index=0,
@@ -4720,7 +4872,7 @@ _CCHATROOM_GETINVITELIST_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4733,8 +4885,8 @@ _CCHATROOM_GETINVITELIST_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=11289,
-  serialized_end=11363,
+  serialized_start=11315,
+  serialized_end=11389,
 )
 
 
@@ -4744,6 +4896,7 @@ _CCHATROOM_DELETEINVITELINK_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='chat_group_id', full_name='CChatRoom_DeleteInviteLink_Request.chat_group_id', index=0,
@@ -4751,14 +4904,14 @@ _CCHATROOM_DELETEINVITELINK_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='invite_code', full_name='CChatRoom_DeleteInviteLink_Request.invite_code', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4771,8 +4924,8 @@ _CCHATROOM_DELETEINVITELINK_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=11365,
-  serialized_end=11445,
+  serialized_start=11391,
+  serialized_end=11471,
 )
 
 
@@ -4782,6 +4935,7 @@ _CCHATROOM_DELETEINVITELINK_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -4795,8 +4949,8 @@ _CCHATROOM_DELETEINVITELINK_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=11447,
-  serialized_end=11484,
+  serialized_start=11473,
+  serialized_end=11510,
 )
 
 
@@ -4806,6 +4960,7 @@ _CCHATROOM_SETSESSIONACTIVECHATROOMGROUPS_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='chat_group_ids', full_name='CChatRoom_SetSessionActiveChatRoomGroups_Request.chat_group_ids', index=0,
@@ -4813,21 +4968,21 @@ _CCHATROOM_SETSESSIONACTIVECHATROOMGROUPS_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='chat_groups_data_requested', full_name='CChatRoom_SetSessionActiveChatRoomGroups_Request.chat_groups_data_requested', index=1,
       number=2, type=4, cpp_type=4, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='virtualize_members_threshold', full_name='CChatRoom_SetSessionActiveChatRoomGroups_Request.virtualize_members_threshold', index=2,
       number=3, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030YIf a chat room has more members than this threshold, we will opt in to a virtualized list'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030YIf a chat room has more members than this threshold, we will opt in to a virtualized list', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4840,8 +4995,8 @@ _CCHATROOM_SETSESSIONACTIVECHATROOMGROUPS_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=11487,
-  serialized_end=11731,
+  serialized_start=11513,
+  serialized_end=11757,
 )
 
 
@@ -4851,6 +5006,7 @@ _CCHATROOM_SETSESSIONACTIVECHATROOMGROUPS_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='chat_states', full_name='CChatRoom_SetSessionActiveChatRoomGroups_Response.chat_states', index=0,
@@ -4858,14 +5014,14 @@ _CCHATROOM_SETSESSIONACTIVECHATROOMGROUPS_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='virtualize_members_chat_group_ids', full_name='CChatRoom_SetSessionActiveChatRoomGroups_Response.virtualize_members_chat_group_ids', index=1,
       number=2, type=4, cpp_type=4, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4878,8 +5034,8 @@ _CCHATROOM_SETSESSIONACTIVECHATROOMGROUPS_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=11734,
-  serialized_end=11871,
+  serialized_start=11760,
+  serialized_end=11897,
 )
 
 
@@ -4889,6 +5045,7 @@ _CCHATROOM_SETUSERCHATGROUPPREFERENCES_REQUEST_CHATGROUPPREFERENCES = _descripto
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='desktop_notification_level', full_name='CChatRoom_SetUserChatGroupPreferences_Request.ChatGroupPreferences.desktop_notification_level', index=0,
@@ -4896,21 +5053,21 @@ _CCHATROOM_SETUSERCHATGROUPPREFERENCES_REQUEST_CHATGROUPPREFERENCES = _descripto
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='mobile_notification_level', full_name='CChatRoom_SetUserChatGroupPreferences_Request.ChatGroupPreferences.mobile_notification_level', index=1,
       number=2, type=14, cpp_type=8, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='unread_indicator_muted', full_name='CChatRoom_SetUserChatGroupPreferences_Request.ChatGroupPreferences.unread_indicator_muted', index=2,
       number=3, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4923,8 +5080,8 @@ _CCHATROOM_SETUSERCHATGROUPPREFERENCES_REQUEST_CHATGROUPPREFERENCES = _descripto
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=12147,
-  serialized_end=12406,
+  serialized_start=12173,
+  serialized_end=12432,
 )
 
 _CCHATROOM_SETUSERCHATGROUPPREFERENCES_REQUEST_CHATROOMPREFERENCES = _descriptor.Descriptor(
@@ -4933,6 +5090,7 @@ _CCHATROOM_SETUSERCHATGROUPPREFERENCES_REQUEST_CHATROOMPREFERENCES = _descriptor
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='chat_id', full_name='CChatRoom_SetUserChatGroupPreferences_Request.ChatRoomPreferences.chat_id', index=0,
@@ -4940,28 +5098,28 @@ _CCHATROOM_SETUSERCHATGROUPPREFERENCES_REQUEST_CHATROOMPREFERENCES = _descriptor
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='desktop_notification_level', full_name='CChatRoom_SetUserChatGroupPreferences_Request.ChatRoomPreferences.desktop_notification_level', index=1,
       number=2, type=14, cpp_type=8, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='mobile_notification_level', full_name='CChatRoom_SetUserChatGroupPreferences_Request.ChatRoomPreferences.mobile_notification_level', index=2,
       number=3, type=14, cpp_type=8, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='unread_indicator_muted', full_name='CChatRoom_SetUserChatGroupPreferences_Request.ChatRoomPreferences.unread_indicator_muted', index=3,
       number=4, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4974,8 +5132,8 @@ _CCHATROOM_SETUSERCHATGROUPPREFERENCES_REQUEST_CHATROOMPREFERENCES = _descriptor
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=12409,
-  serialized_end=12684,
+  serialized_start=12435,
+  serialized_end=12710,
 )
 
 _CCHATROOM_SETUSERCHATGROUPPREFERENCES_REQUEST = _descriptor.Descriptor(
@@ -4984,6 +5142,7 @@ _CCHATROOM_SETUSERCHATGROUPPREFERENCES_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='chat_group_id', full_name='CChatRoom_SetUserChatGroupPreferences_Request.chat_group_id', index=0,
@@ -4991,21 +5150,21 @@ _CCHATROOM_SETUSERCHATGROUPPREFERENCES_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='chat_group_preferences', full_name='CChatRoom_SetUserChatGroupPreferences_Request.chat_group_preferences', index=1,
       number=2, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='chat_room_preferences', full_name='CChatRoom_SetUserChatGroupPreferences_Request.chat_room_preferences', index=2,
       number=3, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -5018,8 +5177,8 @@ _CCHATROOM_SETUSERCHATGROUPPREFERENCES_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=11874,
-  serialized_end=12684,
+  serialized_start=11900,
+  serialized_end=12710,
 )
 
 
@@ -5029,6 +5188,7 @@ _CCHATROOM_SETUSERCHATGROUPPREFERENCES_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -5042,8 +5202,8 @@ _CCHATROOM_SETUSERCHATGROUPPREFERENCES_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=12686,
-  serialized_end=12734,
+  serialized_start=12712,
+  serialized_end=12760,
 )
 
 
@@ -5053,6 +5213,7 @@ _CCHATROOM_DELETECHATMESSAGES_REQUEST_MESSAGE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='server_timestamp', full_name='CChatRoom_DeleteChatMessages_Request.Message.server_timestamp', index=0,
@@ -5060,14 +5221,14 @@ _CCHATROOM_DELETECHATMESSAGES_REQUEST_MESSAGE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='ordinal', full_name='CChatRoom_DeleteChatMessages_Request.Message.ordinal', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -5080,8 +5241,8 @@ _CCHATROOM_DELETECHATMESSAGES_REQUEST_MESSAGE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=12882,
-  serialized_end=12934,
+  serialized_start=12908,
+  serialized_end=12960,
 )
 
 _CCHATROOM_DELETECHATMESSAGES_REQUEST = _descriptor.Descriptor(
@@ -5090,6 +5251,7 @@ _CCHATROOM_DELETECHATMESSAGES_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='chat_group_id', full_name='CChatRoom_DeleteChatMessages_Request.chat_group_id', index=0,
@@ -5097,21 +5259,21 @@ _CCHATROOM_DELETECHATMESSAGES_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='chat_id', full_name='CChatRoom_DeleteChatMessages_Request.chat_id', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='messages', full_name='CChatRoom_DeleteChatMessages_Request.messages', index=2,
       number=3, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -5124,8 +5286,8 @@ _CCHATROOM_DELETECHATMESSAGES_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=12737,
-  serialized_end=12934,
+  serialized_start=12763,
+  serialized_end=12960,
 )
 
 
@@ -5135,6 +5297,7 @@ _CCHATROOM_DELETECHATMESSAGES_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -5148,8 +5311,8 @@ _CCHATROOM_DELETECHATMESSAGES_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=12936,
-  serialized_end=12975,
+  serialized_start=12962,
+  serialized_end=13001,
 )
 
 
@@ -5159,6 +5322,7 @@ _CCHATROOM_UPDATEMEMBERLISTVIEW_NOTIFICATION = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='chat_group_id', full_name='CChatRoom_UpdateMemberListView_Notification.chat_group_id', index=0,
@@ -5166,56 +5330,56 @@ _CCHATROOM_UPDATEMEMBERLISTVIEW_NOTIFICATION = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='view_id', full_name='CChatRoom_UpdateMemberListView_Notification.view_id', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030RClient-generated ID.  Should send the same value on all requests for the same view'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030RClient-generated ID.  Should send the same value on all requests for the same view', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='start', full_name='CChatRoom_UpdateMemberListView_Notification.start', index=2,
       number=3, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='end', full_name='CChatRoom_UpdateMemberListView_Notification.end', index=3,
       number=4, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='client_changenumber', full_name='CChatRoom_UpdateMemberListView_Notification.client_changenumber', index=4,
       number=5, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030nAny updates from this call on will have this changenumber present.  Can be used to guarantee in-order updates.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030nAny updates from this call on will have this changenumber present.  Can be used to guarantee in-order updates.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='delete_view', full_name='CChatRoom_UpdateMemberListView_Notification.delete_view', index=5,
       number=6, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030%Indicates this view has been deleted.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030%Indicates this view has been deleted.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='persona_subscribe_accountids', full_name='CChatRoom_UpdateMemberListView_Notification.persona_subscribe_accountids', index=6,
       number=7, type=5, cpp_type=1, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='persona_unsubscribe_accountids', full_name='CChatRoom_UpdateMemberListView_Notification.persona_unsubscribe_accountids', index=7,
       number=8, type=5, cpp_type=1, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -5228,8 +5392,8 @@ _CCHATROOM_UPDATEMEMBERLISTVIEW_NOTIFICATION = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=12978,
-  serialized_end=13467,
+  serialized_start=13004,
+  serialized_end=13493,
 )
 
 
@@ -5239,6 +5403,7 @@ _CCHATROOM_SEARCHMEMBERS_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='chat_group_id', full_name='CChatRoom_SearchMembers_Request.chat_group_id', index=0,
@@ -5246,28 +5411,28 @@ _CCHATROOM_SEARCHMEMBERS_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='search_id', full_name='CChatRoom_SearchMembers_Request.search_id', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\231\001Client-supplied id.  For find-as-you-type searches, as search narrows the server will not return persona states previously returned for a given searchid.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\231\001Client-supplied id.  For find-as-you-type searches, as search narrows the server will not return persona states previously returned for a given searchid.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='search_text', full_name='CChatRoom_SearchMembers_Request.search_text', index=2,
       number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='max_results', full_name='CChatRoom_SearchMembers_Request.max_results', index=3,
       number=4, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -5280,8 +5445,8 @@ _CCHATROOM_SEARCHMEMBERS_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=13470,
-  serialized_end=13749,
+  serialized_start=13496,
+  serialized_end=13775,
 )
 
 
@@ -5291,6 +5456,7 @@ _CCHATROOM_SEARCHMEMBERS_RESPONSE_MEMBERMATCH = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='accountid', full_name='CChatRoom_SearchMembers_Response.MemberMatch.accountid', index=0,
@@ -5298,14 +5464,14 @@ _CCHATROOM_SEARCHMEMBERS_RESPONSE_MEMBERMATCH = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='persona', full_name='CChatRoom_SearchMembers_Response.MemberMatch.persona', index=1,
       number=2, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -5318,8 +5484,8 @@ _CCHATROOM_SEARCHMEMBERS_RESPONSE_MEMBERMATCH = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=13883,
-  serialized_end=13964,
+  serialized_start=13909,
+  serialized_end=13990,
 )
 
 _CCHATROOM_SEARCHMEMBERS_RESPONSE = _descriptor.Descriptor(
@@ -5328,6 +5494,7 @@ _CCHATROOM_SEARCHMEMBERS_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='matching_members', full_name='CChatRoom_SearchMembers_Response.matching_members', index=0,
@@ -5335,14 +5502,14 @@ _CCHATROOM_SEARCHMEMBERS_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='status_flags', full_name='CChatRoom_SearchMembers_Response.status_flags', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -5355,8 +5522,8 @@ _CCHATROOM_SEARCHMEMBERS_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=13752,
-  serialized_end=13964,
+  serialized_start=13778,
+  serialized_end=13990,
 )
 
 
@@ -5366,6 +5533,7 @@ _CCHATROOM_UPDATEMESSAGEREACTION_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='chat_group_id', full_name='CChatRoom_UpdateMessageReaction_Request.chat_group_id', index=0,
@@ -5373,49 +5541,49 @@ _CCHATROOM_UPDATEMESSAGEREACTION_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='chat_id', full_name='CChatRoom_UpdateMessageReaction_Request.chat_id', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='server_timestamp', full_name='CChatRoom_UpdateMessageReaction_Request.server_timestamp', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='ordinal', full_name='CChatRoom_UpdateMessageReaction_Request.ordinal', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='reaction_type', full_name='CChatRoom_UpdateMessageReaction_Request.reaction_type', index=4,
       number=5, type=14, cpp_type=8, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='reaction', full_name='CChatRoom_UpdateMessageReaction_Request.reaction', index=5,
       number=6, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='is_add', full_name='CChatRoom_UpdateMessageReaction_Request.is_add', index=6,
       number=7, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -5428,8 +5596,8 @@ _CCHATROOM_UPDATEMESSAGEREACTION_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=13967,
-  serialized_end=14219,
+  serialized_start=13993,
+  serialized_end=14245,
 )
 
 
@@ -5439,6 +5607,7 @@ _CCHATROOM_UPDATEMESSAGEREACTION_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='num_reactors', full_name='CChatRoom_UpdateMessageReaction_Response.num_reactors', index=0,
@@ -5446,7 +5615,7 @@ _CCHATROOM_UPDATEMESSAGEREACTION_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -5459,8 +5628,8 @@ _CCHATROOM_UPDATEMESSAGEREACTION_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=14221,
-  serialized_end=14285,
+  serialized_start=14247,
+  serialized_end=14311,
 )
 
 
@@ -5470,6 +5639,7 @@ _CCHATROOM_GETMESSAGEREACTIONREACTORS_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='chat_group_id', full_name='CChatRoom_GetMessageReactionReactors_Request.chat_group_id', index=0,
@@ -5477,49 +5647,49 @@ _CCHATROOM_GETMESSAGEREACTIONREACTORS_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='chat_id', full_name='CChatRoom_GetMessageReactionReactors_Request.chat_id', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='server_timestamp', full_name='CChatRoom_GetMessageReactionReactors_Request.server_timestamp', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='ordinal', full_name='CChatRoom_GetMessageReactionReactors_Request.ordinal', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='reaction_type', full_name='CChatRoom_GetMessageReactionReactors_Request.reaction_type', index=4,
       number=5, type=14, cpp_type=8, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='reaction', full_name='CChatRoom_GetMessageReactionReactors_Request.reaction', index=5,
       number=6, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='limit', full_name='CChatRoom_GetMessageReactionReactors_Request.limit', index=6,
       number=7, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -5532,8 +5702,8 @@ _CCHATROOM_GETMESSAGEREACTIONREACTORS_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=14288,
-  serialized_end=14544,
+  serialized_start=14314,
+  serialized_end=14570,
 )
 
 
@@ -5543,6 +5713,7 @@ _CCHATROOM_GETMESSAGEREACTIONREACTORS_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='reactors', full_name='CChatRoom_GetMessageReactionReactors_Response.reactors', index=0,
@@ -5550,7 +5721,7 @@ _CCHATROOM_GETMESSAGEREACTIONREACTORS_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -5563,8 +5734,8 @@ _CCHATROOM_GETMESSAGEREACTIONREACTORS_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=14546,
-  serialized_end=14611,
+  serialized_start=14572,
+  serialized_end=14637,
 )
 
 
@@ -5574,6 +5745,7 @@ _CCLANCHATROOMS_GETCLANCHATROOMINFO_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CClanChatRooms_GetClanChatRoomInfo_Request.steamid', index=0,
@@ -5581,14 +5753,14 @@ _CCLANCHATROOMS_GETCLANCHATROOMINFO_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='autocreate', full_name='CClanChatRooms_GetClanChatRoomInfo_Request.autocreate', index=1,
       number=2, type=8, cpp_type=7, label=1,
       has_default_value=True, default_value=True,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030;Create a default chat room if none has been created before.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030;Create a default chat room if none has been created before.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -5601,8 +5773,8 @@ _CCLANCHATROOMS_GETCLANCHATROOMINFO_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=14614,
-  serialized_end=14766,
+  serialized_start=14640,
+  serialized_end=14792,
 )
 
 
@@ -5612,6 +5784,7 @@ _CCLANCHATROOMS_GETCLANCHATROOMINFO_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='chat_group_summary', full_name='CClanChatRooms_GetClanChatRoomInfo_Response.chat_group_summary', index=0,
@@ -5619,7 +5792,7 @@ _CCLANCHATROOMS_GETCLANCHATROOMINFO_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -5632,8 +5805,8 @@ _CCLANCHATROOMS_GETCLANCHATROOMINFO_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=14768,
-  serialized_end=14886,
+  serialized_start=14794,
+  serialized_end=14912,
 )
 
 
@@ -5643,6 +5816,7 @@ _CCLANCHATROOMS_SETCLANCHATROOMPRIVATE_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CClanChatRooms_SetClanChatRoomPrivate_Request.steamid', index=0,
@@ -5650,14 +5824,14 @@ _CCLANCHATROOMS_SETCLANCHATROOMPRIVATE_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='chat_room_private', full_name='CClanChatRooms_SetClanChatRoomPrivate_Request.chat_room_private', index=1,
       number=2, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -5670,8 +5844,8 @@ _CCLANCHATROOMS_SETCLANCHATROOMPRIVATE_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=14888,
-  serialized_end=14979,
+  serialized_start=14914,
+  serialized_end=15005,
 )
 
 
@@ -5681,6 +5855,7 @@ _CCLANCHATROOMS_SETCLANCHATROOMPRIVATE_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='chat_room_private', full_name='CClanChatRooms_SetClanChatRoomPrivate_Response.chat_room_private', index=0,
@@ -5688,7 +5863,7 @@ _CCLANCHATROOMS_SETCLANCHATROOMPRIVATE_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -5701,8 +5876,8 @@ _CCLANCHATROOMS_SETCLANCHATROOMPRIVATE_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=14981,
-  serialized_end=15056,
+  serialized_start=15007,
+  serialized_end=15082,
 )
 
 
@@ -5712,6 +5887,7 @@ _CCHATMENTIONS = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='mention_all', full_name='CChatMentions.mention_all', index=0,
@@ -5719,21 +5895,21 @@ _CCHATMENTIONS = _descriptor.Descriptor(
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='mention_here', full_name='CChatMentions.mention_here', index=1,
       number=2, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='mention_accountids', full_name='CChatMentions.mention_accountids', index=2,
       number=3, type=13, cpp_type=3, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -5746,8 +5922,8 @@ _CCHATMENTIONS = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=15058,
-  serialized_end=15144,
+  serialized_start=15084,
+  serialized_end=15170,
 )
 
 
@@ -5757,6 +5933,7 @@ _CCHATROOM_INCOMINGCHATMESSAGE_NOTIFICATION = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='chat_group_id', full_name='CChatRoom_IncomingChatMessage_Notification.chat_group_id', index=0,
@@ -5764,70 +5941,70 @@ _CCHATROOM_INCOMINGCHATMESSAGE_NOTIFICATION = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='chat_id', full_name='CChatRoom_IncomingChatMessage_Notification.chat_id', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steamid_sender', full_name='CChatRoom_IncomingChatMessage_Notification.steamid_sender', index=2,
       number=3, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='message', full_name='CChatRoom_IncomingChatMessage_Notification.message', index=3,
       number=4, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='timestamp', full_name='CChatRoom_IncomingChatMessage_Notification.timestamp', index=4,
       number=5, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='mentions', full_name='CChatRoom_IncomingChatMessage_Notification.mentions', index=5,
       number=6, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='ordinal', full_name='CChatRoom_IncomingChatMessage_Notification.ordinal', index=6,
       number=7, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='server_message', full_name='CChatRoom_IncomingChatMessage_Notification.server_message', index=7,
       number=8, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='message_no_bbcode', full_name='CChatRoom_IncomingChatMessage_Notification.message_no_bbcode', index=8,
       number=9, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='chat_name', full_name='CChatRoom_IncomingChatMessage_Notification.chat_name', index=9,
       number=10, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\0306A name to use for the chat, intended for notifications'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\0306A name to use for the chat, intended for notifications', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -5840,8 +6017,8 @@ _CCHATROOM_INCOMINGCHATMESSAGE_NOTIFICATION = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=15147,
-  serialized_end=15488,
+  serialized_start=15173,
+  serialized_end=15514,
 )
 
 
@@ -5851,6 +6028,7 @@ _CCHATROOM_CHATMESSAGEMODIFIED_NOTIFICATION_CHATMESSAGE = _descriptor.Descriptor
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='server_timestamp', full_name='CChatRoom_ChatMessageModified_Notification.ChatMessage.server_timestamp', index=0,
@@ -5858,21 +6036,21 @@ _CCHATROOM_CHATMESSAGEMODIFIED_NOTIFICATION_CHATMESSAGE = _descriptor.Descriptor
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='ordinal', full_name='CChatRoom_ChatMessageModified_Notification.ChatMessage.ordinal', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='deleted', full_name='CChatRoom_ChatMessageModified_Notification.ChatMessage.deleted', index=2,
       number=3, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -5885,8 +6063,8 @@ _CCHATROOM_CHATMESSAGEMODIFIED_NOTIFICATION_CHATMESSAGE = _descriptor.Descriptor
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=15652,
-  serialized_end=15725,
+  serialized_start=15678,
+  serialized_end=15751,
 )
 
 _CCHATROOM_CHATMESSAGEMODIFIED_NOTIFICATION = _descriptor.Descriptor(
@@ -5895,6 +6073,7 @@ _CCHATROOM_CHATMESSAGEMODIFIED_NOTIFICATION = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='chat_group_id', full_name='CChatRoom_ChatMessageModified_Notification.chat_group_id', index=0,
@@ -5902,21 +6081,21 @@ _CCHATROOM_CHATMESSAGEMODIFIED_NOTIFICATION = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='chat_id', full_name='CChatRoom_ChatMessageModified_Notification.chat_id', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='messages', full_name='CChatRoom_ChatMessageModified_Notification.messages', index=2,
       number=3, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -5929,8 +6108,8 @@ _CCHATROOM_CHATMESSAGEMODIFIED_NOTIFICATION = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=15491,
-  serialized_end=15725,
+  serialized_start=15517,
+  serialized_end=15751,
 )
 
 
@@ -5940,6 +6119,7 @@ _CCHATROOM_MEMBERSTATECHANGE_NOTIFICATION = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='chat_group_id', full_name='CChatRoom_MemberStateChange_Notification.chat_group_id', index=0,
@@ -5947,21 +6127,21 @@ _CCHATROOM_MEMBERSTATECHANGE_NOTIFICATION = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='member', full_name='CChatRoom_MemberStateChange_Notification.member', index=1,
       number=2, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='change', full_name='CChatRoom_MemberStateChange_Notification.change', index=2,
       number=3, type=14, cpp_type=8, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -5974,8 +6154,8 @@ _CCHATROOM_MEMBERSTATECHANGE_NOTIFICATION = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=15728,
-  serialized_end=15910,
+  serialized_start=15754,
+  serialized_end=15936,
 )
 
 
@@ -5985,6 +6165,7 @@ _CCHATROOM_CHATROOMHEADERSTATE_NOTIFICATION = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='header_state', full_name='CChatRoom_ChatRoomHeaderState_Notification.header_state', index=0,
@@ -5992,7 +6173,7 @@ _CCHATROOM_CHATROOMHEADERSTATE_NOTIFICATION = _descriptor.Descriptor(
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -6005,8 +6186,8 @@ _CCHATROOM_CHATROOMHEADERSTATE_NOTIFICATION = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=15912,
-  serialized_end=16006,
+  serialized_start=15938,
+  serialized_end=16032,
 )
 
 
@@ -6016,6 +6197,7 @@ _CCHATROOM_CHATROOMGROUPROOMSCHANGE_NOTIFICATION = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='chat_group_id', full_name='CChatRoom_ChatRoomGroupRoomsChange_Notification.chat_group_id', index=0,
@@ -6023,21 +6205,21 @@ _CCHATROOM_CHATROOMGROUPROOMSCHANGE_NOTIFICATION = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='default_chat_id', full_name='CChatRoom_ChatRoomGroupRoomsChange_Notification.default_chat_id', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='chat_rooms', full_name='CChatRoom_ChatRoomGroupRoomsChange_Notification.chat_rooms', index=2,
       number=3, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -6050,8 +6232,8 @@ _CCHATROOM_CHATROOMGROUPROOMSCHANGE_NOTIFICATION = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=16009,
-  serialized_end=16143,
+  serialized_start=16035,
+  serialized_end=16169,
 )
 
 
@@ -6061,6 +6243,7 @@ _CCHATROOM_NOTIFYSHOULDREJOINCHATROOMVOICECHAT_NOTIFICATION = _descriptor.Descri
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='chat_id', full_name='CChatRoom_NotifyShouldRejoinChatRoomVoiceChat_Notification.chat_id', index=0,
@@ -6068,14 +6251,14 @@ _CCHATROOM_NOTIFYSHOULDREJOINCHATROOMVOICECHAT_NOTIFICATION = _descriptor.Descri
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='chat_group_id', full_name='CChatRoom_NotifyShouldRejoinChatRoomVoiceChat_Notification.chat_group_id', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -6088,8 +6271,8 @@ _CCHATROOM_NOTIFYSHOULDREJOINCHATROOMVOICECHAT_NOTIFICATION = _descriptor.Descri
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=16145,
-  serialized_end=16245,
+  serialized_start=16171,
+  serialized_end=16271,
 )
 
 
@@ -6099,6 +6282,7 @@ _CHATROOMCLIENT_NOTIFYCHATGROUPUSERSTATECHANGED_NOTIFICATION = _descriptor.Descr
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='chat_group_id', full_name='ChatRoomClient_NotifyChatGroupUserStateChanged_Notification.chat_group_id', index=0,
@@ -6106,28 +6290,28 @@ _CHATROOMCLIENT_NOTIFYCHATGROUPUSERSTATECHANGED_NOTIFICATION = _descriptor.Descr
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='user_chat_group_state', full_name='ChatRoomClient_NotifyChatGroupUserStateChanged_Notification.user_chat_group_state', index=1,
       number=2, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='group_summary', full_name='ChatRoomClient_NotifyChatGroupUserStateChanged_Notification.group_summary', index=2,
       number=3, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='user_action', full_name='ChatRoomClient_NotifyChatGroupUserStateChanged_Notification.user_action', index=3,
       number=4, type=14, cpp_type=8, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -6140,8 +6324,8 @@ _CHATROOMCLIENT_NOTIFYCHATGROUPUSERSTATECHANGED_NOTIFICATION = _descriptor.Descr
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=16248,
-  serialized_end=16545,
+  serialized_start=16274,
+  serialized_end=16571,
 )
 
 
@@ -6151,6 +6335,7 @@ _CHATROOMCLIENT_NOTIFYCHATROOMDISCONNECT_NOTIFICATION = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='chat_group_ids', full_name='ChatRoomClient_NotifyChatRoomDisconnect_Notification.chat_group_ids', index=0,
@@ -6158,7 +6343,7 @@ _CHATROOMCLIENT_NOTIFYCHATROOMDISCONNECT_NOTIFICATION = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -6171,8 +6356,8 @@ _CHATROOMCLIENT_NOTIFYCHATROOMDISCONNECT_NOTIFICATION = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=16547,
-  serialized_end=16625,
+  serialized_start=16573,
+  serialized_end=16651,
 )
 
 
@@ -6182,6 +6367,7 @@ _CCHATROOMMEMBERLISTVIEW = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='start', full_name='CChatRoomMemberListView.start', index=0,
@@ -6189,35 +6375,35 @@ _CCHATROOMMEMBERLISTVIEW = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='end', full_name='CChatRoomMemberListView.end', index=1,
       number=4, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='total_count', full_name='CChatRoomMemberListView.total_count', index=2,
       number=5, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='client_changenumber', full_name='CChatRoomMemberListView.client_changenumber', index=3,
       number=6, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030@Value sent by the client on the last UpdateMemberListView call. '), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030@Value sent by the client on the last UpdateMemberListView call. ', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='server_changenumber', full_name='CChatRoomMemberListView.server_changenumber', index=4,
       number=7, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030DValue incremented by the server on each MemberListViewUpdated call. '), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030DValue incremented by the server on each MemberListViewUpdated call. ', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -6230,8 +6416,8 @@ _CCHATROOMMEMBERLISTVIEW = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=16628,
-  serialized_end=16904,
+  serialized_start=16654,
+  serialized_end=16930,
 )
 
 
@@ -6241,6 +6427,7 @@ _CCHATROOMMEMBERSUMMARYCOUNTS = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='ingame', full_name='CChatRoomMemberSummaryCounts.ingame', index=0,
@@ -6248,21 +6435,21 @@ _CCHATROOMMEMBERSUMMARYCOUNTS = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='online', full_name='CChatRoomMemberSummaryCounts.online', index=1,
       number=2, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='offline', full_name='CChatRoomMemberSummaryCounts.offline', index=2,
       number=3, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -6275,8 +6462,8 @@ _CCHATROOMMEMBERSUMMARYCOUNTS = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=16906,
-  serialized_end=16985,
+  serialized_start=16932,
+  serialized_end=17011,
 )
 
 
@@ -6286,6 +6473,7 @@ _CCHATROOMCLIENT_MEMBERLISTVIEWUPDATED_NOTIFICATION_MEMBERLISTVIEWENTRY = _descr
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='rank', full_name='CChatRoomClient_MemberListViewUpdated_Notification.MemberListViewEntry.rank', index=0,
@@ -6293,21 +6481,21 @@ _CCHATROOMCLIENT_MEMBERLISTVIEWUPDATED_NOTIFICATION_MEMBERLISTVIEWENTRY = _descr
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='accountid', full_name='CChatRoomClient_MemberListViewUpdated_Notification.MemberListViewEntry.accountid', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='persona', full_name='CChatRoomClient_MemberListViewUpdated_Notification.MemberListViewEntry.persona', index=2,
       number=3, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -6320,8 +6508,8 @@ _CCHATROOMCLIENT_MEMBERLISTVIEWUPDATED_NOTIFICATION_MEMBERLISTVIEWENTRY = _descr
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=17412,
-  serialized_end=17515,
+  serialized_start=17438,
+  serialized_end=17541,
 )
 
 _CCHATROOMCLIENT_MEMBERLISTVIEWUPDATED_NOTIFICATION = _descriptor.Descriptor(
@@ -6330,6 +6518,7 @@ _CCHATROOMCLIENT_MEMBERLISTVIEWUPDATED_NOTIFICATION = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='chat_group_id', full_name='CChatRoomClient_MemberListViewUpdated_Notification.chat_group_id', index=0,
@@ -6337,49 +6526,49 @@ _CCHATROOMCLIENT_MEMBERLISTVIEWUPDATED_NOTIFICATION = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='view_id', full_name='CChatRoomClient_MemberListViewUpdated_Notification.view_id', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\0308Thew view_id supplied when the client created the view. '), file=DESCRIPTOR),
+      serialized_options=b'\202\265\0308Thew view_id supplied when the client created the view. ', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='view', full_name='CChatRoomClient_MemberListViewUpdated_Notification.view', index=2,
       number=3, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='members', full_name='CChatRoomClient_MemberListViewUpdated_Notification.members', index=3,
       number=4, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='status_flags', full_name='CChatRoomClient_MemberListViewUpdated_Notification.status_flags', index=4,
       number=5, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='member_summary', full_name='CChatRoomClient_MemberListViewUpdated_Notification.member_summary', index=5,
       number=6, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='subscribed_personas', full_name='CChatRoomClient_MemberListViewUpdated_Notification.subscribed_personas', index=6,
       number=7, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -6392,8 +6581,8 @@ _CCHATROOMCLIENT_MEMBERLISTVIEWUPDATED_NOTIFICATION = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=16988,
-  serialized_end=17515,
+  serialized_start=17014,
+  serialized_end=17541,
 )
 
 
@@ -6403,6 +6592,7 @@ _CCHATROOM_MESSAGEREACTION_NOTIFICATION = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='chat_group_id', full_name='CChatRoom_MessageReaction_Notification.chat_group_id', index=0,
@@ -6410,56 +6600,56 @@ _CCHATROOM_MESSAGEREACTION_NOTIFICATION = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='chat_id', full_name='CChatRoom_MessageReaction_Notification.chat_id', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='server_timestamp', full_name='CChatRoom_MessageReaction_Notification.server_timestamp', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='ordinal', full_name='CChatRoom_MessageReaction_Notification.ordinal', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='reactor', full_name='CChatRoom_MessageReaction_Notification.reactor', index=4,
       number=5, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='reaction_type', full_name='CChatRoom_MessageReaction_Notification.reaction_type', index=5,
       number=6, type=14, cpp_type=8, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='reaction', full_name='CChatRoom_MessageReaction_Notification.reaction', index=6,
       number=7, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='is_add', full_name='CChatRoom_MessageReaction_Notification.is_add', index=7,
       number=8, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -6472,8 +6662,8 @@ _CCHATROOM_MESSAGEREACTION_NOTIFICATION = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=17518,
-  serialized_end=17786,
+  serialized_start=17544,
+  serialized_end=17812,
 )
 
 
@@ -6483,6 +6673,7 @@ _CCHATUSABILITY_CLIENTUSABILITYMETRICS_NOTIFICATION_SETTINGS = _descriptor.Descr
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='notifications_show_ingame', full_name='CChatUsability_ClientUsabilityMetrics_Notification.Settings.notifications_show_ingame', index=0,
@@ -6490,175 +6681,175 @@ _CCHATUSABILITY_CLIENTUSABILITYMETRICS_NOTIFICATION_SETTINGS = _descriptor.Descr
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='notifications_show_online', full_name='CChatUsability_ClientUsabilityMetrics_Notification.Settings.notifications_show_online', index=1,
       number=2, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='notifications_show_message', full_name='CChatUsability_ClientUsabilityMetrics_Notification.Settings.notifications_show_message', index=2,
       number=3, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='notifications_events_and_announcements', full_name='CChatUsability_ClientUsabilityMetrics_Notification.Settings.notifications_events_and_announcements', index=3,
       number=4, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='sounds_play_ingame', full_name='CChatUsability_ClientUsabilityMetrics_Notification.Settings.sounds_play_ingame', index=4,
       number=5, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='sounds_play_online', full_name='CChatUsability_ClientUsabilityMetrics_Notification.Settings.sounds_play_online', index=5,
       number=6, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='sounds_play_message', full_name='CChatUsability_ClientUsabilityMetrics_Notification.Settings.sounds_play_message', index=6,
       number=7, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='sounds_events_and_announcements', full_name='CChatUsability_ClientUsabilityMetrics_Notification.Settings.sounds_events_and_announcements', index=7,
       number=8, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='always_new_chat_window', full_name='CChatUsability_ClientUsabilityMetrics_Notification.Settings.always_new_chat_window', index=8,
       number=9, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='force_alphabetic_friend_sorting', full_name='CChatUsability_ClientUsabilityMetrics_Notification.Settings.force_alphabetic_friend_sorting', index=9,
       number=10, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='chat_flash_mode', full_name='CChatUsability_ClientUsabilityMetrics_Notification.Settings.chat_flash_mode', index=10,
       number=11, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='remember_open_chats', full_name='CChatUsability_ClientUsabilityMetrics_Notification.Settings.remember_open_chats', index=11,
       number=12, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='compact_quick_access', full_name='CChatUsability_ClientUsabilityMetrics_Notification.Settings.compact_quick_access', index=12,
       number=13, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='compact_friends_list', full_name='CChatUsability_ClientUsabilityMetrics_Notification.Settings.compact_friends_list', index=13,
       number=14, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='notifications_show_chat_room_notification', full_name='CChatUsability_ClientUsabilityMetrics_Notification.Settings.notifications_show_chat_room_notification', index=14,
       number=15, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='sounds_play_chat_room_notification', full_name='CChatUsability_ClientUsabilityMetrics_Notification.Settings.sounds_play_chat_room_notification', index=15,
       number=16, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='hide_offline_friends_in_tag_groups', full_name='CChatUsability_ClientUsabilityMetrics_Notification.Settings.hide_offline_friends_in_tag_groups', index=16,
       number=17, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='hide_categorized_friends', full_name='CChatUsability_ClientUsabilityMetrics_Notification.Settings.hide_categorized_friends', index=17,
       number=18, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='categorize_in_game_friends_by_game', full_name='CChatUsability_ClientUsabilityMetrics_Notification.Settings.categorize_in_game_friends_by_game', index=18,
       number=19, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='chat_font_size', full_name='CChatUsability_ClientUsabilityMetrics_Notification.Settings.chat_font_size', index=19,
       number=20, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='use24hour_clock', full_name='CChatUsability_ClientUsabilityMetrics_Notification.Settings.use24hour_clock', index=20,
       number=21, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='do_not_disturb_mode', full_name='CChatUsability_ClientUsabilityMetrics_Notification.Settings.do_not_disturb_mode', index=21,
       number=22, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='disable_embed_inlining', full_name='CChatUsability_ClientUsabilityMetrics_Notification.Settings.disable_embed_inlining', index=22,
       number=23, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='sign_into_friends', full_name='CChatUsability_ClientUsabilityMetrics_Notification.Settings.sign_into_friends', index=23,
       number=24, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='animated_avatars', full_name='CChatUsability_ClientUsabilityMetrics_Notification.Settings.animated_avatars', index=24,
       number=25, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -6671,8 +6862,8 @@ _CCHATUSABILITY_CLIENTUSABILITYMETRICS_NOTIFICATION_SETTINGS = _descriptor.Descr
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=18259,
-  serialized_end=19116,
+  serialized_start=18285,
+  serialized_end=19142,
 )
 
 _CCHATUSABILITY_CLIENTUSABILITYMETRICS_NOTIFICATION_VOICESETTINGS = _descriptor.Descriptor(
@@ -6681,6 +6872,7 @@ _CCHATUSABILITY_CLIENTUSABILITYMETRICS_NOTIFICATION_VOICESETTINGS = _descriptor.
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='voice_input_gain', full_name='CChatUsability_ClientUsabilityMetrics_Notification.VoiceSettings.voice_input_gain', index=0,
@@ -6688,77 +6880,77 @@ _CCHATUSABILITY_CLIENTUSABILITYMETRICS_NOTIFICATION_VOICESETTINGS = _descriptor.
       has_default_value=False, default_value=float(0),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='voice_output_gain', full_name='CChatUsability_ClientUsabilityMetrics_Notification.VoiceSettings.voice_output_gain', index=1,
       number=2, type=2, cpp_type=6, label=1,
       has_default_value=False, default_value=float(0),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='noise_gate_level', full_name='CChatUsability_ClientUsabilityMetrics_Notification.VoiceSettings.noise_gate_level', index=2,
       number=3, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='voice_use_echo_cancellation', full_name='CChatUsability_ClientUsabilityMetrics_Notification.VoiceSettings.voice_use_echo_cancellation', index=3,
       number=4, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='voice_use_noise_cancellation', full_name='CChatUsability_ClientUsabilityMetrics_Notification.VoiceSettings.voice_use_noise_cancellation', index=4,
       number=5, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='voice_use_auto_gain_control', full_name='CChatUsability_ClientUsabilityMetrics_Notification.VoiceSettings.voice_use_auto_gain_control', index=5,
       number=6, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='selected_non_default_mic', full_name='CChatUsability_ClientUsabilityMetrics_Notification.VoiceSettings.selected_non_default_mic', index=6,
       number=7, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='selected_non_default_output', full_name='CChatUsability_ClientUsabilityMetrics_Notification.VoiceSettings.selected_non_default_output', index=7,
       number=8, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='push_to_talk_enabled', full_name='CChatUsability_ClientUsabilityMetrics_Notification.VoiceSettings.push_to_talk_enabled', index=8,
       number=9, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='push_to_mute_enabled', full_name='CChatUsability_ClientUsabilityMetrics_Notification.VoiceSettings.push_to_mute_enabled', index=9,
       number=10, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='play_ptt_sounds', full_name='CChatUsability_ClientUsabilityMetrics_Notification.VoiceSettings.play_ptt_sounds', index=10,
       number=11, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -6771,8 +6963,8 @@ _CCHATUSABILITY_CLIENTUSABILITYMETRICS_NOTIFICATION_VOICESETTINGS = _descriptor.
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=19119,
-  serialized_end=19481,
+  serialized_start=19145,
+  serialized_end=19507,
 )
 
 _CCHATUSABILITY_CLIENTUSABILITYMETRICS_NOTIFICATION_UISTATE_CATEGORYCOLLAPSESTATE = _descriptor.Descriptor(
@@ -6781,6 +6973,7 @@ _CCHATUSABILITY_CLIENTUSABILITYMETRICS_NOTIFICATION_UISTATE_CATEGORYCOLLAPSESTAT
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='in_game_collapsed', full_name='CChatUsability_ClientUsabilityMetrics_Notification.UIState.CategoryCollapseState.in_game_collapsed', index=0,
@@ -6788,35 +6981,35 @@ _CCHATUSABILITY_CLIENTUSABILITYMETRICS_NOTIFICATION_UISTATE_CATEGORYCOLLAPSESTAT
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='online_collapsed', full_name='CChatUsability_ClientUsabilityMetrics_Notification.UIState.CategoryCollapseState.online_collapsed', index=1,
       number=2, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='offline_collapsed', full_name='CChatUsability_ClientUsabilityMetrics_Notification.UIState.CategoryCollapseState.offline_collapsed', index=2,
       number=3, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='game_groups_collapsed', full_name='CChatUsability_ClientUsabilityMetrics_Notification.UIState.CategoryCollapseState.game_groups_collapsed', index=3,
       number=4, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='categories_collapsed', full_name='CChatUsability_ClientUsabilityMetrics_Notification.UIState.CategoryCollapseState.categories_collapsed', index=4,
       number=5, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -6829,8 +7022,8 @@ _CCHATUSABILITY_CLIENTUSABILITYMETRICS_NOTIFICATION_UISTATE_CATEGORYCOLLAPSESTAT
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=20085,
-  serialized_end=20249,
+  serialized_start=20111,
+  serialized_end=20275,
 )
 
 _CCHATUSABILITY_CLIENTUSABILITYMETRICS_NOTIFICATION_UISTATE = _descriptor.Descriptor(
@@ -6839,6 +7032,7 @@ _CCHATUSABILITY_CLIENTUSABILITYMETRICS_NOTIFICATION_UISTATE = _descriptor.Descri
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='friends_list_height', full_name='CChatUsability_ClientUsabilityMetrics_Notification.UIState.friends_list_height', index=0,
@@ -6846,112 +7040,112 @@ _CCHATUSABILITY_CLIENTUSABILITYMETRICS_NOTIFICATION_UISTATE = _descriptor.Descri
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='friends_list_width', full_name='CChatUsability_ClientUsabilityMetrics_Notification.UIState.friends_list_width', index=1,
       number=2, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='friends_list_docked', full_name='CChatUsability_ClientUsabilityMetrics_Notification.UIState.friends_list_docked', index=2,
       number=3, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='friends_list_collapsed', full_name='CChatUsability_ClientUsabilityMetrics_Notification.UIState.friends_list_collapsed', index=3,
       number=4, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='friends_list_group_chats_height', full_name='CChatUsability_ClientUsabilityMetrics_Notification.UIState.friends_list_group_chats_height', index=4,
       number=5, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='friends_list_visible', full_name='CChatUsability_ClientUsabilityMetrics_Notification.UIState.friends_list_visible', index=5,
       number=6, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='chat_popups_opened', full_name='CChatUsability_ClientUsabilityMetrics_Notification.UIState.chat_popups_opened', index=6,
       number=7, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='group_chat_tabs_opened', full_name='CChatUsability_ClientUsabilityMetrics_Notification.UIState.group_chat_tabs_opened', index=7,
       number=8, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='friend_chat_tabs_opened', full_name='CChatUsability_ClientUsabilityMetrics_Notification.UIState.friend_chat_tabs_opened', index=8,
       number=9, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='chat_window_width', full_name='CChatUsability_ClientUsabilityMetrics_Notification.UIState.chat_window_width', index=9,
       number=10, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='chat_window_height', full_name='CChatUsability_ClientUsabilityMetrics_Notification.UIState.chat_window_height', index=10,
       number=11, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='category_collapse', full_name='CChatUsability_ClientUsabilityMetrics_Notification.UIState.category_collapse', index=11,
       number=12, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='group_chat_left_col_collapsed', full_name='CChatUsability_ClientUsabilityMetrics_Notification.UIState.group_chat_left_col_collapsed', index=12,
       number=13, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='group_chat_right_col_collapsed', full_name='CChatUsability_ClientUsabilityMetrics_Notification.UIState.group_chat_right_col_collapsed', index=13,
       number=14, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='in_one_on_one_voice_chat', full_name='CChatUsability_ClientUsabilityMetrics_Notification.UIState.in_one_on_one_voice_chat', index=14,
       number=15, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='in_group_voice_chat', full_name='CChatUsability_ClientUsabilityMetrics_Notification.UIState.in_group_voice_chat', index=15,
       number=16, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -6964,8 +7158,8 @@ _CCHATUSABILITY_CLIENTUSABILITYMETRICS_NOTIFICATION_UISTATE = _descriptor.Descri
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=19484,
-  serialized_end=20249,
+  serialized_start=19510,
+  serialized_end=20275,
 )
 
 _CCHATUSABILITY_CLIENTUSABILITYMETRICS_NOTIFICATION_METRICS = _descriptor.Descriptor(
@@ -6974,6 +7168,7 @@ _CCHATUSABILITY_CLIENTUSABILITYMETRICS_NOTIFICATION_METRICS = _descriptor.Descri
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='friends_count', full_name='CChatUsability_ClientUsabilityMetrics_Notification.Metrics.friends_count', index=0,
@@ -6981,70 +7176,70 @@ _CCHATUSABILITY_CLIENTUSABILITYMETRICS_NOTIFICATION_METRICS = _descriptor.Descri
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='friends_category_count', full_name='CChatUsability_ClientUsabilityMetrics_Notification.Metrics.friends_category_count', index=1,
       number=2, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='friends_categorized_count', full_name='CChatUsability_ClientUsabilityMetrics_Notification.Metrics.friends_categorized_count', index=2,
       number=3, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='friends_online_count', full_name='CChatUsability_ClientUsabilityMetrics_Notification.Metrics.friends_online_count', index=3,
       number=4, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='friends_in_game_count', full_name='CChatUsability_ClientUsabilityMetrics_Notification.Metrics.friends_in_game_count', index=4,
       number=5, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='friends_in_game_singleton_count', full_name='CChatUsability_ClientUsabilityMetrics_Notification.Metrics.friends_in_game_singleton_count', index=5,
       number=6, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='game_group_count', full_name='CChatUsability_ClientUsabilityMetrics_Notification.Metrics.game_group_count', index=6,
       number=7, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='friends_favorite_count', full_name='CChatUsability_ClientUsabilityMetrics_Notification.Metrics.friends_favorite_count', index=7,
       number=8, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='group_chat_count', full_name='CChatUsability_ClientUsabilityMetrics_Notification.Metrics.group_chat_count', index=8,
       number=9, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='group_chat_favorite_count', full_name='CChatUsability_ClientUsabilityMetrics_Notification.Metrics.group_chat_favorite_count', index=9,
       number=10, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -7057,8 +7252,8 @@ _CCHATUSABILITY_CLIENTUSABILITYMETRICS_NOTIFICATION_METRICS = _descriptor.Descri
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=20252,
-  serialized_end=20572,
+  serialized_start=20278,
+  serialized_end=20598,
 )
 
 _CCHATUSABILITY_CLIENTUSABILITYMETRICS_NOTIFICATION = _descriptor.Descriptor(
@@ -7067,6 +7262,7 @@ _CCHATUSABILITY_CLIENTUSABILITYMETRICS_NOTIFICATION = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='metrics_run_id', full_name='CChatUsability_ClientUsabilityMetrics_Notification.metrics_run_id', index=0,
@@ -7074,56 +7270,56 @@ _CCHATUSABILITY_CLIENTUSABILITYMETRICS_NOTIFICATION = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='client_build', full_name='CChatUsability_ClientUsabilityMetrics_Notification.client_build', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='metrics_version', full_name='CChatUsability_ClientUsabilityMetrics_Notification.metrics_version', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='in_web', full_name='CChatUsability_ClientUsabilityMetrics_Notification.in_web', index=3,
       number=4, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='settings', full_name='CChatUsability_ClientUsabilityMetrics_Notification.settings', index=4,
       number=10, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='voice_settings', full_name='CChatUsability_ClientUsabilityMetrics_Notification.voice_settings', index=5,
       number=11, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='ui_state', full_name='CChatUsability_ClientUsabilityMetrics_Notification.ui_state', index=6,
       number=12, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='metrics', full_name='CChatUsability_ClientUsabilityMetrics_Notification.metrics', index=7,
       number=13, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -7136,8 +7332,8 @@ _CCHATUSABILITY_CLIENTUSABILITYMETRICS_NOTIFICATION = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=17789,
-  serialized_end=20572,
+  serialized_start=17815,
+  serialized_end=20598,
 )
 
 
@@ -7147,6 +7343,7 @@ _CCHATUSABILITY_REQUESTCLIENTUSABILITYMETRICS_NOTIFICATION = _descriptor.Descrip
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='metrics_run_id', full_name='CChatUsability_RequestClientUsabilityMetrics_Notification.metrics_run_id', index=0,
@@ -7154,7 +7351,7 @@ _CCHATUSABILITY_REQUESTCLIENTUSABILITYMETRICS_NOTIFICATION = _descriptor.Descrip
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -7167,8 +7364,8 @@ _CCHATUSABILITY_REQUESTCLIENTUSABILITYMETRICS_NOTIFICATION = _descriptor.Descrip
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=20574,
-  serialized_end=20657,
+  serialized_start=20600,
+  serialized_end=20683,
 )
 
 _CCHATROOMGROUPHEADERSTATE.fields_by_name['roles'].message_type = _CCHATROLE
@@ -7406,1064 +7603,1064 @@ DESCRIPTOR.enum_types_by_name['EChatRoomMessageReactionType'] = _ECHATROOMMESSAG
 DESCRIPTOR.enum_types_by_name['EChatRoomMemberStateChange'] = _ECHATROOMMEMBERSTATECHANGE
 _sym_db.RegisterFileDescriptor(DESCRIPTOR)
 
-CChat_RequestFriendPersonaStates_Request = _reflection.GeneratedProtocolMessageType('CChat_RequestFriendPersonaStates_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCHAT_REQUESTFRIENDPERSONASTATES_REQUEST,
-  __module__ = 'steammessages_chat_pb2'
+CChat_RequestFriendPersonaStates_Request = _reflection.GeneratedProtocolMessageType('CChat_RequestFriendPersonaStates_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCHAT_REQUESTFRIENDPERSONASTATES_REQUEST,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChat_RequestFriendPersonaStates_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CChat_RequestFriendPersonaStates_Request)
 
-CChat_RequestFriendPersonaStates_Response = _reflection.GeneratedProtocolMessageType('CChat_RequestFriendPersonaStates_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCHAT_REQUESTFRIENDPERSONASTATES_RESPONSE,
-  __module__ = 'steammessages_chat_pb2'
+CChat_RequestFriendPersonaStates_Response = _reflection.GeneratedProtocolMessageType('CChat_RequestFriendPersonaStates_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCHAT_REQUESTFRIENDPERSONASTATES_RESPONSE,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChat_RequestFriendPersonaStates_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CChat_RequestFriendPersonaStates_Response)
 
-CChatRoom_CreateChatRoomGroup_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_CreateChatRoomGroup_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_CREATECHATROOMGROUP_REQUEST,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_CreateChatRoomGroup_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_CreateChatRoomGroup_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_CREATECHATROOMGROUP_REQUEST,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_CreateChatRoomGroup_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_CreateChatRoomGroup_Request)
 
-CChatRole = _reflection.GeneratedProtocolMessageType('CChatRole', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROLE,
-  __module__ = 'steammessages_chat_pb2'
+CChatRole = _reflection.GeneratedProtocolMessageType('CChatRole', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROLE,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRole)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRole)
 
-CChatRoleActions = _reflection.GeneratedProtocolMessageType('CChatRoleActions', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROLEACTIONS,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoleActions = _reflection.GeneratedProtocolMessageType('CChatRoleActions', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROLEACTIONS,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoleActions)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoleActions)
 
-CChatPartyBeacon = _reflection.GeneratedProtocolMessageType('CChatPartyBeacon', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATPARTYBEACON,
-  __module__ = 'steammessages_chat_pb2'
+CChatPartyBeacon = _reflection.GeneratedProtocolMessageType('CChatPartyBeacon', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATPARTYBEACON,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatPartyBeacon)
-  ))
+  })
 _sym_db.RegisterMessage(CChatPartyBeacon)
 
-CChatRoomGroupHeaderState = _reflection.GeneratedProtocolMessageType('CChatRoomGroupHeaderState', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOMGROUPHEADERSTATE,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoomGroupHeaderState = _reflection.GeneratedProtocolMessageType('CChatRoomGroupHeaderState', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOMGROUPHEADERSTATE,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoomGroupHeaderState)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoomGroupHeaderState)
 
-CChatRoomMember = _reflection.GeneratedProtocolMessageType('CChatRoomMember', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOMMEMBER,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoomMember = _reflection.GeneratedProtocolMessageType('CChatRoomMember', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOMMEMBER,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoomMember)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoomMember)
 
-CChatRoomState = _reflection.GeneratedProtocolMessageType('CChatRoomState', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOMSTATE,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoomState = _reflection.GeneratedProtocolMessageType('CChatRoomState', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOMSTATE,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoomState)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoomState)
 
-CChatRoomGroupState = _reflection.GeneratedProtocolMessageType('CChatRoomGroupState', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOMGROUPSTATE,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoomGroupState = _reflection.GeneratedProtocolMessageType('CChatRoomGroupState', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOMGROUPSTATE,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoomGroupState)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoomGroupState)
 
-CUserChatRoomState = _reflection.GeneratedProtocolMessageType('CUserChatRoomState', (_message.Message,), dict(
-  DESCRIPTOR = _CUSERCHATROOMSTATE,
-  __module__ = 'steammessages_chat_pb2'
+CUserChatRoomState = _reflection.GeneratedProtocolMessageType('CUserChatRoomState', (_message.Message,), {
+  'DESCRIPTOR' : _CUSERCHATROOMSTATE,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CUserChatRoomState)
-  ))
+  })
 _sym_db.RegisterMessage(CUserChatRoomState)
 
-CUserChatRoomGroupState = _reflection.GeneratedProtocolMessageType('CUserChatRoomGroupState', (_message.Message,), dict(
-  DESCRIPTOR = _CUSERCHATROOMGROUPSTATE,
-  __module__ = 'steammessages_chat_pb2'
+CUserChatRoomGroupState = _reflection.GeneratedProtocolMessageType('CUserChatRoomGroupState', (_message.Message,), {
+  'DESCRIPTOR' : _CUSERCHATROOMGROUPSTATE,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CUserChatRoomGroupState)
-  ))
+  })
 _sym_db.RegisterMessage(CUserChatRoomGroupState)
 
-CChatRoom_CreateChatRoomGroup_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_CreateChatRoomGroup_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_CREATECHATROOMGROUP_RESPONSE,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_CreateChatRoomGroup_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_CreateChatRoomGroup_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_CREATECHATROOMGROUP_RESPONSE,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_CreateChatRoomGroup_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_CreateChatRoomGroup_Response)
 
-CChatRoom_SaveChatRoomGroup_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_SaveChatRoomGroup_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_SAVECHATROOMGROUP_REQUEST,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_SaveChatRoomGroup_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_SaveChatRoomGroup_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_SAVECHATROOMGROUP_REQUEST,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_SaveChatRoomGroup_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_SaveChatRoomGroup_Request)
 
-CChatRoom_SaveChatRoomGroup_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_SaveChatRoomGroup_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_SAVECHATROOMGROUP_RESPONSE,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_SaveChatRoomGroup_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_SaveChatRoomGroup_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_SAVECHATROOMGROUP_RESPONSE,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_SaveChatRoomGroup_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_SaveChatRoomGroup_Response)
 
-CChatRoom_RenameChatRoomGroup_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_RenameChatRoomGroup_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_RENAMECHATROOMGROUP_REQUEST,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_RenameChatRoomGroup_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_RenameChatRoomGroup_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_RENAMECHATROOMGROUP_REQUEST,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_RenameChatRoomGroup_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_RenameChatRoomGroup_Request)
 
-CChatRoom_RenameChatRoomGroup_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_RenameChatRoomGroup_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_RENAMECHATROOMGROUP_RESPONSE,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_RenameChatRoomGroup_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_RenameChatRoomGroup_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_RENAMECHATROOMGROUP_RESPONSE,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_RenameChatRoomGroup_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_RenameChatRoomGroup_Response)
 
-CChatRoom_SetChatRoomGroupTagline_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_SetChatRoomGroupTagline_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_SETCHATROOMGROUPTAGLINE_REQUEST,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_SetChatRoomGroupTagline_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_SetChatRoomGroupTagline_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_SETCHATROOMGROUPTAGLINE_REQUEST,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_SetChatRoomGroupTagline_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_SetChatRoomGroupTagline_Request)
 
-CChatRoom_SetChatRoomGroupTagline_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_SetChatRoomGroupTagline_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_SETCHATROOMGROUPTAGLINE_RESPONSE,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_SetChatRoomGroupTagline_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_SetChatRoomGroupTagline_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_SETCHATROOMGROUPTAGLINE_RESPONSE,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_SetChatRoomGroupTagline_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_SetChatRoomGroupTagline_Response)
 
-CChatRoom_SetChatRoomGroupAvatar_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_SetChatRoomGroupAvatar_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_SETCHATROOMGROUPAVATAR_REQUEST,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_SetChatRoomGroupAvatar_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_SetChatRoomGroupAvatar_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_SETCHATROOMGROUPAVATAR_REQUEST,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_SetChatRoomGroupAvatar_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_SetChatRoomGroupAvatar_Request)
 
-CChatRoom_SetChatRoomGroupAvatar_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_SetChatRoomGroupAvatar_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_SETCHATROOMGROUPAVATAR_RESPONSE,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_SetChatRoomGroupAvatar_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_SetChatRoomGroupAvatar_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_SETCHATROOMGROUPAVATAR_RESPONSE,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_SetChatRoomGroupAvatar_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_SetChatRoomGroupAvatar_Response)
 
-CChatRoom_SetChatRoomGroupWatchingBroadcast_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_SetChatRoomGroupWatchingBroadcast_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_SETCHATROOMGROUPWATCHINGBROADCAST_REQUEST,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_SetChatRoomGroupWatchingBroadcast_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_SetChatRoomGroupWatchingBroadcast_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_SETCHATROOMGROUPWATCHINGBROADCAST_REQUEST,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_SetChatRoomGroupWatchingBroadcast_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_SetChatRoomGroupWatchingBroadcast_Request)
 
-CChatRoom_SetChatRoomGroupWatchingBroadcast_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_SetChatRoomGroupWatchingBroadcast_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_SETCHATROOMGROUPWATCHINGBROADCAST_RESPONSE,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_SetChatRoomGroupWatchingBroadcast_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_SetChatRoomGroupWatchingBroadcast_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_SETCHATROOMGROUPWATCHINGBROADCAST_RESPONSE,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_SetChatRoomGroupWatchingBroadcast_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_SetChatRoomGroupWatchingBroadcast_Response)
 
-CChatRoom_JoinMiniGameForChatRoomGroup_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_JoinMiniGameForChatRoomGroup_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_JOINMINIGAMEFORCHATROOMGROUP_REQUEST,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_JoinMiniGameForChatRoomGroup_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_JoinMiniGameForChatRoomGroup_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_JOINMINIGAMEFORCHATROOMGROUP_REQUEST,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_JoinMiniGameForChatRoomGroup_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_JoinMiniGameForChatRoomGroup_Request)
 
-CChatRoom_JoinMiniGameForChatRoomGroup_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_JoinMiniGameForChatRoomGroup_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_JOINMINIGAMEFORCHATROOMGROUP_RESPONSE,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_JoinMiniGameForChatRoomGroup_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_JoinMiniGameForChatRoomGroup_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_JOINMINIGAMEFORCHATROOMGROUP_RESPONSE,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_JoinMiniGameForChatRoomGroup_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_JoinMiniGameForChatRoomGroup_Response)
 
-CChatRoom_EndMiniGameForChatRoomGroup_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_EndMiniGameForChatRoomGroup_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_ENDMINIGAMEFORCHATROOMGROUP_REQUEST,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_EndMiniGameForChatRoomGroup_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_EndMiniGameForChatRoomGroup_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_ENDMINIGAMEFORCHATROOMGROUP_REQUEST,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_EndMiniGameForChatRoomGroup_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_EndMiniGameForChatRoomGroup_Request)
 
-CChatRoom_EndMiniGameForChatRoomGroup_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_EndMiniGameForChatRoomGroup_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_ENDMINIGAMEFORCHATROOMGROUP_RESPONSE,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_EndMiniGameForChatRoomGroup_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_EndMiniGameForChatRoomGroup_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_ENDMINIGAMEFORCHATROOMGROUP_RESPONSE,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_EndMiniGameForChatRoomGroup_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_EndMiniGameForChatRoomGroup_Response)
 
-CChatRoom_MuteUser_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_MuteUser_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_MUTEUSER_REQUEST,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_MuteUser_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_MuteUser_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_MUTEUSER_REQUEST,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_MuteUser_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_MuteUser_Request)
 
-CChatRoom_MuteUser_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_MuteUser_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_MUTEUSER_RESPONSE,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_MuteUser_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_MuteUser_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_MUTEUSER_RESPONSE,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_MuteUser_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_MuteUser_Response)
 
-CChatRoom_KickUser_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_KickUser_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_KICKUSER_REQUEST,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_KickUser_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_KickUser_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_KICKUSER_REQUEST,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_KickUser_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_KickUser_Request)
 
-CChatRoom_KickUser_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_KickUser_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_KICKUSER_RESPONSE,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_KickUser_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_KickUser_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_KICKUSER_RESPONSE,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_KickUser_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_KickUser_Response)
 
-CChatRoom_SetUserBanState_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_SetUserBanState_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_SETUSERBANSTATE_REQUEST,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_SetUserBanState_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_SetUserBanState_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_SETUSERBANSTATE_REQUEST,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_SetUserBanState_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_SetUserBanState_Request)
 
-CChatRoom_SetUserBanState_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_SetUserBanState_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_SETUSERBANSTATE_RESPONSE,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_SetUserBanState_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_SetUserBanState_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_SETUSERBANSTATE_RESPONSE,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_SetUserBanState_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_SetUserBanState_Response)
 
-CChatRoom_RevokeInvite_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_RevokeInvite_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_REVOKEINVITE_REQUEST,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_RevokeInvite_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_RevokeInvite_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_REVOKEINVITE_REQUEST,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_RevokeInvite_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_RevokeInvite_Request)
 
-CChatRoom_RevokeInvite_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_RevokeInvite_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_REVOKEINVITE_RESPONSE,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_RevokeInvite_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_RevokeInvite_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_REVOKEINVITE_RESPONSE,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_RevokeInvite_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_RevokeInvite_Response)
 
-CChatRoom_CreateRole_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_CreateRole_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_CREATEROLE_REQUEST,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_CreateRole_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_CreateRole_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_CREATEROLE_REQUEST,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_CreateRole_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_CreateRole_Request)
 
-CChatRoom_CreateRole_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_CreateRole_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_CREATEROLE_RESPONSE,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_CreateRole_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_CreateRole_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_CREATEROLE_RESPONSE,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_CreateRole_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_CreateRole_Response)
 
-CChatRoom_GetRoles_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_GetRoles_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_GETROLES_REQUEST,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_GetRoles_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_GetRoles_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_GETROLES_REQUEST,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_GetRoles_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_GetRoles_Request)
 
-CChatRoom_GetRoles_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_GetRoles_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_GETROLES_RESPONSE,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_GetRoles_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_GetRoles_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_GETROLES_RESPONSE,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_GetRoles_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_GetRoles_Response)
 
-CChatRoom_RenameRole_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_RenameRole_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_RENAMEROLE_REQUEST,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_RenameRole_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_RenameRole_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_RENAMEROLE_REQUEST,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_RenameRole_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_RenameRole_Request)
 
-CChatRoom_RenameRole_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_RenameRole_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_RENAMEROLE_RESPONSE,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_RenameRole_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_RenameRole_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_RENAMEROLE_RESPONSE,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_RenameRole_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_RenameRole_Response)
 
-CChatRoom_ReorderRole_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_ReorderRole_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_REORDERROLE_REQUEST,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_ReorderRole_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_ReorderRole_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_REORDERROLE_REQUEST,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_ReorderRole_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_ReorderRole_Request)
 
-CChatRoom_ReorderRole_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_ReorderRole_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_REORDERROLE_RESPONSE,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_ReorderRole_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_ReorderRole_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_REORDERROLE_RESPONSE,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_ReorderRole_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_ReorderRole_Response)
 
-CChatRoom_DeleteRole_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_DeleteRole_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_DELETEROLE_REQUEST,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_DeleteRole_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_DeleteRole_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_DELETEROLE_REQUEST,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_DeleteRole_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_DeleteRole_Request)
 
-CChatRoom_DeleteRole_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_DeleteRole_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_DELETEROLE_RESPONSE,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_DeleteRole_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_DeleteRole_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_DELETEROLE_RESPONSE,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_DeleteRole_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_DeleteRole_Response)
 
-CChatRoom_GetRoleActions_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_GetRoleActions_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_GETROLEACTIONS_REQUEST,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_GetRoleActions_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_GetRoleActions_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_GETROLEACTIONS_REQUEST,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_GetRoleActions_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_GetRoleActions_Request)
 
-CChatRoom_GetRoleActions_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_GetRoleActions_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_GETROLEACTIONS_RESPONSE,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_GetRoleActions_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_GetRoleActions_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_GETROLEACTIONS_RESPONSE,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_GetRoleActions_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_GetRoleActions_Response)
 
-CChatRoom_ReplaceRoleActions_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_ReplaceRoleActions_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_REPLACEROLEACTIONS_REQUEST,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_ReplaceRoleActions_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_ReplaceRoleActions_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_REPLACEROLEACTIONS_REQUEST,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_ReplaceRoleActions_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_ReplaceRoleActions_Request)
 
-CChatRoom_ReplaceRoleActions_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_ReplaceRoleActions_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_REPLACEROLEACTIONS_RESPONSE,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_ReplaceRoleActions_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_ReplaceRoleActions_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_REPLACEROLEACTIONS_RESPONSE,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_ReplaceRoleActions_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_ReplaceRoleActions_Response)
 
-CChatRoom_AddRoleToUser_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_AddRoleToUser_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_ADDROLETOUSER_REQUEST,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_AddRoleToUser_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_AddRoleToUser_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_ADDROLETOUSER_REQUEST,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_AddRoleToUser_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_AddRoleToUser_Request)
 
-CChatRoom_AddRoleToUser_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_AddRoleToUser_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_ADDROLETOUSER_RESPONSE,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_AddRoleToUser_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_AddRoleToUser_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_ADDROLETOUSER_RESPONSE,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_AddRoleToUser_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_AddRoleToUser_Response)
 
-CChatRoom_GetRolesForUser_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_GetRolesForUser_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_GETROLESFORUSER_REQUEST,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_GetRolesForUser_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_GetRolesForUser_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_GETROLESFORUSER_REQUEST,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_GetRolesForUser_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_GetRolesForUser_Request)
 
-CChatRoom_GetRolesForUser_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_GetRolesForUser_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_GETROLESFORUSER_RESPONSE,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_GetRolesForUser_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_GetRolesForUser_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_GETROLESFORUSER_RESPONSE,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_GetRolesForUser_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_GetRolesForUser_Response)
 
-CChatRoom_DeleteRoleFromUser_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_DeleteRoleFromUser_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_DELETEROLEFROMUSER_REQUEST,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_DeleteRoleFromUser_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_DeleteRoleFromUser_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_DELETEROLEFROMUSER_REQUEST,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_DeleteRoleFromUser_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_DeleteRoleFromUser_Request)
 
-CChatRoom_DeleteRoleFromUser_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_DeleteRoleFromUser_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_DELETEROLEFROMUSER_RESPONSE,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_DeleteRoleFromUser_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_DeleteRoleFromUser_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_DELETEROLEFROMUSER_RESPONSE,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_DeleteRoleFromUser_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_DeleteRoleFromUser_Response)
 
-CChatRoom_JoinChatRoomGroup_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_JoinChatRoomGroup_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_JOINCHATROOMGROUP_REQUEST,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_JoinChatRoomGroup_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_JoinChatRoomGroup_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_JOINCHATROOMGROUP_REQUEST,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_JoinChatRoomGroup_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_JoinChatRoomGroup_Request)
 
-CChatRoom_JoinChatRoomGroup_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_JoinChatRoomGroup_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_JOINCHATROOMGROUP_RESPONSE,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_JoinChatRoomGroup_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_JoinChatRoomGroup_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_JOINCHATROOMGROUP_RESPONSE,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_JoinChatRoomGroup_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_JoinChatRoomGroup_Response)
 
-CChatRoom_InviteFriendToChatRoomGroup_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_InviteFriendToChatRoomGroup_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_INVITEFRIENDTOCHATROOMGROUP_REQUEST,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_InviteFriendToChatRoomGroup_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_InviteFriendToChatRoomGroup_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_INVITEFRIENDTOCHATROOMGROUP_REQUEST,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_InviteFriendToChatRoomGroup_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_InviteFriendToChatRoomGroup_Request)
 
-CChatRoom_InviteFriendToChatRoomGroup_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_InviteFriendToChatRoomGroup_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_INVITEFRIENDTOCHATROOMGROUP_RESPONSE,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_InviteFriendToChatRoomGroup_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_InviteFriendToChatRoomGroup_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_INVITEFRIENDTOCHATROOMGROUP_RESPONSE,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_InviteFriendToChatRoomGroup_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_InviteFriendToChatRoomGroup_Response)
 
-CChatRoom_LeaveChatRoomGroup_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_LeaveChatRoomGroup_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_LEAVECHATROOMGROUP_REQUEST,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_LeaveChatRoomGroup_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_LeaveChatRoomGroup_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_LEAVECHATROOMGROUP_REQUEST,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_LeaveChatRoomGroup_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_LeaveChatRoomGroup_Request)
 
-CChatRoom_LeaveChatRoomGroup_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_LeaveChatRoomGroup_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_LEAVECHATROOMGROUP_RESPONSE,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_LeaveChatRoomGroup_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_LeaveChatRoomGroup_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_LEAVECHATROOMGROUP_RESPONSE,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_LeaveChatRoomGroup_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_LeaveChatRoomGroup_Response)
 
-CChatRoom_CreateChatRoom_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_CreateChatRoom_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_CREATECHATROOM_REQUEST,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_CreateChatRoom_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_CreateChatRoom_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_CREATECHATROOM_REQUEST,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_CreateChatRoom_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_CreateChatRoom_Request)
 
-CChatRoom_CreateChatRoom_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_CreateChatRoom_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_CREATECHATROOM_RESPONSE,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_CreateChatRoom_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_CreateChatRoom_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_CREATECHATROOM_RESPONSE,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_CreateChatRoom_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_CreateChatRoom_Response)
 
-CChatRoom_DeleteChatRoom_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_DeleteChatRoom_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_DELETECHATROOM_REQUEST,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_DeleteChatRoom_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_DeleteChatRoom_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_DELETECHATROOM_REQUEST,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_DeleteChatRoom_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_DeleteChatRoom_Request)
 
-CChatRoom_DeleteChatRoom_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_DeleteChatRoom_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_DELETECHATROOM_RESPONSE,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_DeleteChatRoom_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_DeleteChatRoom_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_DELETECHATROOM_RESPONSE,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_DeleteChatRoom_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_DeleteChatRoom_Response)
 
-CChatRoom_RenameChatRoom_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_RenameChatRoom_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_RENAMECHATROOM_REQUEST,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_RenameChatRoom_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_RenameChatRoom_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_RENAMECHATROOM_REQUEST,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_RenameChatRoom_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_RenameChatRoom_Request)
 
-CChatRoom_RenameChatRoom_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_RenameChatRoom_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_RENAMECHATROOM_RESPONSE,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_RenameChatRoom_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_RenameChatRoom_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_RENAMECHATROOM_RESPONSE,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_RenameChatRoom_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_RenameChatRoom_Response)
 
-CChatRoom_ReorderChatRoom_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_ReorderChatRoom_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_REORDERCHATROOM_REQUEST,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_ReorderChatRoom_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_ReorderChatRoom_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_REORDERCHATROOM_REQUEST,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_ReorderChatRoom_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_ReorderChatRoom_Request)
 
-CChatRoom_ReorderChatRoom_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_ReorderChatRoom_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_REORDERCHATROOM_RESPONSE,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_ReorderChatRoom_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_ReorderChatRoom_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_REORDERCHATROOM_RESPONSE,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_ReorderChatRoom_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_ReorderChatRoom_Response)
 
-CChatRoom_SendChatMessage_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_SendChatMessage_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_SENDCHATMESSAGE_REQUEST,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_SendChatMessage_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_SendChatMessage_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_SENDCHATMESSAGE_REQUEST,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_SendChatMessage_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_SendChatMessage_Request)
 
-CChatRoom_SendChatMessage_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_SendChatMessage_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_SENDCHATMESSAGE_RESPONSE,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_SendChatMessage_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_SendChatMessage_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_SENDCHATMESSAGE_RESPONSE,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_SendChatMessage_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_SendChatMessage_Response)
 
-CChatRoom_JoinVoiceChat_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_JoinVoiceChat_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_JOINVOICECHAT_REQUEST,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_JoinVoiceChat_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_JoinVoiceChat_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_JOINVOICECHAT_REQUEST,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_JoinVoiceChat_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_JoinVoiceChat_Request)
 
-CChatRoom_JoinVoiceChat_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_JoinVoiceChat_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_JOINVOICECHAT_RESPONSE,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_JoinVoiceChat_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_JoinVoiceChat_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_JOINVOICECHAT_RESPONSE,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_JoinVoiceChat_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_JoinVoiceChat_Response)
 
-CChatRoom_LeaveVoiceChat_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_LeaveVoiceChat_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_LEAVEVOICECHAT_REQUEST,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_LeaveVoiceChat_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_LeaveVoiceChat_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_LEAVEVOICECHAT_REQUEST,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_LeaveVoiceChat_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_LeaveVoiceChat_Request)
 
-CChatRoom_LeaveVoiceChat_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_LeaveVoiceChat_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_LEAVEVOICECHAT_RESPONSE,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_LeaveVoiceChat_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_LeaveVoiceChat_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_LEAVEVOICECHAT_RESPONSE,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_LeaveVoiceChat_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_LeaveVoiceChat_Response)
 
-CChatRoom_GetMessageHistory_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_GetMessageHistory_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_GETMESSAGEHISTORY_REQUEST,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_GetMessageHistory_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_GetMessageHistory_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_GETMESSAGEHISTORY_REQUEST,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_GetMessageHistory_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_GetMessageHistory_Request)
 
-ServerMessage = _reflection.GeneratedProtocolMessageType('ServerMessage', (_message.Message,), dict(
-  DESCRIPTOR = _SERVERMESSAGE,
-  __module__ = 'steammessages_chat_pb2'
+ServerMessage = _reflection.GeneratedProtocolMessageType('ServerMessage', (_message.Message,), {
+  'DESCRIPTOR' : _SERVERMESSAGE,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:ServerMessage)
-  ))
+  })
 _sym_db.RegisterMessage(ServerMessage)
 
-CChatRoom_GetMessageHistory_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_GetMessageHistory_Response', (_message.Message,), dict(
+CChatRoom_GetMessageHistory_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_GetMessageHistory_Response', (_message.Message,), {
 
-  ChatMessage = _reflection.GeneratedProtocolMessageType('ChatMessage', (_message.Message,), dict(
+  'ChatMessage' : _reflection.GeneratedProtocolMessageType('ChatMessage', (_message.Message,), {
 
-    MessageReaction = _reflection.GeneratedProtocolMessageType('MessageReaction', (_message.Message,), dict(
-      DESCRIPTOR = _CCHATROOM_GETMESSAGEHISTORY_RESPONSE_CHATMESSAGE_MESSAGEREACTION,
-      __module__ = 'steammessages_chat_pb2'
+    'MessageReaction' : _reflection.GeneratedProtocolMessageType('MessageReaction', (_message.Message,), {
+      'DESCRIPTOR' : _CCHATROOM_GETMESSAGEHISTORY_RESPONSE_CHATMESSAGE_MESSAGEREACTION,
+      '__module__' : 'steammessages_chat_pb2'
       # @@protoc_insertion_point(class_scope:CChatRoom_GetMessageHistory_Response.ChatMessage.MessageReaction)
-      ))
+      })
     ,
-    DESCRIPTOR = _CCHATROOM_GETMESSAGEHISTORY_RESPONSE_CHATMESSAGE,
-    __module__ = 'steammessages_chat_pb2'
+    'DESCRIPTOR' : _CCHATROOM_GETMESSAGEHISTORY_RESPONSE_CHATMESSAGE,
+    '__module__' : 'steammessages_chat_pb2'
     # @@protoc_insertion_point(class_scope:CChatRoom_GetMessageHistory_Response.ChatMessage)
-    ))
+    })
   ,
-  DESCRIPTOR = _CCHATROOM_GETMESSAGEHISTORY_RESPONSE,
-  __module__ = 'steammessages_chat_pb2'
+  'DESCRIPTOR' : _CCHATROOM_GETMESSAGEHISTORY_RESPONSE,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_GetMessageHistory_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_GetMessageHistory_Response)
 _sym_db.RegisterMessage(CChatRoom_GetMessageHistory_Response.ChatMessage)
 _sym_db.RegisterMessage(CChatRoom_GetMessageHistory_Response.ChatMessage.MessageReaction)
 
-CChatRoom_GetMyChatRoomGroups_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_GetMyChatRoomGroups_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_GETMYCHATROOMGROUPS_REQUEST,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_GetMyChatRoomGroups_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_GetMyChatRoomGroups_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_GETMYCHATROOMGROUPS_REQUEST,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_GetMyChatRoomGroups_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_GetMyChatRoomGroups_Request)
 
-CChatRoom_GetChatRoomGroupSummary_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_GetChatRoomGroupSummary_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_GETCHATROOMGROUPSUMMARY_RESPONSE,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_GetChatRoomGroupSummary_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_GetChatRoomGroupSummary_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_GETCHATROOMGROUPSUMMARY_RESPONSE,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_GetChatRoomGroupSummary_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_GetChatRoomGroupSummary_Response)
 
-CChatRoomSummaryPair = _reflection.GeneratedProtocolMessageType('CChatRoomSummaryPair', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOMSUMMARYPAIR,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoomSummaryPair = _reflection.GeneratedProtocolMessageType('CChatRoomSummaryPair', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOMSUMMARYPAIR,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoomSummaryPair)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoomSummaryPair)
 
-CChatRoom_GetMyChatRoomGroups_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_GetMyChatRoomGroups_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_GETMYCHATROOMGROUPS_RESPONSE,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_GetMyChatRoomGroups_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_GetMyChatRoomGroups_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_GETMYCHATROOMGROUPS_RESPONSE,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_GetMyChatRoomGroups_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_GetMyChatRoomGroups_Response)
 
-CChatRoom_GetChatRoomGroupState_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_GetChatRoomGroupState_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_GETCHATROOMGROUPSTATE_REQUEST,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_GetChatRoomGroupState_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_GetChatRoomGroupState_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_GETCHATROOMGROUPSTATE_REQUEST,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_GetChatRoomGroupState_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_GetChatRoomGroupState_Request)
 
-CChatRoom_GetChatRoomGroupState_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_GetChatRoomGroupState_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_GETCHATROOMGROUPSTATE_RESPONSE,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_GetChatRoomGroupState_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_GetChatRoomGroupState_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_GETCHATROOMGROUPSTATE_RESPONSE,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_GetChatRoomGroupState_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_GetChatRoomGroupState_Response)
 
-CChatRoom_GetChatRoomGroupSummary_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_GetChatRoomGroupSummary_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_GETCHATROOMGROUPSUMMARY_REQUEST,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_GetChatRoomGroupSummary_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_GetChatRoomGroupSummary_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_GETCHATROOMGROUPSUMMARY_REQUEST,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_GetChatRoomGroupSummary_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_GetChatRoomGroupSummary_Request)
 
-CChatRoom_SetAppChatRoomGroupForceActive_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_SetAppChatRoomGroupForceActive_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_SETAPPCHATROOMGROUPFORCEACTIVE_REQUEST,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_SetAppChatRoomGroupForceActive_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_SetAppChatRoomGroupForceActive_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_SETAPPCHATROOMGROUPFORCEACTIVE_REQUEST,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_SetAppChatRoomGroupForceActive_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_SetAppChatRoomGroupForceActive_Request)
 
-CChatRoom_SetAppChatRoomGroupForceActive_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_SetAppChatRoomGroupForceActive_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_SETAPPCHATROOMGROUPFORCEACTIVE_RESPONSE,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_SetAppChatRoomGroupForceActive_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_SetAppChatRoomGroupForceActive_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_SETAPPCHATROOMGROUPFORCEACTIVE_RESPONSE,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_SetAppChatRoomGroupForceActive_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_SetAppChatRoomGroupForceActive_Response)
 
-CChatRoom_SetAppChatRoomGroupStopForceActive_Notification = _reflection.GeneratedProtocolMessageType('CChatRoom_SetAppChatRoomGroupStopForceActive_Notification', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_SETAPPCHATROOMGROUPSTOPFORCEACTIVE_NOTIFICATION,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_SetAppChatRoomGroupStopForceActive_Notification = _reflection.GeneratedProtocolMessageType('CChatRoom_SetAppChatRoomGroupStopForceActive_Notification', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_SETAPPCHATROOMGROUPSTOPFORCEACTIVE_NOTIFICATION,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_SetAppChatRoomGroupStopForceActive_Notification)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_SetAppChatRoomGroupStopForceActive_Notification)
 
-CChatRoom_AckChatMessage_Notification = _reflection.GeneratedProtocolMessageType('CChatRoom_AckChatMessage_Notification', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_ACKCHATMESSAGE_NOTIFICATION,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_AckChatMessage_Notification = _reflection.GeneratedProtocolMessageType('CChatRoom_AckChatMessage_Notification', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_ACKCHATMESSAGE_NOTIFICATION,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_AckChatMessage_Notification)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_AckChatMessage_Notification)
 
-CChatRoom_CreateInviteLink_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_CreateInviteLink_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_CREATEINVITELINK_REQUEST,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_CreateInviteLink_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_CreateInviteLink_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_CREATEINVITELINK_REQUEST,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_CreateInviteLink_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_CreateInviteLink_Request)
 
-CChatRoom_CreateInviteLink_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_CreateInviteLink_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_CREATEINVITELINK_RESPONSE,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_CreateInviteLink_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_CreateInviteLink_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_CREATEINVITELINK_RESPONSE,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_CreateInviteLink_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_CreateInviteLink_Response)
 
-CChatRoom_GetInviteLinkInfo_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_GetInviteLinkInfo_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_GETINVITELINKINFO_REQUEST,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_GetInviteLinkInfo_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_GetInviteLinkInfo_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_GETINVITELINKINFO_REQUEST,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_GetInviteLinkInfo_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_GetInviteLinkInfo_Request)
 
-CChatRoom_GetInviteLinkInfo_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_GetInviteLinkInfo_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_GETINVITELINKINFO_RESPONSE,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_GetInviteLinkInfo_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_GetInviteLinkInfo_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_GETINVITELINKINFO_RESPONSE,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_GetInviteLinkInfo_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_GetInviteLinkInfo_Response)
 
-CChatRoom_GetInviteInfo_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_GetInviteInfo_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_GETINVITEINFO_REQUEST,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_GetInviteInfo_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_GetInviteInfo_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_GETINVITEINFO_REQUEST,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_GetInviteInfo_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_GetInviteInfo_Request)
 
-CChatRoom_GetInviteInfo_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_GetInviteInfo_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_GETINVITEINFO_RESPONSE,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_GetInviteInfo_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_GetInviteInfo_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_GETINVITEINFO_RESPONSE,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_GetInviteInfo_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_GetInviteInfo_Response)
 
-CChatRoom_GetInviteLinksForGroup_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_GetInviteLinksForGroup_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_GETINVITELINKSFORGROUP_REQUEST,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_GetInviteLinksForGroup_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_GetInviteLinksForGroup_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_GETINVITELINKSFORGROUP_REQUEST,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_GetInviteLinksForGroup_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_GetInviteLinksForGroup_Request)
 
-CChatRoom_GetInviteLinksForGroup_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_GetInviteLinksForGroup_Response', (_message.Message,), dict(
+CChatRoom_GetInviteLinksForGroup_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_GetInviteLinksForGroup_Response', (_message.Message,), {
 
-  LinkInfo = _reflection.GeneratedProtocolMessageType('LinkInfo', (_message.Message,), dict(
-    DESCRIPTOR = _CCHATROOM_GETINVITELINKSFORGROUP_RESPONSE_LINKINFO,
-    __module__ = 'steammessages_chat_pb2'
+  'LinkInfo' : _reflection.GeneratedProtocolMessageType('LinkInfo', (_message.Message,), {
+    'DESCRIPTOR' : _CCHATROOM_GETINVITELINKSFORGROUP_RESPONSE_LINKINFO,
+    '__module__' : 'steammessages_chat_pb2'
     # @@protoc_insertion_point(class_scope:CChatRoom_GetInviteLinksForGroup_Response.LinkInfo)
-    ))
+    })
   ,
-  DESCRIPTOR = _CCHATROOM_GETINVITELINKSFORGROUP_RESPONSE,
-  __module__ = 'steammessages_chat_pb2'
+  'DESCRIPTOR' : _CCHATROOM_GETINVITELINKSFORGROUP_RESPONSE,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_GetInviteLinksForGroup_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_GetInviteLinksForGroup_Response)
 _sym_db.RegisterMessage(CChatRoom_GetInviteLinksForGroup_Response.LinkInfo)
 
-CChatRoom_GetBanList_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_GetBanList_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_GETBANLIST_REQUEST,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_GetBanList_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_GetBanList_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_GETBANLIST_REQUEST,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_GetBanList_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_GetBanList_Request)
 
-CChatRoom_GetBanList_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_GetBanList_Response', (_message.Message,), dict(
+CChatRoom_GetBanList_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_GetBanList_Response', (_message.Message,), {
 
-  BanInfo = _reflection.GeneratedProtocolMessageType('BanInfo', (_message.Message,), dict(
-    DESCRIPTOR = _CCHATROOM_GETBANLIST_RESPONSE_BANINFO,
-    __module__ = 'steammessages_chat_pb2'
+  'BanInfo' : _reflection.GeneratedProtocolMessageType('BanInfo', (_message.Message,), {
+    'DESCRIPTOR' : _CCHATROOM_GETBANLIST_RESPONSE_BANINFO,
+    '__module__' : 'steammessages_chat_pb2'
     # @@protoc_insertion_point(class_scope:CChatRoom_GetBanList_Response.BanInfo)
-    ))
+    })
   ,
-  DESCRIPTOR = _CCHATROOM_GETBANLIST_RESPONSE,
-  __module__ = 'steammessages_chat_pb2'
+  'DESCRIPTOR' : _CCHATROOM_GETBANLIST_RESPONSE,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_GetBanList_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_GetBanList_Response)
 _sym_db.RegisterMessage(CChatRoom_GetBanList_Response.BanInfo)
 
-CChatRoom_GetInviteList_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_GetInviteList_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_GETINVITELIST_REQUEST,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_GetInviteList_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_GetInviteList_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_GETINVITELIST_REQUEST,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_GetInviteList_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_GetInviteList_Request)
 
-CChatRoomGroupInvite = _reflection.GeneratedProtocolMessageType('CChatRoomGroupInvite', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOMGROUPINVITE,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoomGroupInvite = _reflection.GeneratedProtocolMessageType('CChatRoomGroupInvite', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOMGROUPINVITE,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoomGroupInvite)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoomGroupInvite)
 
-CChatRoom_GetInviteList_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_GetInviteList_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_GETINVITELIST_RESPONSE,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_GetInviteList_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_GetInviteList_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_GETINVITELIST_RESPONSE,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_GetInviteList_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_GetInviteList_Response)
 
-CChatRoom_DeleteInviteLink_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_DeleteInviteLink_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_DELETEINVITELINK_REQUEST,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_DeleteInviteLink_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_DeleteInviteLink_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_DELETEINVITELINK_REQUEST,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_DeleteInviteLink_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_DeleteInviteLink_Request)
 
-CChatRoom_DeleteInviteLink_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_DeleteInviteLink_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_DELETEINVITELINK_RESPONSE,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_DeleteInviteLink_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_DeleteInviteLink_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_DELETEINVITELINK_RESPONSE,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_DeleteInviteLink_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_DeleteInviteLink_Response)
 
-CChatRoom_SetSessionActiveChatRoomGroups_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_SetSessionActiveChatRoomGroups_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_SETSESSIONACTIVECHATROOMGROUPS_REQUEST,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_SetSessionActiveChatRoomGroups_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_SetSessionActiveChatRoomGroups_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_SETSESSIONACTIVECHATROOMGROUPS_REQUEST,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_SetSessionActiveChatRoomGroups_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_SetSessionActiveChatRoomGroups_Request)
 
-CChatRoom_SetSessionActiveChatRoomGroups_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_SetSessionActiveChatRoomGroups_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_SETSESSIONACTIVECHATROOMGROUPS_RESPONSE,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_SetSessionActiveChatRoomGroups_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_SetSessionActiveChatRoomGroups_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_SETSESSIONACTIVECHATROOMGROUPS_RESPONSE,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_SetSessionActiveChatRoomGroups_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_SetSessionActiveChatRoomGroups_Response)
 
-CChatRoom_SetUserChatGroupPreferences_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_SetUserChatGroupPreferences_Request', (_message.Message,), dict(
+CChatRoom_SetUserChatGroupPreferences_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_SetUserChatGroupPreferences_Request', (_message.Message,), {
 
-  ChatGroupPreferences = _reflection.GeneratedProtocolMessageType('ChatGroupPreferences', (_message.Message,), dict(
-    DESCRIPTOR = _CCHATROOM_SETUSERCHATGROUPPREFERENCES_REQUEST_CHATGROUPPREFERENCES,
-    __module__ = 'steammessages_chat_pb2'
+  'ChatGroupPreferences' : _reflection.GeneratedProtocolMessageType('ChatGroupPreferences', (_message.Message,), {
+    'DESCRIPTOR' : _CCHATROOM_SETUSERCHATGROUPPREFERENCES_REQUEST_CHATGROUPPREFERENCES,
+    '__module__' : 'steammessages_chat_pb2'
     # @@protoc_insertion_point(class_scope:CChatRoom_SetUserChatGroupPreferences_Request.ChatGroupPreferences)
-    ))
+    })
   ,
 
-  ChatRoomPreferences = _reflection.GeneratedProtocolMessageType('ChatRoomPreferences', (_message.Message,), dict(
-    DESCRIPTOR = _CCHATROOM_SETUSERCHATGROUPPREFERENCES_REQUEST_CHATROOMPREFERENCES,
-    __module__ = 'steammessages_chat_pb2'
+  'ChatRoomPreferences' : _reflection.GeneratedProtocolMessageType('ChatRoomPreferences', (_message.Message,), {
+    'DESCRIPTOR' : _CCHATROOM_SETUSERCHATGROUPPREFERENCES_REQUEST_CHATROOMPREFERENCES,
+    '__module__' : 'steammessages_chat_pb2'
     # @@protoc_insertion_point(class_scope:CChatRoom_SetUserChatGroupPreferences_Request.ChatRoomPreferences)
-    ))
+    })
   ,
-  DESCRIPTOR = _CCHATROOM_SETUSERCHATGROUPPREFERENCES_REQUEST,
-  __module__ = 'steammessages_chat_pb2'
+  'DESCRIPTOR' : _CCHATROOM_SETUSERCHATGROUPPREFERENCES_REQUEST,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_SetUserChatGroupPreferences_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_SetUserChatGroupPreferences_Request)
 _sym_db.RegisterMessage(CChatRoom_SetUserChatGroupPreferences_Request.ChatGroupPreferences)
 _sym_db.RegisterMessage(CChatRoom_SetUserChatGroupPreferences_Request.ChatRoomPreferences)
 
-CChatRoom_SetUserChatGroupPreferences_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_SetUserChatGroupPreferences_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_SETUSERCHATGROUPPREFERENCES_RESPONSE,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_SetUserChatGroupPreferences_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_SetUserChatGroupPreferences_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_SETUSERCHATGROUPPREFERENCES_RESPONSE,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_SetUserChatGroupPreferences_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_SetUserChatGroupPreferences_Response)
 
-CChatRoom_DeleteChatMessages_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_DeleteChatMessages_Request', (_message.Message,), dict(
+CChatRoom_DeleteChatMessages_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_DeleteChatMessages_Request', (_message.Message,), {
 
-  Message = _reflection.GeneratedProtocolMessageType('Message', (_message.Message,), dict(
-    DESCRIPTOR = _CCHATROOM_DELETECHATMESSAGES_REQUEST_MESSAGE,
-    __module__ = 'steammessages_chat_pb2'
+  'Message' : _reflection.GeneratedProtocolMessageType('Message', (_message.Message,), {
+    'DESCRIPTOR' : _CCHATROOM_DELETECHATMESSAGES_REQUEST_MESSAGE,
+    '__module__' : 'steammessages_chat_pb2'
     # @@protoc_insertion_point(class_scope:CChatRoom_DeleteChatMessages_Request.Message)
-    ))
+    })
   ,
-  DESCRIPTOR = _CCHATROOM_DELETECHATMESSAGES_REQUEST,
-  __module__ = 'steammessages_chat_pb2'
+  'DESCRIPTOR' : _CCHATROOM_DELETECHATMESSAGES_REQUEST,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_DeleteChatMessages_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_DeleteChatMessages_Request)
 _sym_db.RegisterMessage(CChatRoom_DeleteChatMessages_Request.Message)
 
-CChatRoom_DeleteChatMessages_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_DeleteChatMessages_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_DELETECHATMESSAGES_RESPONSE,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_DeleteChatMessages_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_DeleteChatMessages_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_DELETECHATMESSAGES_RESPONSE,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_DeleteChatMessages_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_DeleteChatMessages_Response)
 
-CChatRoom_UpdateMemberListView_Notification = _reflection.GeneratedProtocolMessageType('CChatRoom_UpdateMemberListView_Notification', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_UPDATEMEMBERLISTVIEW_NOTIFICATION,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_UpdateMemberListView_Notification = _reflection.GeneratedProtocolMessageType('CChatRoom_UpdateMemberListView_Notification', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_UPDATEMEMBERLISTVIEW_NOTIFICATION,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_UpdateMemberListView_Notification)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_UpdateMemberListView_Notification)
 
-CChatRoom_SearchMembers_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_SearchMembers_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_SEARCHMEMBERS_REQUEST,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_SearchMembers_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_SearchMembers_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_SEARCHMEMBERS_REQUEST,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_SearchMembers_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_SearchMembers_Request)
 
-CChatRoom_SearchMembers_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_SearchMembers_Response', (_message.Message,), dict(
+CChatRoom_SearchMembers_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_SearchMembers_Response', (_message.Message,), {
 
-  MemberMatch = _reflection.GeneratedProtocolMessageType('MemberMatch', (_message.Message,), dict(
-    DESCRIPTOR = _CCHATROOM_SEARCHMEMBERS_RESPONSE_MEMBERMATCH,
-    __module__ = 'steammessages_chat_pb2'
+  'MemberMatch' : _reflection.GeneratedProtocolMessageType('MemberMatch', (_message.Message,), {
+    'DESCRIPTOR' : _CCHATROOM_SEARCHMEMBERS_RESPONSE_MEMBERMATCH,
+    '__module__' : 'steammessages_chat_pb2'
     # @@protoc_insertion_point(class_scope:CChatRoom_SearchMembers_Response.MemberMatch)
-    ))
+    })
   ,
-  DESCRIPTOR = _CCHATROOM_SEARCHMEMBERS_RESPONSE,
-  __module__ = 'steammessages_chat_pb2'
+  'DESCRIPTOR' : _CCHATROOM_SEARCHMEMBERS_RESPONSE,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_SearchMembers_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_SearchMembers_Response)
 _sym_db.RegisterMessage(CChatRoom_SearchMembers_Response.MemberMatch)
 
-CChatRoom_UpdateMessageReaction_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_UpdateMessageReaction_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_UPDATEMESSAGEREACTION_REQUEST,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_UpdateMessageReaction_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_UpdateMessageReaction_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_UPDATEMESSAGEREACTION_REQUEST,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_UpdateMessageReaction_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_UpdateMessageReaction_Request)
 
-CChatRoom_UpdateMessageReaction_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_UpdateMessageReaction_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_UPDATEMESSAGEREACTION_RESPONSE,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_UpdateMessageReaction_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_UpdateMessageReaction_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_UPDATEMESSAGEREACTION_RESPONSE,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_UpdateMessageReaction_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_UpdateMessageReaction_Response)
 
-CChatRoom_GetMessageReactionReactors_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_GetMessageReactionReactors_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_GETMESSAGEREACTIONREACTORS_REQUEST,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_GetMessageReactionReactors_Request = _reflection.GeneratedProtocolMessageType('CChatRoom_GetMessageReactionReactors_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_GETMESSAGEREACTIONREACTORS_REQUEST,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_GetMessageReactionReactors_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_GetMessageReactionReactors_Request)
 
-CChatRoom_GetMessageReactionReactors_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_GetMessageReactionReactors_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_GETMESSAGEREACTIONREACTORS_RESPONSE,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_GetMessageReactionReactors_Response = _reflection.GeneratedProtocolMessageType('CChatRoom_GetMessageReactionReactors_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_GETMESSAGEREACTIONREACTORS_RESPONSE,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_GetMessageReactionReactors_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_GetMessageReactionReactors_Response)
 
-CClanChatRooms_GetClanChatRoomInfo_Request = _reflection.GeneratedProtocolMessageType('CClanChatRooms_GetClanChatRoomInfo_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCLANCHATROOMS_GETCLANCHATROOMINFO_REQUEST,
-  __module__ = 'steammessages_chat_pb2'
+CClanChatRooms_GetClanChatRoomInfo_Request = _reflection.GeneratedProtocolMessageType('CClanChatRooms_GetClanChatRoomInfo_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCLANCHATROOMS_GETCLANCHATROOMINFO_REQUEST,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CClanChatRooms_GetClanChatRoomInfo_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CClanChatRooms_GetClanChatRoomInfo_Request)
 
-CClanChatRooms_GetClanChatRoomInfo_Response = _reflection.GeneratedProtocolMessageType('CClanChatRooms_GetClanChatRoomInfo_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCLANCHATROOMS_GETCLANCHATROOMINFO_RESPONSE,
-  __module__ = 'steammessages_chat_pb2'
+CClanChatRooms_GetClanChatRoomInfo_Response = _reflection.GeneratedProtocolMessageType('CClanChatRooms_GetClanChatRoomInfo_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCLANCHATROOMS_GETCLANCHATROOMINFO_RESPONSE,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CClanChatRooms_GetClanChatRoomInfo_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CClanChatRooms_GetClanChatRoomInfo_Response)
 
-CClanChatRooms_SetClanChatRoomPrivate_Request = _reflection.GeneratedProtocolMessageType('CClanChatRooms_SetClanChatRoomPrivate_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCLANCHATROOMS_SETCLANCHATROOMPRIVATE_REQUEST,
-  __module__ = 'steammessages_chat_pb2'
+CClanChatRooms_SetClanChatRoomPrivate_Request = _reflection.GeneratedProtocolMessageType('CClanChatRooms_SetClanChatRoomPrivate_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCLANCHATROOMS_SETCLANCHATROOMPRIVATE_REQUEST,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CClanChatRooms_SetClanChatRoomPrivate_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CClanChatRooms_SetClanChatRoomPrivate_Request)
 
-CClanChatRooms_SetClanChatRoomPrivate_Response = _reflection.GeneratedProtocolMessageType('CClanChatRooms_SetClanChatRoomPrivate_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCLANCHATROOMS_SETCLANCHATROOMPRIVATE_RESPONSE,
-  __module__ = 'steammessages_chat_pb2'
+CClanChatRooms_SetClanChatRoomPrivate_Response = _reflection.GeneratedProtocolMessageType('CClanChatRooms_SetClanChatRoomPrivate_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCLANCHATROOMS_SETCLANCHATROOMPRIVATE_RESPONSE,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CClanChatRooms_SetClanChatRoomPrivate_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CClanChatRooms_SetClanChatRoomPrivate_Response)
 
-CChatMentions = _reflection.GeneratedProtocolMessageType('CChatMentions', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATMENTIONS,
-  __module__ = 'steammessages_chat_pb2'
+CChatMentions = _reflection.GeneratedProtocolMessageType('CChatMentions', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATMENTIONS,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatMentions)
-  ))
+  })
 _sym_db.RegisterMessage(CChatMentions)
 
-CChatRoom_IncomingChatMessage_Notification = _reflection.GeneratedProtocolMessageType('CChatRoom_IncomingChatMessage_Notification', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_INCOMINGCHATMESSAGE_NOTIFICATION,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_IncomingChatMessage_Notification = _reflection.GeneratedProtocolMessageType('CChatRoom_IncomingChatMessage_Notification', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_INCOMINGCHATMESSAGE_NOTIFICATION,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_IncomingChatMessage_Notification)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_IncomingChatMessage_Notification)
 
-CChatRoom_ChatMessageModified_Notification = _reflection.GeneratedProtocolMessageType('CChatRoom_ChatMessageModified_Notification', (_message.Message,), dict(
+CChatRoom_ChatMessageModified_Notification = _reflection.GeneratedProtocolMessageType('CChatRoom_ChatMessageModified_Notification', (_message.Message,), {
 
-  ChatMessage = _reflection.GeneratedProtocolMessageType('ChatMessage', (_message.Message,), dict(
-    DESCRIPTOR = _CCHATROOM_CHATMESSAGEMODIFIED_NOTIFICATION_CHATMESSAGE,
-    __module__ = 'steammessages_chat_pb2'
+  'ChatMessage' : _reflection.GeneratedProtocolMessageType('ChatMessage', (_message.Message,), {
+    'DESCRIPTOR' : _CCHATROOM_CHATMESSAGEMODIFIED_NOTIFICATION_CHATMESSAGE,
+    '__module__' : 'steammessages_chat_pb2'
     # @@protoc_insertion_point(class_scope:CChatRoom_ChatMessageModified_Notification.ChatMessage)
-    ))
+    })
   ,
-  DESCRIPTOR = _CCHATROOM_CHATMESSAGEMODIFIED_NOTIFICATION,
-  __module__ = 'steammessages_chat_pb2'
+  'DESCRIPTOR' : _CCHATROOM_CHATMESSAGEMODIFIED_NOTIFICATION,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_ChatMessageModified_Notification)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_ChatMessageModified_Notification)
 _sym_db.RegisterMessage(CChatRoom_ChatMessageModified_Notification.ChatMessage)
 
-CChatRoom_MemberStateChange_Notification = _reflection.GeneratedProtocolMessageType('CChatRoom_MemberStateChange_Notification', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_MEMBERSTATECHANGE_NOTIFICATION,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_MemberStateChange_Notification = _reflection.GeneratedProtocolMessageType('CChatRoom_MemberStateChange_Notification', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_MEMBERSTATECHANGE_NOTIFICATION,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_MemberStateChange_Notification)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_MemberStateChange_Notification)
 
-CChatRoom_ChatRoomHeaderState_Notification = _reflection.GeneratedProtocolMessageType('CChatRoom_ChatRoomHeaderState_Notification', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_CHATROOMHEADERSTATE_NOTIFICATION,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_ChatRoomHeaderState_Notification = _reflection.GeneratedProtocolMessageType('CChatRoom_ChatRoomHeaderState_Notification', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_CHATROOMHEADERSTATE_NOTIFICATION,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_ChatRoomHeaderState_Notification)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_ChatRoomHeaderState_Notification)
 
-CChatRoom_ChatRoomGroupRoomsChange_Notification = _reflection.GeneratedProtocolMessageType('CChatRoom_ChatRoomGroupRoomsChange_Notification', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_CHATROOMGROUPROOMSCHANGE_NOTIFICATION,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_ChatRoomGroupRoomsChange_Notification = _reflection.GeneratedProtocolMessageType('CChatRoom_ChatRoomGroupRoomsChange_Notification', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_CHATROOMGROUPROOMSCHANGE_NOTIFICATION,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_ChatRoomGroupRoomsChange_Notification)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_ChatRoomGroupRoomsChange_Notification)
 
-CChatRoom_NotifyShouldRejoinChatRoomVoiceChat_Notification = _reflection.GeneratedProtocolMessageType('CChatRoom_NotifyShouldRejoinChatRoomVoiceChat_Notification', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_NOTIFYSHOULDREJOINCHATROOMVOICECHAT_NOTIFICATION,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_NotifyShouldRejoinChatRoomVoiceChat_Notification = _reflection.GeneratedProtocolMessageType('CChatRoom_NotifyShouldRejoinChatRoomVoiceChat_Notification', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_NOTIFYSHOULDREJOINCHATROOMVOICECHAT_NOTIFICATION,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_NotifyShouldRejoinChatRoomVoiceChat_Notification)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_NotifyShouldRejoinChatRoomVoiceChat_Notification)
 
-ChatRoomClient_NotifyChatGroupUserStateChanged_Notification = _reflection.GeneratedProtocolMessageType('ChatRoomClient_NotifyChatGroupUserStateChanged_Notification', (_message.Message,), dict(
-  DESCRIPTOR = _CHATROOMCLIENT_NOTIFYCHATGROUPUSERSTATECHANGED_NOTIFICATION,
-  __module__ = 'steammessages_chat_pb2'
+ChatRoomClient_NotifyChatGroupUserStateChanged_Notification = _reflection.GeneratedProtocolMessageType('ChatRoomClient_NotifyChatGroupUserStateChanged_Notification', (_message.Message,), {
+  'DESCRIPTOR' : _CHATROOMCLIENT_NOTIFYCHATGROUPUSERSTATECHANGED_NOTIFICATION,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:ChatRoomClient_NotifyChatGroupUserStateChanged_Notification)
-  ))
+  })
 _sym_db.RegisterMessage(ChatRoomClient_NotifyChatGroupUserStateChanged_Notification)
 
-ChatRoomClient_NotifyChatRoomDisconnect_Notification = _reflection.GeneratedProtocolMessageType('ChatRoomClient_NotifyChatRoomDisconnect_Notification', (_message.Message,), dict(
-  DESCRIPTOR = _CHATROOMCLIENT_NOTIFYCHATROOMDISCONNECT_NOTIFICATION,
-  __module__ = 'steammessages_chat_pb2'
+ChatRoomClient_NotifyChatRoomDisconnect_Notification = _reflection.GeneratedProtocolMessageType('ChatRoomClient_NotifyChatRoomDisconnect_Notification', (_message.Message,), {
+  'DESCRIPTOR' : _CHATROOMCLIENT_NOTIFYCHATROOMDISCONNECT_NOTIFICATION,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:ChatRoomClient_NotifyChatRoomDisconnect_Notification)
-  ))
+  })
 _sym_db.RegisterMessage(ChatRoomClient_NotifyChatRoomDisconnect_Notification)
 
-CChatRoomMemberListView = _reflection.GeneratedProtocolMessageType('CChatRoomMemberListView', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOMMEMBERLISTVIEW,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoomMemberListView = _reflection.GeneratedProtocolMessageType('CChatRoomMemberListView', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOMMEMBERLISTVIEW,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoomMemberListView)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoomMemberListView)
 
-CChatRoomMemberSummaryCounts = _reflection.GeneratedProtocolMessageType('CChatRoomMemberSummaryCounts', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOMMEMBERSUMMARYCOUNTS,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoomMemberSummaryCounts = _reflection.GeneratedProtocolMessageType('CChatRoomMemberSummaryCounts', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOMMEMBERSUMMARYCOUNTS,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoomMemberSummaryCounts)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoomMemberSummaryCounts)
 
-CChatRoomClient_MemberListViewUpdated_Notification = _reflection.GeneratedProtocolMessageType('CChatRoomClient_MemberListViewUpdated_Notification', (_message.Message,), dict(
+CChatRoomClient_MemberListViewUpdated_Notification = _reflection.GeneratedProtocolMessageType('CChatRoomClient_MemberListViewUpdated_Notification', (_message.Message,), {
 
-  MemberListViewEntry = _reflection.GeneratedProtocolMessageType('MemberListViewEntry', (_message.Message,), dict(
-    DESCRIPTOR = _CCHATROOMCLIENT_MEMBERLISTVIEWUPDATED_NOTIFICATION_MEMBERLISTVIEWENTRY,
-    __module__ = 'steammessages_chat_pb2'
+  'MemberListViewEntry' : _reflection.GeneratedProtocolMessageType('MemberListViewEntry', (_message.Message,), {
+    'DESCRIPTOR' : _CCHATROOMCLIENT_MEMBERLISTVIEWUPDATED_NOTIFICATION_MEMBERLISTVIEWENTRY,
+    '__module__' : 'steammessages_chat_pb2'
     # @@protoc_insertion_point(class_scope:CChatRoomClient_MemberListViewUpdated_Notification.MemberListViewEntry)
-    ))
+    })
   ,
-  DESCRIPTOR = _CCHATROOMCLIENT_MEMBERLISTVIEWUPDATED_NOTIFICATION,
-  __module__ = 'steammessages_chat_pb2'
+  'DESCRIPTOR' : _CCHATROOMCLIENT_MEMBERLISTVIEWUPDATED_NOTIFICATION,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoomClient_MemberListViewUpdated_Notification)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoomClient_MemberListViewUpdated_Notification)
 _sym_db.RegisterMessage(CChatRoomClient_MemberListViewUpdated_Notification.MemberListViewEntry)
 
-CChatRoom_MessageReaction_Notification = _reflection.GeneratedProtocolMessageType('CChatRoom_MessageReaction_Notification', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATROOM_MESSAGEREACTION_NOTIFICATION,
-  __module__ = 'steammessages_chat_pb2'
+CChatRoom_MessageReaction_Notification = _reflection.GeneratedProtocolMessageType('CChatRoom_MessageReaction_Notification', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATROOM_MESSAGEREACTION_NOTIFICATION,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatRoom_MessageReaction_Notification)
-  ))
+  })
 _sym_db.RegisterMessage(CChatRoom_MessageReaction_Notification)
 
-CChatUsability_ClientUsabilityMetrics_Notification = _reflection.GeneratedProtocolMessageType('CChatUsability_ClientUsabilityMetrics_Notification', (_message.Message,), dict(
+CChatUsability_ClientUsabilityMetrics_Notification = _reflection.GeneratedProtocolMessageType('CChatUsability_ClientUsabilityMetrics_Notification', (_message.Message,), {
 
-  Settings = _reflection.GeneratedProtocolMessageType('Settings', (_message.Message,), dict(
-    DESCRIPTOR = _CCHATUSABILITY_CLIENTUSABILITYMETRICS_NOTIFICATION_SETTINGS,
-    __module__ = 'steammessages_chat_pb2'
+  'Settings' : _reflection.GeneratedProtocolMessageType('Settings', (_message.Message,), {
+    'DESCRIPTOR' : _CCHATUSABILITY_CLIENTUSABILITYMETRICS_NOTIFICATION_SETTINGS,
+    '__module__' : 'steammessages_chat_pb2'
     # @@protoc_insertion_point(class_scope:CChatUsability_ClientUsabilityMetrics_Notification.Settings)
-    ))
+    })
   ,
 
-  VoiceSettings = _reflection.GeneratedProtocolMessageType('VoiceSettings', (_message.Message,), dict(
-    DESCRIPTOR = _CCHATUSABILITY_CLIENTUSABILITYMETRICS_NOTIFICATION_VOICESETTINGS,
-    __module__ = 'steammessages_chat_pb2'
+  'VoiceSettings' : _reflection.GeneratedProtocolMessageType('VoiceSettings', (_message.Message,), {
+    'DESCRIPTOR' : _CCHATUSABILITY_CLIENTUSABILITYMETRICS_NOTIFICATION_VOICESETTINGS,
+    '__module__' : 'steammessages_chat_pb2'
     # @@protoc_insertion_point(class_scope:CChatUsability_ClientUsabilityMetrics_Notification.VoiceSettings)
-    ))
+    })
   ,
 
-  UIState = _reflection.GeneratedProtocolMessageType('UIState', (_message.Message,), dict(
+  'UIState' : _reflection.GeneratedProtocolMessageType('UIState', (_message.Message,), {
 
-    CategoryCollapseState = _reflection.GeneratedProtocolMessageType('CategoryCollapseState', (_message.Message,), dict(
-      DESCRIPTOR = _CCHATUSABILITY_CLIENTUSABILITYMETRICS_NOTIFICATION_UISTATE_CATEGORYCOLLAPSESTATE,
-      __module__ = 'steammessages_chat_pb2'
+    'CategoryCollapseState' : _reflection.GeneratedProtocolMessageType('CategoryCollapseState', (_message.Message,), {
+      'DESCRIPTOR' : _CCHATUSABILITY_CLIENTUSABILITYMETRICS_NOTIFICATION_UISTATE_CATEGORYCOLLAPSESTATE,
+      '__module__' : 'steammessages_chat_pb2'
       # @@protoc_insertion_point(class_scope:CChatUsability_ClientUsabilityMetrics_Notification.UIState.CategoryCollapseState)
-      ))
+      })
     ,
-    DESCRIPTOR = _CCHATUSABILITY_CLIENTUSABILITYMETRICS_NOTIFICATION_UISTATE,
-    __module__ = 'steammessages_chat_pb2'
+    'DESCRIPTOR' : _CCHATUSABILITY_CLIENTUSABILITYMETRICS_NOTIFICATION_UISTATE,
+    '__module__' : 'steammessages_chat_pb2'
     # @@protoc_insertion_point(class_scope:CChatUsability_ClientUsabilityMetrics_Notification.UIState)
-    ))
+    })
   ,
 
-  Metrics = _reflection.GeneratedProtocolMessageType('Metrics', (_message.Message,), dict(
-    DESCRIPTOR = _CCHATUSABILITY_CLIENTUSABILITYMETRICS_NOTIFICATION_METRICS,
-    __module__ = 'steammessages_chat_pb2'
+  'Metrics' : _reflection.GeneratedProtocolMessageType('Metrics', (_message.Message,), {
+    'DESCRIPTOR' : _CCHATUSABILITY_CLIENTUSABILITYMETRICS_NOTIFICATION_METRICS,
+    '__module__' : 'steammessages_chat_pb2'
     # @@protoc_insertion_point(class_scope:CChatUsability_ClientUsabilityMetrics_Notification.Metrics)
-    ))
+    })
   ,
-  DESCRIPTOR = _CCHATUSABILITY_CLIENTUSABILITYMETRICS_NOTIFICATION,
-  __module__ = 'steammessages_chat_pb2'
+  'DESCRIPTOR' : _CCHATUSABILITY_CLIENTUSABILITYMETRICS_NOTIFICATION,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatUsability_ClientUsabilityMetrics_Notification)
-  ))
+  })
 _sym_db.RegisterMessage(CChatUsability_ClientUsabilityMetrics_Notification)
 _sym_db.RegisterMessage(CChatUsability_ClientUsabilityMetrics_Notification.Settings)
 _sym_db.RegisterMessage(CChatUsability_ClientUsabilityMetrics_Notification.VoiceSettings)
@@ -8471,11 +8668,11 @@ _sym_db.RegisterMessage(CChatUsability_ClientUsabilityMetrics_Notification.UISta
 _sym_db.RegisterMessage(CChatUsability_ClientUsabilityMetrics_Notification.UIState.CategoryCollapseState)
 _sym_db.RegisterMessage(CChatUsability_ClientUsabilityMetrics_Notification.Metrics)
 
-CChatUsability_RequestClientUsabilityMetrics_Notification = _reflection.GeneratedProtocolMessageType('CChatUsability_RequestClientUsabilityMetrics_Notification', (_message.Message,), dict(
-  DESCRIPTOR = _CCHATUSABILITY_REQUESTCLIENTUSABILITYMETRICS_NOTIFICATION,
-  __module__ = 'steammessages_chat_pb2'
+CChatUsability_RequestClientUsabilityMetrics_Notification = _reflection.GeneratedProtocolMessageType('CChatUsability_RequestClientUsabilityMetrics_Notification', (_message.Message,), {
+  'DESCRIPTOR' : _CCHATUSABILITY_REQUESTCLIENTUSABILITYMETRICS_NOTIFICATION,
+  '__module__' : 'steammessages_chat_pb2'
   # @@protoc_insertion_point(class_scope:CChatUsability_RequestClientUsabilityMetrics_Notification)
-  ))
+  })
 _sym_db.RegisterMessage(CChatUsability_RequestClientUsabilityMetrics_Notification)
 
 
@@ -8496,9 +8693,10 @@ _CHAT = _descriptor.ServiceDescriptor(
   full_name='Chat',
   file=DESCRIPTOR,
   index=0,
-  serialized_options=_b('\202\265\030\025Chat-related services'),
-  serialized_start=22399,
-  serialized_end=22666,
+  serialized_options=b'\202\265\030\025Chat-related services',
+  create_key=_descriptor._internal_create_key,
+  serialized_start=22425,
+  serialized_end=22692,
   methods=[
   _descriptor.MethodDescriptor(
     name='RequestFriendPersonaStates',
@@ -8507,7 +8705,8 @@ _CHAT = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CCHAT_REQUESTFRIENDPERSONASTATES_REQUEST,
     output_type=_CCHAT_REQUESTFRIENDPERSONASTATES_RESPONSE,
-    serialized_options=_b('\202\265\030nRequest to be notified of online friend persona state information.  Responses sent via CMsgClientPersonaState.'),
+    serialized_options=b'\202\265\030nRequest to be notified of online friend persona state information.  Responses sent via CMsgClientPersonaState.',
+    create_key=_descriptor._internal_create_key,
   ),
 ])
 _sym_db.RegisterServiceDescriptor(_CHAT)
@@ -8520,9 +8719,10 @@ _CHATROOM = _descriptor.ServiceDescriptor(
   full_name='ChatRoom',
   file=DESCRIPTOR,
   index=1,
-  serialized_options=_b('\202\265\030>Service for joining, managing, and using multi-user chat rooms'),
-  serialized_start=22669,
-  serialized_end=30662,
+  serialized_options=b'\202\265\030>Service for joining, managing, and using multi-user chat rooms',
+  create_key=_descriptor._internal_create_key,
+  serialized_start=22695,
+  serialized_end=30688,
   methods=[
   _descriptor.MethodDescriptor(
     name='CreateChatRoomGroup',
@@ -8531,7 +8731,8 @@ _CHATROOM = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CCHATROOM_CREATECHATROOMGROUP_REQUEST,
     output_type=_CCHATROOM_CREATECHATROOMGROUP_RESPONSE,
-    serialized_options=_b('\202\265\0307Create\'s a chat group that can contain other chat rooms'),
+    serialized_options=b'\202\265\0307Create\'s a chat group that can contain other chat rooms',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='SaveChatRoomGroup',
@@ -8540,7 +8741,8 @@ _CHATROOM = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CCHATROOM_SAVECHATROOMGROUP_REQUEST,
     output_type=_CCHATROOM_SAVECHATROOMGROUP_RESPONSE,
-    serialized_options=_b('\202\265\030\024Saves\'s a chat group'),
+    serialized_options=b'\202\265\030\024Saves\'s a chat group',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='RenameChatRoomGroup',
@@ -8549,7 +8751,8 @@ _CHATROOM = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CCHATROOM_RENAMECHATROOMGROUP_REQUEST,
     output_type=_CCHATROOM_RENAMECHATROOMGROUP_RESPONSE,
-    serialized_options=_b('\202\265\030\030Rename a chat room group'),
+    serialized_options=b'\202\265\030\030Rename a chat room group',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='SetChatRoomGroupTagline',
@@ -8558,7 +8761,8 @@ _CHATROOM = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CCHATROOM_SETCHATROOMGROUPTAGLINE_REQUEST,
     output_type=_CCHATROOM_SETCHATROOMGROUPTAGLINE_RESPONSE,
-    serialized_options=_b('\202\265\030!Set tagline for a chat room group'),
+    serialized_options=b'\202\265\030!Set tagline for a chat room group',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='SetChatRoomGroupAvatar',
@@ -8567,7 +8771,8 @@ _CHATROOM = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CCHATROOM_SETCHATROOMGROUPAVATAR_REQUEST,
     output_type=_CCHATROOM_SETCHATROOMGROUPAVATAR_RESPONSE,
-    serialized_options=_b('\202\265\030$Set avatar SHA for a chat room group'),
+    serialized_options=b'\202\265\030$Set avatar SHA for a chat room group',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='SetChatRoomGroupWatchingBroadcast',
@@ -8576,7 +8781,8 @@ _CHATROOM = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CCHATROOM_SETCHATROOMGROUPWATCHINGBROADCAST_REQUEST,
     output_type=_CCHATROOM_SETCHATROOMGROUPWATCHINGBROADCAST_RESPONSE,
-    serialized_options=_b('\202\265\0305Sets a broadcast that the chat room group is watching'),
+    serialized_options=b'\202\265\0305Sets a broadcast that the chat room group is watching',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='JoinMiniGameForChatRoomGroup',
@@ -8585,7 +8791,8 @@ _CHATROOM = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CCHATROOM_JOINMINIGAMEFORCHATROOMGROUP_REQUEST,
     output_type=_CCHATROOM_JOINMINIGAMEFORCHATROOMGROUP_RESPONSE,
-    serialized_options=_b('\202\265\030\\Joins the minigame for the chat room group or starts a new one (Winter 2019 sale party game)'),
+    serialized_options=b'\202\265\030\\Joins the minigame for the chat room group or starts a new one (Winter 2019 sale party game)',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='EndMiniGameForChatRoomGroup',
@@ -8594,7 +8801,8 @@ _CHATROOM = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CCHATROOM_ENDMINIGAMEFORCHATROOMGROUP_REQUEST,
     output_type=_CCHATROOM_ENDMINIGAMEFORCHATROOMGROUP_RESPONSE,
-    serialized_options=_b('\202\265\030(Ends the minigame in the chat room group'),
+    serialized_options=b'\202\265\030(Ends the minigame in the chat room group',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='MuteUserInGroup',
@@ -8603,7 +8811,8 @@ _CHATROOM = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CCHATROOM_MUTEUSER_REQUEST,
     output_type=_CCHATROOM_MUTEUSER_RESPONSE,
-    serialized_options=_b('\202\265\030\022Mute user in group'),
+    serialized_options=b'\202\265\030\022Mute user in group',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='KickUserFromGroup',
@@ -8612,7 +8821,8 @@ _CHATROOM = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CCHATROOM_KICKUSER_REQUEST,
     output_type=_CCHATROOM_KICKUSER_RESPONSE,
-    serialized_options=_b('\202\265\030\024Kick user from group'),
+    serialized_options=b'\202\265\030\024Kick user from group',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='SetUserBanState',
@@ -8621,7 +8831,8 @@ _CHATROOM = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CCHATROOM_SETUSERBANSTATE_REQUEST,
     output_type=_CCHATROOM_SETUSERBANSTATE_RESPONSE,
-    serialized_options=_b('\202\265\030\031Ban/unban user from group'),
+    serialized_options=b'\202\265\030\031Ban/unban user from group',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='RevokeInviteToGroup',
@@ -8630,7 +8841,8 @@ _CHATROOM = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CCHATROOM_REVOKEINVITE_REQUEST,
     output_type=_CCHATROOM_REVOKEINVITE_RESPONSE,
-    serialized_options=_b('\202\265\030$Revoke a direct invitation of a user'),
+    serialized_options=b'\202\265\030$Revoke a direct invitation of a user',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='CreateRole',
@@ -8639,7 +8851,8 @@ _CHATROOM = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CCHATROOM_CREATEROLE_REQUEST,
     output_type=_CCHATROOM_CREATEROLE_RESPONSE,
-    serialized_options=_b('\202\265\030\024Create role for goup'),
+    serialized_options=b'\202\265\030\024Create role for goup',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetRoles',
@@ -8648,7 +8861,8 @@ _CHATROOM = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CCHATROOM_GETROLES_REQUEST,
     output_type=_CCHATROOM_GETROLES_RESPONSE,
-    serialized_options=_b('\202\265\030\026Get all roles in group'),
+    serialized_options=b'\202\265\030\026Get all roles in group',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='RenameRole',
@@ -8657,7 +8871,8 @@ _CHATROOM = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CCHATROOM_RENAMEROLE_REQUEST,
     output_type=_CCHATROOM_RENAMEROLE_RESPONSE,
-    serialized_options=_b('\202\265\030\024Rename role for goup'),
+    serialized_options=b'\202\265\030\024Rename role for goup',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='ReorderRole',
@@ -8666,7 +8881,8 @@ _CHATROOM = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CCHATROOM_REORDERROLE_REQUEST,
     output_type=_CCHATROOM_REORDERROLE_RESPONSE,
-    serialized_options=_b('\202\265\030\030Reorder role with a goup'),
+    serialized_options=b'\202\265\030\030Reorder role with a goup',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='DeleteRole',
@@ -8675,7 +8891,8 @@ _CHATROOM = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CCHATROOM_DELETEROLE_REQUEST,
     output_type=_CCHATROOM_DELETEROLE_RESPONSE,
-    serialized_options=_b('\202\265\030\026Delete role from group'),
+    serialized_options=b'\202\265\030\026Delete role from group',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetRoleActions',
@@ -8684,7 +8901,8 @@ _CHATROOM = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CCHATROOM_GETROLEACTIONS_REQUEST,
     output_type=_CCHATROOM_GETROLEACTIONS_RESPONSE,
-    serialized_options=_b('\202\265\030*Get all defined roles and actions in group'),
+    serialized_options=b'\202\265\030*Get all defined roles and actions in group',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='ReplaceRoleActions',
@@ -8693,7 +8911,8 @@ _CHATROOM = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CCHATROOM_REPLACEROLEACTIONS_REQUEST,
     output_type=_CCHATROOM_REPLACEROLEACTIONS_RESPONSE,
-    serialized_options=_b('\202\265\030\035Replace role actions in group'),
+    serialized_options=b'\202\265\030\035Replace role actions in group',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='AddRoleToUser',
@@ -8702,7 +8921,8 @@ _CHATROOM = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CCHATROOM_ADDROLETOUSER_REQUEST,
     output_type=_CCHATROOM_ADDROLETOUSER_RESPONSE,
-    serialized_options=_b('\202\265\030\031Add role to user in group'),
+    serialized_options=b'\202\265\030\031Add role to user in group',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetRolesForUser',
@@ -8711,7 +8931,8 @@ _CHATROOM = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CCHATROOM_GETROLESFORUSER_REQUEST,
     output_type=_CCHATROOM_GETROLESFORUSER_RESPONSE,
-    serialized_options=_b('\202\265\030\'Get all roles assigned to user in group'),
+    serialized_options=b'\202\265\030\'Get all roles assigned to user in group',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='DeleteRoleFromUser',
@@ -8720,7 +8941,8 @@ _CHATROOM = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CCHATROOM_DELETEROLEFROMUSER_REQUEST,
     output_type=_CCHATROOM_DELETEROLEFROMUSER_RESPONSE,
-    serialized_options=_b('\202\265\030\036Delete role from user in group'),
+    serialized_options=b'\202\265\030\036Delete role from user in group',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='JoinChatRoomGroup',
@@ -8729,7 +8951,8 @@ _CHATROOM = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CCHATROOM_JOINCHATROOMGROUP_REQUEST,
     output_type=_CCHATROOM_JOINCHATROOMGROUP_RESPONSE,
-    serialized_options=_b('\202\265\030\033Join a multi-user chat room'),
+    serialized_options=b'\202\265\030\033Join a multi-user chat room',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='InviteFriendToChatRoomGroup',
@@ -8738,7 +8961,8 @@ _CHATROOM = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CCHATROOM_INVITEFRIENDTOCHATROOMGROUP_REQUEST,
     output_type=_CCHATROOM_INVITEFRIENDTOCHATROOMGROUP_RESPONSE,
-    serialized_options=_b('\202\265\030)Invite a friend to a multi-user chat room'),
+    serialized_options=b'\202\265\030)Invite a friend to a multi-user chat room',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='LeaveChatRoomGroup',
@@ -8747,7 +8971,8 @@ _CHATROOM = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CCHATROOM_LEAVECHATROOMGROUP_REQUEST,
     output_type=_CCHATROOM_LEAVECHATROOMGROUP_RESPONSE,
-    serialized_options=_b('\202\265\030.Leaves a chat room group and all related chats'),
+    serialized_options=b'\202\265\030.Leaves a chat room group and all related chats',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='CreateChatRoom',
@@ -8756,7 +8981,8 @@ _CHATROOM = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CCHATROOM_CREATECHATROOM_REQUEST,
     output_type=_CCHATROOM_CREATECHATROOM_RESPONSE,
-    serialized_options=_b('\202\265\030,Creates a chat room inside a chat room group'),
+    serialized_options=b'\202\265\030,Creates a chat room inside a chat room group',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='DeleteChatRoom',
@@ -8765,7 +8991,8 @@ _CHATROOM = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CCHATROOM_DELETECHATROOM_REQUEST,
     output_type=_CCHATROOM_DELETECHATROOM_RESPONSE,
-    serialized_options=_b('\202\265\030,Deletes a chat room inside a chat room group'),
+    serialized_options=b'\202\265\030,Deletes a chat room inside a chat room group',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='RenameChatRoom',
@@ -8774,7 +9001,8 @@ _CHATROOM = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CCHATROOM_RENAMECHATROOM_REQUEST,
     output_type=_CCHATROOM_RENAMECHATROOM_RESPONSE,
-    serialized_options=_b('\202\265\030,Renames a chat room inside a chat room group'),
+    serialized_options=b'\202\265\030,Renames a chat room inside a chat room group',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='ReorderChatRoom',
@@ -8783,7 +9011,8 @@ _CHATROOM = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CCHATROOM_REORDERCHATROOM_REQUEST,
     output_type=_CCHATROOM_REORDERCHATROOM_RESPONSE,
-    serialized_options=_b('\202\265\030-Reorders a chat room inside a chat room group'),
+    serialized_options=b'\202\265\030-Reorders a chat room inside a chat room group',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='SendChatMessage',
@@ -8792,7 +9021,8 @@ _CHATROOM = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CCHATROOM_SENDCHATMESSAGE_REQUEST,
     output_type=_CCHATROOM_SENDCHATMESSAGE_RESPONSE,
-    serialized_options=_b('\202\265\030-Send a chat message to a multi-user chat room'),
+    serialized_options=b'\202\265\030-Send a chat message to a multi-user chat room',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='JoinVoiceChat',
@@ -8801,7 +9031,8 @@ _CHATROOM = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CCHATROOM_JOINVOICECHAT_REQUEST,
     output_type=_CCHATROOM_JOINVOICECHAT_RESPONSE,
-    serialized_options=_b('\202\265\030MJoin the voice chat in a multi-room chat (should already be in the chat room)'),
+    serialized_options=b'\202\265\030MJoin the voice chat in a multi-room chat (should already be in the chat room)',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='LeaveVoiceChat',
@@ -8810,7 +9041,8 @@ _CHATROOM = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CCHATROOM_LEAVEVOICECHAT_REQUEST,
     output_type=_CCHATROOM_LEAVEVOICECHAT_RESPONSE,
-    serialized_options=_b('\202\265\030)Leave the voice chat in a multi-room chat'),
+    serialized_options=b'\202\265\030)Leave the voice chat in a multi-room chat',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetMessageHistory',
@@ -8819,7 +9051,8 @@ _CHATROOM = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CCHATROOM_GETMESSAGEHISTORY_REQUEST,
     output_type=_CCHATROOM_GETMESSAGEHISTORY_RESPONSE,
-    serialized_options=_b('\202\265\030]Get the history of messages in a chat room.  You must currently be a member of the chat room.'),
+    serialized_options=b'\202\265\030]Get the history of messages in a chat room.  You must currently be a member of the chat room.',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetMyChatRoomGroups',
@@ -8828,7 +9061,8 @@ _CHATROOM = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CCHATROOM_GETMYCHATROOMGROUPS_REQUEST,
     output_type=_CCHATROOM_GETMYCHATROOMGROUPS_RESPONSE,
-    serialized_options=_b('\202\265\030\034Get a list of our chat rooms'),
+    serialized_options=b'\202\265\030\034Get a list of our chat rooms',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetChatRoomGroupState',
@@ -8837,7 +9071,8 @@ _CHATROOM = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CCHATROOM_GETCHATROOMGROUPSTATE_REQUEST,
     output_type=_CCHATROOM_GETCHATROOMGROUPSTATE_RESPONSE,
-    serialized_options=_b('\202\265\030(Get information about a single chat room'),
+    serialized_options=b'\202\265\030(Get information about a single chat room',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetChatRoomGroupSummary',
@@ -8846,7 +9081,8 @@ _CHATROOM = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CCHATROOM_GETCHATROOMGROUPSUMMARY_REQUEST,
     output_type=_CCHATROOM_GETCHATROOMGROUPSUMMARY_RESPONSE,
-    serialized_options=_b('\202\265\030-Get basic information about a chat room group'),
+    serialized_options=b'\202\265\030-Get basic information about a chat room group',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='SetAppChatRoomGroupForceActive',
@@ -8855,7 +9091,8 @@ _CHATROOM = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CCHATROOM_SETAPPCHATROOMGROUPFORCEACTIVE_REQUEST,
     output_type=_CCHATROOM_SETAPPCHATROOMGROUPFORCEACTIVE_RESPONSE,
-    serialized_options=_b('\202\265\030FForce a group chat to be considered active on the server for this user'),
+    serialized_options=b'\202\265\030FForce a group chat to be considered active on the server for this user',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='SetAppChatRoomGroupStopForceActive',
@@ -8864,7 +9101,8 @@ _CHATROOM = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CCHATROOM_SETAPPCHATROOMGROUPSTOPFORCEACTIVE_NOTIFICATION,
     output_type=steammessages__unified__base__pb2._NORESPONSE,
-    serialized_options=_b('\202\265\030`If a group chat is forced active (see SetAppChatRoomGroupForceActive), decrement the force count'),
+    serialized_options=b'\202\265\030`If a group chat is forced active (see SetAppChatRoomGroupForceActive), decrement the force count',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='AckChatMessage',
@@ -8873,7 +9111,8 @@ _CHATROOM = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CCHATROOM_ACKCHATMESSAGE_NOTIFICATION,
     output_type=steammessages__unified__base__pb2._NORESPONSE,
-    serialized_options=_b('\202\265\030DAcknowledge that we have seen the most recent chat message in a chat'),
+    serialized_options=b'\202\265\030DAcknowledge that we have seen the most recent chat message in a chat',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='CreateInviteLink',
@@ -8882,7 +9121,8 @@ _CHATROOM = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CCHATROOM_CREATEINVITELINK_REQUEST,
     output_type=_CCHATROOM_CREATEINVITELINK_RESPONSE,
-    serialized_options=_b('\202\265\030\036Creates a chatroom invite link'),
+    serialized_options=b'\202\265\030\036Creates a chatroom invite link',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetInviteLinkInfo',
@@ -8891,7 +9131,8 @@ _CHATROOM = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CCHATROOM_GETINVITELINKINFO_REQUEST,
     output_type=_CCHATROOM_GETINVITELINKINFO_RESPONSE,
-    serialized_options=_b('\202\265\030*Returns chat room info about provided link'),
+    serialized_options=b'\202\265\030*Returns chat room info about provided link',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetInviteInfo',
@@ -8900,7 +9141,8 @@ _CHATROOM = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CCHATROOM_GETINVITEINFO_REQUEST,
     output_type=_CCHATROOM_GETINVITEINFO_RESPONSE,
-    serialized_options=_b('\202\265\030PReturns chat room info about any invite involving the sender and passed group id'),
+    serialized_options=b'\202\265\030PReturns chat room info about any invite involving the sender and passed group id',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetInviteLinksForGroup',
@@ -8909,7 +9151,8 @@ _CHATROOM = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CCHATROOM_GETINVITELINKSFORGROUP_REQUEST,
     output_type=_CCHATROOM_GETINVITELINKSFORGROUP_RESPONSE,
-    serialized_options=_b('\202\265\0300Returns all invite links for the specified group'),
+    serialized_options=b'\202\265\0300Returns all invite links for the specified group',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetBanList',
@@ -8918,7 +9161,8 @@ _CHATROOM = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CCHATROOM_GETBANLIST_REQUEST,
     output_type=_CCHATROOM_GETBANLIST_RESPONSE,
-    serialized_options=_b('\202\265\030:Gets a list of users who have been banned from a chat room'),
+    serialized_options=b'\202\265\030:Gets a list of users who have been banned from a chat room',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetInviteList',
@@ -8927,7 +9171,8 @@ _CHATROOM = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CCHATROOM_GETINVITELIST_REQUEST,
     output_type=_CCHATROOM_GETINVITELIST_RESPONSE,
-    serialized_options=_b('\202\265\0309Gets a list of users who have been invited to a chat room'),
+    serialized_options=b'\202\265\0309Gets a list of users who have been invited to a chat room',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='DeleteInviteLink',
@@ -8936,7 +9181,8 @@ _CHATROOM = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CCHATROOM_DELETEINVITELINK_REQUEST,
     output_type=_CCHATROOM_DELETEINVITELINK_RESPONSE,
-    serialized_options=_b('\202\265\030\035Deletes specified invite link'),
+    serialized_options=b'\202\265\030\035Deletes specified invite link',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='SetSessionActiveChatRoomGroups',
@@ -8945,7 +9191,8 @@ _CHATROOM = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CCHATROOM_SETSESSIONACTIVECHATROOMGROUPS_REQUEST,
     output_type=_CCHATROOM_SETSESSIONACTIVECHATROOMGROUPS_RESPONSE,
-    serialized_options=_b('\202\265\0307Set which chat rooms we are using in the active session'),
+    serialized_options=b'\202\265\0307Set which chat rooms we are using in the active session',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='SetUserChatGroupPreferences',
@@ -8954,7 +9201,8 @@ _CHATROOM = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CCHATROOM_SETUSERCHATGROUPPREFERENCES_REQUEST,
     output_type=_CCHATROOM_SETUSERCHATGROUPPREFERENCES_RESPONSE,
-    serialized_options=_b('\202\265\0305Set preferences around chat notifications for a group'),
+    serialized_options=b'\202\265\0305Set preferences around chat notifications for a group',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='DeleteChatMessages',
@@ -8963,7 +9211,8 @@ _CHATROOM = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CCHATROOM_DELETECHATMESSAGES_REQUEST,
     output_type=_CCHATROOM_DELETECHATMESSAGES_RESPONSE,
-    serialized_options=_b('\202\265\030\037Deletes specified chat messages'),
+    serialized_options=b'\202\265\030\037Deletes specified chat messages',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='UpdateMemberListView',
@@ -8972,7 +9221,8 @@ _CHATROOM = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CCHATROOM_UPDATEMEMBERLISTVIEW_NOTIFICATION,
     output_type=steammessages__unified__base__pb2._NORESPONSE,
-    serialized_options=_b('\202\265\030CA client is indicating it has an active view into the members list.'),
+    serialized_options=b'\202\265\030CA client is indicating it has an active view into the members list.',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='SearchMembers',
@@ -8981,7 +9231,8 @@ _CHATROOM = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CCHATROOM_SEARCHMEMBERS_REQUEST,
     output_type=_CCHATROOM_SEARCHMEMBERS_RESPONSE,
-    serialized_options=_b('\202\265\030!Search chat room members by name.'),
+    serialized_options=b'\202\265\030!Search chat room members by name.',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='UpdateMessageReaction',
@@ -8990,7 +9241,8 @@ _CHATROOM = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CCHATROOM_UPDATEMESSAGEREACTION_REQUEST,
     output_type=_CCHATROOM_UPDATEMESSAGEREACTION_RESPONSE,
-    serialized_options=_b('\202\265\0303Adds/removes a reaction to/from a chat room message'),
+    serialized_options=b'\202\265\0303Adds/removes a reaction to/from a chat room message',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetMessageReactionReactors',
@@ -8999,7 +9251,8 @@ _CHATROOM = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CCHATROOM_GETMESSAGEREACTIONREACTORS_REQUEST,
     output_type=_CCHATROOM_GETMESSAGEREACTIONREACTORS_RESPONSE,
-    serialized_options=_b('\202\265\0303Fetches a list of reactors for a specified reaction'),
+    serialized_options=b'\202\265\0303Fetches a list of reactors for a specified reaction',
+    create_key=_descriptor._internal_create_key,
   ),
 ])
 _sym_db.RegisterServiceDescriptor(_CHATROOM)
@@ -9012,9 +9265,10 @@ _CLANCHATROOMS = _descriptor.ServiceDescriptor(
   full_name='ClanChatRooms',
   file=DESCRIPTOR,
   index=2,
-  serialized_options=_b('\202\265\030)Methods for getting clan chat information'),
-  serialized_start=30665,
-  serialized_end=31095,
+  serialized_options=b'\202\265\030)Methods for getting clan chat information',
+  create_key=_descriptor._internal_create_key,
+  serialized_start=30691,
+  serialized_end=31121,
   methods=[
   _descriptor.MethodDescriptor(
     name='GetClanChatRoomInfo',
@@ -9023,7 +9277,8 @@ _CLANCHATROOMS = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CCLANCHATROOMS_GETCLANCHATROOMINFO_REQUEST,
     output_type=_CCLANCHATROOMS_GETCLANCHATROOMINFO_RESPONSE,
-    serialized_options=_b('\202\265\030BGet a list of chat rooms for a clan, optionally creating a new one'),
+    serialized_options=b'\202\265\030BGet a list of chat rooms for a clan, optionally creating a new one',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='SetClanChatRoomPrivate',
@@ -9032,7 +9287,8 @@ _CLANCHATROOMS = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CCLANCHATROOMS_SETCLANCHATROOMPRIVATE_REQUEST,
     output_type=_CCLANCHATROOMS_SETCLANCHATROOMPRIVATE_RESPONSE,
-    serialized_options=_b('\202\265\0303Set a clan chat room to be members only (or public)'),
+    serialized_options=b'\202\265\0303Set a clan chat room to be members only (or public)',
+    create_key=_descriptor._internal_create_key,
   ),
 ])
 _sym_db.RegisterServiceDescriptor(_CLANCHATROOMS)
@@ -9045,9 +9301,10 @@ _CHATROOMCLIENT = _descriptor.ServiceDescriptor(
   full_name='ChatRoomClient',
   file=DESCRIPTOR,
   index=3,
-  serialized_options=_b('\202\265\030$Client notifications for chat events\300\265\030\002'),
-  serialized_start=31098,
-  serialized_end=33001,
+  serialized_options=b'\202\265\030$Client notifications for chat events\300\265\030\002',
+  create_key=_descriptor._internal_create_key,
+  serialized_start=31124,
+  serialized_end=33027,
   methods=[
   _descriptor.MethodDescriptor(
     name='NotifyIncomingChatMessage',
@@ -9056,7 +9313,8 @@ _CHATROOMCLIENT = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CCHATROOM_INCOMINGCHATMESSAGE_NOTIFICATION,
     output_type=steammessages__unified__base__pb2._NORESPONSE,
-    serialized_options=_b('\202\265\030 New chat message for a chat room'),
+    serialized_options=b'\202\265\030 New chat message for a chat room',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='NotifyChatMessageModified',
@@ -9065,7 +9323,8 @@ _CHATROOMCLIENT = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CCHATROOM_CHATMESSAGEMODIFIED_NOTIFICATION,
     output_type=steammessages__unified__base__pb2._NORESPONSE,
-    serialized_options=_b('\202\265\0309An existing chat message has been modified on the backend'),
+    serialized_options=b'\202\265\0309An existing chat message has been modified on the backend',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='NotifyMemberStateChange',
@@ -9074,7 +9333,8 @@ _CHATROOMCLIENT = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CCHATROOM_MEMBERSTATECHANGE_NOTIFICATION,
     output_type=steammessages__unified__base__pb2._NORESPONSE,
-    serialized_options=_b('\202\265\030>A chat room member\'s state has changed (join/part/permissions)'),
+    serialized_options=b'\202\265\030>A chat room member\'s state has changed (join/part/permissions)',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='NotifyChatRoomHeaderStateChange',
@@ -9083,7 +9343,8 @@ _CHATROOMCLIENT = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CCHATROOM_CHATROOMHEADERSTATE_NOTIFICATION,
     output_type=steammessages__unified__base__pb2._NORESPONSE,
-    serialized_options=_b('\202\265\030\'Chat Room header / metadata has changed'),
+    serialized_options=b'\202\265\030\'Chat Room header / metadata has changed',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='NotifyChatRoomGroupRoomsChange',
@@ -9092,7 +9353,8 @@ _CHATROOMCLIENT = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CCHATROOM_CHATROOMGROUPROOMSCHANGE_NOTIFICATION,
     output_type=steammessages__unified__base__pb2._NORESPONSE,
-    serialized_options=_b('\202\265\030ASomething about a chatroom group changed (created, deleted, etc.)'),
+    serialized_options=b'\202\265\030ASomething about a chatroom group changed (created, deleted, etc.)',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='NotifyShouldRejoinChatRoomVoiceChat',
@@ -9101,7 +9363,8 @@ _CHATROOMCLIENT = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CCHATROOM_NOTIFYSHOULDREJOINCHATROOMVOICECHAT_NOTIFICATION,
     output_type=steammessages__unified__base__pb2._NORESPONSE,
-    serialized_options=_b('\202\265\030`Voice chat was recreated or dropped on the backend and client needs to rejoin to remain in chat.'),
+    serialized_options=b'\202\265\030`Voice chat was recreated or dropped on the backend and client needs to rejoin to remain in chat.',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='NotifyChatGroupUserStateChanged',
@@ -9110,7 +9373,8 @@ _CHATROOMCLIENT = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CHATROOMCLIENT_NOTIFYCHATGROUPUSERSTATECHANGED_NOTIFICATION,
     output_type=steammessages__unified__base__pb2._NORESPONSE,
-    serialized_options=_b('\202\265\030AUser chat group state (preferences, ack state, etc) have changed.'),
+    serialized_options=b'\202\265\030AUser chat group state (preferences, ack state, etc) have changed.',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='NotifyAckChatMessageEcho',
@@ -9119,7 +9383,8 @@ _CHATROOMCLIENT = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CCHATROOM_ACKCHATMESSAGE_NOTIFICATION,
     output_type=steammessages__unified__base__pb2._NORESPONSE,
-    serialized_options=_b('\202\265\030:A session acked an unread message, echo to other sessions.'),
+    serialized_options=b'\202\265\030:A session acked an unread message, echo to other sessions.',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='NotifyChatRoomDisconnect',
@@ -9128,7 +9393,8 @@ _CHATROOMCLIENT = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CHATROOMCLIENT_NOTIFYCHATROOMDISCONNECT_NOTIFICATION,
     output_type=steammessages__unified__base__pb2._NORESPONSE,
-    serialized_options=_b('\202\265\030\207\001The ChatRoom server hosting the chat rooms has reconnected to the user\'s Chat server (may have restarted), client should refresh state.'),
+    serialized_options=b'\202\265\030\207\001The ChatRoom server hosting the chat rooms has reconnected to the user\'s Chat server (may have restarted), client should refresh state.',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='NotifyMemberListViewUpdated',
@@ -9137,7 +9403,8 @@ _CHATROOMCLIENT = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CCHATROOMCLIENT_MEMBERLISTVIEWUPDATED_NOTIFICATION,
     output_type=steammessages__unified__base__pb2._NORESPONSE,
-    serialized_options=_b('\202\265\030pThe list of members for a chat room with virtualized member list has changed on the server (or client requested)'),
+    serialized_options=b'\202\265\030pThe list of members for a chat room with virtualized member list has changed on the server (or client requested)',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='NotifyMessageReaction',
@@ -9146,7 +9413,8 @@ _CHATROOMCLIENT = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CCHATROOM_MESSAGEREACTION_NOTIFICATION,
     output_type=steammessages__unified__base__pb2._NORESPONSE,
-    serialized_options=_b('\202\265\030\024New message reaction'),
+    serialized_options=b'\202\265\030\024New message reaction',
+    create_key=_descriptor._internal_create_key,
   ),
 ])
 _sym_db.RegisterServiceDescriptor(_CHATROOMCLIENT)
@@ -9159,9 +9427,10 @@ _CHATUSABILITY = _descriptor.ServiceDescriptor(
   full_name='ChatUsability',
   file=DESCRIPTOR,
   index=4,
-  serialized_options=_b('\202\265\030$Client notifications for chat events'),
-  serialized_start=33004,
-  serialized_end=33198,
+  serialized_options=b'\202\265\030$Client notifications for chat events',
+  create_key=_descriptor._internal_create_key,
+  serialized_start=33030,
+  serialized_end=33224,
   methods=[
   _descriptor.MethodDescriptor(
     name='NotifyClientUsabilityMetrics',
@@ -9170,7 +9439,8 @@ _CHATUSABILITY = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CCHATUSABILITY_CLIENTUSABILITYMETRICS_NOTIFICATION,
     output_type=steammessages__unified__base__pb2._NORESPONSE,
-    serialized_options=_b('\202\265\030 Incoming metrics from the client'),
+    serialized_options=b'\202\265\030 Incoming metrics from the client',
+    create_key=_descriptor._internal_create_key,
   ),
 ])
 _sym_db.RegisterServiceDescriptor(_CHATUSABILITY)
@@ -9183,9 +9453,10 @@ _CHATUSABILITYCLIENT = _descriptor.ServiceDescriptor(
   full_name='ChatUsabilityClient',
   file=DESCRIPTOR,
   index=5,
-  serialized_options=_b('\202\265\030\'Client notifications for chat usability\300\265\030\002'),
-  serialized_start=33201,
-  serialized_end=33427,
+  serialized_options=b'\202\265\030\'Client notifications for chat usability\300\265\030\002',
+  create_key=_descriptor._internal_create_key,
+  serialized_start=33227,
+  serialized_end=33453,
   methods=[
   _descriptor.MethodDescriptor(
     name='NotifyRequestClientUsabilityMetrics',
@@ -9194,7 +9465,8 @@ _CHATUSABILITYCLIENT = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CCHATUSABILITY_REQUESTCLIENTUSABILITYMETRICS_NOTIFICATION,
     output_type=steammessages__unified__base__pb2._NORESPONSE,
-    serialized_options=_b('\202\265\030%Request client send usability metrics'),
+    serialized_options=b'\202\265\030%Request client send usability metrics',
+    create_key=_descriptor._internal_create_key,
   ),
 ])
 _sym_db.RegisterServiceDescriptor(_CHATUSABILITYCLIENT)
diff --git a/steam/protobufs/steammessages_client_objects_pb2.py b/steam/protobufs/steammessages_client_objects_pb2.py
index 8ec8072..052f2ce 100644
--- a/steam/protobufs/steammessages_client_objects_pb2.py
+++ b/steam/protobufs/steammessages_client_objects_pb2.py
@@ -1,9 +1,7 @@
 # -*- coding: utf-8 -*-
 # Generated by the protocol buffer compiler.  DO NOT EDIT!
 # source: steammessages_client_objects.proto
-
-import sys
-_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1'))
+"""Generated protocol buffer code."""
 from google.protobuf.internal import enum_type_wrapper
 from google.protobuf import descriptor as _descriptor
 from google.protobuf import message as _message
@@ -21,8 +19,9 @@ DESCRIPTOR = _descriptor.FileDescriptor(
   name='steammessages_client_objects.proto',
   package='',
   syntax='proto2',
-  serialized_options=_b('H\001\220\001\000'),
-  serialized_pb=_b('\n\"steammessages_client_objects.proto\x1a\x0b\x65nums.proto\"\x8d\x02\n0SteamMessagesClientIClientForcedEnumDependencies\x12?\n\x01\x61\x18\x01 \x01(\x0e\x32\x15.EBluetoothDeviceType:\x1dk_BluetoothDeviceType_Invalid\x12H\n\x01\x62\x18\x02 \x01(\x0e\x32\x19.EStorageBlockContentType:\"k_EStorageBlockContentType_Invalid\x12N\n\x01\x63\x18\x03 \x01(\x0e\x32\x1c.EStorageBlockFileSystemType:%k_EStorageBlockFileSystemType_Invalid\"=\n\x1b\x43MsgNetworkDeviceIP4Address\x12\r\n\x02ip\x18\x01 \x01(\x05:\x01\x30\x12\x0f\n\x07netmask\x18\x02 \x01(\x05\"\xbf\x01\n\x1a\x43MsgNetworkDeviceIP4Config\x12/\n\taddresses\x18\x01 \x03(\x0b\x32\x1c.CMsgNetworkDeviceIP4Address\x12\x0e\n\x06\x64ns_ip\x18\x02 \x03(\x05\x12\x12\n\ngateway_ip\x18\x03 \x01(\x05\x12\x17\n\x0fis_dhcp_enabled\x18\x04 \x01(\x08\x12\x18\n\x10is_default_route\x18\x05 \x01(\x08\x12\x19\n\nis_enabled\x18\x06 \x01(\x08:\x05\x66\x61lse\")\n\x1b\x43MsgNetworkDeviceIP6Address\x12\n\n\x02ip\x18\x01 \x01(\t\"\xbf\x01\n\x1a\x43MsgNetworkDeviceIP6Config\x12/\n\taddresses\x18\x01 \x03(\x0b\x32\x1c.CMsgNetworkDeviceIP6Address\x12\x0e\n\x06\x64ns_ip\x18\x02 \x03(\t\x12\x12\n\ngateway_ip\x18\x03 \x01(\t\x12\x17\n\x0fis_dhcp_enabled\x18\x04 \x01(\x08\x12\x18\n\x10is_default_route\x18\x05 \x01(\x08\x12\x19\n\nis_enabled\x18\x06 \x01(\x08:\x05\x66\x61lse\"\x97\x06\n\x16\x43MsgNetworkDevicesData\x12/\n\x07\x64\x65vices\x18\x01 \x03(\x0b\x32\x1e.CMsgNetworkDevicesData.Device\x12\x17\n\x0fis_wifi_enabled\x18\x02 \x01(\x08\x12 \n\x18is_wifi_scanning_enabled\x18\x03 \x01(\x08\x1a\x90\x05\n\x06\x44\x65vice\x12\r\n\x02id\x18\x01 \x01(\r:\x01\x30\x12\r\n\x05\x65type\x18\x02 \x01(\x05\x12\x0e\n\x06\x65state\x18\x03 \x01(\x05\x12\x0b\n\x03mac\x18\x04 \x01(\t\x12\x0e\n\x06vendor\x18\x05 \x01(\t\x12\x0f\n\x07product\x18\x06 \x01(\t\x12(\n\x03ip4\x18\x07 \x01(\x0b\x32\x1b.CMsgNetworkDeviceIP4Config\x12(\n\x03ip6\x18\x08 \x01(\x0b\x32\x1b.CMsgNetworkDeviceIP6Config\x12\x33\n\x05wired\x18\t \x01(\x0b\x32$.CMsgNetworkDevicesData.Device.Wired\x12\x39\n\x08wireless\x18\n \x01(\x0b\x32\'.CMsgNetworkDevicesData.Device.Wireless\x1aS\n\x05Wired\x12\x1f\n\x10is_cable_present\x18\x01 \x01(\x08:\x05\x66\x61lse\x12\x12\n\nspeed_mbit\x18\x02 \x01(\r\x12\x15\n\rfriendly_name\x18\x03 \x01(\t\x1a\x90\x02\n\x08Wireless\x12\x37\n\x03\x61ps\x18\x01 \x03(\x0b\x32*.CMsgNetworkDevicesData.Device.Wireless.AP\x12\x1b\n\x13\x65security_supported\x18\x02 \x01(\x05\x1a\xad\x01\n\x02\x41P\x12\r\n\x02id\x18\x01 \x01(\r:\x01\x30\x12\x11\n\testrength\x18\x02 \x01(\x05\x12\x0c\n\x04ssid\x18\x03 \x01(\t\x12\x11\n\tis_active\x18\x04 \x01(\x08\x12\x16\n\x0eis_autoconnect\x18\x05 \x01(\x08\x12\x11\n\tesecurity\x18\x06 \x01(\x05\x12\x11\n\tuser_name\x18\x07 \x01(\t\x12\x10\n\x08password\x18\x08 \x01(\t\x12\x14\n\x0cstrength_raw\x18\t \x01(\x05\"\xb5\x03\n\x18\x43MsgNetworkDeviceConnect\x12\x14\n\tdevice_id\x18\x01 \x01(\r:\x01\x30\x12:\n\x0b\x63redentials\x18\x04 \x01(\x0b\x32%.CMsgNetworkDeviceConnect.Credentials\x12(\n\x03ip4\x18\x05 \x01(\x0b\x32\x1b.CMsgNetworkDeviceIP4Config\x12(\n\x03ip6\x18\x06 \x01(\x0b\x32\x1b.CMsgNetworkDeviceIP6Config\x12\x35\n\x08\x61p_known\x18\x02 \x01(\x0b\x32!.CMsgNetworkDeviceConnect.KnownAPH\x00\x12\x37\n\tap_custom\x18\x03 \x01(\x0b\x32\".CMsgNetworkDeviceConnect.CustomAPH\x00\x1a\x18\n\x07KnownAP\x12\r\n\x05\x61p_id\x18\x01 \x01(\r\x1a+\n\x08\x43ustomAP\x12\x0c\n\x04ssid\x18\x01 \x01(\t\x12\x11\n\tesecurity\x18\x02 \x01(\x05\x1a\x31\n\x0b\x43redentials\x12\x10\n\x08username\x18\x01 \x01(\t\x12\x10\n\x08password\x18\x02 \x01(\tB\t\n\x07\x61p_info\"\xfd\x04\n\x16\x43MsgStorageDevicesData\x12-\n\x06\x64rives\x18\x01 \x03(\x0b\x32\x1d.CMsgStorageDevicesData.Drive\x12:\n\rblock_devices\x18\x02 \x03(\x0b\x32#.CMsgStorageDevicesData.BlockDevice\x1ao\n\x05\x44rive\x12\r\n\x02id\x18\x01 \x01(\r:\x01\x30\x12\r\n\x05model\x18\x02 \x01(\t\x12\x0e\n\x06vendor\x18\x03 \x01(\t\x12\x0e\n\x06serial\x18\x04 \x01(\t\x12\x14\n\x0cis_ejectable\x18\x05 \x01(\x08\x12\x12\n\nsize_bytes\x18\x06 \x01(\x04\x1a\x86\x03\n\x0b\x42lockDevice\x12\r\n\x02id\x18\x01 \x01(\r:\x01\x30\x12\x13\n\x08\x64rive_id\x18\x02 \x01(\r:\x01\x30\x12\x0c\n\x04path\x18\x03 \x01(\t\x12\x15\n\rfriendly_path\x18\x04 \x01(\t\x12\r\n\x05label\x18\x05 \x01(\t\x12\x12\n\nsize_bytes\x18\x06 \x01(\x04\x12\x16\n\x0eis_formattable\x18\x07 \x01(\x08\x12\x14\n\x0cis_read_only\x18\x08 \x01(\x08\x12\x16\n\x0eis_root_device\x18\t \x01(\x08\x12S\n\x0c\x63ontent_type\x18\n \x01(\x0e\x32\x19.EStorageBlockContentType:\"k_EStorageBlockContentType_Invalid\x12\\\n\x0f\x66ilesystem_type\x18\x0b \x01(\x0e\x32\x1c.EStorageBlockFileSystemType:%k_EStorageBlockFileSystemType_Invalid\x12\x12\n\nmount_path\x18\x0c \x01(\t\"\xb9\x01\n\x1d\x43\x43loud_PendingRemoteOperation\x12T\n\toperation\x18\x01 \x01(\x0e\x32\x1d.ECloudPendingRemoteOperation:\"k_ECloudPendingRemoteOperationNone\x12\x14\n\x0cmachine_name\x18\x02 \x01(\t\x12\x11\n\tclient_id\x18\x03 \x01(\x04\x12\x19\n\x11time_last_updated\x18\x04 \x01(\r\"V\n CMsgCloudPendingRemoteOperations\x12\x32\n\noperations\x18\x01 \x03(\x0b\x32\x1e.CCloud_PendingRemoteOperation\"\xb3\x03\n\x18\x43MsgBluetoothDevicesData\x12\x33\n\x08\x61\x64\x61pters\x18\x01 \x03(\x0b\x32!.CMsgBluetoothDevicesData.Adapter\x12\x31\n\x07\x64\x65vices\x18\x02 \x03(\x0b\x32 .CMsgBluetoothDevicesData.Device\x1a_\n\x07\x41\x64\x61pter\x12\r\n\x02id\x18\x01 \x01(\r:\x01\x30\x12\x0b\n\x03mac\x18\x02 \x01(\t\x12\x0c\n\x04name\x18\x03 \x01(\t\x12\x12\n\nis_enabled\x18\x04 \x01(\x08\x12\x16\n\x0eis_discovering\x18\x05 \x01(\x08\x1a\xcd\x01\n\x06\x44\x65vice\x12\r\n\x02id\x18\x01 \x01(\r:\x01\x30\x12\x15\n\nadapter_id\x18\x02 \x01(\r:\x01\x30\x12\x43\n\x05\x65type\x18\x03 \x01(\x0e\x32\x15.EBluetoothDeviceType:\x1dk_BluetoothDeviceType_Invalid\x12\x0b\n\x03mac\x18\x04 \x01(\t\x12\x0c\n\x04name\x18\x05 \x01(\t\x12\x14\n\x0cis_connected\x18\x06 \x01(\x08\x12\x11\n\tis_paired\x18\x07 \x01(\x08\x12\x14\n\x0cstrength_raw\x18\x08 \x01(\x05\"+\n\x15\x43MsgBluetoothSettings\x12\x12\n\nis_enabled\x18\x01 \x01(\x08\"<\n\x1d\x43MsgSystemPerfDiagnosticEntry\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t\"O\n\x1c\x43MsgSystemPerfDiagnosticInfo\x12/\n\x07\x65ntries\x18\x01 \x03(\x0b\x32\x1e.CMsgSystemPerfDiagnosticEntry\"O\n\x16\x43MsgSystemPerfSettings\x12\x1e\n\x16\x64iagnostic_update_rate\x18\x01 \x01(\x02\x12\x15\n\ris_shark_mode\x18\x02 \x01(\x08*\x96\x02\n\x1c\x45\x43loudPendingRemoteOperation\x12&\n\"k_ECloudPendingRemoteOperationNone\x10\x00\x12\x32\n.k_ECloudPendingRemoteOperationAppSessionActive\x10\x01\x12\x32\n.k_ECloudPendingRemoteOperationUploadInProgress\x10\x02\x12/\n+k_ECloudPendingRemoteOperationUploadPending\x10\x03\x12\x35\n1k_ECloudPendingRemoteOperationAppSessionSuspended\x10\x04\x42\x05H\x01\x90\x01\x00')
+  serialized_options=b'H\001\220\001\000',
+  create_key=_descriptor._internal_create_key,
+  serialized_pb=b'\n\"steammessages_client_objects.proto\x1a\x0b\x65nums.proto\"\xcb\x02\n0SteamMessagesClientIClientForcedEnumDependencies\x12?\n\x01\x61\x18\x01 \x01(\x0e\x32\x15.EBluetoothDeviceType:\x1dk_BluetoothDeviceType_Invalid\x12H\n\x01\x62\x18\x02 \x01(\x0e\x32\x19.EStorageBlockContentType:\"k_EStorageBlockContentType_Invalid\x12N\n\x01\x63\x18\x03 \x01(\x0e\x32\x1c.EStorageBlockFileSystemType:%k_EStorageBlockFileSystemType_Invalid\x12<\n\x01\x64\x18\x04 \x01(\x0e\x32\x13.ESDCardFormatStage:\x1ck_ESDCardFormatStage_Invalid\"=\n\x1b\x43MsgNetworkDeviceIP4Address\x12\r\n\x02ip\x18\x01 \x01(\x05:\x01\x30\x12\x0f\n\x07netmask\x18\x02 \x01(\x05\"\xbf\x01\n\x1a\x43MsgNetworkDeviceIP4Config\x12/\n\taddresses\x18\x01 \x03(\x0b\x32\x1c.CMsgNetworkDeviceIP4Address\x12\x0e\n\x06\x64ns_ip\x18\x02 \x03(\x05\x12\x12\n\ngateway_ip\x18\x03 \x01(\x05\x12\x17\n\x0fis_dhcp_enabled\x18\x04 \x01(\x08\x12\x18\n\x10is_default_route\x18\x05 \x01(\x08\x12\x19\n\nis_enabled\x18\x06 \x01(\x08:\x05\x66\x61lse\")\n\x1b\x43MsgNetworkDeviceIP6Address\x12\n\n\x02ip\x18\x01 \x01(\t\"\xbf\x01\n\x1a\x43MsgNetworkDeviceIP6Config\x12/\n\taddresses\x18\x01 \x03(\x0b\x32\x1c.CMsgNetworkDeviceIP6Address\x12\x0e\n\x06\x64ns_ip\x18\x02 \x03(\t\x12\x12\n\ngateway_ip\x18\x03 \x01(\t\x12\x17\n\x0fis_dhcp_enabled\x18\x04 \x01(\x08\x12\x18\n\x10is_default_route\x18\x05 \x01(\x08\x12\x19\n\nis_enabled\x18\x06 \x01(\x08:\x05\x66\x61lse\"\x97\x06\n\x16\x43MsgNetworkDevicesData\x12/\n\x07\x64\x65vices\x18\x01 \x03(\x0b\x32\x1e.CMsgNetworkDevicesData.Device\x12\x17\n\x0fis_wifi_enabled\x18\x02 \x01(\x08\x12 \n\x18is_wifi_scanning_enabled\x18\x03 \x01(\x08\x1a\x90\x05\n\x06\x44\x65vice\x12\r\n\x02id\x18\x01 \x01(\r:\x01\x30\x12\r\n\x05\x65type\x18\x02 \x01(\x05\x12\x0e\n\x06\x65state\x18\x03 \x01(\x05\x12\x0b\n\x03mac\x18\x04 \x01(\t\x12\x0e\n\x06vendor\x18\x05 \x01(\t\x12\x0f\n\x07product\x18\x06 \x01(\t\x12(\n\x03ip4\x18\x07 \x01(\x0b\x32\x1b.CMsgNetworkDeviceIP4Config\x12(\n\x03ip6\x18\x08 \x01(\x0b\x32\x1b.CMsgNetworkDeviceIP6Config\x12\x33\n\x05wired\x18\t \x01(\x0b\x32$.CMsgNetworkDevicesData.Device.Wired\x12\x39\n\x08wireless\x18\n \x01(\x0b\x32\'.CMsgNetworkDevicesData.Device.Wireless\x1aS\n\x05Wired\x12\x1f\n\x10is_cable_present\x18\x01 \x01(\x08:\x05\x66\x61lse\x12\x12\n\nspeed_mbit\x18\x02 \x01(\r\x12\x15\n\rfriendly_name\x18\x03 \x01(\t\x1a\x90\x02\n\x08Wireless\x12\x37\n\x03\x61ps\x18\x01 \x03(\x0b\x32*.CMsgNetworkDevicesData.Device.Wireless.AP\x12\x1b\n\x13\x65security_supported\x18\x02 \x01(\x05\x1a\xad\x01\n\x02\x41P\x12\r\n\x02id\x18\x01 \x01(\r:\x01\x30\x12\x11\n\testrength\x18\x02 \x01(\x05\x12\x0c\n\x04ssid\x18\x03 \x01(\t\x12\x11\n\tis_active\x18\x04 \x01(\x08\x12\x16\n\x0eis_autoconnect\x18\x05 \x01(\x08\x12\x11\n\tesecurity\x18\x06 \x01(\x05\x12\x11\n\tuser_name\x18\x07 \x01(\t\x12\x10\n\x08password\x18\x08 \x01(\t\x12\x14\n\x0cstrength_raw\x18\t \x01(\x05\"\xb5\x03\n\x18\x43MsgNetworkDeviceConnect\x12\x14\n\tdevice_id\x18\x01 \x01(\r:\x01\x30\x12:\n\x0b\x63redentials\x18\x04 \x01(\x0b\x32%.CMsgNetworkDeviceConnect.Credentials\x12(\n\x03ip4\x18\x05 \x01(\x0b\x32\x1b.CMsgNetworkDeviceIP4Config\x12(\n\x03ip6\x18\x06 \x01(\x0b\x32\x1b.CMsgNetworkDeviceIP6Config\x12\x35\n\x08\x61p_known\x18\x02 \x01(\x0b\x32!.CMsgNetworkDeviceConnect.KnownAPH\x00\x12\x37\n\tap_custom\x18\x03 \x01(\x0b\x32\".CMsgNetworkDeviceConnect.CustomAPH\x00\x1a\x18\n\x07KnownAP\x12\r\n\x05\x61p_id\x18\x01 \x01(\r\x1a+\n\x08\x43ustomAP\x12\x0c\n\x04ssid\x18\x01 \x01(\t\x12\x11\n\tesecurity\x18\x02 \x01(\x05\x1a\x31\n\x0b\x43redentials\x12\x10\n\x08username\x18\x01 \x01(\t\x12\x10\n\x08password\x18\x02 \x01(\tB\t\n\x07\x61p_info\"\x9b\x05\n\x16\x43MsgStorageDevicesData\x12-\n\x06\x64rives\x18\x01 \x03(\x0b\x32\x1d.CMsgStorageDevicesData.Drive\x12:\n\rblock_devices\x18\x02 \x03(\x0b\x32#.CMsgStorageDevicesData.BlockDevice\x12\x1c\n\x14is_unmount_supported\x18\x03 \x01(\x08\x1ao\n\x05\x44rive\x12\r\n\x02id\x18\x01 \x01(\r:\x01\x30\x12\r\n\x05model\x18\x02 \x01(\t\x12\x0e\n\x06vendor\x18\x03 \x01(\t\x12\x0e\n\x06serial\x18\x04 \x01(\t\x12\x14\n\x0cis_ejectable\x18\x05 \x01(\x08\x12\x12\n\nsize_bytes\x18\x06 \x01(\x04\x1a\x86\x03\n\x0b\x42lockDevice\x12\r\n\x02id\x18\x01 \x01(\r:\x01\x30\x12\x13\n\x08\x64rive_id\x18\x02 \x01(\r:\x01\x30\x12\x0c\n\x04path\x18\x03 \x01(\t\x12\x15\n\rfriendly_path\x18\x04 \x01(\t\x12\r\n\x05label\x18\x05 \x01(\t\x12\x12\n\nsize_bytes\x18\x06 \x01(\x04\x12\x16\n\x0eis_formattable\x18\x07 \x01(\x08\x12\x14\n\x0cis_read_only\x18\x08 \x01(\x08\x12\x16\n\x0eis_root_device\x18\t \x01(\x08\x12S\n\x0c\x63ontent_type\x18\n \x01(\x0e\x32\x19.EStorageBlockContentType:\"k_EStorageBlockContentType_Invalid\x12\\\n\x0f\x66ilesystem_type\x18\x0b \x01(\x0e\x32\x1c.EStorageBlockFileSystemType:%k_EStorageBlockFileSystemType_Invalid\x12\x12\n\nmount_path\x18\x0c \x01(\t\"\xb9\x01\n\x1d\x43\x43loud_PendingRemoteOperation\x12T\n\toperation\x18\x01 \x01(\x0e\x32\x1d.ECloudPendingRemoteOperation:\"k_ECloudPendingRemoteOperationNone\x12\x14\n\x0cmachine_name\x18\x02 \x01(\t\x12\x11\n\tclient_id\x18\x03 \x01(\x04\x12\x19\n\x11time_last_updated\x18\x04 \x01(\r\"V\n CMsgCloudPendingRemoteOperations\x12\x32\n\noperations\x18\x01 \x03(\x0b\x32\x1e.CCloud_PendingRemoteOperation\"\x90\x04\n\x18\x43MsgBluetoothDevicesData\x12\x33\n\x08\x61\x64\x61pters\x18\x01 \x03(\x0b\x32!.CMsgBluetoothDevicesData.Adapter\x12\x31\n\x07\x64\x65vices\x18\x02 \x03(\x0b\x32 .CMsgBluetoothDevicesData.Device\x12\x32\n\x07manager\x18\x03 \x01(\x0b\x32!.CMsgBluetoothDevicesData.Manager\x1a_\n\x07\x41\x64\x61pter\x12\r\n\x02id\x18\x01 \x01(\r:\x01\x30\x12\x0b\n\x03mac\x18\x02 \x01(\t\x12\x0c\n\x04name\x18\x03 \x01(\t\x12\x12\n\nis_enabled\x18\x04 \x01(\x08\x12\x16\n\x0eis_discovering\x18\x05 \x01(\x08\x1a\xcd\x01\n\x06\x44\x65vice\x12\r\n\x02id\x18\x01 \x01(\r:\x01\x30\x12\x15\n\nadapter_id\x18\x02 \x01(\r:\x01\x30\x12\x43\n\x05\x65type\x18\x03 \x01(\x0e\x32\x15.EBluetoothDeviceType:\x1dk_BluetoothDeviceType_Invalid\x12\x0b\n\x03mac\x18\x04 \x01(\t\x12\x0c\n\x04name\x18\x05 \x01(\t\x12\x14\n\x0cis_connected\x18\x06 \x01(\x08\x12\x11\n\tis_paired\x18\x07 \x01(\x08\x12\x14\n\x0cstrength_raw\x18\x08 \x01(\x05\x1a\'\n\x07Manager\x12\x1c\n\x14is_bluetooth_enabled\x18\x01 \x01(\x08\"<\n\x1d\x43MsgSystemPerfDiagnosticEntry\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t\"\xa5\x01\n\x1e\x43MsgSystemPerfNetworkInterface\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x11\n\ttimestamp\x18\x02 \x01(\x01\x12\x16\n\x0etx_bytes_total\x18\x03 \x01(\x03\x12\x16\n\x0erx_bytes_total\x18\x04 \x01(\x03\x12\x18\n\x10tx_bytes_per_sec\x18\x05 \x01(\x05\x12\x18\n\x10rx_bytes_per_sec\x18\x06 \x01(\x05\"\x9c\x01\n\x1c\x43MsgSystemPerfDiagnosticInfo\x12/\n\x07\x65ntries\x18\x01 \x03(\x0b\x32\x1e.CMsgSystemPerfDiagnosticEntry\x12\x33\n\ninterfaces\x18\x02 \x03(\x0b\x32\x1f.CMsgSystemPerfNetworkInterface\x12\x16\n\x0e\x62\x61ttery_temp_c\x18\x03 \x01(\x02\"\x86\x05\n\x14\x43MsgSystemPerfLimits\x12#\n\x1b\x63pu_governor_manual_min_mhz\x18\x01 \x01(\x05\x12#\n\x1b\x63pu_governor_manual_max_mhz\x18\x02 \x01(\x05\x12\x19\n\x11\x66sr_sharpness_min\x18\x03 \x01(\x05\x12\x19\n\x11\x66sr_sharpness_max\x18\x04 \x01(\x05\x12&\n\x1egpu_performance_manual_min_mhz\x18\x05 \x01(\x05\x12&\n\x1egpu_performance_manual_max_mhz\x18\x06 \x01(\x05\x12\"\n\x1aperf_overlay_is_standalone\x18\x07 \x01(\x08\x12 \n\x18is_dynamic_vrs_available\x18\x08 \x01(\x08\x12\x30\n(is_manual_display_refresh_rate_available\x18\t \x01(\x08\x12?\n gpu_performance_levels_available\x18\n \x03(\x0e\x32\x15.EGPUPerformanceLevel\x12%\n\x1d\x64isplay_refresh_manual_hz_min\x18\x0b \x01(\x05\x12%\n\x1d\x64isplay_refresh_manual_hz_max\x18\x0c \x01(\x05\x12\x19\n\x11\x66ps_limit_options\x18\r \x03(\x05\x12\x15\n\rtdp_limit_min\x18\x0e \x01(\x05\x12\x15\n\rtdp_limit_max\x18\x0f \x01(\x05\x12\x18\n\x10is_nis_supported\x18\x10 \x01(\x08\x12\x19\n\x11nis_sharpness_min\x18\x11 \x01(\x05\x12\x19\n\x11nis_sharpness_max\x18\x12 \x01(\x05\"\x8e\x04\n\x1c\x43MsgSystemPerfSettingsGlobal\x12\x1e\n\x16\x64iagnostic_update_rate\x18\x01 \x01(\x02\x12[\n\x1asystem_trace_service_state\x18\x02 \x01(\x0e\x32\x14.ESystemServiceState:!k_ESystemServiceState_Unavailable\x12\x61\n graphics_profiling_service_state\x18\x03 \x01(\x0e\x32\x14.ESystemServiceState:!k_ESystemServiceState_Unavailable\x12[\n\x1aperf_overlay_service_state\x18\x04 \x01(\x0e\x32\x14.ESystemServiceState:!k_ESystemServiceState_Unavailable\x12Z\n\x12perf_overlay_level\x18\x05 \x01(\x0e\x32\x1a.EGraphicsPerfOverlayLevel:\"k_EGraphicsPerfOverlayLevel_Hidden\x12/\n\'is_show_perf_overlay_over_steam_enabled\x18\x06 \x01(\x08\x12$\n\x1cis_advanced_settings_enabled\x18\x07 \x01(\x08\"\xdd\x04\n\x1c\x43MsgSystemPerfSettingsPerApp\x12\"\n\x1agpu_performance_manual_mhz\x18\x01 \x01(\x05\x12\x11\n\tfps_limit\x18\x02 \x01(\x05\x12&\n\x1eis_variable_resolution_enabled\x18\x03 \x01(\x08\x12\'\n\x1fis_dynamic_refresh_rate_enabled\x18\x04 \x01(\x08\x12\x11\n\ttdp_limit\x18\x05 \x01(\x05\x12;\n\x0c\x63pu_governor\x18\x06 \x01(\x0e\x32\r.ECPUGovernor:\x16k_ECPUGovernor_Invalid\x12\x1f\n\x17\x63pu_governor_manual_mhz\x18\x07 \x01(\x05\x12\x16\n\x0escaling_filter\x18\x08 \x01(\x05\x12\x15\n\rfsr_sharpness\x18\t \x01(\x05\x12\x1c\n\x14is_fps_limit_enabled\x18\n \x01(\x08\x12\x1c\n\x14is_tdp_limit_enabled\x18\x0b \x01(\x08\x12#\n\x1bis_low_latency_mode_enabled\x18\x0c \x01(\x08\x12!\n\x19\x64isplay_refresh_manual_hz\x18\r \x01(\x05\x12$\n\x1cis_game_perf_profile_enabled\x18\x0e \x01(\x08\x12T\n\x15gpu_performance_level\x18\x0f \x01(\x0e\x32\x15.EGPUPerformanceLevel:\x1ek_EGPUPerformanceLevel_Invalid\x12\x15\n\rnis_sharpness\x18\x10 \x01(\x05\"w\n\x16\x43MsgSystemPerfSettings\x12-\n\x06global\x18\x01 \x01(\x0b\x32\x1d.CMsgSystemPerfSettingsGlobal\x12.\n\x07per_app\x18\x02 \x01(\x0b\x32\x1d.CMsgSystemPerfSettingsPerApp\"\x8c\x08\n\x18\x43MsgSystemPerfSettingsV1\x12\x1e\n\x16\x64iagnostic_update_rate\x18\x01 \x01(\x02\x12[\n\x1asystem_trace_service_state\x18\x02 \x01(\x0e\x32\x14.ESystemServiceState:!k_ESystemServiceState_Unavailable\x12\x61\n graphics_profiling_service_state\x18\x03 \x01(\x0e\x32\x14.ESystemServiceState:!k_ESystemServiceState_Unavailable\x12[\n\x1aperf_overlay_service_state\x18\x04 \x01(\x0e\x32\x14.ESystemServiceState:!k_ESystemServiceState_Unavailable\x12Z\n\x12perf_overlay_level\x18\x05 \x01(\x0e\x32\x1a.EGraphicsPerfOverlayLevel:\"k_EGraphicsPerfOverlayLevel_Hidden\x12T\n\x15gpu_performance_level\x18\x06 \x01(\x0e\x32\x15.EGPUPerformanceLevel:\x1ek_EGPUPerformanceLevel_Invalid\x12\"\n\x1agpu_performance_manual_mhz\x18\x07 \x01(\x05\x12\x11\n\tfps_limit\x18\x08 \x01(\x05\x12&\n\x1eis_variable_resolution_enabled\x18\t \x01(\x08\x12\'\n\x1fis_dynamic_refresh_rate_enabled\x18\n \x01(\x08\x12\x11\n\ttdp_limit\x18\x0b \x01(\x05\x12;\n\x0c\x63pu_governor\x18\x0c \x01(\x0e\x32\r.ECPUGovernor:\x16k_ECPUGovernor_Invalid\x12\x1f\n\x17\x63pu_governor_manual_mhz\x18\r \x01(\x05\x12\x16\n\x0escaling_filter\x18\x0e \x01(\x05\x12\x15\n\rfsr_sharpness\x18\x0f \x01(\x05\x12\x1c\n\x14is_fps_limit_enabled\x18\x10 \x01(\x08\x12\x1c\n\x14is_tdp_limit_enabled\x18\x11 \x01(\x08\x12/\n\'is_show_perf_overlay_over_steam_enabled\x18\x12 \x01(\x08\x12#\n\x1bis_low_latency_mode_enabled\x18\x13 \x01(\x08\x12!\n\x19\x64isplay_refresh_manual_hz\x18\x14 \x01(\x05\x12$\n\x1cis_game_perf_profile_enabled\x18\x15 \x01(\x08\"\xa0\x01\n\x13\x43MsgSystemPerfState\x12%\n\x06limits\x18\x01 \x01(\x0b\x32\x15.CMsgSystemPerfLimits\x12)\n\x08settings\x18\x02 \x01(\x0b\x32\x17.CMsgSystemPerfSettings\x12\x17\n\x0f\x63urrent_game_id\x18\x03 \x01(\x04\x12\x1e\n\x16\x61\x63tive_profile_game_id\x18\x04 \x01(\x04\"\x87\x01\n\x1c\x43MsgSystemPerfUpdateSettings\x12\x0e\n\x06gameid\x18\x01 \x01(\x04\x12\x1a\n\x10reset_to_default\x18\x02 \x01(\x08H\x00\x12\x31\n\x0esettings_delta\x18\x03 \x01(\x0b\x32\x17.CMsgSystemPerfSettingsH\x00\x42\x08\n\x06update\"\xdf\x01\n\x19\x43MsgSystemDockUpdateState\x12\x36\n\x05state\x18\x01 \x01(\x0e\x32\x0e.EUpdaterState:\x17k_EUpdaterState_Invalid\x12\x1a\n\x12rtime_last_checked\x18\x02 \x01(\x07\x12\x17\n\x0fversion_current\x18\x03 \x01(\t\x12\x19\n\x11version_available\x18\x04 \x01(\t\x12\x16\n\x0estage_progress\x18\x05 \x01(\x02\x12\"\n\x1artime_estimated_completion\x18\x06 \x01(\x07\"G\n\x13\x43MsgSystemDockState\x12\x30\n\x0cupdate_state\x18\x01 \x01(\x0b\x32\x1a.CMsgSystemDockUpdateState\"2\n\x1c\x43MsgSystemDockUpdateFirmware\x12\x12\n\ncheck_only\x18\x01 \x01(\x08\"\xc5\x01\n\x15\x43MsgSystemAudioVolume\x12\x34\n\x07\x65ntries\x18\x01 \x03(\x0b\x32#.CMsgSystemAudioVolume.ChannelEntry\x12\x10\n\x08is_muted\x18\x02 \x01(\x08\x1a\x64\n\x0c\x43hannelEntry\x12\x44\n\x08\x65\x63hannel\x18\x01 \x01(\x0e\x32\x14.ESystemAudioChannel:\x1ck_SystemAudioChannel_Invalid\x12\x0e\n\x06volume\x18\x02 \x01(\x02\"E\n\x1c\x43MsgSystemAudioManagerObject\x12\n\n\x02id\x18\x01 \x01(\r\x12\x19\n\x11rtime_last_update\x18\x02 \x01(\x07\"\x89\x01\n\x1c\x43MsgSystemAudioManagerDevice\x12+\n\x04\x62\x61se\x18\x01 \x01(\x0b\x32\x1d.CMsgSystemAudioManagerObject\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x0c\n\x04nick\x18\x03 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x04 \x01(\t\x12\x0b\n\x03\x61pi\x18\x05 \x01(\t\"\x81\x02\n\x1a\x43MsgSystemAudioManagerNode\x12+\n\x04\x62\x61se\x18\x01 \x01(\x0b\x32\x1d.CMsgSystemAudioManagerObject\x12\x11\n\tdevice_id\x18\x02 \x01(\r\x12\x0c\n\x04name\x18\x03 \x01(\t\x12\x0c\n\x04nick\x18\x04 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x05 \x01(\t\x12J\n\nedirection\x18\x06 \x01(\x0e\x32\x16.ESystemAudioDirection:\x1ek_SystemAudioDirection_Invalid\x12&\n\x06volume\x18\x07 \x01(\x0b\x32\x16.CMsgSystemAudioVolume\"\xe2\x02\n\x1a\x43MsgSystemAudioManagerPort\x12+\n\x04\x62\x61se\x18\x01 \x01(\x0b\x32\x1d.CMsgSystemAudioManagerObject\x12\x0f\n\x07node_id\x18\x03 \x01(\r\x12\x0c\n\x04name\x18\x04 \x01(\t\x12\r\n\x05\x61lias\x18\x05 \x01(\t\x12\x43\n\x05\x65type\x18\x06 \x01(\x0e\x32\x15.ESystemAudioPortType:\x1dk_SystemAudioPortType_Invalid\x12R\n\nedirection\x18\x07 \x01(\x0e\x32\x1a.ESystemAudioPortDirection:\"k_SystemAudioPortDirection_Invalid\x12\x13\n\x0bis_physical\x18\x08 \x01(\x08\x12\x13\n\x0bis_terminal\x18\t \x01(\x08\x12\x12\n\nis_control\x18\n \x01(\x08\x12\x12\n\nis_monitor\x18\x0b \x01(\x08\"\xa7\x01\n\x1a\x43MsgSystemAudioManagerLink\x12+\n\x04\x62\x61se\x18\x01 \x01(\x0b\x32\x1d.CMsgSystemAudioManagerObject\x12\x16\n\x0eoutput_node_id\x18\x02 \x01(\r\x12\x16\n\x0eoutput_port_id\x18\x03 \x01(\r\x12\x15\n\rinput_node_id\x18\x04 \x01(\r\x12\x15\n\rinput_port_id\x18\x05 \x01(\r\"\xd3\x01\n\x1d\x43MsgSystemAudioManagerStateHW\x12.\n\x07\x64\x65vices\x18\x01 \x03(\x0b\x32\x1d.CMsgSystemAudioManagerDevice\x12*\n\x05nodes\x18\x02 \x03(\x0b\x32\x1b.CMsgSystemAudioManagerNode\x12*\n\x05ports\x18\x03 \x03(\x0b\x32\x1b.CMsgSystemAudioManagerPort\x12*\n\x05links\x18\x04 \x03(\x0b\x32\x1b.CMsgSystemAudioManagerLink\"p\n\x1b\x43MsgSystemAudioManagerState\x12\x14\n\x0crtime_filter\x18\x01 \x01(\x07\x12\x0f\n\x07\x63ounter\x18\x02 \x01(\x05\x12*\n\x02hw\x18\x03 \x01(\x0b\x32\x1e.CMsgSystemAudioManagerStateHW\"8\n%CMsgSystemAudioManagerUpdateSomething\x12\x0f\n\x07\x63ounter\x18\x01 \x01(\x05\"\xf5\x08\n\x19\x43MsgSystemManagerSettings\x12*\n\"idle_backlight_dim_battery_seconds\x18\x01 \x01(\x02\x12%\n\x1didle_backlight_dim_ac_seconds\x18\x02 \x01(\x02\x12$\n\x1cidle_suspend_battery_seconds\x18\x03 \x01(\x02\x12\x1f\n\x17idle_suspend_ac_seconds\x18\x04 \x01(\x02\x12\x1e\n\x16idle_suspend_supressed\x18\x05 \x01(\x08\x12(\n is_adaptive_brightness_available\x18\x06 \x01(\x08\x12+\n#display_adaptive_brightness_enabled\x18\x07 \x01(\x08\x12)\n!is_display_colorprofile_available\x18\x08 \x01(\x08\x12\x45\n\x14\x64isplay_colorprofile\x18\t \x01(\x0e\x32\x0e.EColorProfile:\x17k_EColorProfile_Invalid\x12!\n\x19\x64isplay_nightmode_enabled\x18\n \x01(\x08\x12&\n\x1e\x64isplay_nightmode_tintstrength\x18\x0b \x01(\x02\x12 \n\x18\x64isplay_nightmode_maxhue\x18\x0c \x01(\x02\x12 \n\x18\x64isplay_nightmode_maxsat\x18\r \x01(\x02\x12\x1f\n\x17\x64isplay_nightmode_uiexp\x18\x0e \x01(\x02\x12\x1f\n\x17\x64isplay_nightmode_blend\x18\x0f \x01(\x02\x12\x1f\n\x17\x64isplay_nightmode_reset\x18\x10 \x01(\x08\x12*\n\"display_nightmode_schedule_enabled\x18\x11 \x01(\x08\x12,\n$display_nightmode_schedule_starttime\x18\x12 \x01(\x02\x12*\n\"display_nightmode_schedule_endtime\x18\x13 \x01(\x02\x12#\n\x1b\x64isplay_diagnostics_enabled\x18\x14 \x01(\x08\x12\x16\n\x0e\x61ls_lux_latest\x18\x15 \x01(\x02\x12\x16\n\x0e\x61ls_lux_median\x18\x16 \x01(\x02\x12!\n\x19\x64isplay_brightness_linear\x18\x17 \x01(\x02\x12&\n\x1e\x64isplay_brightness_adaptivemin\x18\x18 \x01(\x02\x12&\n\x1e\x64isplay_brightness_adaptivemax\x18\x19 \x01(\x02\x12!\n\x19is_wifi_powersave_enabled\x18\x1a \x01(\x08\x12 \n\x18is_fan_control_available\x18\x1b \x01(\x08\x12P\n\x10\x66\x61n_control_mode\x18\x1c \x01(\x0e\x32\x16.ESystemFanControlMode:\x1ek_SystemFanControlMode_Invalid\"K\n\x18\x43MsgSelectOSBranchParams\x12/\n\x06\x62ranch\x18\x01 \x01(\x0e\x32\n.EOSBranch:\x13k_EOSBranch_Unknown\"p\n\x18\x43MsgSystemUpdateProgress\x12\x16\n\x0estage_progress\x18\x01 \x01(\x02\x12\x18\n\x10stage_size_bytes\x18\x02 \x01(\x03\x12\"\n\x1artime_estimated_completion\x18\x03 \x01(\x07\"\xa1\x01\n\x1b\x43MsgSystemUpdateCheckResult\x12\x33\n\x04type\x18\x01 \x01(\x0e\x32\r.EUpdaterType:\x16k_EUpdaterType_Invalid\x12\x12\n\x07\x65result\x18\x02 \x01(\r:\x01\x32\x12\x15\n\rrtime_checked\x18\x03 \x01(\x07\x12\x11\n\tavailable\x18\x04 \x01(\x08\x12\x0f\n\x07version\x18\x05 \x01(\t\"A\n\x1b\x43MsgSystemUpdateApplyParams\x12\"\n\x0b\x61pply_types\x18\x01 \x03(\x0e\x32\r.EUpdaterType\"\xb6\x01\n\x1b\x43MsgSystemUpdateApplyResult\x12\x33\n\x04type\x18\x01 \x01(\x0e\x32\r.EUpdaterType:\x16k_EUpdaterType_Invalid\x12\x12\n\x07\x65result\x18\x02 \x01(\r:\x01\x32\x12&\n\x17requires_client_restart\x18\x03 \x01(\x08:\x05\x66\x61lse\x12&\n\x17requires_system_restart\x18\x04 \x01(\x08:\x05\x66\x61lse\"\xf4\x01\n\x15\x43MsgSystemUpdateState\x12\x36\n\x05state\x18\x01 \x01(\x0e\x32\x0e.EUpdaterState:\x17k_EUpdaterState_Invalid\x12+\n\x08progress\x18\x02 \x01(\x0b\x32\x19.CMsgSystemUpdateProgress\x12:\n\x14update_check_results\x18\x03 \x03(\x0b\x32\x1c.CMsgSystemUpdateCheckResult\x12:\n\x14update_apply_results\x18\x04 \x03(\x0b\x32\x1c.CMsgSystemUpdateApplyResult\"&\n\x15\x43MsgAchievementChange\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\"\\\n\x0c\x43MsgCellList\x12!\n\x05\x63\x65lls\x18\x01 \x03(\x0b\x32\x12.CMsgCellList.Cell\x1a)\n\x04\x43\x65ll\x12\x0f\n\x07\x63\x65ll_id\x18\x01 \x01(\r\x12\x10\n\x08loc_name\x18\x02 \x01(\t\"\x8e\x03\n\x10\x43MsgShortcutInfo\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x0b\n\x03\x65xe\x18\x02 \x01(\t\x12\x11\n\tstart_dir\x18\x03 \x01(\t\x12\x0c\n\x04icon\x18\x04 \x01(\t\x12\x0c\n\x04path\x18\x05 \x01(\t\x12\x0c\n\x04\x61rgs\x18\x06 \x01(\t\x12\x10\n\x08\x61pp_name\x18\x07 \x01(\t\x12\x16\n\x0eoverride_appid\x18\x08 \x01(\r\x12\x15\n\rflatpak_appid\x18\t \x01(\t\x12\x0c\n\x04tags\x18\n \x03(\t\x12\x11\n\tis_remote\x18\x0b \x01(\x08\x12\x11\n\tis_hidden\x18\x0c \x01(\x08\x12\x14\n\x0cis_temporary\x18\r \x01(\x08\x12\x11\n\tis_openvr\x18\x0e \x01(\x08\x12\x1c\n\x14\x61llow_desktop_config\x18\x0f \x01(\x08\x12\x15\n\rallow_overlay\x18\x10 \x01(\x08\x12\x1b\n\x13rt_last_played_time\x18\x11 \x01(\r\x12\x1a\n\x12is_devkit_shortcut\x18\x12 \x01(\x08\x12\x15\n\rdevkit_gameid\x18\x13 \x01(\t\"$\n\x12\x43MsgShortcutAppIds\x12\x0e\n\x06\x61ppids\x18\x01 \x03(\r*\x96\x02\n\x1c\x45\x43loudPendingRemoteOperation\x12&\n\"k_ECloudPendingRemoteOperationNone\x10\x00\x12\x32\n.k_ECloudPendingRemoteOperationAppSessionActive\x10\x01\x12\x32\n.k_ECloudPendingRemoteOperationUploadInProgress\x10\x02\x12/\n+k_ECloudPendingRemoteOperationUploadPending\x10\x03\x12\x35\n1k_ECloudPendingRemoteOperationAppSessionSuspended\x10\x04*\x9f\x0c\n\x18\x45SteamDeckKeyboardLayout\x12%\n!k_ESteamDeckKeyboardLayout_QWERTY\x10\x00\x12(\n$k_ESteamDeckKeyboardLayout_Bulgarian\x10\x01\x12\x31\n-k_ESteamDeckKeyboardLayout_Chinese_Simplified\x10\x02\x12\x32\n.k_ESteamDeckKeyboardLayout_Chinese_Traditional\x10\x03\x12$\n k_ESteamDeckKeyboardLayout_Czech\x10\x04\x12%\n!k_ESteamDeckKeyboardLayout_Danish\x10\x05\x12&\n\"k_ESteamDeckKeyboardLayout_Finnish\x10\x06\x12%\n!k_ESteamDeckKeyboardLayout_French\x10\x07\x12%\n!k_ESteamDeckKeyboardLayout_German\x10\x08\x12$\n k_ESteamDeckKeyboardLayout_Greek\x10\t\x12(\n$k_ESteamDeckKeyboardLayout_Hungarian\x10\n\x12&\n\"k_ESteamDeckKeyboardLayout_Italian\x10\x0b\x12\'\n#k_ESteamDeckKeyboardLayout_Japanese\x10\x0c\x12%\n!k_ESteamDeckKeyboardLayout_Korean\x10\r\x12(\n$k_ESteamDeckKeyboardLayout_Norwegian\x10\x0e\x12%\n!k_ESteamDeckKeyboardLayout_Polish\x10\x0f\x12)\n%k_ESteamDeckKeyboardLayout_Portuguese\x10\x10\x12\'\n#k_ESteamDeckKeyboardLayout_Romanian\x10\x11\x12&\n\"k_ESteamDeckKeyboardLayout_Russian\x10\x12\x12&\n\"k_ESteamDeckKeyboardLayout_Spanish\x10\x13\x12&\n\"k_ESteamDeckKeyboardLayout_Swedish\x10\x14\x12#\n\x1fk_ESteamDeckKeyboardLayout_Thai\x10\x15\x12(\n$k_ESteamDeckKeyboardLayout_Turkish_F\x10\x16\x12(\n$k_ESteamDeckKeyboardLayout_Turkish_Q\x10\x17\x12(\n$k_ESteamDeckKeyboardLayout_Ukrainian\x10\x18\x12)\n%k_ESteamDeckKeyboardLayout_Vietnamese\x10\x19\x12\x33\n/k_ESteamDeckKeyboardLayout_QWERTY_International\x10\x1a\x12%\n!k_ESteamDeckKeyboardLayout_Dvorak\x10\x1b\x12&\n\"k_ESteamDeckKeyboardLayout_Colemak\x10\x1c\x12=\n9k_ESteamDeckKeyboardLayout_Bulgarian_Phonetic_Traditional\x10\x1d\x12\x31\n-k_ESteamDeckKeyboardLayout_Bulgarian_Phonetic\x10\x1e\x12;\n7k_ESteamDeckKeyboardLayout_Chinese_Traditional_Bopomofo\x10\x1f\x12:\n6k_ESteamDeckKeyboardLayout_Chinese_Traditional_Cangjie\x10 \x12,\n(k_ESteamDeckKeyboardLayout_Japanese_Kana\x10!\x12\x38\n4k_ESteamDeckKeyboardLayout_Chinese_Traditional_Quick\x10\"B\x05H\x01\x90\x01\x00'
   ,
   dependencies=[enums__pb2.DESCRIPTOR,])
 
@@ -31,41 +30,273 @@ _ECLOUDPENDINGREMOTEOPERATION = _descriptor.EnumDescriptor(
   full_name='ECloudPendingRemoteOperation',
   filename=None,
   file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
   values=[
     _descriptor.EnumValueDescriptor(
       name='k_ECloudPendingRemoteOperationNone', index=0, number=0,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_ECloudPendingRemoteOperationAppSessionActive', index=1, number=1,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_ECloudPendingRemoteOperationUploadInProgress', index=2, number=2,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_ECloudPendingRemoteOperationUploadPending', index=3, number=3,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_ECloudPendingRemoteOperationAppSessionSuspended', index=4, number=4,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
   ],
   containing_type=None,
   serialized_options=None,
-  serialized_start=3675,
-  serialized_end=3953,
+  serialized_start=11733,
+  serialized_end=12011,
 )
 _sym_db.RegisterEnumDescriptor(_ECLOUDPENDINGREMOTEOPERATION)
 
 ECloudPendingRemoteOperation = enum_type_wrapper.EnumTypeWrapper(_ECLOUDPENDINGREMOTEOPERATION)
+_ESTEAMDECKKEYBOARDLAYOUT = _descriptor.EnumDescriptor(
+  name='ESteamDeckKeyboardLayout',
+  full_name='ESteamDeckKeyboardLayout',
+  filename=None,
+  file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
+  values=[
+    _descriptor.EnumValueDescriptor(
+      name='k_ESteamDeckKeyboardLayout_QWERTY', index=0, number=0,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_ESteamDeckKeyboardLayout_Bulgarian', index=1, number=1,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_ESteamDeckKeyboardLayout_Chinese_Simplified', index=2, number=2,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_ESteamDeckKeyboardLayout_Chinese_Traditional', index=3, number=3,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_ESteamDeckKeyboardLayout_Czech', index=4, number=4,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_ESteamDeckKeyboardLayout_Danish', index=5, number=5,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_ESteamDeckKeyboardLayout_Finnish', index=6, number=6,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_ESteamDeckKeyboardLayout_French', index=7, number=7,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_ESteamDeckKeyboardLayout_German', index=8, number=8,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_ESteamDeckKeyboardLayout_Greek', index=9, number=9,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_ESteamDeckKeyboardLayout_Hungarian', index=10, number=10,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_ESteamDeckKeyboardLayout_Italian', index=11, number=11,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_ESteamDeckKeyboardLayout_Japanese', index=12, number=12,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_ESteamDeckKeyboardLayout_Korean', index=13, number=13,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_ESteamDeckKeyboardLayout_Norwegian', index=14, number=14,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_ESteamDeckKeyboardLayout_Polish', index=15, number=15,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_ESteamDeckKeyboardLayout_Portuguese', index=16, number=16,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_ESteamDeckKeyboardLayout_Romanian', index=17, number=17,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_ESteamDeckKeyboardLayout_Russian', index=18, number=18,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_ESteamDeckKeyboardLayout_Spanish', index=19, number=19,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_ESteamDeckKeyboardLayout_Swedish', index=20, number=20,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_ESteamDeckKeyboardLayout_Thai', index=21, number=21,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_ESteamDeckKeyboardLayout_Turkish_F', index=22, number=22,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_ESteamDeckKeyboardLayout_Turkish_Q', index=23, number=23,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_ESteamDeckKeyboardLayout_Ukrainian', index=24, number=24,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_ESteamDeckKeyboardLayout_Vietnamese', index=25, number=25,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_ESteamDeckKeyboardLayout_QWERTY_International', index=26, number=26,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_ESteamDeckKeyboardLayout_Dvorak', index=27, number=27,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_ESteamDeckKeyboardLayout_Colemak', index=28, number=28,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_ESteamDeckKeyboardLayout_Bulgarian_Phonetic_Traditional', index=29, number=29,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_ESteamDeckKeyboardLayout_Bulgarian_Phonetic', index=30, number=30,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_ESteamDeckKeyboardLayout_Chinese_Traditional_Bopomofo', index=31, number=31,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_ESteamDeckKeyboardLayout_Chinese_Traditional_Cangjie', index=32, number=32,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_ESteamDeckKeyboardLayout_Japanese_Kana', index=33, number=33,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_ESteamDeckKeyboardLayout_Chinese_Traditional_Quick', index=34, number=34,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+  ],
+  containing_type=None,
+  serialized_options=None,
+  serialized_start=12014,
+  serialized_end=13581,
+)
+_sym_db.RegisterEnumDescriptor(_ESTEAMDECKKEYBOARDLAYOUT)
+
+ESteamDeckKeyboardLayout = enum_type_wrapper.EnumTypeWrapper(_ESTEAMDECKKEYBOARDLAYOUT)
 k_ECloudPendingRemoteOperationNone = 0
 k_ECloudPendingRemoteOperationAppSessionActive = 1
 k_ECloudPendingRemoteOperationUploadInProgress = 2
 k_ECloudPendingRemoteOperationUploadPending = 3
 k_ECloudPendingRemoteOperationAppSessionSuspended = 4
+k_ESteamDeckKeyboardLayout_QWERTY = 0
+k_ESteamDeckKeyboardLayout_Bulgarian = 1
+k_ESteamDeckKeyboardLayout_Chinese_Simplified = 2
+k_ESteamDeckKeyboardLayout_Chinese_Traditional = 3
+k_ESteamDeckKeyboardLayout_Czech = 4
+k_ESteamDeckKeyboardLayout_Danish = 5
+k_ESteamDeckKeyboardLayout_Finnish = 6
+k_ESteamDeckKeyboardLayout_French = 7
+k_ESteamDeckKeyboardLayout_German = 8
+k_ESteamDeckKeyboardLayout_Greek = 9
+k_ESteamDeckKeyboardLayout_Hungarian = 10
+k_ESteamDeckKeyboardLayout_Italian = 11
+k_ESteamDeckKeyboardLayout_Japanese = 12
+k_ESteamDeckKeyboardLayout_Korean = 13
+k_ESteamDeckKeyboardLayout_Norwegian = 14
+k_ESteamDeckKeyboardLayout_Polish = 15
+k_ESteamDeckKeyboardLayout_Portuguese = 16
+k_ESteamDeckKeyboardLayout_Romanian = 17
+k_ESteamDeckKeyboardLayout_Russian = 18
+k_ESteamDeckKeyboardLayout_Spanish = 19
+k_ESteamDeckKeyboardLayout_Swedish = 20
+k_ESteamDeckKeyboardLayout_Thai = 21
+k_ESteamDeckKeyboardLayout_Turkish_F = 22
+k_ESteamDeckKeyboardLayout_Turkish_Q = 23
+k_ESteamDeckKeyboardLayout_Ukrainian = 24
+k_ESteamDeckKeyboardLayout_Vietnamese = 25
+k_ESteamDeckKeyboardLayout_QWERTY_International = 26
+k_ESteamDeckKeyboardLayout_Dvorak = 27
+k_ESteamDeckKeyboardLayout_Colemak = 28
+k_ESteamDeckKeyboardLayout_Bulgarian_Phonetic_Traditional = 29
+k_ESteamDeckKeyboardLayout_Bulgarian_Phonetic = 30
+k_ESteamDeckKeyboardLayout_Chinese_Traditional_Bopomofo = 31
+k_ESteamDeckKeyboardLayout_Chinese_Traditional_Cangjie = 32
+k_ESteamDeckKeyboardLayout_Japanese_Kana = 33
+k_ESteamDeckKeyboardLayout_Chinese_Traditional_Quick = 34
 
 
 
@@ -75,6 +306,7 @@ _STEAMMESSAGESCLIENTICLIENTFORCEDENUMDEPENDENCIES = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='a', full_name='SteamMessagesClientIClientForcedEnumDependencies.a', index=0,
@@ -82,21 +314,28 @@ _STEAMMESSAGESCLIENTICLIENTFORCEDENUMDEPENDENCIES = _descriptor.Descriptor(
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='b', full_name='SteamMessagesClientIClientForcedEnumDependencies.b', index=1,
       number=2, type=14, cpp_type=8, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='c', full_name='SteamMessagesClientIClientForcedEnumDependencies.c', index=2,
       number=3, type=14, cpp_type=8, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='d', full_name='SteamMessagesClientIClientForcedEnumDependencies.d', index=3,
+      number=4, type=14, cpp_type=8, label=1,
+      has_default_value=True, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -110,7 +349,7 @@ _STEAMMESSAGESCLIENTICLIENTFORCEDENUMDEPENDENCIES = _descriptor.Descriptor(
   oneofs=[
   ],
   serialized_start=52,
-  serialized_end=321,
+  serialized_end=383,
 )
 
 
@@ -120,6 +359,7 @@ _CMSGNETWORKDEVICEIP4ADDRESS = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='ip', full_name='CMsgNetworkDeviceIP4Address.ip', index=0,
@@ -127,14 +367,14 @@ _CMSGNETWORKDEVICEIP4ADDRESS = _descriptor.Descriptor(
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='netmask', full_name='CMsgNetworkDeviceIP4Address.netmask', index=1,
       number=2, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -147,8 +387,8 @@ _CMSGNETWORKDEVICEIP4ADDRESS = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=323,
-  serialized_end=384,
+  serialized_start=385,
+  serialized_end=446,
 )
 
 
@@ -158,6 +398,7 @@ _CMSGNETWORKDEVICEIP4CONFIG = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='addresses', full_name='CMsgNetworkDeviceIP4Config.addresses', index=0,
@@ -165,42 +406,42 @@ _CMSGNETWORKDEVICEIP4CONFIG = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='dns_ip', full_name='CMsgNetworkDeviceIP4Config.dns_ip', index=1,
       number=2, type=5, cpp_type=1, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='gateway_ip', full_name='CMsgNetworkDeviceIP4Config.gateway_ip', index=2,
       number=3, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='is_dhcp_enabled', full_name='CMsgNetworkDeviceIP4Config.is_dhcp_enabled', index=3,
       number=4, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='is_default_route', full_name='CMsgNetworkDeviceIP4Config.is_default_route', index=4,
       number=5, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='is_enabled', full_name='CMsgNetworkDeviceIP4Config.is_enabled', index=5,
       number=6, type=8, cpp_type=7, label=1,
       has_default_value=True, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -213,8 +454,8 @@ _CMSGNETWORKDEVICEIP4CONFIG = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=387,
-  serialized_end=578,
+  serialized_start=449,
+  serialized_end=640,
 )
 
 
@@ -224,14 +465,15 @@ _CMSGNETWORKDEVICEIP6ADDRESS = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='ip', full_name='CMsgNetworkDeviceIP6Address.ip', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -244,8 +486,8 @@ _CMSGNETWORKDEVICEIP6ADDRESS = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=580,
-  serialized_end=621,
+  serialized_start=642,
+  serialized_end=683,
 )
 
 
@@ -255,6 +497,7 @@ _CMSGNETWORKDEVICEIP6CONFIG = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='addresses', full_name='CMsgNetworkDeviceIP6Config.addresses', index=0,
@@ -262,42 +505,42 @@ _CMSGNETWORKDEVICEIP6CONFIG = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='dns_ip', full_name='CMsgNetworkDeviceIP6Config.dns_ip', index=1,
       number=2, type=9, cpp_type=9, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='gateway_ip', full_name='CMsgNetworkDeviceIP6Config.gateway_ip', index=2,
       number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='is_dhcp_enabled', full_name='CMsgNetworkDeviceIP6Config.is_dhcp_enabled', index=3,
       number=4, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='is_default_route', full_name='CMsgNetworkDeviceIP6Config.is_default_route', index=4,
       number=5, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='is_enabled', full_name='CMsgNetworkDeviceIP6Config.is_enabled', index=5,
       number=6, type=8, cpp_type=7, label=1,
       has_default_value=True, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -310,8 +553,8 @@ _CMSGNETWORKDEVICEIP6CONFIG = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=624,
-  serialized_end=815,
+  serialized_start=686,
+  serialized_end=877,
 )
 
 
@@ -321,6 +564,7 @@ _CMSGNETWORKDEVICESDATA_DEVICE_WIRED = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='is_cable_present', full_name='CMsgNetworkDevicesData.Device.Wired.is_cable_present', index=0,
@@ -328,21 +572,21 @@ _CMSGNETWORKDEVICESDATA_DEVICE_WIRED = _descriptor.Descriptor(
       has_default_value=True, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='speed_mbit', full_name='CMsgNetworkDevicesData.Device.Wired.speed_mbit', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='friendly_name', full_name='CMsgNetworkDevicesData.Device.Wired.friendly_name', index=2,
       number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -355,8 +599,8 @@ _CMSGNETWORKDEVICESDATA_DEVICE_WIRED = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1251,
-  serialized_end=1334,
+  serialized_start=1313,
+  serialized_end=1396,
 )
 
 _CMSGNETWORKDEVICESDATA_DEVICE_WIRELESS_AP = _descriptor.Descriptor(
@@ -365,6 +609,7 @@ _CMSGNETWORKDEVICESDATA_DEVICE_WIRELESS_AP = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='id', full_name='CMsgNetworkDevicesData.Device.Wireless.AP.id', index=0,
@@ -372,63 +617,63 @@ _CMSGNETWORKDEVICESDATA_DEVICE_WIRELESS_AP = _descriptor.Descriptor(
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='estrength', full_name='CMsgNetworkDevicesData.Device.Wireless.AP.estrength', index=1,
       number=2, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='ssid', full_name='CMsgNetworkDevicesData.Device.Wireless.AP.ssid', index=2,
       number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='is_active', full_name='CMsgNetworkDevicesData.Device.Wireless.AP.is_active', index=3,
       number=4, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='is_autoconnect', full_name='CMsgNetworkDevicesData.Device.Wireless.AP.is_autoconnect', index=4,
       number=5, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='esecurity', full_name='CMsgNetworkDevicesData.Device.Wireless.AP.esecurity', index=5,
       number=6, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='user_name', full_name='CMsgNetworkDevicesData.Device.Wireless.AP.user_name', index=6,
       number=7, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='password', full_name='CMsgNetworkDevicesData.Device.Wireless.AP.password', index=7,
       number=8, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='strength_raw', full_name='CMsgNetworkDevicesData.Device.Wireless.AP.strength_raw', index=8,
       number=9, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -441,8 +686,8 @@ _CMSGNETWORKDEVICESDATA_DEVICE_WIRELESS_AP = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1436,
-  serialized_end=1609,
+  serialized_start=1498,
+  serialized_end=1671,
 )
 
 _CMSGNETWORKDEVICESDATA_DEVICE_WIRELESS = _descriptor.Descriptor(
@@ -451,6 +696,7 @@ _CMSGNETWORKDEVICESDATA_DEVICE_WIRELESS = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='aps', full_name='CMsgNetworkDevicesData.Device.Wireless.aps', index=0,
@@ -458,14 +704,14 @@ _CMSGNETWORKDEVICESDATA_DEVICE_WIRELESS = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='esecurity_supported', full_name='CMsgNetworkDevicesData.Device.Wireless.esecurity_supported', index=1,
       number=2, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -478,8 +724,8 @@ _CMSGNETWORKDEVICESDATA_DEVICE_WIRELESS = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1337,
-  serialized_end=1609,
+  serialized_start=1399,
+  serialized_end=1671,
 )
 
 _CMSGNETWORKDEVICESDATA_DEVICE = _descriptor.Descriptor(
@@ -488,6 +734,7 @@ _CMSGNETWORKDEVICESDATA_DEVICE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='id', full_name='CMsgNetworkDevicesData.Device.id', index=0,
@@ -495,70 +742,70 @@ _CMSGNETWORKDEVICESDATA_DEVICE = _descriptor.Descriptor(
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='etype', full_name='CMsgNetworkDevicesData.Device.etype', index=1,
       number=2, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='estate', full_name='CMsgNetworkDevicesData.Device.estate', index=2,
       number=3, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='mac', full_name='CMsgNetworkDevicesData.Device.mac', index=3,
       number=4, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='vendor', full_name='CMsgNetworkDevicesData.Device.vendor', index=4,
       number=5, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='product', full_name='CMsgNetworkDevicesData.Device.product', index=5,
       number=6, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='ip4', full_name='CMsgNetworkDevicesData.Device.ip4', index=6,
       number=7, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='ip6', full_name='CMsgNetworkDevicesData.Device.ip6', index=7,
       number=8, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='wired', full_name='CMsgNetworkDevicesData.Device.wired', index=8,
       number=9, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='wireless', full_name='CMsgNetworkDevicesData.Device.wireless', index=9,
       number=10, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -571,8 +818,8 @@ _CMSGNETWORKDEVICESDATA_DEVICE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=953,
-  serialized_end=1609,
+  serialized_start=1015,
+  serialized_end=1671,
 )
 
 _CMSGNETWORKDEVICESDATA = _descriptor.Descriptor(
@@ -581,6 +828,7 @@ _CMSGNETWORKDEVICESDATA = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='devices', full_name='CMsgNetworkDevicesData.devices', index=0,
@@ -588,21 +836,21 @@ _CMSGNETWORKDEVICESDATA = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='is_wifi_enabled', full_name='CMsgNetworkDevicesData.is_wifi_enabled', index=1,
       number=2, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='is_wifi_scanning_enabled', full_name='CMsgNetworkDevicesData.is_wifi_scanning_enabled', index=2,
       number=3, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -615,8 +863,8 @@ _CMSGNETWORKDEVICESDATA = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=818,
-  serialized_end=1609,
+  serialized_start=880,
+  serialized_end=1671,
 )
 
 
@@ -626,6 +874,7 @@ _CMSGNETWORKDEVICECONNECT_KNOWNAP = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='ap_id', full_name='CMsgNetworkDeviceConnect.KnownAP.ap_id', index=0,
@@ -633,7 +882,7 @@ _CMSGNETWORKDEVICECONNECT_KNOWNAP = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -646,8 +895,8 @@ _CMSGNETWORKDEVICECONNECT_KNOWNAP = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1918,
-  serialized_end=1942,
+  serialized_start=1980,
+  serialized_end=2004,
 )
 
 _CMSGNETWORKDEVICECONNECT_CUSTOMAP = _descriptor.Descriptor(
@@ -656,21 +905,22 @@ _CMSGNETWORKDEVICECONNECT_CUSTOMAP = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='ssid', full_name='CMsgNetworkDeviceConnect.CustomAP.ssid', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='esecurity', full_name='CMsgNetworkDeviceConnect.CustomAP.esecurity', index=1,
       number=2, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -683,8 +933,8 @@ _CMSGNETWORKDEVICECONNECT_CUSTOMAP = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1944,
-  serialized_end=1987,
+  serialized_start=2006,
+  serialized_end=2049,
 )
 
 _CMSGNETWORKDEVICECONNECT_CREDENTIALS = _descriptor.Descriptor(
@@ -693,21 +943,22 @@ _CMSGNETWORKDEVICECONNECT_CREDENTIALS = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='username', full_name='CMsgNetworkDeviceConnect.Credentials.username', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='password', full_name='CMsgNetworkDeviceConnect.Credentials.password', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -720,8 +971,8 @@ _CMSGNETWORKDEVICECONNECT_CREDENTIALS = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1989,
-  serialized_end=2038,
+  serialized_start=2051,
+  serialized_end=2100,
 )
 
 _CMSGNETWORKDEVICECONNECT = _descriptor.Descriptor(
@@ -730,6 +981,7 @@ _CMSGNETWORKDEVICECONNECT = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='device_id', full_name='CMsgNetworkDeviceConnect.device_id', index=0,
@@ -737,42 +989,42 @@ _CMSGNETWORKDEVICECONNECT = _descriptor.Descriptor(
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='credentials', full_name='CMsgNetworkDeviceConnect.credentials', index=1,
       number=4, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='ip4', full_name='CMsgNetworkDeviceConnect.ip4', index=2,
       number=5, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='ip6', full_name='CMsgNetworkDeviceConnect.ip6', index=3,
       number=6, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='ap_known', full_name='CMsgNetworkDeviceConnect.ap_known', index=4,
       number=2, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='ap_custom', full_name='CMsgNetworkDeviceConnect.ap_custom', index=5,
       number=3, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -786,10 +1038,12 @@ _CMSGNETWORKDEVICECONNECT = _descriptor.Descriptor(
   oneofs=[
     _descriptor.OneofDescriptor(
       name='ap_info', full_name='CMsgNetworkDeviceConnect.ap_info',
-      index=0, containing_type=None, fields=[]),
+      index=0, containing_type=None,
+      create_key=_descriptor._internal_create_key,
+    fields=[]),
   ],
-  serialized_start=1612,
-  serialized_end=2049,
+  serialized_start=1674,
+  serialized_end=2111,
 )
 
 
@@ -799,6 +1053,7 @@ _CMSGSTORAGEDEVICESDATA_DRIVE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='id', full_name='CMsgStorageDevicesData.Drive.id', index=0,
@@ -806,42 +1061,42 @@ _CMSGSTORAGEDEVICESDATA_DRIVE = _descriptor.Descriptor(
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='model', full_name='CMsgStorageDevicesData.Drive.model', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='vendor', full_name='CMsgStorageDevicesData.Drive.vendor', index=2,
       number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='serial', full_name='CMsgStorageDevicesData.Drive.serial', index=3,
       number=4, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='is_ejectable', full_name='CMsgStorageDevicesData.Drive.is_ejectable', index=4,
       number=5, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='size_bytes', full_name='CMsgStorageDevicesData.Drive.size_bytes', index=5,
       number=6, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -854,8 +1109,8 @@ _CMSGSTORAGEDEVICESDATA_DRIVE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=2185,
-  serialized_end=2296,
+  serialized_start=2277,
+  serialized_end=2388,
 )
 
 _CMSGSTORAGEDEVICESDATA_BLOCKDEVICE = _descriptor.Descriptor(
@@ -864,6 +1119,7 @@ _CMSGSTORAGEDEVICESDATA_BLOCKDEVICE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='id', full_name='CMsgStorageDevicesData.BlockDevice.id', index=0,
@@ -871,84 +1127,84 @@ _CMSGSTORAGEDEVICESDATA_BLOCKDEVICE = _descriptor.Descriptor(
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='drive_id', full_name='CMsgStorageDevicesData.BlockDevice.drive_id', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='path', full_name='CMsgStorageDevicesData.BlockDevice.path', index=2,
       number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='friendly_path', full_name='CMsgStorageDevicesData.BlockDevice.friendly_path', index=3,
       number=4, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='label', full_name='CMsgStorageDevicesData.BlockDevice.label', index=4,
       number=5, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='size_bytes', full_name='CMsgStorageDevicesData.BlockDevice.size_bytes', index=5,
       number=6, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='is_formattable', full_name='CMsgStorageDevicesData.BlockDevice.is_formattable', index=6,
       number=7, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='is_read_only', full_name='CMsgStorageDevicesData.BlockDevice.is_read_only', index=7,
       number=8, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='is_root_device', full_name='CMsgStorageDevicesData.BlockDevice.is_root_device', index=8,
       number=9, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='content_type', full_name='CMsgStorageDevicesData.BlockDevice.content_type', index=9,
       number=10, type=14, cpp_type=8, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='filesystem_type', full_name='CMsgStorageDevicesData.BlockDevice.filesystem_type', index=10,
       number=11, type=14, cpp_type=8, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='mount_path', full_name='CMsgStorageDevicesData.BlockDevice.mount_path', index=11,
       number=12, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -961,8 +1217,8 @@ _CMSGSTORAGEDEVICESDATA_BLOCKDEVICE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=2299,
-  serialized_end=2689,
+  serialized_start=2391,
+  serialized_end=2781,
 )
 
 _CMSGSTORAGEDEVICESDATA = _descriptor.Descriptor(
@@ -971,6 +1227,7 @@ _CMSGSTORAGEDEVICESDATA = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='drives', full_name='CMsgStorageDevicesData.drives', index=0,
@@ -978,14 +1235,21 @@ _CMSGSTORAGEDEVICESDATA = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='block_devices', full_name='CMsgStorageDevicesData.block_devices', index=1,
       number=2, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='is_unmount_supported', full_name='CMsgStorageDevicesData.is_unmount_supported', index=2,
+      number=3, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -998,8 +1262,8 @@ _CMSGSTORAGEDEVICESDATA = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=2052,
-  serialized_end=2689,
+  serialized_start=2114,
+  serialized_end=2781,
 )
 
 
@@ -1009,6 +1273,7 @@ _CCLOUD_PENDINGREMOTEOPERATION = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='operation', full_name='CCloud_PendingRemoteOperation.operation', index=0,
@@ -1016,28 +1281,28 @@ _CCLOUD_PENDINGREMOTEOPERATION = _descriptor.Descriptor(
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='machine_name', full_name='CCloud_PendingRemoteOperation.machine_name', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='client_id', full_name='CCloud_PendingRemoteOperation.client_id', index=2,
       number=3, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='time_last_updated', full_name='CCloud_PendingRemoteOperation.time_last_updated', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1050,8 +1315,8 @@ _CCLOUD_PENDINGREMOTEOPERATION = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=2692,
-  serialized_end=2877,
+  serialized_start=2784,
+  serialized_end=2969,
 )
 
 
@@ -1061,6 +1326,7 @@ _CMSGCLOUDPENDINGREMOTEOPERATIONS = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='operations', full_name='CMsgCloudPendingRemoteOperations.operations', index=0,
@@ -1068,7 +1334,7 @@ _CMSGCLOUDPENDINGREMOTEOPERATIONS = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1081,8 +1347,8 @@ _CMSGCLOUDPENDINGREMOTEOPERATIONS = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=2879,
-  serialized_end=2965,
+  serialized_start=2971,
+  serialized_end=3057,
 )
 
 
@@ -1092,6 +1358,7 @@ _CMSGBLUETOOTHDEVICESDATA_ADAPTER = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='id', full_name='CMsgBluetoothDevicesData.Adapter.id', index=0,
@@ -1099,35 +1366,35 @@ _CMSGBLUETOOTHDEVICESDATA_ADAPTER = _descriptor.Descriptor(
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='mac', full_name='CMsgBluetoothDevicesData.Adapter.mac', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='name', full_name='CMsgBluetoothDevicesData.Adapter.name', index=2,
       number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='is_enabled', full_name='CMsgBluetoothDevicesData.Adapter.is_enabled', index=3,
       number=4, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='is_discovering', full_name='CMsgBluetoothDevicesData.Adapter.is_discovering', index=4,
       number=5, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1140,8 +1407,8 @@ _CMSGBLUETOOTHDEVICESDATA_ADAPTER = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=3100,
-  serialized_end=3195,
+  serialized_start=3244,
+  serialized_end=3339,
 )
 
 _CMSGBLUETOOTHDEVICESDATA_DEVICE = _descriptor.Descriptor(
@@ -1150,6 +1417,7 @@ _CMSGBLUETOOTHDEVICESDATA_DEVICE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='id', full_name='CMsgBluetoothDevicesData.Device.id', index=0,
@@ -1157,56 +1425,87 @@ _CMSGBLUETOOTHDEVICESDATA_DEVICE = _descriptor.Descriptor(
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='adapter_id', full_name='CMsgBluetoothDevicesData.Device.adapter_id', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='etype', full_name='CMsgBluetoothDevicesData.Device.etype', index=2,
       number=3, type=14, cpp_type=8, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='mac', full_name='CMsgBluetoothDevicesData.Device.mac', index=3,
       number=4, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='name', full_name='CMsgBluetoothDevicesData.Device.name', index=4,
       number=5, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='is_connected', full_name='CMsgBluetoothDevicesData.Device.is_connected', index=5,
       number=6, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='is_paired', full_name='CMsgBluetoothDevicesData.Device.is_paired', index=6,
       number=7, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='strength_raw', full_name='CMsgBluetoothDevicesData.Device.strength_raw', index=7,
       number=8, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=3342,
+  serialized_end=3547,
+)
+
+_CMSGBLUETOOTHDEVICESDATA_MANAGER = _descriptor.Descriptor(
+  name='Manager',
+  full_name='CMsgBluetoothDevicesData.Manager',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='is_bluetooth_enabled', full_name='CMsgBluetoothDevicesData.Manager.is_bluetooth_enabled', index=0,
+      number=1, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1219,8 +1518,8 @@ _CMSGBLUETOOTHDEVICESDATA_DEVICE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=3198,
-  serialized_end=3403,
+  serialized_start=3549,
+  serialized_end=3588,
 )
 
 _CMSGBLUETOOTHDEVICESDATA = _descriptor.Descriptor(
@@ -1229,6 +1528,7 @@ _CMSGBLUETOOTHDEVICESDATA = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='adapters', full_name='CMsgBluetoothDevicesData.adapters', index=0,
@@ -1236,18 +1536,25 @@ _CMSGBLUETOOTHDEVICESDATA = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='devices', full_name='CMsgBluetoothDevicesData.devices', index=1,
       number=2, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='manager', full_name='CMsgBluetoothDevicesData.manager', index=2,
+      number=3, type=11, cpp_type=10, label=1,
+      has_default_value=False, default_value=None,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
-  nested_types=[_CMSGBLUETOOTHDEVICESDATA_ADAPTER, _CMSGBLUETOOTHDEVICESDATA_DEVICE, ],
+  nested_types=[_CMSGBLUETOOTHDEVICESDATA_ADAPTER, _CMSGBLUETOOTHDEVICESDATA_DEVICE, _CMSGBLUETOOTHDEVICESDATA_MANAGER, ],
   enum_types=[
   ],
   serialized_options=None,
@@ -1256,25 +1563,33 @@ _CMSGBLUETOOTHDEVICESDATA = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=2968,
-  serialized_end=3403,
+  serialized_start=3060,
+  serialized_end=3588,
 )
 
 
-_CMSGBLUETOOTHSETTINGS = _descriptor.Descriptor(
-  name='CMsgBluetoothSettings',
-  full_name='CMsgBluetoothSettings',
+_CMSGSYSTEMPERFDIAGNOSTICENTRY = _descriptor.Descriptor(
+  name='CMsgSystemPerfDiagnosticEntry',
+  full_name='CMsgSystemPerfDiagnosticEntry',
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
-      name='is_enabled', full_name='CMsgBluetoothSettings.is_enabled', index=0,
-      number=1, type=8, cpp_type=7, label=1,
-      has_default_value=False, default_value=False,
+      name='name', full_name='CMsgSystemPerfDiagnosticEntry.name', index=0,
+      number=1, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='value', full_name='CMsgSystemPerfDiagnosticEntry.value', index=1,
+      number=2, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1287,32 +1602,61 @@ _CMSGBLUETOOTHSETTINGS = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=3405,
-  serialized_end=3448,
+  serialized_start=3590,
+  serialized_end=3650,
 )
 
 
-_CMSGSYSTEMPERFDIAGNOSTICENTRY = _descriptor.Descriptor(
-  name='CMsgSystemPerfDiagnosticEntry',
-  full_name='CMsgSystemPerfDiagnosticEntry',
+_CMSGSYSTEMPERFNETWORKINTERFACE = _descriptor.Descriptor(
+  name='CMsgSystemPerfNetworkInterface',
+  full_name='CMsgSystemPerfNetworkInterface',
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
-      name='name', full_name='CMsgSystemPerfDiagnosticEntry.name', index=0,
+      name='name', full_name='CMsgSystemPerfNetworkInterface.name', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
-      name='value', full_name='CMsgSystemPerfDiagnosticEntry.value', index=1,
-      number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      name='timestamp', full_name='CMsgSystemPerfNetworkInterface.timestamp', index=1,
+      number=2, type=1, cpp_type=5, label=1,
+      has_default_value=False, default_value=float(0),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='tx_bytes_total', full_name='CMsgSystemPerfNetworkInterface.tx_bytes_total', index=2,
+      number=3, type=3, cpp_type=2, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='rx_bytes_total', full_name='CMsgSystemPerfNetworkInterface.rx_bytes_total', index=3,
+      number=4, type=3, cpp_type=2, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='tx_bytes_per_sec', full_name='CMsgSystemPerfNetworkInterface.tx_bytes_per_sec', index=4,
+      number=5, type=5, cpp_type=1, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='rx_bytes_per_sec', full_name='CMsgSystemPerfNetworkInterface.rx_bytes_per_sec', index=5,
+      number=6, type=5, cpp_type=1, label=1,
+      has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1325,8 +1669,8 @@ _CMSGSYSTEMPERFDIAGNOSTICENTRY = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=3450,
-  serialized_end=3510,
+  serialized_start=3653,
+  serialized_end=3818,
 )
 
 
@@ -1336,6 +1680,7 @@ _CMSGSYSTEMPERFDIAGNOSTICINFO = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='entries', full_name='CMsgSystemPerfDiagnosticInfo.entries', index=0,
@@ -1343,7 +1688,21 @@ _CMSGSYSTEMPERFDIAGNOSTICINFO = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='interfaces', full_name='CMsgSystemPerfDiagnosticInfo.interfaces', index=1,
+      number=2, type=11, cpp_type=10, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='battery_temp_c', full_name='CMsgSystemPerfDiagnosticInfo.battery_temp_c', index=2,
+      number=3, type=2, cpp_type=6, label=1,
+      has_default_value=False, default_value=float(0),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1356,32 +1715,145 @@ _CMSGSYSTEMPERFDIAGNOSTICINFO = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=3512,
-  serialized_end=3591,
+  serialized_start=3821,
+  serialized_end=3977,
 )
 
 
-_CMSGSYSTEMPERFSETTINGS = _descriptor.Descriptor(
-  name='CMsgSystemPerfSettings',
-  full_name='CMsgSystemPerfSettings',
+_CMSGSYSTEMPERFLIMITS = _descriptor.Descriptor(
+  name='CMsgSystemPerfLimits',
+  full_name='CMsgSystemPerfLimits',
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
-      name='diagnostic_update_rate', full_name='CMsgSystemPerfSettings.diagnostic_update_rate', index=0,
-      number=1, type=2, cpp_type=6, label=1,
-      has_default_value=False, default_value=float(0),
+      name='cpu_governor_manual_min_mhz', full_name='CMsgSystemPerfLimits.cpu_governor_manual_min_mhz', index=0,
+      number=1, type=5, cpp_type=1, label=1,
+      has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
-      name='is_shark_mode', full_name='CMsgSystemPerfSettings.is_shark_mode', index=1,
-      number=2, type=8, cpp_type=7, label=1,
+      name='cpu_governor_manual_max_mhz', full_name='CMsgSystemPerfLimits.cpu_governor_manual_max_mhz', index=1,
+      number=2, type=5, cpp_type=1, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='fsr_sharpness_min', full_name='CMsgSystemPerfLimits.fsr_sharpness_min', index=2,
+      number=3, type=5, cpp_type=1, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='fsr_sharpness_max', full_name='CMsgSystemPerfLimits.fsr_sharpness_max', index=3,
+      number=4, type=5, cpp_type=1, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='gpu_performance_manual_min_mhz', full_name='CMsgSystemPerfLimits.gpu_performance_manual_min_mhz', index=4,
+      number=5, type=5, cpp_type=1, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='gpu_performance_manual_max_mhz', full_name='CMsgSystemPerfLimits.gpu_performance_manual_max_mhz', index=5,
+      number=6, type=5, cpp_type=1, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='perf_overlay_is_standalone', full_name='CMsgSystemPerfLimits.perf_overlay_is_standalone', index=6,
+      number=7, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='is_dynamic_vrs_available', full_name='CMsgSystemPerfLimits.is_dynamic_vrs_available', index=7,
+      number=8, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='is_manual_display_refresh_rate_available', full_name='CMsgSystemPerfLimits.is_manual_display_refresh_rate_available', index=8,
+      number=9, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='gpu_performance_levels_available', full_name='CMsgSystemPerfLimits.gpu_performance_levels_available', index=9,
+      number=10, type=14, cpp_type=8, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='display_refresh_manual_hz_min', full_name='CMsgSystemPerfLimits.display_refresh_manual_hz_min', index=10,
+      number=11, type=5, cpp_type=1, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='display_refresh_manual_hz_max', full_name='CMsgSystemPerfLimits.display_refresh_manual_hz_max', index=11,
+      number=12, type=5, cpp_type=1, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='fps_limit_options', full_name='CMsgSystemPerfLimits.fps_limit_options', index=12,
+      number=13, type=5, cpp_type=1, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='tdp_limit_min', full_name='CMsgSystemPerfLimits.tdp_limit_min', index=13,
+      number=14, type=5, cpp_type=1, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='tdp_limit_max', full_name='CMsgSystemPerfLimits.tdp_limit_max', index=14,
+      number=15, type=5, cpp_type=1, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='is_nis_supported', full_name='CMsgSystemPerfLimits.is_nis_supported', index=15,
+      number=16, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='nis_sharpness_min', full_name='CMsgSystemPerfLimits.nis_sharpness_min', index=16,
+      number=17, type=5, cpp_type=1, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='nis_sharpness_max', full_name='CMsgSystemPerfLimits.nis_sharpness_max', index=17,
+      number=18, type=5, cpp_type=1, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1394,25 +1866,2008 @@ _CMSGSYSTEMPERFSETTINGS = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=3593,
-  serialized_end=3672,
+  serialized_start=3980,
+  serialized_end=4626,
 )
 
-_STEAMMESSAGESCLIENTICLIENTFORCEDENUMDEPENDENCIES.fields_by_name['a'].enum_type = enums__pb2._EBLUETOOTHDEVICETYPE
-_STEAMMESSAGESCLIENTICLIENTFORCEDENUMDEPENDENCIES.fields_by_name['b'].enum_type = enums__pb2._ESTORAGEBLOCKCONTENTTYPE
-_STEAMMESSAGESCLIENTICLIENTFORCEDENUMDEPENDENCIES.fields_by_name['c'].enum_type = enums__pb2._ESTORAGEBLOCKFILESYSTEMTYPE
-_CMSGNETWORKDEVICEIP4CONFIG.fields_by_name['addresses'].message_type = _CMSGNETWORKDEVICEIP4ADDRESS
-_CMSGNETWORKDEVICEIP6CONFIG.fields_by_name['addresses'].message_type = _CMSGNETWORKDEVICEIP6ADDRESS
-_CMSGNETWORKDEVICESDATA_DEVICE_WIRED.containing_type = _CMSGNETWORKDEVICESDATA_DEVICE
-_CMSGNETWORKDEVICESDATA_DEVICE_WIRELESS_AP.containing_type = _CMSGNETWORKDEVICESDATA_DEVICE_WIRELESS
-_CMSGNETWORKDEVICESDATA_DEVICE_WIRELESS.fields_by_name['aps'].message_type = _CMSGNETWORKDEVICESDATA_DEVICE_WIRELESS_AP
-_CMSGNETWORKDEVICESDATA_DEVICE_WIRELESS.containing_type = _CMSGNETWORKDEVICESDATA_DEVICE
-_CMSGNETWORKDEVICESDATA_DEVICE.fields_by_name['ip4'].message_type = _CMSGNETWORKDEVICEIP4CONFIG
-_CMSGNETWORKDEVICESDATA_DEVICE.fields_by_name['ip6'].message_type = _CMSGNETWORKDEVICEIP6CONFIG
-_CMSGNETWORKDEVICESDATA_DEVICE.fields_by_name['wired'].message_type = _CMSGNETWORKDEVICESDATA_DEVICE_WIRED
-_CMSGNETWORKDEVICESDATA_DEVICE.fields_by_name['wireless'].message_type = _CMSGNETWORKDEVICESDATA_DEVICE_WIRELESS
-_CMSGNETWORKDEVICESDATA_DEVICE.containing_type = _CMSGNETWORKDEVICESDATA
-_CMSGNETWORKDEVICESDATA.fields_by_name['devices'].message_type = _CMSGNETWORKDEVICESDATA_DEVICE
+
+_CMSGSYSTEMPERFSETTINGSGLOBAL = _descriptor.Descriptor(
+  name='CMsgSystemPerfSettingsGlobal',
+  full_name='CMsgSystemPerfSettingsGlobal',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='diagnostic_update_rate', full_name='CMsgSystemPerfSettingsGlobal.diagnostic_update_rate', index=0,
+      number=1, type=2, cpp_type=6, label=1,
+      has_default_value=False, default_value=float(0),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='system_trace_service_state', full_name='CMsgSystemPerfSettingsGlobal.system_trace_service_state', index=1,
+      number=2, type=14, cpp_type=8, label=1,
+      has_default_value=True, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='graphics_profiling_service_state', full_name='CMsgSystemPerfSettingsGlobal.graphics_profiling_service_state', index=2,
+      number=3, type=14, cpp_type=8, label=1,
+      has_default_value=True, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='perf_overlay_service_state', full_name='CMsgSystemPerfSettingsGlobal.perf_overlay_service_state', index=3,
+      number=4, type=14, cpp_type=8, label=1,
+      has_default_value=True, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='perf_overlay_level', full_name='CMsgSystemPerfSettingsGlobal.perf_overlay_level', index=4,
+      number=5, type=14, cpp_type=8, label=1,
+      has_default_value=True, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='is_show_perf_overlay_over_steam_enabled', full_name='CMsgSystemPerfSettingsGlobal.is_show_perf_overlay_over_steam_enabled', index=5,
+      number=6, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='is_advanced_settings_enabled', full_name='CMsgSystemPerfSettingsGlobal.is_advanced_settings_enabled', index=6,
+      number=7, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=4629,
+  serialized_end=5155,
+)
+
+
+_CMSGSYSTEMPERFSETTINGSPERAPP = _descriptor.Descriptor(
+  name='CMsgSystemPerfSettingsPerApp',
+  full_name='CMsgSystemPerfSettingsPerApp',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='gpu_performance_manual_mhz', full_name='CMsgSystemPerfSettingsPerApp.gpu_performance_manual_mhz', index=0,
+      number=1, type=5, cpp_type=1, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='fps_limit', full_name='CMsgSystemPerfSettingsPerApp.fps_limit', index=1,
+      number=2, type=5, cpp_type=1, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='is_variable_resolution_enabled', full_name='CMsgSystemPerfSettingsPerApp.is_variable_resolution_enabled', index=2,
+      number=3, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='is_dynamic_refresh_rate_enabled', full_name='CMsgSystemPerfSettingsPerApp.is_dynamic_refresh_rate_enabled', index=3,
+      number=4, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='tdp_limit', full_name='CMsgSystemPerfSettingsPerApp.tdp_limit', index=4,
+      number=5, type=5, cpp_type=1, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='cpu_governor', full_name='CMsgSystemPerfSettingsPerApp.cpu_governor', index=5,
+      number=6, type=14, cpp_type=8, label=1,
+      has_default_value=True, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='cpu_governor_manual_mhz', full_name='CMsgSystemPerfSettingsPerApp.cpu_governor_manual_mhz', index=6,
+      number=7, type=5, cpp_type=1, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='scaling_filter', full_name='CMsgSystemPerfSettingsPerApp.scaling_filter', index=7,
+      number=8, type=5, cpp_type=1, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='fsr_sharpness', full_name='CMsgSystemPerfSettingsPerApp.fsr_sharpness', index=8,
+      number=9, type=5, cpp_type=1, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='is_fps_limit_enabled', full_name='CMsgSystemPerfSettingsPerApp.is_fps_limit_enabled', index=9,
+      number=10, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='is_tdp_limit_enabled', full_name='CMsgSystemPerfSettingsPerApp.is_tdp_limit_enabled', index=10,
+      number=11, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='is_low_latency_mode_enabled', full_name='CMsgSystemPerfSettingsPerApp.is_low_latency_mode_enabled', index=11,
+      number=12, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='display_refresh_manual_hz', full_name='CMsgSystemPerfSettingsPerApp.display_refresh_manual_hz', index=12,
+      number=13, type=5, cpp_type=1, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='is_game_perf_profile_enabled', full_name='CMsgSystemPerfSettingsPerApp.is_game_perf_profile_enabled', index=13,
+      number=14, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='gpu_performance_level', full_name='CMsgSystemPerfSettingsPerApp.gpu_performance_level', index=14,
+      number=15, type=14, cpp_type=8, label=1,
+      has_default_value=True, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='nis_sharpness', full_name='CMsgSystemPerfSettingsPerApp.nis_sharpness', index=15,
+      number=16, type=5, cpp_type=1, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=5158,
+  serialized_end=5763,
+)
+
+
+_CMSGSYSTEMPERFSETTINGS = _descriptor.Descriptor(
+  name='CMsgSystemPerfSettings',
+  full_name='CMsgSystemPerfSettings',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='global', full_name='CMsgSystemPerfSettings.global', index=0,
+      number=1, type=11, cpp_type=10, label=1,
+      has_default_value=False, default_value=None,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='per_app', full_name='CMsgSystemPerfSettings.per_app', index=1,
+      number=2, type=11, cpp_type=10, label=1,
+      has_default_value=False, default_value=None,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=5765,
+  serialized_end=5884,
+)
+
+
+_CMSGSYSTEMPERFSETTINGSV1 = _descriptor.Descriptor(
+  name='CMsgSystemPerfSettingsV1',
+  full_name='CMsgSystemPerfSettingsV1',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='diagnostic_update_rate', full_name='CMsgSystemPerfSettingsV1.diagnostic_update_rate', index=0,
+      number=1, type=2, cpp_type=6, label=1,
+      has_default_value=False, default_value=float(0),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='system_trace_service_state', full_name='CMsgSystemPerfSettingsV1.system_trace_service_state', index=1,
+      number=2, type=14, cpp_type=8, label=1,
+      has_default_value=True, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='graphics_profiling_service_state', full_name='CMsgSystemPerfSettingsV1.graphics_profiling_service_state', index=2,
+      number=3, type=14, cpp_type=8, label=1,
+      has_default_value=True, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='perf_overlay_service_state', full_name='CMsgSystemPerfSettingsV1.perf_overlay_service_state', index=3,
+      number=4, type=14, cpp_type=8, label=1,
+      has_default_value=True, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='perf_overlay_level', full_name='CMsgSystemPerfSettingsV1.perf_overlay_level', index=4,
+      number=5, type=14, cpp_type=8, label=1,
+      has_default_value=True, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='gpu_performance_level', full_name='CMsgSystemPerfSettingsV1.gpu_performance_level', index=5,
+      number=6, type=14, cpp_type=8, label=1,
+      has_default_value=True, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='gpu_performance_manual_mhz', full_name='CMsgSystemPerfSettingsV1.gpu_performance_manual_mhz', index=6,
+      number=7, type=5, cpp_type=1, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='fps_limit', full_name='CMsgSystemPerfSettingsV1.fps_limit', index=7,
+      number=8, type=5, cpp_type=1, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='is_variable_resolution_enabled', full_name='CMsgSystemPerfSettingsV1.is_variable_resolution_enabled', index=8,
+      number=9, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='is_dynamic_refresh_rate_enabled', full_name='CMsgSystemPerfSettingsV1.is_dynamic_refresh_rate_enabled', index=9,
+      number=10, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='tdp_limit', full_name='CMsgSystemPerfSettingsV1.tdp_limit', index=10,
+      number=11, type=5, cpp_type=1, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='cpu_governor', full_name='CMsgSystemPerfSettingsV1.cpu_governor', index=11,
+      number=12, type=14, cpp_type=8, label=1,
+      has_default_value=True, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='cpu_governor_manual_mhz', full_name='CMsgSystemPerfSettingsV1.cpu_governor_manual_mhz', index=12,
+      number=13, type=5, cpp_type=1, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='scaling_filter', full_name='CMsgSystemPerfSettingsV1.scaling_filter', index=13,
+      number=14, type=5, cpp_type=1, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='fsr_sharpness', full_name='CMsgSystemPerfSettingsV1.fsr_sharpness', index=14,
+      number=15, type=5, cpp_type=1, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='is_fps_limit_enabled', full_name='CMsgSystemPerfSettingsV1.is_fps_limit_enabled', index=15,
+      number=16, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='is_tdp_limit_enabled', full_name='CMsgSystemPerfSettingsV1.is_tdp_limit_enabled', index=16,
+      number=17, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='is_show_perf_overlay_over_steam_enabled', full_name='CMsgSystemPerfSettingsV1.is_show_perf_overlay_over_steam_enabled', index=17,
+      number=18, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='is_low_latency_mode_enabled', full_name='CMsgSystemPerfSettingsV1.is_low_latency_mode_enabled', index=18,
+      number=19, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='display_refresh_manual_hz', full_name='CMsgSystemPerfSettingsV1.display_refresh_manual_hz', index=19,
+      number=20, type=5, cpp_type=1, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='is_game_perf_profile_enabled', full_name='CMsgSystemPerfSettingsV1.is_game_perf_profile_enabled', index=20,
+      number=21, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=5887,
+  serialized_end=6923,
+)
+
+
+_CMSGSYSTEMPERFSTATE = _descriptor.Descriptor(
+  name='CMsgSystemPerfState',
+  full_name='CMsgSystemPerfState',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='limits', full_name='CMsgSystemPerfState.limits', index=0,
+      number=1, type=11, cpp_type=10, label=1,
+      has_default_value=False, default_value=None,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='settings', full_name='CMsgSystemPerfState.settings', index=1,
+      number=2, type=11, cpp_type=10, label=1,
+      has_default_value=False, default_value=None,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='current_game_id', full_name='CMsgSystemPerfState.current_game_id', index=2,
+      number=3, type=4, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='active_profile_game_id', full_name='CMsgSystemPerfState.active_profile_game_id', index=3,
+      number=4, type=4, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=6926,
+  serialized_end=7086,
+)
+
+
+_CMSGSYSTEMPERFUPDATESETTINGS = _descriptor.Descriptor(
+  name='CMsgSystemPerfUpdateSettings',
+  full_name='CMsgSystemPerfUpdateSettings',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='gameid', full_name='CMsgSystemPerfUpdateSettings.gameid', index=0,
+      number=1, type=4, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='reset_to_default', full_name='CMsgSystemPerfUpdateSettings.reset_to_default', index=1,
+      number=2, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='settings_delta', full_name='CMsgSystemPerfUpdateSettings.settings_delta', index=2,
+      number=3, type=11, cpp_type=10, label=1,
+      has_default_value=False, default_value=None,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+    _descriptor.OneofDescriptor(
+      name='update', full_name='CMsgSystemPerfUpdateSettings.update',
+      index=0, containing_type=None,
+      create_key=_descriptor._internal_create_key,
+    fields=[]),
+  ],
+  serialized_start=7089,
+  serialized_end=7224,
+)
+
+
+_CMSGSYSTEMDOCKUPDATESTATE = _descriptor.Descriptor(
+  name='CMsgSystemDockUpdateState',
+  full_name='CMsgSystemDockUpdateState',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='state', full_name='CMsgSystemDockUpdateState.state', index=0,
+      number=1, type=14, cpp_type=8, label=1,
+      has_default_value=True, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='rtime_last_checked', full_name='CMsgSystemDockUpdateState.rtime_last_checked', index=1,
+      number=2, type=7, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='version_current', full_name='CMsgSystemDockUpdateState.version_current', index=2,
+      number=3, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='version_available', full_name='CMsgSystemDockUpdateState.version_available', index=3,
+      number=4, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='stage_progress', full_name='CMsgSystemDockUpdateState.stage_progress', index=4,
+      number=5, type=2, cpp_type=6, label=1,
+      has_default_value=False, default_value=float(0),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='rtime_estimated_completion', full_name='CMsgSystemDockUpdateState.rtime_estimated_completion', index=5,
+      number=6, type=7, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=7227,
+  serialized_end=7450,
+)
+
+
+_CMSGSYSTEMDOCKSTATE = _descriptor.Descriptor(
+  name='CMsgSystemDockState',
+  full_name='CMsgSystemDockState',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='update_state', full_name='CMsgSystemDockState.update_state', index=0,
+      number=1, type=11, cpp_type=10, label=1,
+      has_default_value=False, default_value=None,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=7452,
+  serialized_end=7523,
+)
+
+
+_CMSGSYSTEMDOCKUPDATEFIRMWARE = _descriptor.Descriptor(
+  name='CMsgSystemDockUpdateFirmware',
+  full_name='CMsgSystemDockUpdateFirmware',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='check_only', full_name='CMsgSystemDockUpdateFirmware.check_only', index=0,
+      number=1, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=7525,
+  serialized_end=7575,
+)
+
+
+_CMSGSYSTEMAUDIOVOLUME_CHANNELENTRY = _descriptor.Descriptor(
+  name='ChannelEntry',
+  full_name='CMsgSystemAudioVolume.ChannelEntry',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='echannel', full_name='CMsgSystemAudioVolume.ChannelEntry.echannel', index=0,
+      number=1, type=14, cpp_type=8, label=1,
+      has_default_value=True, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='volume', full_name='CMsgSystemAudioVolume.ChannelEntry.volume', index=1,
+      number=2, type=2, cpp_type=6, label=1,
+      has_default_value=False, default_value=float(0),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=7675,
+  serialized_end=7775,
+)
+
+_CMSGSYSTEMAUDIOVOLUME = _descriptor.Descriptor(
+  name='CMsgSystemAudioVolume',
+  full_name='CMsgSystemAudioVolume',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='entries', full_name='CMsgSystemAudioVolume.entries', index=0,
+      number=1, type=11, cpp_type=10, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='is_muted', full_name='CMsgSystemAudioVolume.is_muted', index=1,
+      number=2, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[_CMSGSYSTEMAUDIOVOLUME_CHANNELENTRY, ],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=7578,
+  serialized_end=7775,
+)
+
+
+_CMSGSYSTEMAUDIOMANAGEROBJECT = _descriptor.Descriptor(
+  name='CMsgSystemAudioManagerObject',
+  full_name='CMsgSystemAudioManagerObject',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='id', full_name='CMsgSystemAudioManagerObject.id', index=0,
+      number=1, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='rtime_last_update', full_name='CMsgSystemAudioManagerObject.rtime_last_update', index=1,
+      number=2, type=7, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=7777,
+  serialized_end=7846,
+)
+
+
+_CMSGSYSTEMAUDIOMANAGERDEVICE = _descriptor.Descriptor(
+  name='CMsgSystemAudioManagerDevice',
+  full_name='CMsgSystemAudioManagerDevice',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='base', full_name='CMsgSystemAudioManagerDevice.base', index=0,
+      number=1, type=11, cpp_type=10, label=1,
+      has_default_value=False, default_value=None,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='name', full_name='CMsgSystemAudioManagerDevice.name', index=1,
+      number=2, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='nick', full_name='CMsgSystemAudioManagerDevice.nick', index=2,
+      number=3, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='description', full_name='CMsgSystemAudioManagerDevice.description', index=3,
+      number=4, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='api', full_name='CMsgSystemAudioManagerDevice.api', index=4,
+      number=5, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=7849,
+  serialized_end=7986,
+)
+
+
+_CMSGSYSTEMAUDIOMANAGERNODE = _descriptor.Descriptor(
+  name='CMsgSystemAudioManagerNode',
+  full_name='CMsgSystemAudioManagerNode',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='base', full_name='CMsgSystemAudioManagerNode.base', index=0,
+      number=1, type=11, cpp_type=10, label=1,
+      has_default_value=False, default_value=None,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='device_id', full_name='CMsgSystemAudioManagerNode.device_id', index=1,
+      number=2, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='name', full_name='CMsgSystemAudioManagerNode.name', index=2,
+      number=3, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='nick', full_name='CMsgSystemAudioManagerNode.nick', index=3,
+      number=4, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='description', full_name='CMsgSystemAudioManagerNode.description', index=4,
+      number=5, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='edirection', full_name='CMsgSystemAudioManagerNode.edirection', index=5,
+      number=6, type=14, cpp_type=8, label=1,
+      has_default_value=True, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='volume', full_name='CMsgSystemAudioManagerNode.volume', index=6,
+      number=7, type=11, cpp_type=10, label=1,
+      has_default_value=False, default_value=None,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=7989,
+  serialized_end=8246,
+)
+
+
+_CMSGSYSTEMAUDIOMANAGERPORT = _descriptor.Descriptor(
+  name='CMsgSystemAudioManagerPort',
+  full_name='CMsgSystemAudioManagerPort',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='base', full_name='CMsgSystemAudioManagerPort.base', index=0,
+      number=1, type=11, cpp_type=10, label=1,
+      has_default_value=False, default_value=None,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='node_id', full_name='CMsgSystemAudioManagerPort.node_id', index=1,
+      number=3, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='name', full_name='CMsgSystemAudioManagerPort.name', index=2,
+      number=4, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='alias', full_name='CMsgSystemAudioManagerPort.alias', index=3,
+      number=5, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='etype', full_name='CMsgSystemAudioManagerPort.etype', index=4,
+      number=6, type=14, cpp_type=8, label=1,
+      has_default_value=True, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='edirection', full_name='CMsgSystemAudioManagerPort.edirection', index=5,
+      number=7, type=14, cpp_type=8, label=1,
+      has_default_value=True, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='is_physical', full_name='CMsgSystemAudioManagerPort.is_physical', index=6,
+      number=8, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='is_terminal', full_name='CMsgSystemAudioManagerPort.is_terminal', index=7,
+      number=9, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='is_control', full_name='CMsgSystemAudioManagerPort.is_control', index=8,
+      number=10, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='is_monitor', full_name='CMsgSystemAudioManagerPort.is_monitor', index=9,
+      number=11, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=8249,
+  serialized_end=8603,
+)
+
+
+_CMSGSYSTEMAUDIOMANAGERLINK = _descriptor.Descriptor(
+  name='CMsgSystemAudioManagerLink',
+  full_name='CMsgSystemAudioManagerLink',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='base', full_name='CMsgSystemAudioManagerLink.base', index=0,
+      number=1, type=11, cpp_type=10, label=1,
+      has_default_value=False, default_value=None,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='output_node_id', full_name='CMsgSystemAudioManagerLink.output_node_id', index=1,
+      number=2, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='output_port_id', full_name='CMsgSystemAudioManagerLink.output_port_id', index=2,
+      number=3, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='input_node_id', full_name='CMsgSystemAudioManagerLink.input_node_id', index=3,
+      number=4, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='input_port_id', full_name='CMsgSystemAudioManagerLink.input_port_id', index=4,
+      number=5, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=8606,
+  serialized_end=8773,
+)
+
+
+_CMSGSYSTEMAUDIOMANAGERSTATEHW = _descriptor.Descriptor(
+  name='CMsgSystemAudioManagerStateHW',
+  full_name='CMsgSystemAudioManagerStateHW',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='devices', full_name='CMsgSystemAudioManagerStateHW.devices', index=0,
+      number=1, type=11, cpp_type=10, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='nodes', full_name='CMsgSystemAudioManagerStateHW.nodes', index=1,
+      number=2, type=11, cpp_type=10, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='ports', full_name='CMsgSystemAudioManagerStateHW.ports', index=2,
+      number=3, type=11, cpp_type=10, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='links', full_name='CMsgSystemAudioManagerStateHW.links', index=3,
+      number=4, type=11, cpp_type=10, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=8776,
+  serialized_end=8987,
+)
+
+
+_CMSGSYSTEMAUDIOMANAGERSTATE = _descriptor.Descriptor(
+  name='CMsgSystemAudioManagerState',
+  full_name='CMsgSystemAudioManagerState',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='rtime_filter', full_name='CMsgSystemAudioManagerState.rtime_filter', index=0,
+      number=1, type=7, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='counter', full_name='CMsgSystemAudioManagerState.counter', index=1,
+      number=2, type=5, cpp_type=1, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='hw', full_name='CMsgSystemAudioManagerState.hw', index=2,
+      number=3, type=11, cpp_type=10, label=1,
+      has_default_value=False, default_value=None,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=8989,
+  serialized_end=9101,
+)
+
+
+_CMSGSYSTEMAUDIOMANAGERUPDATESOMETHING = _descriptor.Descriptor(
+  name='CMsgSystemAudioManagerUpdateSomething',
+  full_name='CMsgSystemAudioManagerUpdateSomething',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='counter', full_name='CMsgSystemAudioManagerUpdateSomething.counter', index=0,
+      number=1, type=5, cpp_type=1, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=9103,
+  serialized_end=9159,
+)
+
+
+_CMSGSYSTEMMANAGERSETTINGS = _descriptor.Descriptor(
+  name='CMsgSystemManagerSettings',
+  full_name='CMsgSystemManagerSettings',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='idle_backlight_dim_battery_seconds', full_name='CMsgSystemManagerSettings.idle_backlight_dim_battery_seconds', index=0,
+      number=1, type=2, cpp_type=6, label=1,
+      has_default_value=False, default_value=float(0),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='idle_backlight_dim_ac_seconds', full_name='CMsgSystemManagerSettings.idle_backlight_dim_ac_seconds', index=1,
+      number=2, type=2, cpp_type=6, label=1,
+      has_default_value=False, default_value=float(0),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='idle_suspend_battery_seconds', full_name='CMsgSystemManagerSettings.idle_suspend_battery_seconds', index=2,
+      number=3, type=2, cpp_type=6, label=1,
+      has_default_value=False, default_value=float(0),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='idle_suspend_ac_seconds', full_name='CMsgSystemManagerSettings.idle_suspend_ac_seconds', index=3,
+      number=4, type=2, cpp_type=6, label=1,
+      has_default_value=False, default_value=float(0),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='idle_suspend_supressed', full_name='CMsgSystemManagerSettings.idle_suspend_supressed', index=4,
+      number=5, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='is_adaptive_brightness_available', full_name='CMsgSystemManagerSettings.is_adaptive_brightness_available', index=5,
+      number=6, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='display_adaptive_brightness_enabled', full_name='CMsgSystemManagerSettings.display_adaptive_brightness_enabled', index=6,
+      number=7, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='is_display_colorprofile_available', full_name='CMsgSystemManagerSettings.is_display_colorprofile_available', index=7,
+      number=8, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='display_colorprofile', full_name='CMsgSystemManagerSettings.display_colorprofile', index=8,
+      number=9, type=14, cpp_type=8, label=1,
+      has_default_value=True, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='display_nightmode_enabled', full_name='CMsgSystemManagerSettings.display_nightmode_enabled', index=9,
+      number=10, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='display_nightmode_tintstrength', full_name='CMsgSystemManagerSettings.display_nightmode_tintstrength', index=10,
+      number=11, type=2, cpp_type=6, label=1,
+      has_default_value=False, default_value=float(0),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='display_nightmode_maxhue', full_name='CMsgSystemManagerSettings.display_nightmode_maxhue', index=11,
+      number=12, type=2, cpp_type=6, label=1,
+      has_default_value=False, default_value=float(0),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='display_nightmode_maxsat', full_name='CMsgSystemManagerSettings.display_nightmode_maxsat', index=12,
+      number=13, type=2, cpp_type=6, label=1,
+      has_default_value=False, default_value=float(0),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='display_nightmode_uiexp', full_name='CMsgSystemManagerSettings.display_nightmode_uiexp', index=13,
+      number=14, type=2, cpp_type=6, label=1,
+      has_default_value=False, default_value=float(0),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='display_nightmode_blend', full_name='CMsgSystemManagerSettings.display_nightmode_blend', index=14,
+      number=15, type=2, cpp_type=6, label=1,
+      has_default_value=False, default_value=float(0),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='display_nightmode_reset', full_name='CMsgSystemManagerSettings.display_nightmode_reset', index=15,
+      number=16, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='display_nightmode_schedule_enabled', full_name='CMsgSystemManagerSettings.display_nightmode_schedule_enabled', index=16,
+      number=17, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='display_nightmode_schedule_starttime', full_name='CMsgSystemManagerSettings.display_nightmode_schedule_starttime', index=17,
+      number=18, type=2, cpp_type=6, label=1,
+      has_default_value=False, default_value=float(0),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='display_nightmode_schedule_endtime', full_name='CMsgSystemManagerSettings.display_nightmode_schedule_endtime', index=18,
+      number=19, type=2, cpp_type=6, label=1,
+      has_default_value=False, default_value=float(0),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='display_diagnostics_enabled', full_name='CMsgSystemManagerSettings.display_diagnostics_enabled', index=19,
+      number=20, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='als_lux_latest', full_name='CMsgSystemManagerSettings.als_lux_latest', index=20,
+      number=21, type=2, cpp_type=6, label=1,
+      has_default_value=False, default_value=float(0),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='als_lux_median', full_name='CMsgSystemManagerSettings.als_lux_median', index=21,
+      number=22, type=2, cpp_type=6, label=1,
+      has_default_value=False, default_value=float(0),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='display_brightness_linear', full_name='CMsgSystemManagerSettings.display_brightness_linear', index=22,
+      number=23, type=2, cpp_type=6, label=1,
+      has_default_value=False, default_value=float(0),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='display_brightness_adaptivemin', full_name='CMsgSystemManagerSettings.display_brightness_adaptivemin', index=23,
+      number=24, type=2, cpp_type=6, label=1,
+      has_default_value=False, default_value=float(0),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='display_brightness_adaptivemax', full_name='CMsgSystemManagerSettings.display_brightness_adaptivemax', index=24,
+      number=25, type=2, cpp_type=6, label=1,
+      has_default_value=False, default_value=float(0),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='is_wifi_powersave_enabled', full_name='CMsgSystemManagerSettings.is_wifi_powersave_enabled', index=25,
+      number=26, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='is_fan_control_available', full_name='CMsgSystemManagerSettings.is_fan_control_available', index=26,
+      number=27, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='fan_control_mode', full_name='CMsgSystemManagerSettings.fan_control_mode', index=27,
+      number=28, type=14, cpp_type=8, label=1,
+      has_default_value=True, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=9162,
+  serialized_end=10303,
+)
+
+
+_CMSGSELECTOSBRANCHPARAMS = _descriptor.Descriptor(
+  name='CMsgSelectOSBranchParams',
+  full_name='CMsgSelectOSBranchParams',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='branch', full_name='CMsgSelectOSBranchParams.branch', index=0,
+      number=1, type=14, cpp_type=8, label=1,
+      has_default_value=True, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=10305,
+  serialized_end=10380,
+)
+
+
+_CMSGSYSTEMUPDATEPROGRESS = _descriptor.Descriptor(
+  name='CMsgSystemUpdateProgress',
+  full_name='CMsgSystemUpdateProgress',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='stage_progress', full_name='CMsgSystemUpdateProgress.stage_progress', index=0,
+      number=1, type=2, cpp_type=6, label=1,
+      has_default_value=False, default_value=float(0),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='stage_size_bytes', full_name='CMsgSystemUpdateProgress.stage_size_bytes', index=1,
+      number=2, type=3, cpp_type=2, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='rtime_estimated_completion', full_name='CMsgSystemUpdateProgress.rtime_estimated_completion', index=2,
+      number=3, type=7, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=10382,
+  serialized_end=10494,
+)
+
+
+_CMSGSYSTEMUPDATECHECKRESULT = _descriptor.Descriptor(
+  name='CMsgSystemUpdateCheckResult',
+  full_name='CMsgSystemUpdateCheckResult',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='type', full_name='CMsgSystemUpdateCheckResult.type', index=0,
+      number=1, type=14, cpp_type=8, label=1,
+      has_default_value=True, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='eresult', full_name='CMsgSystemUpdateCheckResult.eresult', index=1,
+      number=2, type=13, cpp_type=3, label=1,
+      has_default_value=True, default_value=2,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='rtime_checked', full_name='CMsgSystemUpdateCheckResult.rtime_checked', index=2,
+      number=3, type=7, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='available', full_name='CMsgSystemUpdateCheckResult.available', index=3,
+      number=4, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='version', full_name='CMsgSystemUpdateCheckResult.version', index=4,
+      number=5, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=10497,
+  serialized_end=10658,
+)
+
+
+_CMSGSYSTEMUPDATEAPPLYPARAMS = _descriptor.Descriptor(
+  name='CMsgSystemUpdateApplyParams',
+  full_name='CMsgSystemUpdateApplyParams',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='apply_types', full_name='CMsgSystemUpdateApplyParams.apply_types', index=0,
+      number=1, type=14, cpp_type=8, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=10660,
+  serialized_end=10725,
+)
+
+
+_CMSGSYSTEMUPDATEAPPLYRESULT = _descriptor.Descriptor(
+  name='CMsgSystemUpdateApplyResult',
+  full_name='CMsgSystemUpdateApplyResult',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='type', full_name='CMsgSystemUpdateApplyResult.type', index=0,
+      number=1, type=14, cpp_type=8, label=1,
+      has_default_value=True, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='eresult', full_name='CMsgSystemUpdateApplyResult.eresult', index=1,
+      number=2, type=13, cpp_type=3, label=1,
+      has_default_value=True, default_value=2,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='requires_client_restart', full_name='CMsgSystemUpdateApplyResult.requires_client_restart', index=2,
+      number=3, type=8, cpp_type=7, label=1,
+      has_default_value=True, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='requires_system_restart', full_name='CMsgSystemUpdateApplyResult.requires_system_restart', index=3,
+      number=4, type=8, cpp_type=7, label=1,
+      has_default_value=True, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=10728,
+  serialized_end=10910,
+)
+
+
+_CMSGSYSTEMUPDATESTATE = _descriptor.Descriptor(
+  name='CMsgSystemUpdateState',
+  full_name='CMsgSystemUpdateState',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='state', full_name='CMsgSystemUpdateState.state', index=0,
+      number=1, type=14, cpp_type=8, label=1,
+      has_default_value=True, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='progress', full_name='CMsgSystemUpdateState.progress', index=1,
+      number=2, type=11, cpp_type=10, label=1,
+      has_default_value=False, default_value=None,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='update_check_results', full_name='CMsgSystemUpdateState.update_check_results', index=2,
+      number=3, type=11, cpp_type=10, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='update_apply_results', full_name='CMsgSystemUpdateState.update_apply_results', index=3,
+      number=4, type=11, cpp_type=10, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=10913,
+  serialized_end=11157,
+)
+
+
+_CMSGACHIEVEMENTCHANGE = _descriptor.Descriptor(
+  name='CMsgAchievementChange',
+  full_name='CMsgAchievementChange',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='appid', full_name='CMsgAchievementChange.appid', index=0,
+      number=1, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=11159,
+  serialized_end=11197,
+)
+
+
+_CMSGCELLLIST_CELL = _descriptor.Descriptor(
+  name='Cell',
+  full_name='CMsgCellList.Cell',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='cell_id', full_name='CMsgCellList.Cell.cell_id', index=0,
+      number=1, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='loc_name', full_name='CMsgCellList.Cell.loc_name', index=1,
+      number=2, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=11250,
+  serialized_end=11291,
+)
+
+_CMSGCELLLIST = _descriptor.Descriptor(
+  name='CMsgCellList',
+  full_name='CMsgCellList',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='cells', full_name='CMsgCellList.cells', index=0,
+      number=1, type=11, cpp_type=10, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[_CMSGCELLLIST_CELL, ],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=11199,
+  serialized_end=11291,
+)
+
+
+_CMSGSHORTCUTINFO = _descriptor.Descriptor(
+  name='CMsgShortcutInfo',
+  full_name='CMsgShortcutInfo',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='appid', full_name='CMsgShortcutInfo.appid', index=0,
+      number=1, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='exe', full_name='CMsgShortcutInfo.exe', index=1,
+      number=2, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='start_dir', full_name='CMsgShortcutInfo.start_dir', index=2,
+      number=3, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='icon', full_name='CMsgShortcutInfo.icon', index=3,
+      number=4, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='path', full_name='CMsgShortcutInfo.path', index=4,
+      number=5, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='args', full_name='CMsgShortcutInfo.args', index=5,
+      number=6, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='app_name', full_name='CMsgShortcutInfo.app_name', index=6,
+      number=7, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='override_appid', full_name='CMsgShortcutInfo.override_appid', index=7,
+      number=8, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='flatpak_appid', full_name='CMsgShortcutInfo.flatpak_appid', index=8,
+      number=9, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='tags', full_name='CMsgShortcutInfo.tags', index=9,
+      number=10, type=9, cpp_type=9, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='is_remote', full_name='CMsgShortcutInfo.is_remote', index=10,
+      number=11, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='is_hidden', full_name='CMsgShortcutInfo.is_hidden', index=11,
+      number=12, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='is_temporary', full_name='CMsgShortcutInfo.is_temporary', index=12,
+      number=13, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='is_openvr', full_name='CMsgShortcutInfo.is_openvr', index=13,
+      number=14, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='allow_desktop_config', full_name='CMsgShortcutInfo.allow_desktop_config', index=14,
+      number=15, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='allow_overlay', full_name='CMsgShortcutInfo.allow_overlay', index=15,
+      number=16, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='rt_last_played_time', full_name='CMsgShortcutInfo.rt_last_played_time', index=16,
+      number=17, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='is_devkit_shortcut', full_name='CMsgShortcutInfo.is_devkit_shortcut', index=17,
+      number=18, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='devkit_gameid', full_name='CMsgShortcutInfo.devkit_gameid', index=18,
+      number=19, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=11294,
+  serialized_end=11692,
+)
+
+
+_CMSGSHORTCUTAPPIDS = _descriptor.Descriptor(
+  name='CMsgShortcutAppIds',
+  full_name='CMsgShortcutAppIds',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='appids', full_name='CMsgShortcutAppIds.appids', index=0,
+      number=1, type=13, cpp_type=3, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=11694,
+  serialized_end=11730,
+)
+
+_STEAMMESSAGESCLIENTICLIENTFORCEDENUMDEPENDENCIES.fields_by_name['a'].enum_type = enums__pb2._EBLUETOOTHDEVICETYPE
+_STEAMMESSAGESCLIENTICLIENTFORCEDENUMDEPENDENCIES.fields_by_name['b'].enum_type = enums__pb2._ESTORAGEBLOCKCONTENTTYPE
+_STEAMMESSAGESCLIENTICLIENTFORCEDENUMDEPENDENCIES.fields_by_name['c'].enum_type = enums__pb2._ESTORAGEBLOCKFILESYSTEMTYPE
+_STEAMMESSAGESCLIENTICLIENTFORCEDENUMDEPENDENCIES.fields_by_name['d'].enum_type = enums__pb2._ESDCARDFORMATSTAGE
+_CMSGNETWORKDEVICEIP4CONFIG.fields_by_name['addresses'].message_type = _CMSGNETWORKDEVICEIP4ADDRESS
+_CMSGNETWORKDEVICEIP6CONFIG.fields_by_name['addresses'].message_type = _CMSGNETWORKDEVICEIP6ADDRESS
+_CMSGNETWORKDEVICESDATA_DEVICE_WIRED.containing_type = _CMSGNETWORKDEVICESDATA_DEVICE
+_CMSGNETWORKDEVICESDATA_DEVICE_WIRELESS_AP.containing_type = _CMSGNETWORKDEVICESDATA_DEVICE_WIRELESS
+_CMSGNETWORKDEVICESDATA_DEVICE_WIRELESS.fields_by_name['aps'].message_type = _CMSGNETWORKDEVICESDATA_DEVICE_WIRELESS_AP
+_CMSGNETWORKDEVICESDATA_DEVICE_WIRELESS.containing_type = _CMSGNETWORKDEVICESDATA_DEVICE
+_CMSGNETWORKDEVICESDATA_DEVICE.fields_by_name['ip4'].message_type = _CMSGNETWORKDEVICEIP4CONFIG
+_CMSGNETWORKDEVICESDATA_DEVICE.fields_by_name['ip6'].message_type = _CMSGNETWORKDEVICEIP6CONFIG
+_CMSGNETWORKDEVICESDATA_DEVICE.fields_by_name['wired'].message_type = _CMSGNETWORKDEVICESDATA_DEVICE_WIRED
+_CMSGNETWORKDEVICESDATA_DEVICE.fields_by_name['wireless'].message_type = _CMSGNETWORKDEVICESDATA_DEVICE_WIRELESS
+_CMSGNETWORKDEVICESDATA_DEVICE.containing_type = _CMSGNETWORKDEVICESDATA
+_CMSGNETWORKDEVICESDATA.fields_by_name['devices'].message_type = _CMSGNETWORKDEVICESDATA_DEVICE
 _CMSGNETWORKDEVICECONNECT_KNOWNAP.containing_type = _CMSGNETWORKDEVICECONNECT
 _CMSGNETWORKDEVICECONNECT_CUSTOMAP.containing_type = _CMSGNETWORKDEVICECONNECT
 _CMSGNETWORKDEVICECONNECT_CREDENTIALS.containing_type = _CMSGNETWORKDEVICECONNECT
@@ -1438,9 +3893,66 @@ _CMSGCLOUDPENDINGREMOTEOPERATIONS.fields_by_name['operations'].message_type = _C
 _CMSGBLUETOOTHDEVICESDATA_ADAPTER.containing_type = _CMSGBLUETOOTHDEVICESDATA
 _CMSGBLUETOOTHDEVICESDATA_DEVICE.fields_by_name['etype'].enum_type = enums__pb2._EBLUETOOTHDEVICETYPE
 _CMSGBLUETOOTHDEVICESDATA_DEVICE.containing_type = _CMSGBLUETOOTHDEVICESDATA
+_CMSGBLUETOOTHDEVICESDATA_MANAGER.containing_type = _CMSGBLUETOOTHDEVICESDATA
 _CMSGBLUETOOTHDEVICESDATA.fields_by_name['adapters'].message_type = _CMSGBLUETOOTHDEVICESDATA_ADAPTER
 _CMSGBLUETOOTHDEVICESDATA.fields_by_name['devices'].message_type = _CMSGBLUETOOTHDEVICESDATA_DEVICE
+_CMSGBLUETOOTHDEVICESDATA.fields_by_name['manager'].message_type = _CMSGBLUETOOTHDEVICESDATA_MANAGER
 _CMSGSYSTEMPERFDIAGNOSTICINFO.fields_by_name['entries'].message_type = _CMSGSYSTEMPERFDIAGNOSTICENTRY
+_CMSGSYSTEMPERFDIAGNOSTICINFO.fields_by_name['interfaces'].message_type = _CMSGSYSTEMPERFNETWORKINTERFACE
+_CMSGSYSTEMPERFLIMITS.fields_by_name['gpu_performance_levels_available'].enum_type = enums__pb2._EGPUPERFORMANCELEVEL
+_CMSGSYSTEMPERFSETTINGSGLOBAL.fields_by_name['system_trace_service_state'].enum_type = enums__pb2._ESYSTEMSERVICESTATE
+_CMSGSYSTEMPERFSETTINGSGLOBAL.fields_by_name['graphics_profiling_service_state'].enum_type = enums__pb2._ESYSTEMSERVICESTATE
+_CMSGSYSTEMPERFSETTINGSGLOBAL.fields_by_name['perf_overlay_service_state'].enum_type = enums__pb2._ESYSTEMSERVICESTATE
+_CMSGSYSTEMPERFSETTINGSGLOBAL.fields_by_name['perf_overlay_level'].enum_type = enums__pb2._EGRAPHICSPERFOVERLAYLEVEL
+_CMSGSYSTEMPERFSETTINGSPERAPP.fields_by_name['cpu_governor'].enum_type = enums__pb2._ECPUGOVERNOR
+_CMSGSYSTEMPERFSETTINGSPERAPP.fields_by_name['gpu_performance_level'].enum_type = enums__pb2._EGPUPERFORMANCELEVEL
+_CMSGSYSTEMPERFSETTINGS.fields_by_name['global'].message_type = _CMSGSYSTEMPERFSETTINGSGLOBAL
+_CMSGSYSTEMPERFSETTINGS.fields_by_name['per_app'].message_type = _CMSGSYSTEMPERFSETTINGSPERAPP
+_CMSGSYSTEMPERFSETTINGSV1.fields_by_name['system_trace_service_state'].enum_type = enums__pb2._ESYSTEMSERVICESTATE
+_CMSGSYSTEMPERFSETTINGSV1.fields_by_name['graphics_profiling_service_state'].enum_type = enums__pb2._ESYSTEMSERVICESTATE
+_CMSGSYSTEMPERFSETTINGSV1.fields_by_name['perf_overlay_service_state'].enum_type = enums__pb2._ESYSTEMSERVICESTATE
+_CMSGSYSTEMPERFSETTINGSV1.fields_by_name['perf_overlay_level'].enum_type = enums__pb2._EGRAPHICSPERFOVERLAYLEVEL
+_CMSGSYSTEMPERFSETTINGSV1.fields_by_name['gpu_performance_level'].enum_type = enums__pb2._EGPUPERFORMANCELEVEL
+_CMSGSYSTEMPERFSETTINGSV1.fields_by_name['cpu_governor'].enum_type = enums__pb2._ECPUGOVERNOR
+_CMSGSYSTEMPERFSTATE.fields_by_name['limits'].message_type = _CMSGSYSTEMPERFLIMITS
+_CMSGSYSTEMPERFSTATE.fields_by_name['settings'].message_type = _CMSGSYSTEMPERFSETTINGS
+_CMSGSYSTEMPERFUPDATESETTINGS.fields_by_name['settings_delta'].message_type = _CMSGSYSTEMPERFSETTINGS
+_CMSGSYSTEMPERFUPDATESETTINGS.oneofs_by_name['update'].fields.append(
+  _CMSGSYSTEMPERFUPDATESETTINGS.fields_by_name['reset_to_default'])
+_CMSGSYSTEMPERFUPDATESETTINGS.fields_by_name['reset_to_default'].containing_oneof = _CMSGSYSTEMPERFUPDATESETTINGS.oneofs_by_name['update']
+_CMSGSYSTEMPERFUPDATESETTINGS.oneofs_by_name['update'].fields.append(
+  _CMSGSYSTEMPERFUPDATESETTINGS.fields_by_name['settings_delta'])
+_CMSGSYSTEMPERFUPDATESETTINGS.fields_by_name['settings_delta'].containing_oneof = _CMSGSYSTEMPERFUPDATESETTINGS.oneofs_by_name['update']
+_CMSGSYSTEMDOCKUPDATESTATE.fields_by_name['state'].enum_type = enums__pb2._EUPDATERSTATE
+_CMSGSYSTEMDOCKSTATE.fields_by_name['update_state'].message_type = _CMSGSYSTEMDOCKUPDATESTATE
+_CMSGSYSTEMAUDIOVOLUME_CHANNELENTRY.fields_by_name['echannel'].enum_type = enums__pb2._ESYSTEMAUDIOCHANNEL
+_CMSGSYSTEMAUDIOVOLUME_CHANNELENTRY.containing_type = _CMSGSYSTEMAUDIOVOLUME
+_CMSGSYSTEMAUDIOVOLUME.fields_by_name['entries'].message_type = _CMSGSYSTEMAUDIOVOLUME_CHANNELENTRY
+_CMSGSYSTEMAUDIOMANAGERDEVICE.fields_by_name['base'].message_type = _CMSGSYSTEMAUDIOMANAGEROBJECT
+_CMSGSYSTEMAUDIOMANAGERNODE.fields_by_name['base'].message_type = _CMSGSYSTEMAUDIOMANAGEROBJECT
+_CMSGSYSTEMAUDIOMANAGERNODE.fields_by_name['edirection'].enum_type = enums__pb2._ESYSTEMAUDIODIRECTION
+_CMSGSYSTEMAUDIOMANAGERNODE.fields_by_name['volume'].message_type = _CMSGSYSTEMAUDIOVOLUME
+_CMSGSYSTEMAUDIOMANAGERPORT.fields_by_name['base'].message_type = _CMSGSYSTEMAUDIOMANAGEROBJECT
+_CMSGSYSTEMAUDIOMANAGERPORT.fields_by_name['etype'].enum_type = enums__pb2._ESYSTEMAUDIOPORTTYPE
+_CMSGSYSTEMAUDIOMANAGERPORT.fields_by_name['edirection'].enum_type = enums__pb2._ESYSTEMAUDIOPORTDIRECTION
+_CMSGSYSTEMAUDIOMANAGERLINK.fields_by_name['base'].message_type = _CMSGSYSTEMAUDIOMANAGEROBJECT
+_CMSGSYSTEMAUDIOMANAGERSTATEHW.fields_by_name['devices'].message_type = _CMSGSYSTEMAUDIOMANAGERDEVICE
+_CMSGSYSTEMAUDIOMANAGERSTATEHW.fields_by_name['nodes'].message_type = _CMSGSYSTEMAUDIOMANAGERNODE
+_CMSGSYSTEMAUDIOMANAGERSTATEHW.fields_by_name['ports'].message_type = _CMSGSYSTEMAUDIOMANAGERPORT
+_CMSGSYSTEMAUDIOMANAGERSTATEHW.fields_by_name['links'].message_type = _CMSGSYSTEMAUDIOMANAGERLINK
+_CMSGSYSTEMAUDIOMANAGERSTATE.fields_by_name['hw'].message_type = _CMSGSYSTEMAUDIOMANAGERSTATEHW
+_CMSGSYSTEMMANAGERSETTINGS.fields_by_name['display_colorprofile'].enum_type = enums__pb2._ECOLORPROFILE
+_CMSGSYSTEMMANAGERSETTINGS.fields_by_name['fan_control_mode'].enum_type = enums__pb2._ESYSTEMFANCONTROLMODE
+_CMSGSELECTOSBRANCHPARAMS.fields_by_name['branch'].enum_type = enums__pb2._EOSBRANCH
+_CMSGSYSTEMUPDATECHECKRESULT.fields_by_name['type'].enum_type = enums__pb2._EUPDATERTYPE
+_CMSGSYSTEMUPDATEAPPLYPARAMS.fields_by_name['apply_types'].enum_type = enums__pb2._EUPDATERTYPE
+_CMSGSYSTEMUPDATEAPPLYRESULT.fields_by_name['type'].enum_type = enums__pb2._EUPDATERTYPE
+_CMSGSYSTEMUPDATESTATE.fields_by_name['state'].enum_type = enums__pb2._EUPDATERSTATE
+_CMSGSYSTEMUPDATESTATE.fields_by_name['progress'].message_type = _CMSGSYSTEMUPDATEPROGRESS
+_CMSGSYSTEMUPDATESTATE.fields_by_name['update_check_results'].message_type = _CMSGSYSTEMUPDATECHECKRESULT
+_CMSGSYSTEMUPDATESTATE.fields_by_name['update_apply_results'].message_type = _CMSGSYSTEMUPDATEAPPLYRESULT
+_CMSGCELLLIST_CELL.containing_type = _CMSGCELLLIST
+_CMSGCELLLIST.fields_by_name['cells'].message_type = _CMSGCELLLIST_CELL
 DESCRIPTOR.message_types_by_name['SteamMessagesClientIClientForcedEnumDependencies'] = _STEAMMESSAGESCLIENTICLIENTFORCEDENUMDEPENDENCIES
 DESCRIPTOR.message_types_by_name['CMsgNetworkDeviceIP4Address'] = _CMSGNETWORKDEVICEIP4ADDRESS
 DESCRIPTOR.message_types_by_name['CMsgNetworkDeviceIP4Config'] = _CMSGNETWORKDEVICEIP4CONFIG
@@ -1452,206 +3964,463 @@ DESCRIPTOR.message_types_by_name['CMsgStorageDevicesData'] = _CMSGSTORAGEDEVICES
 DESCRIPTOR.message_types_by_name['CCloud_PendingRemoteOperation'] = _CCLOUD_PENDINGREMOTEOPERATION
 DESCRIPTOR.message_types_by_name['CMsgCloudPendingRemoteOperations'] = _CMSGCLOUDPENDINGREMOTEOPERATIONS
 DESCRIPTOR.message_types_by_name['CMsgBluetoothDevicesData'] = _CMSGBLUETOOTHDEVICESDATA
-DESCRIPTOR.message_types_by_name['CMsgBluetoothSettings'] = _CMSGBLUETOOTHSETTINGS
 DESCRIPTOR.message_types_by_name['CMsgSystemPerfDiagnosticEntry'] = _CMSGSYSTEMPERFDIAGNOSTICENTRY
+DESCRIPTOR.message_types_by_name['CMsgSystemPerfNetworkInterface'] = _CMSGSYSTEMPERFNETWORKINTERFACE
 DESCRIPTOR.message_types_by_name['CMsgSystemPerfDiagnosticInfo'] = _CMSGSYSTEMPERFDIAGNOSTICINFO
+DESCRIPTOR.message_types_by_name['CMsgSystemPerfLimits'] = _CMSGSYSTEMPERFLIMITS
+DESCRIPTOR.message_types_by_name['CMsgSystemPerfSettingsGlobal'] = _CMSGSYSTEMPERFSETTINGSGLOBAL
+DESCRIPTOR.message_types_by_name['CMsgSystemPerfSettingsPerApp'] = _CMSGSYSTEMPERFSETTINGSPERAPP
 DESCRIPTOR.message_types_by_name['CMsgSystemPerfSettings'] = _CMSGSYSTEMPERFSETTINGS
+DESCRIPTOR.message_types_by_name['CMsgSystemPerfSettingsV1'] = _CMSGSYSTEMPERFSETTINGSV1
+DESCRIPTOR.message_types_by_name['CMsgSystemPerfState'] = _CMSGSYSTEMPERFSTATE
+DESCRIPTOR.message_types_by_name['CMsgSystemPerfUpdateSettings'] = _CMSGSYSTEMPERFUPDATESETTINGS
+DESCRIPTOR.message_types_by_name['CMsgSystemDockUpdateState'] = _CMSGSYSTEMDOCKUPDATESTATE
+DESCRIPTOR.message_types_by_name['CMsgSystemDockState'] = _CMSGSYSTEMDOCKSTATE
+DESCRIPTOR.message_types_by_name['CMsgSystemDockUpdateFirmware'] = _CMSGSYSTEMDOCKUPDATEFIRMWARE
+DESCRIPTOR.message_types_by_name['CMsgSystemAudioVolume'] = _CMSGSYSTEMAUDIOVOLUME
+DESCRIPTOR.message_types_by_name['CMsgSystemAudioManagerObject'] = _CMSGSYSTEMAUDIOMANAGEROBJECT
+DESCRIPTOR.message_types_by_name['CMsgSystemAudioManagerDevice'] = _CMSGSYSTEMAUDIOMANAGERDEVICE
+DESCRIPTOR.message_types_by_name['CMsgSystemAudioManagerNode'] = _CMSGSYSTEMAUDIOMANAGERNODE
+DESCRIPTOR.message_types_by_name['CMsgSystemAudioManagerPort'] = _CMSGSYSTEMAUDIOMANAGERPORT
+DESCRIPTOR.message_types_by_name['CMsgSystemAudioManagerLink'] = _CMSGSYSTEMAUDIOMANAGERLINK
+DESCRIPTOR.message_types_by_name['CMsgSystemAudioManagerStateHW'] = _CMSGSYSTEMAUDIOMANAGERSTATEHW
+DESCRIPTOR.message_types_by_name['CMsgSystemAudioManagerState'] = _CMSGSYSTEMAUDIOMANAGERSTATE
+DESCRIPTOR.message_types_by_name['CMsgSystemAudioManagerUpdateSomething'] = _CMSGSYSTEMAUDIOMANAGERUPDATESOMETHING
+DESCRIPTOR.message_types_by_name['CMsgSystemManagerSettings'] = _CMSGSYSTEMMANAGERSETTINGS
+DESCRIPTOR.message_types_by_name['CMsgSelectOSBranchParams'] = _CMSGSELECTOSBRANCHPARAMS
+DESCRIPTOR.message_types_by_name['CMsgSystemUpdateProgress'] = _CMSGSYSTEMUPDATEPROGRESS
+DESCRIPTOR.message_types_by_name['CMsgSystemUpdateCheckResult'] = _CMSGSYSTEMUPDATECHECKRESULT
+DESCRIPTOR.message_types_by_name['CMsgSystemUpdateApplyParams'] = _CMSGSYSTEMUPDATEAPPLYPARAMS
+DESCRIPTOR.message_types_by_name['CMsgSystemUpdateApplyResult'] = _CMSGSYSTEMUPDATEAPPLYRESULT
+DESCRIPTOR.message_types_by_name['CMsgSystemUpdateState'] = _CMSGSYSTEMUPDATESTATE
+DESCRIPTOR.message_types_by_name['CMsgAchievementChange'] = _CMSGACHIEVEMENTCHANGE
+DESCRIPTOR.message_types_by_name['CMsgCellList'] = _CMSGCELLLIST
+DESCRIPTOR.message_types_by_name['CMsgShortcutInfo'] = _CMSGSHORTCUTINFO
+DESCRIPTOR.message_types_by_name['CMsgShortcutAppIds'] = _CMSGSHORTCUTAPPIDS
 DESCRIPTOR.enum_types_by_name['ECloudPendingRemoteOperation'] = _ECLOUDPENDINGREMOTEOPERATION
+DESCRIPTOR.enum_types_by_name['ESteamDeckKeyboardLayout'] = _ESTEAMDECKKEYBOARDLAYOUT
 _sym_db.RegisterFileDescriptor(DESCRIPTOR)
 
-SteamMessagesClientIClientForcedEnumDependencies = _reflection.GeneratedProtocolMessageType('SteamMessagesClientIClientForcedEnumDependencies', (_message.Message,), dict(
-  DESCRIPTOR = _STEAMMESSAGESCLIENTICLIENTFORCEDENUMDEPENDENCIES,
-  __module__ = 'steammessages_client_objects_pb2'
+SteamMessagesClientIClientForcedEnumDependencies = _reflection.GeneratedProtocolMessageType('SteamMessagesClientIClientForcedEnumDependencies', (_message.Message,), {
+  'DESCRIPTOR' : _STEAMMESSAGESCLIENTICLIENTFORCEDENUMDEPENDENCIES,
+  '__module__' : 'steammessages_client_objects_pb2'
   # @@protoc_insertion_point(class_scope:SteamMessagesClientIClientForcedEnumDependencies)
-  ))
+  })
 _sym_db.RegisterMessage(SteamMessagesClientIClientForcedEnumDependencies)
 
-CMsgNetworkDeviceIP4Address = _reflection.GeneratedProtocolMessageType('CMsgNetworkDeviceIP4Address', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGNETWORKDEVICEIP4ADDRESS,
-  __module__ = 'steammessages_client_objects_pb2'
+CMsgNetworkDeviceIP4Address = _reflection.GeneratedProtocolMessageType('CMsgNetworkDeviceIP4Address', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGNETWORKDEVICEIP4ADDRESS,
+  '__module__' : 'steammessages_client_objects_pb2'
   # @@protoc_insertion_point(class_scope:CMsgNetworkDeviceIP4Address)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgNetworkDeviceIP4Address)
 
-CMsgNetworkDeviceIP4Config = _reflection.GeneratedProtocolMessageType('CMsgNetworkDeviceIP4Config', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGNETWORKDEVICEIP4CONFIG,
-  __module__ = 'steammessages_client_objects_pb2'
+CMsgNetworkDeviceIP4Config = _reflection.GeneratedProtocolMessageType('CMsgNetworkDeviceIP4Config', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGNETWORKDEVICEIP4CONFIG,
+  '__module__' : 'steammessages_client_objects_pb2'
   # @@protoc_insertion_point(class_scope:CMsgNetworkDeviceIP4Config)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgNetworkDeviceIP4Config)
 
-CMsgNetworkDeviceIP6Address = _reflection.GeneratedProtocolMessageType('CMsgNetworkDeviceIP6Address', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGNETWORKDEVICEIP6ADDRESS,
-  __module__ = 'steammessages_client_objects_pb2'
+CMsgNetworkDeviceIP6Address = _reflection.GeneratedProtocolMessageType('CMsgNetworkDeviceIP6Address', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGNETWORKDEVICEIP6ADDRESS,
+  '__module__' : 'steammessages_client_objects_pb2'
   # @@protoc_insertion_point(class_scope:CMsgNetworkDeviceIP6Address)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgNetworkDeviceIP6Address)
 
-CMsgNetworkDeviceIP6Config = _reflection.GeneratedProtocolMessageType('CMsgNetworkDeviceIP6Config', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGNETWORKDEVICEIP6CONFIG,
-  __module__ = 'steammessages_client_objects_pb2'
+CMsgNetworkDeviceIP6Config = _reflection.GeneratedProtocolMessageType('CMsgNetworkDeviceIP6Config', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGNETWORKDEVICEIP6CONFIG,
+  '__module__' : 'steammessages_client_objects_pb2'
   # @@protoc_insertion_point(class_scope:CMsgNetworkDeviceIP6Config)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgNetworkDeviceIP6Config)
 
-CMsgNetworkDevicesData = _reflection.GeneratedProtocolMessageType('CMsgNetworkDevicesData', (_message.Message,), dict(
+CMsgNetworkDevicesData = _reflection.GeneratedProtocolMessageType('CMsgNetworkDevicesData', (_message.Message,), {
 
-  Device = _reflection.GeneratedProtocolMessageType('Device', (_message.Message,), dict(
+  'Device' : _reflection.GeneratedProtocolMessageType('Device', (_message.Message,), {
 
-    Wired = _reflection.GeneratedProtocolMessageType('Wired', (_message.Message,), dict(
-      DESCRIPTOR = _CMSGNETWORKDEVICESDATA_DEVICE_WIRED,
-      __module__ = 'steammessages_client_objects_pb2'
+    'Wired' : _reflection.GeneratedProtocolMessageType('Wired', (_message.Message,), {
+      'DESCRIPTOR' : _CMSGNETWORKDEVICESDATA_DEVICE_WIRED,
+      '__module__' : 'steammessages_client_objects_pb2'
       # @@protoc_insertion_point(class_scope:CMsgNetworkDevicesData.Device.Wired)
-      ))
+      })
     ,
 
-    Wireless = _reflection.GeneratedProtocolMessageType('Wireless', (_message.Message,), dict(
+    'Wireless' : _reflection.GeneratedProtocolMessageType('Wireless', (_message.Message,), {
 
-      AP = _reflection.GeneratedProtocolMessageType('AP', (_message.Message,), dict(
-        DESCRIPTOR = _CMSGNETWORKDEVICESDATA_DEVICE_WIRELESS_AP,
-        __module__ = 'steammessages_client_objects_pb2'
+      'AP' : _reflection.GeneratedProtocolMessageType('AP', (_message.Message,), {
+        'DESCRIPTOR' : _CMSGNETWORKDEVICESDATA_DEVICE_WIRELESS_AP,
+        '__module__' : 'steammessages_client_objects_pb2'
         # @@protoc_insertion_point(class_scope:CMsgNetworkDevicesData.Device.Wireless.AP)
-        ))
+        })
       ,
-      DESCRIPTOR = _CMSGNETWORKDEVICESDATA_DEVICE_WIRELESS,
-      __module__ = 'steammessages_client_objects_pb2'
+      'DESCRIPTOR' : _CMSGNETWORKDEVICESDATA_DEVICE_WIRELESS,
+      '__module__' : 'steammessages_client_objects_pb2'
       # @@protoc_insertion_point(class_scope:CMsgNetworkDevicesData.Device.Wireless)
-      ))
+      })
     ,
-    DESCRIPTOR = _CMSGNETWORKDEVICESDATA_DEVICE,
-    __module__ = 'steammessages_client_objects_pb2'
+    'DESCRIPTOR' : _CMSGNETWORKDEVICESDATA_DEVICE,
+    '__module__' : 'steammessages_client_objects_pb2'
     # @@protoc_insertion_point(class_scope:CMsgNetworkDevicesData.Device)
-    ))
+    })
   ,
-  DESCRIPTOR = _CMSGNETWORKDEVICESDATA,
-  __module__ = 'steammessages_client_objects_pb2'
+  'DESCRIPTOR' : _CMSGNETWORKDEVICESDATA,
+  '__module__' : 'steammessages_client_objects_pb2'
   # @@protoc_insertion_point(class_scope:CMsgNetworkDevicesData)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgNetworkDevicesData)
 _sym_db.RegisterMessage(CMsgNetworkDevicesData.Device)
 _sym_db.RegisterMessage(CMsgNetworkDevicesData.Device.Wired)
 _sym_db.RegisterMessage(CMsgNetworkDevicesData.Device.Wireless)
 _sym_db.RegisterMessage(CMsgNetworkDevicesData.Device.Wireless.AP)
 
-CMsgNetworkDeviceConnect = _reflection.GeneratedProtocolMessageType('CMsgNetworkDeviceConnect', (_message.Message,), dict(
+CMsgNetworkDeviceConnect = _reflection.GeneratedProtocolMessageType('CMsgNetworkDeviceConnect', (_message.Message,), {
 
-  KnownAP = _reflection.GeneratedProtocolMessageType('KnownAP', (_message.Message,), dict(
-    DESCRIPTOR = _CMSGNETWORKDEVICECONNECT_KNOWNAP,
-    __module__ = 'steammessages_client_objects_pb2'
+  'KnownAP' : _reflection.GeneratedProtocolMessageType('KnownAP', (_message.Message,), {
+    'DESCRIPTOR' : _CMSGNETWORKDEVICECONNECT_KNOWNAP,
+    '__module__' : 'steammessages_client_objects_pb2'
     # @@protoc_insertion_point(class_scope:CMsgNetworkDeviceConnect.KnownAP)
-    ))
+    })
   ,
 
-  CustomAP = _reflection.GeneratedProtocolMessageType('CustomAP', (_message.Message,), dict(
-    DESCRIPTOR = _CMSGNETWORKDEVICECONNECT_CUSTOMAP,
-    __module__ = 'steammessages_client_objects_pb2'
+  'CustomAP' : _reflection.GeneratedProtocolMessageType('CustomAP', (_message.Message,), {
+    'DESCRIPTOR' : _CMSGNETWORKDEVICECONNECT_CUSTOMAP,
+    '__module__' : 'steammessages_client_objects_pb2'
     # @@protoc_insertion_point(class_scope:CMsgNetworkDeviceConnect.CustomAP)
-    ))
+    })
   ,
 
-  Credentials = _reflection.GeneratedProtocolMessageType('Credentials', (_message.Message,), dict(
-    DESCRIPTOR = _CMSGNETWORKDEVICECONNECT_CREDENTIALS,
-    __module__ = 'steammessages_client_objects_pb2'
+  'Credentials' : _reflection.GeneratedProtocolMessageType('Credentials', (_message.Message,), {
+    'DESCRIPTOR' : _CMSGNETWORKDEVICECONNECT_CREDENTIALS,
+    '__module__' : 'steammessages_client_objects_pb2'
     # @@protoc_insertion_point(class_scope:CMsgNetworkDeviceConnect.Credentials)
-    ))
+    })
   ,
-  DESCRIPTOR = _CMSGNETWORKDEVICECONNECT,
-  __module__ = 'steammessages_client_objects_pb2'
+  'DESCRIPTOR' : _CMSGNETWORKDEVICECONNECT,
+  '__module__' : 'steammessages_client_objects_pb2'
   # @@protoc_insertion_point(class_scope:CMsgNetworkDeviceConnect)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgNetworkDeviceConnect)
 _sym_db.RegisterMessage(CMsgNetworkDeviceConnect.KnownAP)
 _sym_db.RegisterMessage(CMsgNetworkDeviceConnect.CustomAP)
 _sym_db.RegisterMessage(CMsgNetworkDeviceConnect.Credentials)
 
-CMsgStorageDevicesData = _reflection.GeneratedProtocolMessageType('CMsgStorageDevicesData', (_message.Message,), dict(
+CMsgStorageDevicesData = _reflection.GeneratedProtocolMessageType('CMsgStorageDevicesData', (_message.Message,), {
 
-  Drive = _reflection.GeneratedProtocolMessageType('Drive', (_message.Message,), dict(
-    DESCRIPTOR = _CMSGSTORAGEDEVICESDATA_DRIVE,
-    __module__ = 'steammessages_client_objects_pb2'
+  'Drive' : _reflection.GeneratedProtocolMessageType('Drive', (_message.Message,), {
+    'DESCRIPTOR' : _CMSGSTORAGEDEVICESDATA_DRIVE,
+    '__module__' : 'steammessages_client_objects_pb2'
     # @@protoc_insertion_point(class_scope:CMsgStorageDevicesData.Drive)
-    ))
+    })
   ,
 
-  BlockDevice = _reflection.GeneratedProtocolMessageType('BlockDevice', (_message.Message,), dict(
-    DESCRIPTOR = _CMSGSTORAGEDEVICESDATA_BLOCKDEVICE,
-    __module__ = 'steammessages_client_objects_pb2'
+  'BlockDevice' : _reflection.GeneratedProtocolMessageType('BlockDevice', (_message.Message,), {
+    'DESCRIPTOR' : _CMSGSTORAGEDEVICESDATA_BLOCKDEVICE,
+    '__module__' : 'steammessages_client_objects_pb2'
     # @@protoc_insertion_point(class_scope:CMsgStorageDevicesData.BlockDevice)
-    ))
+    })
   ,
-  DESCRIPTOR = _CMSGSTORAGEDEVICESDATA,
-  __module__ = 'steammessages_client_objects_pb2'
+  'DESCRIPTOR' : _CMSGSTORAGEDEVICESDATA,
+  '__module__' : 'steammessages_client_objects_pb2'
   # @@protoc_insertion_point(class_scope:CMsgStorageDevicesData)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgStorageDevicesData)
 _sym_db.RegisterMessage(CMsgStorageDevicesData.Drive)
 _sym_db.RegisterMessage(CMsgStorageDevicesData.BlockDevice)
 
-CCloud_PendingRemoteOperation = _reflection.GeneratedProtocolMessageType('CCloud_PendingRemoteOperation', (_message.Message,), dict(
-  DESCRIPTOR = _CCLOUD_PENDINGREMOTEOPERATION,
-  __module__ = 'steammessages_client_objects_pb2'
+CCloud_PendingRemoteOperation = _reflection.GeneratedProtocolMessageType('CCloud_PendingRemoteOperation', (_message.Message,), {
+  'DESCRIPTOR' : _CCLOUD_PENDINGREMOTEOPERATION,
+  '__module__' : 'steammessages_client_objects_pb2'
   # @@protoc_insertion_point(class_scope:CCloud_PendingRemoteOperation)
-  ))
+  })
 _sym_db.RegisterMessage(CCloud_PendingRemoteOperation)
 
-CMsgCloudPendingRemoteOperations = _reflection.GeneratedProtocolMessageType('CMsgCloudPendingRemoteOperations', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLOUDPENDINGREMOTEOPERATIONS,
-  __module__ = 'steammessages_client_objects_pb2'
+CMsgCloudPendingRemoteOperations = _reflection.GeneratedProtocolMessageType('CMsgCloudPendingRemoteOperations', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLOUDPENDINGREMOTEOPERATIONS,
+  '__module__' : 'steammessages_client_objects_pb2'
   # @@protoc_insertion_point(class_scope:CMsgCloudPendingRemoteOperations)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgCloudPendingRemoteOperations)
 
-CMsgBluetoothDevicesData = _reflection.GeneratedProtocolMessageType('CMsgBluetoothDevicesData', (_message.Message,), dict(
+CMsgBluetoothDevicesData = _reflection.GeneratedProtocolMessageType('CMsgBluetoothDevicesData', (_message.Message,), {
 
-  Adapter = _reflection.GeneratedProtocolMessageType('Adapter', (_message.Message,), dict(
-    DESCRIPTOR = _CMSGBLUETOOTHDEVICESDATA_ADAPTER,
-    __module__ = 'steammessages_client_objects_pb2'
+  'Adapter' : _reflection.GeneratedProtocolMessageType('Adapter', (_message.Message,), {
+    'DESCRIPTOR' : _CMSGBLUETOOTHDEVICESDATA_ADAPTER,
+    '__module__' : 'steammessages_client_objects_pb2'
     # @@protoc_insertion_point(class_scope:CMsgBluetoothDevicesData.Adapter)
-    ))
+    })
   ,
 
-  Device = _reflection.GeneratedProtocolMessageType('Device', (_message.Message,), dict(
-    DESCRIPTOR = _CMSGBLUETOOTHDEVICESDATA_DEVICE,
-    __module__ = 'steammessages_client_objects_pb2'
+  'Device' : _reflection.GeneratedProtocolMessageType('Device', (_message.Message,), {
+    'DESCRIPTOR' : _CMSGBLUETOOTHDEVICESDATA_DEVICE,
+    '__module__' : 'steammessages_client_objects_pb2'
     # @@protoc_insertion_point(class_scope:CMsgBluetoothDevicesData.Device)
-    ))
+    })
+  ,
+
+  'Manager' : _reflection.GeneratedProtocolMessageType('Manager', (_message.Message,), {
+    'DESCRIPTOR' : _CMSGBLUETOOTHDEVICESDATA_MANAGER,
+    '__module__' : 'steammessages_client_objects_pb2'
+    # @@protoc_insertion_point(class_scope:CMsgBluetoothDevicesData.Manager)
+    })
   ,
-  DESCRIPTOR = _CMSGBLUETOOTHDEVICESDATA,
-  __module__ = 'steammessages_client_objects_pb2'
+  'DESCRIPTOR' : _CMSGBLUETOOTHDEVICESDATA,
+  '__module__' : 'steammessages_client_objects_pb2'
   # @@protoc_insertion_point(class_scope:CMsgBluetoothDevicesData)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgBluetoothDevicesData)
 _sym_db.RegisterMessage(CMsgBluetoothDevicesData.Adapter)
 _sym_db.RegisterMessage(CMsgBluetoothDevicesData.Device)
+_sym_db.RegisterMessage(CMsgBluetoothDevicesData.Manager)
 
-CMsgBluetoothSettings = _reflection.GeneratedProtocolMessageType('CMsgBluetoothSettings', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGBLUETOOTHSETTINGS,
-  __module__ = 'steammessages_client_objects_pb2'
-  # @@protoc_insertion_point(class_scope:CMsgBluetoothSettings)
-  ))
-_sym_db.RegisterMessage(CMsgBluetoothSettings)
-
-CMsgSystemPerfDiagnosticEntry = _reflection.GeneratedProtocolMessageType('CMsgSystemPerfDiagnosticEntry', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGSYSTEMPERFDIAGNOSTICENTRY,
-  __module__ = 'steammessages_client_objects_pb2'
+CMsgSystemPerfDiagnosticEntry = _reflection.GeneratedProtocolMessageType('CMsgSystemPerfDiagnosticEntry', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGSYSTEMPERFDIAGNOSTICENTRY,
+  '__module__' : 'steammessages_client_objects_pb2'
   # @@protoc_insertion_point(class_scope:CMsgSystemPerfDiagnosticEntry)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgSystemPerfDiagnosticEntry)
 
-CMsgSystemPerfDiagnosticInfo = _reflection.GeneratedProtocolMessageType('CMsgSystemPerfDiagnosticInfo', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGSYSTEMPERFDIAGNOSTICINFO,
-  __module__ = 'steammessages_client_objects_pb2'
+CMsgSystemPerfNetworkInterface = _reflection.GeneratedProtocolMessageType('CMsgSystemPerfNetworkInterface', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGSYSTEMPERFNETWORKINTERFACE,
+  '__module__' : 'steammessages_client_objects_pb2'
+  # @@protoc_insertion_point(class_scope:CMsgSystemPerfNetworkInterface)
+  })
+_sym_db.RegisterMessage(CMsgSystemPerfNetworkInterface)
+
+CMsgSystemPerfDiagnosticInfo = _reflection.GeneratedProtocolMessageType('CMsgSystemPerfDiagnosticInfo', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGSYSTEMPERFDIAGNOSTICINFO,
+  '__module__' : 'steammessages_client_objects_pb2'
   # @@protoc_insertion_point(class_scope:CMsgSystemPerfDiagnosticInfo)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgSystemPerfDiagnosticInfo)
 
-CMsgSystemPerfSettings = _reflection.GeneratedProtocolMessageType('CMsgSystemPerfSettings', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGSYSTEMPERFSETTINGS,
-  __module__ = 'steammessages_client_objects_pb2'
+CMsgSystemPerfLimits = _reflection.GeneratedProtocolMessageType('CMsgSystemPerfLimits', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGSYSTEMPERFLIMITS,
+  '__module__' : 'steammessages_client_objects_pb2'
+  # @@protoc_insertion_point(class_scope:CMsgSystemPerfLimits)
+  })
+_sym_db.RegisterMessage(CMsgSystemPerfLimits)
+
+CMsgSystemPerfSettingsGlobal = _reflection.GeneratedProtocolMessageType('CMsgSystemPerfSettingsGlobal', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGSYSTEMPERFSETTINGSGLOBAL,
+  '__module__' : 'steammessages_client_objects_pb2'
+  # @@protoc_insertion_point(class_scope:CMsgSystemPerfSettingsGlobal)
+  })
+_sym_db.RegisterMessage(CMsgSystemPerfSettingsGlobal)
+
+CMsgSystemPerfSettingsPerApp = _reflection.GeneratedProtocolMessageType('CMsgSystemPerfSettingsPerApp', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGSYSTEMPERFSETTINGSPERAPP,
+  '__module__' : 'steammessages_client_objects_pb2'
+  # @@protoc_insertion_point(class_scope:CMsgSystemPerfSettingsPerApp)
+  })
+_sym_db.RegisterMessage(CMsgSystemPerfSettingsPerApp)
+
+CMsgSystemPerfSettings = _reflection.GeneratedProtocolMessageType('CMsgSystemPerfSettings', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGSYSTEMPERFSETTINGS,
+  '__module__' : 'steammessages_client_objects_pb2'
   # @@protoc_insertion_point(class_scope:CMsgSystemPerfSettings)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgSystemPerfSettings)
 
+CMsgSystemPerfSettingsV1 = _reflection.GeneratedProtocolMessageType('CMsgSystemPerfSettingsV1', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGSYSTEMPERFSETTINGSV1,
+  '__module__' : 'steammessages_client_objects_pb2'
+  # @@protoc_insertion_point(class_scope:CMsgSystemPerfSettingsV1)
+  })
+_sym_db.RegisterMessage(CMsgSystemPerfSettingsV1)
+
+CMsgSystemPerfState = _reflection.GeneratedProtocolMessageType('CMsgSystemPerfState', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGSYSTEMPERFSTATE,
+  '__module__' : 'steammessages_client_objects_pb2'
+  # @@protoc_insertion_point(class_scope:CMsgSystemPerfState)
+  })
+_sym_db.RegisterMessage(CMsgSystemPerfState)
+
+CMsgSystemPerfUpdateSettings = _reflection.GeneratedProtocolMessageType('CMsgSystemPerfUpdateSettings', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGSYSTEMPERFUPDATESETTINGS,
+  '__module__' : 'steammessages_client_objects_pb2'
+  # @@protoc_insertion_point(class_scope:CMsgSystemPerfUpdateSettings)
+  })
+_sym_db.RegisterMessage(CMsgSystemPerfUpdateSettings)
+
+CMsgSystemDockUpdateState = _reflection.GeneratedProtocolMessageType('CMsgSystemDockUpdateState', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGSYSTEMDOCKUPDATESTATE,
+  '__module__' : 'steammessages_client_objects_pb2'
+  # @@protoc_insertion_point(class_scope:CMsgSystemDockUpdateState)
+  })
+_sym_db.RegisterMessage(CMsgSystemDockUpdateState)
+
+CMsgSystemDockState = _reflection.GeneratedProtocolMessageType('CMsgSystemDockState', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGSYSTEMDOCKSTATE,
+  '__module__' : 'steammessages_client_objects_pb2'
+  # @@protoc_insertion_point(class_scope:CMsgSystemDockState)
+  })
+_sym_db.RegisterMessage(CMsgSystemDockState)
+
+CMsgSystemDockUpdateFirmware = _reflection.GeneratedProtocolMessageType('CMsgSystemDockUpdateFirmware', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGSYSTEMDOCKUPDATEFIRMWARE,
+  '__module__' : 'steammessages_client_objects_pb2'
+  # @@protoc_insertion_point(class_scope:CMsgSystemDockUpdateFirmware)
+  })
+_sym_db.RegisterMessage(CMsgSystemDockUpdateFirmware)
+
+CMsgSystemAudioVolume = _reflection.GeneratedProtocolMessageType('CMsgSystemAudioVolume', (_message.Message,), {
+
+  'ChannelEntry' : _reflection.GeneratedProtocolMessageType('ChannelEntry', (_message.Message,), {
+    'DESCRIPTOR' : _CMSGSYSTEMAUDIOVOLUME_CHANNELENTRY,
+    '__module__' : 'steammessages_client_objects_pb2'
+    # @@protoc_insertion_point(class_scope:CMsgSystemAudioVolume.ChannelEntry)
+    })
+  ,
+  'DESCRIPTOR' : _CMSGSYSTEMAUDIOVOLUME,
+  '__module__' : 'steammessages_client_objects_pb2'
+  # @@protoc_insertion_point(class_scope:CMsgSystemAudioVolume)
+  })
+_sym_db.RegisterMessage(CMsgSystemAudioVolume)
+_sym_db.RegisterMessage(CMsgSystemAudioVolume.ChannelEntry)
+
+CMsgSystemAudioManagerObject = _reflection.GeneratedProtocolMessageType('CMsgSystemAudioManagerObject', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGSYSTEMAUDIOMANAGEROBJECT,
+  '__module__' : 'steammessages_client_objects_pb2'
+  # @@protoc_insertion_point(class_scope:CMsgSystemAudioManagerObject)
+  })
+_sym_db.RegisterMessage(CMsgSystemAudioManagerObject)
+
+CMsgSystemAudioManagerDevice = _reflection.GeneratedProtocolMessageType('CMsgSystemAudioManagerDevice', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGSYSTEMAUDIOMANAGERDEVICE,
+  '__module__' : 'steammessages_client_objects_pb2'
+  # @@protoc_insertion_point(class_scope:CMsgSystemAudioManagerDevice)
+  })
+_sym_db.RegisterMessage(CMsgSystemAudioManagerDevice)
+
+CMsgSystemAudioManagerNode = _reflection.GeneratedProtocolMessageType('CMsgSystemAudioManagerNode', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGSYSTEMAUDIOMANAGERNODE,
+  '__module__' : 'steammessages_client_objects_pb2'
+  # @@protoc_insertion_point(class_scope:CMsgSystemAudioManagerNode)
+  })
+_sym_db.RegisterMessage(CMsgSystemAudioManagerNode)
+
+CMsgSystemAudioManagerPort = _reflection.GeneratedProtocolMessageType('CMsgSystemAudioManagerPort', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGSYSTEMAUDIOMANAGERPORT,
+  '__module__' : 'steammessages_client_objects_pb2'
+  # @@protoc_insertion_point(class_scope:CMsgSystemAudioManagerPort)
+  })
+_sym_db.RegisterMessage(CMsgSystemAudioManagerPort)
+
+CMsgSystemAudioManagerLink = _reflection.GeneratedProtocolMessageType('CMsgSystemAudioManagerLink', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGSYSTEMAUDIOMANAGERLINK,
+  '__module__' : 'steammessages_client_objects_pb2'
+  # @@protoc_insertion_point(class_scope:CMsgSystemAudioManagerLink)
+  })
+_sym_db.RegisterMessage(CMsgSystemAudioManagerLink)
+
+CMsgSystemAudioManagerStateHW = _reflection.GeneratedProtocolMessageType('CMsgSystemAudioManagerStateHW', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGSYSTEMAUDIOMANAGERSTATEHW,
+  '__module__' : 'steammessages_client_objects_pb2'
+  # @@protoc_insertion_point(class_scope:CMsgSystemAudioManagerStateHW)
+  })
+_sym_db.RegisterMessage(CMsgSystemAudioManagerStateHW)
+
+CMsgSystemAudioManagerState = _reflection.GeneratedProtocolMessageType('CMsgSystemAudioManagerState', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGSYSTEMAUDIOMANAGERSTATE,
+  '__module__' : 'steammessages_client_objects_pb2'
+  # @@protoc_insertion_point(class_scope:CMsgSystemAudioManagerState)
+  })
+_sym_db.RegisterMessage(CMsgSystemAudioManagerState)
+
+CMsgSystemAudioManagerUpdateSomething = _reflection.GeneratedProtocolMessageType('CMsgSystemAudioManagerUpdateSomething', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGSYSTEMAUDIOMANAGERUPDATESOMETHING,
+  '__module__' : 'steammessages_client_objects_pb2'
+  # @@protoc_insertion_point(class_scope:CMsgSystemAudioManagerUpdateSomething)
+  })
+_sym_db.RegisterMessage(CMsgSystemAudioManagerUpdateSomething)
+
+CMsgSystemManagerSettings = _reflection.GeneratedProtocolMessageType('CMsgSystemManagerSettings', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGSYSTEMMANAGERSETTINGS,
+  '__module__' : 'steammessages_client_objects_pb2'
+  # @@protoc_insertion_point(class_scope:CMsgSystemManagerSettings)
+  })
+_sym_db.RegisterMessage(CMsgSystemManagerSettings)
+
+CMsgSelectOSBranchParams = _reflection.GeneratedProtocolMessageType('CMsgSelectOSBranchParams', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGSELECTOSBRANCHPARAMS,
+  '__module__' : 'steammessages_client_objects_pb2'
+  # @@protoc_insertion_point(class_scope:CMsgSelectOSBranchParams)
+  })
+_sym_db.RegisterMessage(CMsgSelectOSBranchParams)
+
+CMsgSystemUpdateProgress = _reflection.GeneratedProtocolMessageType('CMsgSystemUpdateProgress', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGSYSTEMUPDATEPROGRESS,
+  '__module__' : 'steammessages_client_objects_pb2'
+  # @@protoc_insertion_point(class_scope:CMsgSystemUpdateProgress)
+  })
+_sym_db.RegisterMessage(CMsgSystemUpdateProgress)
+
+CMsgSystemUpdateCheckResult = _reflection.GeneratedProtocolMessageType('CMsgSystemUpdateCheckResult', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGSYSTEMUPDATECHECKRESULT,
+  '__module__' : 'steammessages_client_objects_pb2'
+  # @@protoc_insertion_point(class_scope:CMsgSystemUpdateCheckResult)
+  })
+_sym_db.RegisterMessage(CMsgSystemUpdateCheckResult)
+
+CMsgSystemUpdateApplyParams = _reflection.GeneratedProtocolMessageType('CMsgSystemUpdateApplyParams', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGSYSTEMUPDATEAPPLYPARAMS,
+  '__module__' : 'steammessages_client_objects_pb2'
+  # @@protoc_insertion_point(class_scope:CMsgSystemUpdateApplyParams)
+  })
+_sym_db.RegisterMessage(CMsgSystemUpdateApplyParams)
+
+CMsgSystemUpdateApplyResult = _reflection.GeneratedProtocolMessageType('CMsgSystemUpdateApplyResult', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGSYSTEMUPDATEAPPLYRESULT,
+  '__module__' : 'steammessages_client_objects_pb2'
+  # @@protoc_insertion_point(class_scope:CMsgSystemUpdateApplyResult)
+  })
+_sym_db.RegisterMessage(CMsgSystemUpdateApplyResult)
+
+CMsgSystemUpdateState = _reflection.GeneratedProtocolMessageType('CMsgSystemUpdateState', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGSYSTEMUPDATESTATE,
+  '__module__' : 'steammessages_client_objects_pb2'
+  # @@protoc_insertion_point(class_scope:CMsgSystemUpdateState)
+  })
+_sym_db.RegisterMessage(CMsgSystemUpdateState)
+
+CMsgAchievementChange = _reflection.GeneratedProtocolMessageType('CMsgAchievementChange', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGACHIEVEMENTCHANGE,
+  '__module__' : 'steammessages_client_objects_pb2'
+  # @@protoc_insertion_point(class_scope:CMsgAchievementChange)
+  })
+_sym_db.RegisterMessage(CMsgAchievementChange)
+
+CMsgCellList = _reflection.GeneratedProtocolMessageType('CMsgCellList', (_message.Message,), {
+
+  'Cell' : _reflection.GeneratedProtocolMessageType('Cell', (_message.Message,), {
+    'DESCRIPTOR' : _CMSGCELLLIST_CELL,
+    '__module__' : 'steammessages_client_objects_pb2'
+    # @@protoc_insertion_point(class_scope:CMsgCellList.Cell)
+    })
+  ,
+  'DESCRIPTOR' : _CMSGCELLLIST,
+  '__module__' : 'steammessages_client_objects_pb2'
+  # @@protoc_insertion_point(class_scope:CMsgCellList)
+  })
+_sym_db.RegisterMessage(CMsgCellList)
+_sym_db.RegisterMessage(CMsgCellList.Cell)
+
+CMsgShortcutInfo = _reflection.GeneratedProtocolMessageType('CMsgShortcutInfo', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGSHORTCUTINFO,
+  '__module__' : 'steammessages_client_objects_pb2'
+  # @@protoc_insertion_point(class_scope:CMsgShortcutInfo)
+  })
+_sym_db.RegisterMessage(CMsgShortcutInfo)
+
+CMsgShortcutAppIds = _reflection.GeneratedProtocolMessageType('CMsgShortcutAppIds', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGSHORTCUTAPPIDS,
+  '__module__' : 'steammessages_client_objects_pb2'
+  # @@protoc_insertion_point(class_scope:CMsgShortcutAppIds)
+  })
+_sym_db.RegisterMessage(CMsgShortcutAppIds)
+
 
 DESCRIPTOR._options = None
 # @@protoc_insertion_point(module_scope)
diff --git a/steam/protobufs/steammessages_clientserver_2_pb2.py b/steam/protobufs/steammessages_clientserver_2_pb2.py
index 74a7f28..54406de 100644
--- a/steam/protobufs/steammessages_clientserver_2_pb2.py
+++ b/steam/protobufs/steammessages_clientserver_2_pb2.py
@@ -1,9 +1,7 @@
 # -*- coding: utf-8 -*-
 # Generated by the protocol buffer compiler.  DO NOT EDIT!
 # source: steammessages_clientserver_2.proto
-
-import sys
-_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1'))
+"""Generated protocol buffer code."""
 from google.protobuf import descriptor as _descriptor
 from google.protobuf import message as _message
 from google.protobuf import reflection as _reflection
@@ -20,8 +18,9 @@ DESCRIPTOR = _descriptor.FileDescriptor(
   name='steammessages_clientserver_2.proto',
   package='',
   syntax='proto2',
-  serialized_options=_b('H\001\220\001\000'),
-  serialized_pb=_b('\n\"steammessages_clientserver_2.proto\x1a\x18steammessages_base.proto\"w\n\x1c\x43MsgClientUpdateUserGameInfo\x12\x14\n\x0csteamid_idgs\x18\x01 \x01(\x06\x12\x0e\n\x06gameid\x18\x02 \x01(\x06\x12\x0f\n\x07game_ip\x18\x03 \x01(\r\x12\x11\n\tgame_port\x18\x04 \x01(\r\x12\r\n\x05token\x18\x05 \x01(\x0c\"S\n\x1c\x43MsgClientRichPresenceUpload\x12\x18\n\x10rich_presence_kv\x18\x01 \x01(\x0c\x12\x19\n\x11steamid_broadcast\x18\x02 \x03(\x06\"8\n\x1d\x43MsgClientRichPresenceRequest\x12\x17\n\x0fsteamid_request\x18\x01 \x03(\x06\"\x9d\x01\n\x1a\x43MsgClientRichPresenceInfo\x12?\n\rrich_presence\x18\x01 \x03(\x0b\x32(.CMsgClientRichPresenceInfo.RichPresence\x1a>\n\x0cRichPresence\x12\x14\n\x0csteamid_user\x18\x01 \x01(\x06\x12\x18\n\x10rich_presence_kv\x18\x02 \x01(\x0c\".\n\x1c\x43MsgClientCheckFileSignature\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\"\xf7\x01\n$CMsgClientCheckFileSignatureResponse\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x0b\n\x03pid\x18\x02 \x01(\r\x12\x0f\n\x07\x65result\x18\x03 \x01(\r\x12\x10\n\x08\x66ilename\x18\x04 \x01(\t\x12\x18\n\x10\x65signatureresult\x18\x05 \x01(\r\x12\x10\n\x08sha_file\x18\x06 \x01(\x0c\x12\x17\n\x0fsignatureheader\x18\x07 \x01(\x0c\x12\x10\n\x08\x66ilesize\x18\x08 \x01(\r\x12\x14\n\x0cgetlasterror\x18\t \x01(\r\x12\"\n\x1a\x65valvesignaturecheckdetail\x18\n \x01(\r\"P\n\x19\x43MsgClientReadMachineAuth\x12\x10\n\x08\x66ilename\x18\x01 \x01(\t\x12\x0e\n\x06offset\x18\x02 \x01(\r\x12\x11\n\tcubtoread\x18\x03 \x01(\r\"\xce\x01\n!CMsgClientReadMachineAuthResponse\x12\x10\n\x08\x66ilename\x18\x01 \x01(\t\x12\x0f\n\x07\x65result\x18\x02 \x01(\r\x12\x10\n\x08\x66ilesize\x18\x03 \x01(\r\x12\x10\n\x08sha_file\x18\x04 \x01(\x0c\x12\x14\n\x0cgetlasterror\x18\x05 \x01(\r\x12\x0e\n\x06offset\x18\x06 \x01(\r\x12\x0f\n\x07\x63ubread\x18\x07 \x01(\r\x12\x12\n\nbytes_read\x18\x08 \x01(\x0c\x12\x17\n\x0f\x66ilename_sentry\x18\t \x01(\t\"\xbd\x01\n\x1b\x43MsgClientUpdateMachineAuth\x12\x10\n\x08\x66ilename\x18\x01 \x01(\t\x12\x0e\n\x06offset\x18\x02 \x01(\r\x12\x12\n\ncubtowrite\x18\x03 \x01(\r\x12\r\n\x05\x62ytes\x18\x04 \x01(\x0c\x12\x10\n\x08otp_type\x18\x05 \x01(\r\x12\x16\n\x0eotp_identifier\x18\x06 \x01(\t\x12\x18\n\x10otp_sharedsecret\x18\x07 \x01(\x0c\x12\x15\n\rotp_timedrift\x18\x08 \x01(\r\"\xe1\x01\n#CMsgClientUpdateMachineAuthResponse\x12\x10\n\x08\x66ilename\x18\x01 \x01(\t\x12\x0f\n\x07\x65result\x18\x02 \x01(\r\x12\x10\n\x08\x66ilesize\x18\x03 \x01(\r\x12\x10\n\x08sha_file\x18\x04 \x01(\x0c\x12\x14\n\x0cgetlasterror\x18\x05 \x01(\r\x12\x0e\n\x06offset\x18\x06 \x01(\r\x12\x10\n\x08\x63ubwrote\x18\x07 \x01(\r\x12\x10\n\x08otp_type\x18\x08 \x01(\x05\x12\x11\n\totp_value\x18\t \x01(\r\x12\x16\n\x0eotp_identifier\x18\n \x01(\t\"\xa1\x02\n\x1c\x43MsgClientRequestMachineAuth\x12\x10\n\x08\x66ilename\x18\x01 \x01(\t\x12\x1a\n\x12\x65result_sentryfile\x18\x02 \x01(\r\x12\x10\n\x08\x66ilesize\x18\x03 \x01(\r\x12\x16\n\x0esha_sentryfile\x18\x04 \x01(\x0c\x12\x1b\n\x13lock_account_action\x18\x06 \x01(\x05\x12\x10\n\x08otp_type\x18\x07 \x01(\r\x12\x16\n\x0eotp_identifier\x18\x08 \x01(\t\x12\x18\n\x10otp_sharedsecret\x18\t \x01(\x0c\x12\x11\n\totp_value\x18\n \x01(\r\x12\x14\n\x0cmachine_name\x18\x0b \x01(\t\x12\x1f\n\x17machine_name_userchosen\x18\x0c \x01(\t\"7\n$CMsgClientRequestMachineAuthResponse\x12\x0f\n\x07\x65result\x18\x01 \x01(\r\"$\n\x15\x43MsgClientRegisterKey\x12\x0b\n\x03key\x18\x01 \x01(\t\"p\n\x1a\x43MsgClientPurchaseResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\x12\x1f\n\x17purchase_result_details\x18\x02 \x01(\x05\x12\x1d\n\x15purchase_receipt_info\x18\x03 \x01(\x0c\"\xc5\x01\n\x1c\x43MsgClientActivateOEMLicense\x12\x19\n\x11\x62ios_manufacturer\x18\x01 \x01(\t\x12\x19\n\x11\x62ios_serialnumber\x18\x02 \x01(\t\x12\x14\n\x0clicense_file\x18\x03 \x01(\x0c\x12\x1e\n\x16mainboard_manufacturer\x18\x04 \x01(\t\x12\x19\n\x11mainboard_product\x18\x05 \x01(\t\x12\x1e\n\x16mainboard_serialnumber\x18\x06 \x01(\t\"9\n\x1c\x43MsgClientRegisterOEMMachine\x12\x19\n\x11oem_register_file\x18\x01 \x01(\x0c\"7\n$CMsgClientRegisterOEMMachineResponse\x12\x0f\n\x07\x65result\x18\x01 \x01(\r\"K\n\x1f\x43MsgClientPurchaseWithMachineID\x12\x12\n\npackage_id\x18\x01 \x01(\r\x12\x14\n\x0cmachine_info\x18\x02 \x01(\x0c\"g\n CMsgTrading_InitiateTradeRequest\x12\x18\n\x10trade_request_id\x18\x01 \x01(\r\x12\x15\n\rother_steamid\x18\x02 \x01(\x04\x12\x12\n\nother_name\x18\x03 \x01(\t\"\xd2\x02\n!CMsgTrading_InitiateTradeResponse\x12\x10\n\x08response\x18\x01 \x01(\r\x12\x18\n\x10trade_request_id\x18\x02 \x01(\r\x12\x15\n\rother_steamid\x18\x03 \x01(\x04\x12 \n\x18steamguard_required_days\x18\x04 \x01(\r\x12 \n\x18new_device_cooldown_days\x18\x05 \x01(\r\x12-\n%default_password_reset_probation_days\x18\x06 \x01(\r\x12%\n\x1dpassword_reset_probation_days\x18\x07 \x01(\r\x12+\n#default_email_change_probation_days\x18\x08 \x01(\r\x12#\n\x1b\x65mail_change_probation_days\x18\t \x01(\r\"7\n\x1e\x43MsgTrading_CancelTradeRequest\x12\x15\n\rother_steamid\x18\x01 \x01(\x04\"1\n\x18\x43MsgTrading_StartSession\x12\x15\n\rother_steamid\x18\x01 \x01(\x04\"P\n\x19\x43MsgClientGetCDNAuthToken\x12\x10\n\x08\x64\x65pot_id\x18\x01 \x01(\r\x12\x11\n\thost_name\x18\x02 \x01(\t\x12\x0e\n\x06\x61pp_id\x18\x03 \x01(\r\"C\n\x1f\x43MsgClientGetDepotDecryptionKey\x12\x10\n\x08\x64\x65pot_id\x18\x01 \x01(\r\x12\x0e\n\x06\x61pp_id\x18\x02 \x01(\r\"m\n\'CMsgClientGetDepotDecryptionKeyResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\x12\x10\n\x08\x64\x65pot_id\x18\x02 \x01(\r\x12\x1c\n\x14\x64\x65pot_encryption_key\x18\x03 \x01(\x0c\"X\n\x1e\x43MsgClientCheckAppBetaPassword\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x14\n\x0c\x62\x65tapassword\x18\x02 \x01(\t\x12\x10\n\x08language\x18\x03 \x01(\x05\"\xda\x01\n&CMsgClientCheckAppBetaPasswordResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\x12K\n\rbetapasswords\x18\x04 \x03(\x0b\x32\x34.CMsgClientCheckAppBetaPasswordResponse.BetaPassword\x1aO\n\x0c\x42\x65taPassword\x12\x10\n\x08\x62\x65taname\x18\x01 \x01(\t\x12\x14\n\x0c\x62\x65tapassword\x18\x02 \x01(\t\x12\x17\n\x0f\x62\x65tadescription\x18\x03 \x01(\t\"\xbe\x04\n\x1c\x43MsgClientUpdateAppJobReport\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x11\n\tdepot_ids\x18\x02 \x03(\r\x12\x11\n\tapp_state\x18\x03 \x01(\r\x12\x15\n\rjob_app_error\x18\x04 \x01(\r\x12\x15\n\rerror_details\x18\x05 \x01(\t\x12\x14\n\x0cjob_duration\x18\x06 \x01(\r\x12\x1f\n\x17\x66iles_validation_failed\x18\x07 \x01(\r\x12\x1c\n\x14job_bytes_downloaded\x18\x08 \x01(\x04\x12\x18\n\x10job_bytes_staged\x18\t \x01(\x04\x12\x16\n\x0e\x62ytes_comitted\x18\n \x01(\x04\x12\x17\n\x0fstart_app_state\x18\x0b \x01(\r\x12\x18\n\x10stats_machine_id\x18\x0c \x01(\x06\x12\x13\n\x0b\x62ranch_name\x18\r \x01(\t\x12\x1e\n\x16total_bytes_downloaded\x18\x0e \x01(\x04\x12\x1a\n\x12total_bytes_staged\x18\x0f \x01(\x04\x12\x1c\n\x14total_bytes_restored\x18\x10 \x01(\x04\x12\x13\n\x0bis_borrowed\x18\x11 \x01(\x08\x12\x17\n\x0fis_free_weekend\x18\x12 \x01(\x08\x12\x1a\n\x12total_bytes_legacy\x18\x13 \x01(\x04\x12\x1b\n\x13total_bytes_patched\x18\x14 \x01(\x04\x12\x19\n\x11total_bytes_saved\x18\x15 \x01(\x04\x12\x0f\n\x07\x63\x65ll_id\x18\x16 \x01(\r\"\xcb\x01\n\x1e\x43MsgClientDPContentStatsReport\x12\x18\n\x10stats_machine_id\x18\x01 \x01(\x06\x12\x14\n\x0c\x63ountry_code\x18\x02 \x01(\t\x12\x0f\n\x07os_type\x18\x03 \x01(\x05\x12\x10\n\x08language\x18\x04 \x01(\x05\x12\x1b\n\x13num_install_folders\x18\x05 \x01(\r\x12\x1b\n\x13num_installed_games\x18\x06 \x01(\r\x12\x1c\n\x14size_installed_games\x18\x07 \x01(\x04\"_\n!CMsgClientGetCDNAuthTokenResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\r:\x01\x32\x12\r\n\x05token\x18\x02 \x01(\t\x12\x17\n\x0f\x65xpiration_time\x18\x03 \x01(\r\"\xb4\x02\n\x1a\x43MsgDownloadRateStatistics\x12\x0f\n\x07\x63\x65ll_id\x18\x01 \x01(\r\x12\x34\n\x05stats\x18\x02 \x03(\x0b\x32%.CMsgDownloadRateStatistics.StatsInfo\x12\x17\n\x0fthrottling_kbps\x18\x03 \x01(\r\x12\x13\n\x0bsteam_realm\x18\x04 \x01(\r\x1a\xa0\x01\n\tStatsInfo\x12\x13\n\x0bsource_type\x18\x01 \x01(\r\x12\x11\n\tsource_id\x18\x02 \x01(\r\x12\x0f\n\x07seconds\x18\x03 \x01(\r\x12\r\n\x05\x62ytes\x18\x04 \x01(\x04\x12\x11\n\thost_name\x18\x05 \x01(\t\x12\x14\n\x0cmicroseconds\x18\x06 \x01(\x04\x12\x11\n\tused_ipv6\x18\x07 \x01(\x08\x12\x0f\n\x07proxied\x18\x08 \x01(\x08\"H\n\x1c\x43MsgClientRequestAccountData\x12\x18\n\x10\x61\x63\x63ount_or_email\x18\x01 \x01(\t\x12\x0e\n\x06\x61\x63tion\x18\x02 \x01(\r\"\xd7\x01\n$CMsgClientRequestAccountDataResponse\x12\x0e\n\x06\x61\x63tion\x18\x01 \x01(\r\x12\x0f\n\x07\x65result\x18\x02 \x01(\r\x12\x14\n\x0c\x61\x63\x63ount_name\x18\x03 \x01(\t\x12\x12\n\nct_matches\x18\x04 \x01(\r\x12 \n\x18\x61\x63\x63ount_name_suggestion1\x18\x05 \x01(\t\x12 \n\x18\x61\x63\x63ount_name_suggestion2\x18\x06 \x01(\t\x12 \n\x18\x61\x63\x63ount_name_suggestion3\x18\x07 \x01(\t\"\x99\x01\n\x1b\x43MsgClientUGSGetGlobalStats\x12\x0e\n\x06gameid\x18\x01 \x01(\x04\x12\x1e\n\x16history_days_requested\x18\x02 \x01(\r\x12\x1b\n\x13time_last_requested\x18\x03 \x01(\x07\x12\x18\n\x10\x66irst_day_cached\x18\x04 \x01(\r\x12\x13\n\x0b\x64\x61ys_cached\x18\x05 \x01(\r\"\x95\x02\n#CMsgClientUGSGetGlobalStatsResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\x12\x11\n\ttimestamp\x18\x02 \x01(\x07\x12\x13\n\x0b\x64\x61y_current\x18\x03 \x01(\x05\x12\x36\n\x04\x64\x61ys\x18\x04 \x03(\x0b\x32(.CMsgClientUGSGetGlobalStatsResponse.Day\x1az\n\x03\x44\x61y\x12\x0e\n\x06\x64\x61y_id\x18\x01 \x01(\r\x12<\n\x05stats\x18\x02 \x03(\x0b\x32-.CMsgClientUGSGetGlobalStatsResponse.Day.Stat\x1a%\n\x04Stat\x12\x0f\n\x07stat_id\x18\x01 \x01(\x05\x12\x0c\n\x04\x64\x61ta\x18\x02 \x01(\x03\"2\n\x19\x43MsgClientRedeemGuestPass\x12\x15\n\rguest_pass_id\x18\x01 \x01(\x06\"c\n!CMsgClientRedeemGuestPassResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\r:\x01\x32\x12\x12\n\npackage_id\x18\x02 \x01(\r\x12\x16\n\x0emust_own_appid\x18\x03 \x01(\r\"8\n\x1f\x43MsgClientGetClanActivityCounts\x12\x15\n\rsteamid_clans\x18\x01 \x03(\x04\"=\n\'CMsgClientGetClanActivityCountsResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\r:\x01\x32\"y\n\x19\x43MsgClientOGSReportString\x12\x13\n\x0b\x61\x63\x63umulated\x18\x01 \x01(\x08\x12\x11\n\tsessionid\x18\x02 \x01(\x04\x12\x10\n\x08severity\x18\x03 \x01(\x05\x12\x11\n\tformatter\x18\x04 \x01(\t\x12\x0f\n\x07varargs\x18\x05 \x01(\x0c\"P\n\x16\x43MsgClientOGSReportBug\x12\x11\n\tsessionid\x18\x01 \x01(\x04\x12\x0f\n\x07\x62ugtext\x18\x02 \x01(\t\x12\x12\n\nscreenshot\x18\x03 \x01(\x0c\"\x14\n\x12\x43MsgClientSentLogs\"l\n\x0c\x43MsgGCClient\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x0f\n\x07msgtype\x18\x02 \x01(\r\x12\x0f\n\x07payload\x18\x03 \x01(\x0c\x12\x0f\n\x07steamid\x18\x04 \x01(\x06\x12\x0e\n\x06gcname\x18\x05 \x01(\t\x12\n\n\x02ip\x18\x06 \x01(\r\".\n\x1c\x43MsgClientRequestFreeLicense\x12\x0e\n\x06\x61ppids\x18\x02 \x03(\r\"n\n$CMsgClientRequestFreeLicenseResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\r:\x01\x32\x12\x1a\n\x12granted_packageids\x18\x02 \x03(\r\x12\x16\n\x0egranted_appids\x18\x03 \x03(\r\"\xd3\x01\n#CMsgDRMDownloadRequestWithCrashData\x12\x16\n\x0e\x64ownload_flags\x18\x01 \x01(\r\x12\x1c\n\x14\x64ownload_types_known\x18\x02 \x01(\r\x12\x10\n\x08guid_drm\x18\x03 \x01(\x0c\x12\x12\n\nguid_split\x18\x04 \x01(\x0c\x12\x12\n\nguid_merge\x18\x05 \x01(\x0c\x12\x13\n\x0bmodule_name\x18\x06 \x01(\t\x12\x13\n\x0bmodule_path\x18\x07 \x01(\t\x12\x12\n\ncrash_data\x18\x08 \x01(\x0c\"\xdb\x01\n\x17\x43MsgDRMDownloadResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\r:\x01\x32\x12\x0e\n\x06\x61pp_id\x18\x02 \x01(\r\x12\x1a\n\x12\x62lob_download_type\x18\x03 \x01(\r\x12\x12\n\nmerge_guid\x18\x04 \x01(\x0c\x12\x1c\n\x14\x64ownload_file_dfs_ip\x18\x05 \x01(\r\x12\x1e\n\x16\x64ownload_file_dfs_port\x18\x06 \x01(\r\x12\x19\n\x11\x64ownload_file_url\x18\x07 \x01(\t\x12\x13\n\x0bmodule_path\x18\x08 \x01(\t\"\xd7\x01\n\x12\x43MsgDRMFinalResult\x12\x12\n\x07\x65Result\x18\x01 \x01(\r:\x01\x32\x12\x0e\n\x06\x61pp_id\x18\x02 \x01(\r\x12\x1a\n\x12\x62lob_download_type\x18\x03 \x01(\r\x12\x14\n\x0c\x65rror_detail\x18\x04 \x01(\r\x12\x12\n\nmerge_guid\x18\x05 \x01(\x0c\x12\x1c\n\x14\x64ownload_file_dfs_ip\x18\x06 \x01(\r\x12\x1e\n\x16\x64ownload_file_dfs_port\x18\x07 \x01(\r\x12\x19\n\x11\x64ownload_file_url\x18\x08 \x01(\t\"3\n\x1e\x43MsgClientDPCheckSpecialSurvey\x12\x11\n\tsurvey_id\x18\x01 \x01(\r\"\x96\x01\n&CMsgClientDPCheckSpecialSurveyResponse\x12\x12\n\x07\x65Result\x18\x01 \x01(\r:\x01\x32\x12\r\n\x05state\x18\x02 \x01(\r\x12\x0c\n\x04name\x18\x03 \x01(\t\x12\x12\n\ncustom_url\x18\x04 \x01(\t\x12\x18\n\x10include_software\x18\x05 \x01(\x08\x12\r\n\x05token\x18\x06 \x01(\x0c\"H\n%CMsgClientDPSendSpecialSurveyResponse\x12\x11\n\tsurvey_id\x18\x01 \x01(\r\x12\x0c\n\x04\x64\x61ta\x18\x02 \x01(\x0c\"O\n*CMsgClientDPSendSpecialSurveyResponseReply\x12\x12\n\x07\x65Result\x18\x01 \x01(\r:\x01\x32\x12\r\n\x05token\x18\x02 \x01(\x0c\"W\n\'CMsgClientRequestForgottenPasswordEmail\x12\x14\n\x0c\x61\x63\x63ount_name\x18\x01 \x01(\t\x12\x16\n\x0epassword_tried\x18\x02 \x01(\t\"_\n/CMsgClientRequestForgottenPasswordEmailResponse\x12\x0f\n\x07\x65Result\x18\x01 \x01(\r\x12\x1b\n\x13use_secret_question\x18\x02 \x01(\x08\"\xf6\x01\n\x1b\x43MsgClientItemAnnouncements\x12\x17\n\x0f\x63ount_new_items\x18\x01 \x01(\r\x12=\n\x0cunseen_items\x18\x02 \x03(\x0b\x32\'.CMsgClientItemAnnouncements.UnseenItem\x1a\x7f\n\nUnseenItem\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x12\n\ncontext_id\x18\x02 \x01(\x04\x12\x10\n\x08\x61sset_id\x18\x03 \x01(\x04\x12\x0e\n\x06\x61mount\x18\x04 \x01(\x04\x12\x16\n\x0ertime32_gained\x18\x05 \x01(\x07\x12\x14\n\x0csource_appid\x18\x06 \x01(\r\"$\n\"CMsgClientRequestItemAnnouncements\"\x9e\x01\n\x1b\x43MsgClientUserNotifications\x12@\n\rnotifications\x18\x01 \x03(\x0b\x32).CMsgClientUserNotifications.Notification\x1a=\n\x0cNotification\x12\x1e\n\x16user_notification_type\x18\x01 \x01(\r\x12\r\n\x05\x63ount\x18\x02 \x01(\r\"\x88\x01\n\x1e\x43MsgClientCommentNotifications\x12\x1a\n\x12\x63ount_new_comments\x18\x01 \x01(\r\x12 \n\x18\x63ount_new_comments_owner\x18\x02 \x01(\r\x12(\n count_new_comments_subscriptions\x18\x03 \x01(\r\"\'\n%CMsgClientRequestCommentNotifications\"g\n$CMsgClientOfflineMessageNotification\x12\x18\n\x10offline_messages\x18\x01 \x01(\r\x12%\n\x1d\x66riends_with_offline_messages\x18\x02 \x03(\r\"&\n$CMsgClientRequestOfflineMessageCount\"8\n%CMsgClientChatGetFriendMessageHistory\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\"\xf9\x01\n-CMsgClientChatGetFriendMessageHistoryResponse\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12\x0f\n\x07success\x18\x02 \x01(\r\x12N\n\x08messages\x18\x03 \x03(\x0b\x32<.CMsgClientChatGetFriendMessageHistoryResponse.FriendMessage\x1aV\n\rFriendMessage\x12\x11\n\taccountid\x18\x01 \x01(\r\x12\x11\n\ttimestamp\x18\x02 \x01(\r\x12\x0f\n\x07message\x18\x03 \x01(\t\x12\x0e\n\x06unread\x18\x04 \x01(\x08\"9\n7CMsgClientChatGetFriendMessageHistoryForOfflineMessages\"7\n!CMsgClientFSGetFriendsSteamLevels\x12\x12\n\naccountids\x18\x01 \x03(\r\"\x9b\x01\n)CMsgClientFSGetFriendsSteamLevelsResponse\x12\x42\n\x07\x66riends\x18\x01 \x03(\x0b\x32\x31.CMsgClientFSGetFriendsSteamLevelsResponse.Friend\x1a*\n\x06\x46riend\x12\x11\n\taccountid\x18\x01 \x01(\r\x12\r\n\x05level\x18\x02 \x01(\r\"\xeb\x01\n\x17\x43MsgClientEmailAddrInfo\x12\x15\n\remail_address\x18\x01 \x01(\t\x12\x1a\n\x12\x65mail_is_validated\x18\x02 \x01(\x08\x12 \n\x18\x65mail_validation_changed\x18\x03 \x01(\x08\x12\'\n\x1f\x63redential_change_requires_code\x18\x04 \x01(\x08\x12\x31\n)password_or_secretqa_change_requires_code\x18\x05 \x01(\x08\x12\x1f\n\x17remind_user_about_email\x18\x06 \x01(\x08\"\x8b\x01\n\x16\x43MsgCREItemVoteSummary\x12\x43\n\x12published_file_ids\x18\x01 \x03(\x0b\x32\'.CMsgCREItemVoteSummary.PublishedFileId\x1a,\n\x0fPublishedFileId\x12\x19\n\x11published_file_id\x18\x01 \x01(\x06\"\xfa\x01\n\x1e\x43MsgCREItemVoteSummaryResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\x12L\n\x13item_vote_summaries\x18\x02 \x03(\x0b\x32/.CMsgCREItemVoteSummaryResponse.ItemVoteSummary\x1av\n\x0fItemVoteSummary\x12\x19\n\x11published_file_id\x18\x01 \x01(\x06\x12\x11\n\tvotes_for\x18\x02 \x01(\x05\x12\x15\n\rvotes_against\x18\x03 \x01(\x05\x12\x0f\n\x07reports\x18\x04 \x01(\x05\x12\r\n\x05score\x18\x05 \x01(\x02\"P\n\"CMsgCREUpdateUserPublishedItemVote\x12\x19\n\x11published_file_id\x18\x01 \x01(\x06\x12\x0f\n\x07vote_up\x18\x02 \x01(\x08\"@\n*CMsgCREUpdateUserPublishedItemVoteResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\"\xab\x01\n&CMsgCREGetUserPublishedItemVoteDetails\x12S\n\x12published_file_ids\x18\x01 \x03(\x0b\x32\x37.CMsgCREGetUserPublishedItemVoteDetails.PublishedFileId\x1a,\n\x0fPublishedFileId\x12\x19\n\x11published_file_id\x18\x01 \x01(\x06\"\xea\x01\n.CMsgCREGetUserPublishedItemVoteDetailsResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\x12\x62\n\x16user_item_vote_details\x18\x02 \x03(\x0b\x32\x42.CMsgCREGetUserPublishedItemVoteDetailsResponse.UserItemVoteDetail\x1a@\n\x12UserItemVoteDetail\x12\x19\n\x11published_file_id\x18\x01 \x01(\x06\x12\x0f\n\x04vote\x18\x02 \x01(\x05:\x01\x30\"*\n\x16\x43MsgFSGetFollowerCount\x12\x10\n\x08steam_id\x18\x01 \x01(\x06\"F\n\x1e\x43MsgFSGetFollowerCountResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\x12\x10\n\x05\x63ount\x18\x02 \x01(\x05:\x01\x30\"(\n\x14\x43MsgFSGetIsFollowing\x12\x10\n\x08steam_id\x18\x01 \x01(\x06\"O\n\x1c\x43MsgFSGetIsFollowingResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\x12\x1b\n\x0cis_following\x18\x02 \x01(\x08:\x05\x66\x61lse\"3\n\x1c\x43MsgFSEnumerateFollowingList\x12\x13\n\x0bstart_index\x18\x01 \x01(\r\"d\n$CMsgFSEnumerateFollowingListResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\x12\x15\n\rtotal_results\x18\x02 \x01(\x05\x12\x11\n\tsteam_ids\x18\x03 \x03(\x06\"0\n\x1f\x43MsgDPGetNumberOfCurrentPlayers\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\"S\n\'CMsgDPGetNumberOfCurrentPlayersResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\x12\x14\n\x0cplayer_count\x18\x02 \x01(\x05\"a\n#CMsgClientFriendUserStatusPublished\x12\x16\n\x0e\x66riend_steamid\x18\x01 \x01(\x06\x12\r\n\x05\x61ppid\x18\x02 \x01(\r\x12\x13\n\x0bstatus_text\x18\x03 \x01(\t\"h\n\x1d\x43MsgClientServiceMethodLegacy\x12\x13\n\x0bmethod_name\x18\x01 \x01(\t\x12\x19\n\x11serialized_method\x18\x02 \x01(\x0c\x12\x17\n\x0fis_notification\x18\x03 \x01(\x08\"`\n%CMsgClientServiceMethodLegacyResponse\x12\x13\n\x0bmethod_name\x18\x01 \x01(\t\x12\"\n\x1aserialized_method_response\x18\x02 \x01(\x0c\"5\n\x10\x43MsgClientUIMode\x12\x0e\n\x06uimode\x18\x01 \x01(\r\x12\x11\n\tchat_mode\x18\x02 \x01(\r\"<\n&CMsgClientVanityURLChangedNotification\x12\x12\n\nvanity_url\x18\x01 \x01(\t\"y\n%CMsgClientAuthorizeLocalDeviceRequest\x12\x1a\n\x12\x64\x65vice_description\x18\x01 \x01(\t\x12\x18\n\x10owner_account_id\x18\x02 \x01(\r\x12\x1a\n\x12local_device_token\x18\x03 \x01(\x04\"k\n\x1e\x43MsgClientAuthorizeLocalDevice\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\x12\x18\n\x10owner_account_id\x18\x02 \x01(\r\x12\x1b\n\x13\x61uthed_device_token\x18\x03 \x01(\x04\"v\n*CMsgClientAuthorizeLocalDeviceNotification\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\x12\x18\n\x10owner_account_id\x18\x02 \x01(\r\x12\x1a\n\x12local_device_token\x18\x03 \x01(\x04\"n\n\"CMsgClientDeauthorizeDeviceRequest\x12\"\n\x1a\x64\x65\x61uthorization_account_id\x18\x01 \x01(\r\x12$\n\x1c\x64\x65\x61uthorization_device_token\x18\x02 \x01(\x04\"U\n\x1b\x43MsgClientDeauthorizeDevice\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\x12\"\n\x1a\x64\x65\x61uthorization_account_id\x18\x02 \x01(\r\"\xd1\x01\n&CMsgClientUseLocalDeviceAuthorizations\x12 \n\x18\x61uthorization_account_id\x18\x01 \x03(\r\x12J\n\rdevice_tokens\x18\x02 \x03(\x0b\x32\x33.CMsgClientUseLocalDeviceAuthorizations.DeviceToken\x1a\x39\n\x0b\x44\x65viceToken\x12\x18\n\x10owner_account_id\x18\x01 \x01(\r\x12\x10\n\x08token_id\x18\x02 \x01(\x04\" \n\x1e\x43MsgClientGetAuthorizedDevices\"\xad\x02\n&CMsgClientGetAuthorizedDevicesResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\x12S\n\x11\x61uthorized_device\x18\x02 \x03(\x0b\x32\x38.CMsgClientGetAuthorizedDevicesResponse.AuthorizedDevice\x1a\x99\x01\n\x10\x41uthorizedDevice\x12\x19\n\x11\x61uth_device_token\x18\x01 \x01(\x04\x12\x13\n\x0b\x64\x65vice_name\x18\x02 \x01(\t\x12\x18\n\x10last_access_time\x18\x03 \x01(\r\x12\x13\n\x0b\x62orrower_id\x18\x04 \x01(\r\x12\x12\n\nis_pending\x18\x05 \x01(\x08\x12\x12\n\napp_played\x18\x06 \x01(\r\"\xc2\x01\n!CMsgClientSharedLibraryLockStatus\x12H\n\x0elocked_library\x18\x01 \x03(\x0b\x32\x30.CMsgClientSharedLibraryLockStatus.LockedLibrary\x12\x1d\n\x15own_library_locked_by\x18\x02 \x01(\r\x1a\x34\n\rLockedLibrary\x12\x10\n\x08owner_id\x18\x01 \x01(\r\x12\x11\n\tlocked_by\x18\x02 \x01(\r\"\xa7\x01\n\"CMsgClientSharedLibraryStopPlaying\x12\x14\n\x0cseconds_left\x18\x01 \x01(\x05\x12>\n\tstop_apps\x18\x02 \x03(\x0b\x32+.CMsgClientSharedLibraryStopPlaying.StopApp\x1a+\n\x07StopApp\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x10\n\x08owner_id\x18\x02 \x01(\r\"\xf1\x01\n\x15\x43MsgClientServiceCall\x12\x15\n\rsysid_routing\x18\x01 \x01(\x0c\x12\x13\n\x0b\x63\x61ll_handle\x18\x02 \x01(\r\x12\x12\n\nmodule_crc\x18\x03 \x01(\r\x12\x13\n\x0bmodule_hash\x18\x04 \x01(\x0c\x12\x13\n\x0b\x66unction_id\x18\x05 \x01(\r\x12\x16\n\x0e\x63ub_output_max\x18\x06 \x01(\r\x12\r\n\x05\x66lags\x18\x07 \x01(\r\x12\x15\n\rcallparameter\x18\x08 \x01(\x0c\x12\x11\n\tping_only\x18\t \x01(\x08\x12\x1d\n\x15max_outstanding_calls\x18\n \x01(\r\"Z\n\x17\x43MsgClientServiceModule\x12\x12\n\nmodule_crc\x18\x01 \x01(\r\x12\x13\n\x0bmodule_hash\x18\x02 \x01(\x0c\x12\x16\n\x0emodule_content\x18\x03 \x01(\x0c\"\xb8\x04\n\x1d\x43MsgClientServiceCallResponse\x12\x15\n\rsysid_routing\x18\x01 \x01(\x0c\x12\x13\n\x0b\x63\x61ll_handle\x18\x02 \x01(\r\x12\x12\n\nmodule_crc\x18\x03 \x01(\r\x12\x13\n\x0bmodule_hash\x18\x04 \x01(\x0c\x12\x13\n\x0b\x65\x63\x61llresult\x18\x05 \x01(\r\x12\x16\n\x0eresult_content\x18\x06 \x01(\x0c\x12\x17\n\x0fos_version_info\x18\x07 \x01(\x0c\x12\x13\n\x0bsystem_info\x18\x08 \x01(\x0c\x12\x14\n\x0cload_address\x18\t \x01(\x06\x12\x18\n\x10\x65xception_record\x18\n \x01(\x0c\x12 \n\x18portable_os_version_info\x18\x0b \x01(\x0c\x12\x1c\n\x14portable_system_info\x18\x0c \x01(\x0c\x12\x15\n\rwas_converted\x18\r \x01(\x08\x12\x17\n\x0finternal_result\x18\x0e \x01(\r\x12\x15\n\rcurrent_count\x18\x0f \x01(\r\x12\x18\n\x10last_call_handle\x18\x10 \x01(\r\x12\x1c\n\x14last_call_module_crc\x18\x11 \x01(\r\x12\x1f\n\x17last_call_sysid_routing\x18\x12 \x01(\x0c\x12\x18\n\x10last_ecallresult\x18\x13 \x01(\r\x12\x1c\n\x14last_callissue_delta\x18\x14 \x01(\r\x12\x1f\n\x17last_callcomplete_delta\x18\x15 \x01(\r\"\x17\n\x15\x43MsgAMUnlockStreaming\"K\n\x1d\x43MsgAMUnlockStreamingResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\x12\x16\n\x0e\x65ncryption_key\x18\x02 \x01(\x0c\"\x12\n\x10\x43MsgAMUnlockHEVC\".\n\x18\x43MsgAMUnlockHEVCResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\"M\n\x1d\x43MsgClientPlayingSessionState\x12\x17\n\x0fplaying_blocked\x18\x02 \x01(\x08\x12\x13\n\x0bplaying_app\x18\x03 \x01(\r\"6\n\x1c\x43MsgClientKickPlayingSession\x12\x16\n\x0eonly_stop_game\x18\x01 \x01(\x08\"v\n\x1f\x43MsgClientVoiceCallPreAuthorize\x12\x16\n\x0e\x63\x61ller_steamid\x18\x01 \x01(\x06\x12\x18\n\x10receiver_steamid\x18\x02 \x01(\x06\x12\x11\n\tcaller_id\x18\x03 \x01(\x05\x12\x0e\n\x06hangup\x18\x04 \x01(\x08\"\x82\x01\n\'CMsgClientVoiceCallPreAuthorizeResponse\x12\x16\n\x0e\x63\x61ller_steamid\x18\x01 \x01(\x06\x12\x18\n\x10receiver_steamid\x18\x02 \x01(\x06\x12\x12\n\x07\x65result\x18\x03 \x01(\x05:\x01\x32\x12\x11\n\tcaller_id\x18\x04 \x01(\x05\"B\n\x1c\x43MsgBadgeCraftedNotification\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x13\n\x0b\x62\x61\x64ge_level\x18\x02 \x01(\rB\x05H\x01\x90\x01\x00')
+  serialized_options=b'H\001\220\001\000',
+  create_key=_descriptor._internal_create_key,
+  serialized_pb=b'\n\"steammessages_clientserver_2.proto\x1a\x18steammessages_base.proto\"w\n\x1c\x43MsgClientUpdateUserGameInfo\x12\x14\n\x0csteamid_idgs\x18\x01 \x01(\x06\x12\x0e\n\x06gameid\x18\x02 \x01(\x06\x12\x0f\n\x07game_ip\x18\x03 \x01(\r\x12\x11\n\tgame_port\x18\x04 \x01(\r\x12\r\n\x05token\x18\x05 \x01(\x0c\"S\n\x1c\x43MsgClientRichPresenceUpload\x12\x18\n\x10rich_presence_kv\x18\x01 \x01(\x0c\x12\x19\n\x11steamid_broadcast\x18\x02 \x03(\x06\"8\n\x1d\x43MsgClientRichPresenceRequest\x12\x17\n\x0fsteamid_request\x18\x01 \x03(\x06\"\x9d\x01\n\x1a\x43MsgClientRichPresenceInfo\x12?\n\rrich_presence\x18\x01 \x03(\x0b\x32(.CMsgClientRichPresenceInfo.RichPresence\x1a>\n\x0cRichPresence\x12\x14\n\x0csteamid_user\x18\x01 \x01(\x06\x12\x18\n\x10rich_presence_kv\x18\x02 \x01(\x0c\".\n\x1c\x43MsgClientCheckFileSignature\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\"\xf7\x01\n$CMsgClientCheckFileSignatureResponse\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x0b\n\x03pid\x18\x02 \x01(\r\x12\x0f\n\x07\x65result\x18\x03 \x01(\r\x12\x10\n\x08\x66ilename\x18\x04 \x01(\t\x12\x18\n\x10\x65signatureresult\x18\x05 \x01(\r\x12\x10\n\x08sha_file\x18\x06 \x01(\x0c\x12\x17\n\x0fsignatureheader\x18\x07 \x01(\x0c\x12\x10\n\x08\x66ilesize\x18\x08 \x01(\r\x12\x14\n\x0cgetlasterror\x18\t \x01(\r\x12\"\n\x1a\x65valvesignaturecheckdetail\x18\n \x01(\r\"P\n\x19\x43MsgClientReadMachineAuth\x12\x10\n\x08\x66ilename\x18\x01 \x01(\t\x12\x0e\n\x06offset\x18\x02 \x01(\r\x12\x11\n\tcubtoread\x18\x03 \x01(\r\"\xce\x01\n!CMsgClientReadMachineAuthResponse\x12\x10\n\x08\x66ilename\x18\x01 \x01(\t\x12\x0f\n\x07\x65result\x18\x02 \x01(\r\x12\x10\n\x08\x66ilesize\x18\x03 \x01(\r\x12\x10\n\x08sha_file\x18\x04 \x01(\x0c\x12\x14\n\x0cgetlasterror\x18\x05 \x01(\r\x12\x0e\n\x06offset\x18\x06 \x01(\r\x12\x0f\n\x07\x63ubread\x18\x07 \x01(\r\x12\x12\n\nbytes_read\x18\x08 \x01(\x0c\x12\x17\n\x0f\x66ilename_sentry\x18\t \x01(\t\"\xbd\x01\n\x1b\x43MsgClientUpdateMachineAuth\x12\x10\n\x08\x66ilename\x18\x01 \x01(\t\x12\x0e\n\x06offset\x18\x02 \x01(\r\x12\x12\n\ncubtowrite\x18\x03 \x01(\r\x12\r\n\x05\x62ytes\x18\x04 \x01(\x0c\x12\x10\n\x08otp_type\x18\x05 \x01(\r\x12\x16\n\x0eotp_identifier\x18\x06 \x01(\t\x12\x18\n\x10otp_sharedsecret\x18\x07 \x01(\x0c\x12\x15\n\rotp_timedrift\x18\x08 \x01(\r\"\xe1\x01\n#CMsgClientUpdateMachineAuthResponse\x12\x10\n\x08\x66ilename\x18\x01 \x01(\t\x12\x0f\n\x07\x65result\x18\x02 \x01(\r\x12\x10\n\x08\x66ilesize\x18\x03 \x01(\r\x12\x10\n\x08sha_file\x18\x04 \x01(\x0c\x12\x14\n\x0cgetlasterror\x18\x05 \x01(\r\x12\x0e\n\x06offset\x18\x06 \x01(\r\x12\x10\n\x08\x63ubwrote\x18\x07 \x01(\r\x12\x10\n\x08otp_type\x18\x08 \x01(\x05\x12\x11\n\totp_value\x18\t \x01(\r\x12\x16\n\x0eotp_identifier\x18\n \x01(\t\"\xa1\x02\n\x1c\x43MsgClientRequestMachineAuth\x12\x10\n\x08\x66ilename\x18\x01 \x01(\t\x12\x1a\n\x12\x65result_sentryfile\x18\x02 \x01(\r\x12\x10\n\x08\x66ilesize\x18\x03 \x01(\r\x12\x16\n\x0esha_sentryfile\x18\x04 \x01(\x0c\x12\x1b\n\x13lock_account_action\x18\x06 \x01(\x05\x12\x10\n\x08otp_type\x18\x07 \x01(\r\x12\x16\n\x0eotp_identifier\x18\x08 \x01(\t\x12\x18\n\x10otp_sharedsecret\x18\t \x01(\x0c\x12\x11\n\totp_value\x18\n \x01(\r\x12\x14\n\x0cmachine_name\x18\x0b \x01(\t\x12\x1f\n\x17machine_name_userchosen\x18\x0c \x01(\t\"7\n$CMsgClientRequestMachineAuthResponse\x12\x0f\n\x07\x65result\x18\x01 \x01(\r\"$\n\x15\x43MsgClientRegisterKey\x12\x0b\n\x03key\x18\x01 \x01(\t\"p\n\x1a\x43MsgClientPurchaseResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\x12\x1f\n\x17purchase_result_details\x18\x02 \x01(\x05\x12\x1d\n\x15purchase_receipt_info\x18\x03 \x01(\x0c\"\xc5\x01\n\x1c\x43MsgClientActivateOEMLicense\x12\x19\n\x11\x62ios_manufacturer\x18\x01 \x01(\t\x12\x19\n\x11\x62ios_serialnumber\x18\x02 \x01(\t\x12\x14\n\x0clicense_file\x18\x03 \x01(\x0c\x12\x1e\n\x16mainboard_manufacturer\x18\x04 \x01(\t\x12\x19\n\x11mainboard_product\x18\x05 \x01(\t\x12\x1e\n\x16mainboard_serialnumber\x18\x06 \x01(\t\"9\n\x1c\x43MsgClientRegisterOEMMachine\x12\x19\n\x11oem_register_file\x18\x01 \x01(\x0c\"7\n$CMsgClientRegisterOEMMachineResponse\x12\x0f\n\x07\x65result\x18\x01 \x01(\r\"K\n\x1f\x43MsgClientPurchaseWithMachineID\x12\x12\n\npackage_id\x18\x01 \x01(\r\x12\x14\n\x0cmachine_info\x18\x02 \x01(\x0c\"g\n CMsgTrading_InitiateTradeRequest\x12\x18\n\x10trade_request_id\x18\x01 \x01(\r\x12\x15\n\rother_steamid\x18\x02 \x01(\x04\x12\x12\n\nother_name\x18\x03 \x01(\t\"\xd2\x02\n!CMsgTrading_InitiateTradeResponse\x12\x10\n\x08response\x18\x01 \x01(\r\x12\x18\n\x10trade_request_id\x18\x02 \x01(\r\x12\x15\n\rother_steamid\x18\x03 \x01(\x04\x12 \n\x18steamguard_required_days\x18\x04 \x01(\r\x12 \n\x18new_device_cooldown_days\x18\x05 \x01(\r\x12-\n%default_password_reset_probation_days\x18\x06 \x01(\r\x12%\n\x1dpassword_reset_probation_days\x18\x07 \x01(\r\x12+\n#default_email_change_probation_days\x18\x08 \x01(\r\x12#\n\x1b\x65mail_change_probation_days\x18\t \x01(\r\"7\n\x1e\x43MsgTrading_CancelTradeRequest\x12\x15\n\rother_steamid\x18\x01 \x01(\x04\"1\n\x18\x43MsgTrading_StartSession\x12\x15\n\rother_steamid\x18\x01 \x01(\x04\"P\n\x19\x43MsgClientGetCDNAuthToken\x12\x10\n\x08\x64\x65pot_id\x18\x01 \x01(\r\x12\x11\n\thost_name\x18\x02 \x01(\t\x12\x0e\n\x06\x61pp_id\x18\x03 \x01(\r\"C\n\x1f\x43MsgClientGetDepotDecryptionKey\x12\x10\n\x08\x64\x65pot_id\x18\x01 \x01(\r\x12\x0e\n\x06\x61pp_id\x18\x02 \x01(\r\"m\n\'CMsgClientGetDepotDecryptionKeyResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\x12\x10\n\x08\x64\x65pot_id\x18\x02 \x01(\r\x12\x1c\n\x14\x64\x65pot_encryption_key\x18\x03 \x01(\x0c\"X\n\x1e\x43MsgClientCheckAppBetaPassword\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x14\n\x0c\x62\x65tapassword\x18\x02 \x01(\t\x12\x10\n\x08language\x18\x03 \x01(\x05\"\xda\x01\n&CMsgClientCheckAppBetaPasswordResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\x12K\n\rbetapasswords\x18\x04 \x03(\x0b\x32\x34.CMsgClientCheckAppBetaPasswordResponse.BetaPassword\x1aO\n\x0c\x42\x65taPassword\x12\x10\n\x08\x62\x65taname\x18\x01 \x01(\t\x12\x14\n\x0c\x62\x65tapassword\x18\x02 \x01(\t\x12\x17\n\x0f\x62\x65tadescription\x18\x03 \x01(\t\"\xbe\x04\n\x1c\x43MsgClientUpdateAppJobReport\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x11\n\tdepot_ids\x18\x02 \x03(\r\x12\x11\n\tapp_state\x18\x03 \x01(\r\x12\x15\n\rjob_app_error\x18\x04 \x01(\r\x12\x15\n\rerror_details\x18\x05 \x01(\t\x12\x14\n\x0cjob_duration\x18\x06 \x01(\r\x12\x1f\n\x17\x66iles_validation_failed\x18\x07 \x01(\r\x12\x1c\n\x14job_bytes_downloaded\x18\x08 \x01(\x04\x12\x18\n\x10job_bytes_staged\x18\t \x01(\x04\x12\x16\n\x0e\x62ytes_comitted\x18\n \x01(\x04\x12\x17\n\x0fstart_app_state\x18\x0b \x01(\r\x12\x18\n\x10stats_machine_id\x18\x0c \x01(\x06\x12\x13\n\x0b\x62ranch_name\x18\r \x01(\t\x12\x1e\n\x16total_bytes_downloaded\x18\x0e \x01(\x04\x12\x1a\n\x12total_bytes_staged\x18\x0f \x01(\x04\x12\x1c\n\x14total_bytes_restored\x18\x10 \x01(\x04\x12\x13\n\x0bis_borrowed\x18\x11 \x01(\x08\x12\x17\n\x0fis_free_weekend\x18\x12 \x01(\x08\x12\x1a\n\x12total_bytes_legacy\x18\x13 \x01(\x04\x12\x1b\n\x13total_bytes_patched\x18\x14 \x01(\x04\x12\x19\n\x11total_bytes_saved\x18\x15 \x01(\x04\x12\x0f\n\x07\x63\x65ll_id\x18\x16 \x01(\r\"\xcb\x01\n\x1e\x43MsgClientDPContentStatsReport\x12\x18\n\x10stats_machine_id\x18\x01 \x01(\x06\x12\x14\n\x0c\x63ountry_code\x18\x02 \x01(\t\x12\x0f\n\x07os_type\x18\x03 \x01(\x05\x12\x10\n\x08language\x18\x04 \x01(\x05\x12\x1b\n\x13num_install_folders\x18\x05 \x01(\r\x12\x1b\n\x13num_installed_games\x18\x06 \x01(\r\x12\x1c\n\x14size_installed_games\x18\x07 \x01(\x04\"_\n!CMsgClientGetCDNAuthTokenResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\r:\x01\x32\x12\r\n\x05token\x18\x02 \x01(\t\x12\x17\n\x0f\x65xpiration_time\x18\x03 \x01(\r\"\xb4\x02\n\x1a\x43MsgDownloadRateStatistics\x12\x0f\n\x07\x63\x65ll_id\x18\x01 \x01(\r\x12\x34\n\x05stats\x18\x02 \x03(\x0b\x32%.CMsgDownloadRateStatistics.StatsInfo\x12\x17\n\x0fthrottling_kbps\x18\x03 \x01(\r\x12\x13\n\x0bsteam_realm\x18\x04 \x01(\r\x1a\xa0\x01\n\tStatsInfo\x12\x13\n\x0bsource_type\x18\x01 \x01(\r\x12\x11\n\tsource_id\x18\x02 \x01(\r\x12\x0f\n\x07seconds\x18\x03 \x01(\r\x12\r\n\x05\x62ytes\x18\x04 \x01(\x04\x12\x11\n\thost_name\x18\x05 \x01(\t\x12\x14\n\x0cmicroseconds\x18\x06 \x01(\x04\x12\x11\n\tused_ipv6\x18\x07 \x01(\x08\x12\x0f\n\x07proxied\x18\x08 \x01(\x08\"H\n\x1c\x43MsgClientRequestAccountData\x12\x18\n\x10\x61\x63\x63ount_or_email\x18\x01 \x01(\t\x12\x0e\n\x06\x61\x63tion\x18\x02 \x01(\r\"\xd7\x01\n$CMsgClientRequestAccountDataResponse\x12\x0e\n\x06\x61\x63tion\x18\x01 \x01(\r\x12\x0f\n\x07\x65result\x18\x02 \x01(\r\x12\x14\n\x0c\x61\x63\x63ount_name\x18\x03 \x01(\t\x12\x12\n\nct_matches\x18\x04 \x01(\r\x12 \n\x18\x61\x63\x63ount_name_suggestion1\x18\x05 \x01(\t\x12 \n\x18\x61\x63\x63ount_name_suggestion2\x18\x06 \x01(\t\x12 \n\x18\x61\x63\x63ount_name_suggestion3\x18\x07 \x01(\t\"\x99\x01\n\x1b\x43MsgClientUGSGetGlobalStats\x12\x0e\n\x06gameid\x18\x01 \x01(\x04\x12\x1e\n\x16history_days_requested\x18\x02 \x01(\r\x12\x1b\n\x13time_last_requested\x18\x03 \x01(\x07\x12\x18\n\x10\x66irst_day_cached\x18\x04 \x01(\r\x12\x13\n\x0b\x64\x61ys_cached\x18\x05 \x01(\r\"\x95\x02\n#CMsgClientUGSGetGlobalStatsResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\x12\x11\n\ttimestamp\x18\x02 \x01(\x07\x12\x13\n\x0b\x64\x61y_current\x18\x03 \x01(\x05\x12\x36\n\x04\x64\x61ys\x18\x04 \x03(\x0b\x32(.CMsgClientUGSGetGlobalStatsResponse.Day\x1az\n\x03\x44\x61y\x12\x0e\n\x06\x64\x61y_id\x18\x01 \x01(\r\x12<\n\x05stats\x18\x02 \x03(\x0b\x32-.CMsgClientUGSGetGlobalStatsResponse.Day.Stat\x1a%\n\x04Stat\x12\x0f\n\x07stat_id\x18\x01 \x01(\x05\x12\x0c\n\x04\x64\x61ta\x18\x02 \x01(\x03\"2\n\x19\x43MsgClientRedeemGuestPass\x12\x15\n\rguest_pass_id\x18\x01 \x01(\x06\"c\n!CMsgClientRedeemGuestPassResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\r:\x01\x32\x12\x12\n\npackage_id\x18\x02 \x01(\r\x12\x16\n\x0emust_own_appid\x18\x03 \x01(\r\"8\n\x1f\x43MsgClientGetClanActivityCounts\x12\x15\n\rsteamid_clans\x18\x01 \x03(\x04\"=\n\'CMsgClientGetClanActivityCountsResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\r:\x01\x32\"y\n\x19\x43MsgClientOGSReportString\x12\x13\n\x0b\x61\x63\x63umulated\x18\x01 \x01(\x08\x12\x11\n\tsessionid\x18\x02 \x01(\x04\x12\x10\n\x08severity\x18\x03 \x01(\x05\x12\x11\n\tformatter\x18\x04 \x01(\t\x12\x0f\n\x07varargs\x18\x05 \x01(\x0c\"P\n\x16\x43MsgClientOGSReportBug\x12\x11\n\tsessionid\x18\x01 \x01(\x04\x12\x0f\n\x07\x62ugtext\x18\x02 \x01(\t\x12\x12\n\nscreenshot\x18\x03 \x01(\x0c\"\x14\n\x12\x43MsgClientSentLogs\"l\n\x0c\x43MsgGCClient\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x0f\n\x07msgtype\x18\x02 \x01(\r\x12\x0f\n\x07payload\x18\x03 \x01(\x0c\x12\x0f\n\x07steamid\x18\x04 \x01(\x06\x12\x0e\n\x06gcname\x18\x05 \x01(\t\x12\n\n\x02ip\x18\x06 \x01(\r\".\n\x1c\x43MsgClientRequestFreeLicense\x12\x0e\n\x06\x61ppids\x18\x02 \x03(\r\"n\n$CMsgClientRequestFreeLicenseResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\r:\x01\x32\x12\x1a\n\x12granted_packageids\x18\x02 \x03(\r\x12\x16\n\x0egranted_appids\x18\x03 \x03(\r\"\xd3\x01\n#CMsgDRMDownloadRequestWithCrashData\x12\x16\n\x0e\x64ownload_flags\x18\x01 \x01(\r\x12\x1c\n\x14\x64ownload_types_known\x18\x02 \x01(\r\x12\x10\n\x08guid_drm\x18\x03 \x01(\x0c\x12\x12\n\nguid_split\x18\x04 \x01(\x0c\x12\x12\n\nguid_merge\x18\x05 \x01(\x0c\x12\x13\n\x0bmodule_name\x18\x06 \x01(\t\x12\x13\n\x0bmodule_path\x18\x07 \x01(\t\x12\x12\n\ncrash_data\x18\x08 \x01(\x0c\"\xdb\x01\n\x17\x43MsgDRMDownloadResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\r:\x01\x32\x12\x0e\n\x06\x61pp_id\x18\x02 \x01(\r\x12\x1a\n\x12\x62lob_download_type\x18\x03 \x01(\r\x12\x12\n\nmerge_guid\x18\x04 \x01(\x0c\x12\x1c\n\x14\x64ownload_file_dfs_ip\x18\x05 \x01(\r\x12\x1e\n\x16\x64ownload_file_dfs_port\x18\x06 \x01(\r\x12\x19\n\x11\x64ownload_file_url\x18\x07 \x01(\t\x12\x13\n\x0bmodule_path\x18\x08 \x01(\t\"\xd7\x01\n\x12\x43MsgDRMFinalResult\x12\x12\n\x07\x65Result\x18\x01 \x01(\r:\x01\x32\x12\x0e\n\x06\x61pp_id\x18\x02 \x01(\r\x12\x1a\n\x12\x62lob_download_type\x18\x03 \x01(\r\x12\x14\n\x0c\x65rror_detail\x18\x04 \x01(\r\x12\x12\n\nmerge_guid\x18\x05 \x01(\x0c\x12\x1c\n\x14\x64ownload_file_dfs_ip\x18\x06 \x01(\r\x12\x1e\n\x16\x64ownload_file_dfs_port\x18\x07 \x01(\r\x12\x19\n\x11\x64ownload_file_url\x18\x08 \x01(\t\"3\n\x1e\x43MsgClientDPCheckSpecialSurvey\x12\x11\n\tsurvey_id\x18\x01 \x01(\r\"\x96\x01\n&CMsgClientDPCheckSpecialSurveyResponse\x12\x12\n\x07\x65Result\x18\x01 \x01(\r:\x01\x32\x12\r\n\x05state\x18\x02 \x01(\r\x12\x0c\n\x04name\x18\x03 \x01(\t\x12\x12\n\ncustom_url\x18\x04 \x01(\t\x12\x18\n\x10include_software\x18\x05 \x01(\x08\x12\r\n\x05token\x18\x06 \x01(\x0c\"H\n%CMsgClientDPSendSpecialSurveyResponse\x12\x11\n\tsurvey_id\x18\x01 \x01(\r\x12\x0c\n\x04\x64\x61ta\x18\x02 \x01(\x0c\"O\n*CMsgClientDPSendSpecialSurveyResponseReply\x12\x12\n\x07\x65Result\x18\x01 \x01(\r:\x01\x32\x12\r\n\x05token\x18\x02 \x01(\x0c\"W\n\'CMsgClientRequestForgottenPasswordEmail\x12\x14\n\x0c\x61\x63\x63ount_name\x18\x01 \x01(\t\x12\x16\n\x0epassword_tried\x18\x02 \x01(\t\"_\n/CMsgClientRequestForgottenPasswordEmailResponse\x12\x0f\n\x07\x65Result\x18\x01 \x01(\r\x12\x1b\n\x13use_secret_question\x18\x02 \x01(\x08\"\xf6\x01\n\x1b\x43MsgClientItemAnnouncements\x12\x17\n\x0f\x63ount_new_items\x18\x01 \x01(\r\x12=\n\x0cunseen_items\x18\x02 \x03(\x0b\x32\'.CMsgClientItemAnnouncements.UnseenItem\x1a\x7f\n\nUnseenItem\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x12\n\ncontext_id\x18\x02 \x01(\x04\x12\x10\n\x08\x61sset_id\x18\x03 \x01(\x04\x12\x0e\n\x06\x61mount\x18\x04 \x01(\x04\x12\x16\n\x0ertime32_gained\x18\x05 \x01(\x07\x12\x14\n\x0csource_appid\x18\x06 \x01(\r\"$\n\"CMsgClientRequestItemAnnouncements\"\x9e\x01\n\x1b\x43MsgClientUserNotifications\x12@\n\rnotifications\x18\x01 \x03(\x0b\x32).CMsgClientUserNotifications.Notification\x1a=\n\x0cNotification\x12\x1e\n\x16user_notification_type\x18\x01 \x01(\r\x12\r\n\x05\x63ount\x18\x02 \x01(\r\"\x88\x01\n\x1e\x43MsgClientCommentNotifications\x12\x1a\n\x12\x63ount_new_comments\x18\x01 \x01(\r\x12 \n\x18\x63ount_new_comments_owner\x18\x02 \x01(\r\x12(\n count_new_comments_subscriptions\x18\x03 \x01(\r\"\'\n%CMsgClientRequestCommentNotifications\"g\n$CMsgClientOfflineMessageNotification\x12\x18\n\x10offline_messages\x18\x01 \x01(\r\x12%\n\x1d\x66riends_with_offline_messages\x18\x02 \x03(\r\"&\n$CMsgClientRequestOfflineMessageCount\"8\n%CMsgClientChatGetFriendMessageHistory\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\"\xf9\x01\n-CMsgClientChatGetFriendMessageHistoryResponse\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12\x0f\n\x07success\x18\x02 \x01(\r\x12N\n\x08messages\x18\x03 \x03(\x0b\x32<.CMsgClientChatGetFriendMessageHistoryResponse.FriendMessage\x1aV\n\rFriendMessage\x12\x11\n\taccountid\x18\x01 \x01(\r\x12\x11\n\ttimestamp\x18\x02 \x01(\r\x12\x0f\n\x07message\x18\x03 \x01(\t\x12\x0e\n\x06unread\x18\x04 \x01(\x08\"9\n7CMsgClientChatGetFriendMessageHistoryForOfflineMessages\"7\n!CMsgClientFSGetFriendsSteamLevels\x12\x12\n\naccountids\x18\x01 \x03(\r\"\x9b\x01\n)CMsgClientFSGetFriendsSteamLevelsResponse\x12\x42\n\x07\x66riends\x18\x01 \x03(\x0b\x32\x31.CMsgClientFSGetFriendsSteamLevelsResponse.Friend\x1a*\n\x06\x46riend\x12\x11\n\taccountid\x18\x01 \x01(\r\x12\r\n\x05level\x18\x02 \x01(\r\"\xeb\x01\n\x17\x43MsgClientEmailAddrInfo\x12\x15\n\remail_address\x18\x01 \x01(\t\x12\x1a\n\x12\x65mail_is_validated\x18\x02 \x01(\x08\x12 \n\x18\x65mail_validation_changed\x18\x03 \x01(\x08\x12\'\n\x1f\x63redential_change_requires_code\x18\x04 \x01(\x08\x12\x31\n)password_or_secretqa_change_requires_code\x18\x05 \x01(\x08\x12\x1f\n\x17remind_user_about_email\x18\x06 \x01(\x08\"\x8b\x01\n\x16\x43MsgCREItemVoteSummary\x12\x43\n\x12published_file_ids\x18\x01 \x03(\x0b\x32\'.CMsgCREItemVoteSummary.PublishedFileId\x1a,\n\x0fPublishedFileId\x12\x19\n\x11published_file_id\x18\x01 \x01(\x06\"\xfa\x01\n\x1e\x43MsgCREItemVoteSummaryResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\x12L\n\x13item_vote_summaries\x18\x02 \x03(\x0b\x32/.CMsgCREItemVoteSummaryResponse.ItemVoteSummary\x1av\n\x0fItemVoteSummary\x12\x19\n\x11published_file_id\x18\x01 \x01(\x06\x12\x11\n\tvotes_for\x18\x02 \x01(\x05\x12\x15\n\rvotes_against\x18\x03 \x01(\x05\x12\x0f\n\x07reports\x18\x04 \x01(\x05\x12\r\n\x05score\x18\x05 \x01(\x02\"P\n\"CMsgCREUpdateUserPublishedItemVote\x12\x19\n\x11published_file_id\x18\x01 \x01(\x06\x12\x0f\n\x07vote_up\x18\x02 \x01(\x08\"@\n*CMsgCREUpdateUserPublishedItemVoteResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\"\xab\x01\n&CMsgCREGetUserPublishedItemVoteDetails\x12S\n\x12published_file_ids\x18\x01 \x03(\x0b\x32\x37.CMsgCREGetUserPublishedItemVoteDetails.PublishedFileId\x1a,\n\x0fPublishedFileId\x12\x19\n\x11published_file_id\x18\x01 \x01(\x06\"\xea\x01\n.CMsgCREGetUserPublishedItemVoteDetailsResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\x12\x62\n\x16user_item_vote_details\x18\x02 \x03(\x0b\x32\x42.CMsgCREGetUserPublishedItemVoteDetailsResponse.UserItemVoteDetail\x1a@\n\x12UserItemVoteDetail\x12\x19\n\x11published_file_id\x18\x01 \x01(\x06\x12\x0f\n\x04vote\x18\x02 \x01(\x05:\x01\x30\"*\n\x16\x43MsgFSGetFollowerCount\x12\x10\n\x08steam_id\x18\x01 \x01(\x06\"F\n\x1e\x43MsgFSGetFollowerCountResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\x12\x10\n\x05\x63ount\x18\x02 \x01(\x05:\x01\x30\"(\n\x14\x43MsgFSGetIsFollowing\x12\x10\n\x08steam_id\x18\x01 \x01(\x06\"O\n\x1c\x43MsgFSGetIsFollowingResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\x12\x1b\n\x0cis_following\x18\x02 \x01(\x08:\x05\x66\x61lse\"3\n\x1c\x43MsgFSEnumerateFollowingList\x12\x13\n\x0bstart_index\x18\x01 \x01(\r\"d\n$CMsgFSEnumerateFollowingListResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\x12\x15\n\rtotal_results\x18\x02 \x01(\x05\x12\x11\n\tsteam_ids\x18\x03 \x03(\x06\"0\n\x1f\x43MsgDPGetNumberOfCurrentPlayers\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\"S\n\'CMsgDPGetNumberOfCurrentPlayersResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\x12\x14\n\x0cplayer_count\x18\x02 \x01(\x05\"a\n#CMsgClientFriendUserStatusPublished\x12\x16\n\x0e\x66riend_steamid\x18\x01 \x01(\x06\x12\r\n\x05\x61ppid\x18\x02 \x01(\r\x12\x13\n\x0bstatus_text\x18\x03 \x01(\t\"h\n\x1d\x43MsgClientServiceMethodLegacy\x12\x13\n\x0bmethod_name\x18\x01 \x01(\t\x12\x19\n\x11serialized_method\x18\x02 \x01(\x0c\x12\x17\n\x0fis_notification\x18\x03 \x01(\x08\"`\n%CMsgClientServiceMethodLegacyResponse\x12\x13\n\x0bmethod_name\x18\x01 \x01(\t\x12\"\n\x1aserialized_method_response\x18\x02 \x01(\x0c\"5\n\x10\x43MsgClientUIMode\x12\x0e\n\x06uimode\x18\x01 \x01(\r\x12\x11\n\tchat_mode\x18\x02 \x01(\r\"<\n&CMsgClientVanityURLChangedNotification\x12\x12\n\nvanity_url\x18\x01 \x01(\t\"y\n%CMsgClientAuthorizeLocalDeviceRequest\x12\x1a\n\x12\x64\x65vice_description\x18\x01 \x01(\t\x12\x18\n\x10owner_account_id\x18\x02 \x01(\r\x12\x1a\n\x12local_device_token\x18\x03 \x01(\x04\"k\n\x1e\x43MsgClientAuthorizeLocalDevice\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\x12\x18\n\x10owner_account_id\x18\x02 \x01(\r\x12\x1b\n\x13\x61uthed_device_token\x18\x03 \x01(\x04\"v\n*CMsgClientAuthorizeLocalDeviceNotification\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\x12\x18\n\x10owner_account_id\x18\x02 \x01(\r\x12\x1a\n\x12local_device_token\x18\x03 \x01(\x04\"n\n\"CMsgClientDeauthorizeDeviceRequest\x12\"\n\x1a\x64\x65\x61uthorization_account_id\x18\x01 \x01(\r\x12$\n\x1c\x64\x65\x61uthorization_device_token\x18\x02 \x01(\x04\"U\n\x1b\x43MsgClientDeauthorizeDevice\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\x12\"\n\x1a\x64\x65\x61uthorization_account_id\x18\x02 \x01(\r\"\xd1\x01\n&CMsgClientUseLocalDeviceAuthorizations\x12 \n\x18\x61uthorization_account_id\x18\x01 \x03(\r\x12J\n\rdevice_tokens\x18\x02 \x03(\x0b\x32\x33.CMsgClientUseLocalDeviceAuthorizations.DeviceToken\x1a\x39\n\x0b\x44\x65viceToken\x12\x18\n\x10owner_account_id\x18\x01 \x01(\r\x12\x10\n\x08token_id\x18\x02 \x01(\x04\" \n\x1e\x43MsgClientGetAuthorizedDevices\"\xad\x02\n&CMsgClientGetAuthorizedDevicesResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\x12S\n\x11\x61uthorized_device\x18\x02 \x03(\x0b\x32\x38.CMsgClientGetAuthorizedDevicesResponse.AuthorizedDevice\x1a\x99\x01\n\x10\x41uthorizedDevice\x12\x19\n\x11\x61uth_device_token\x18\x01 \x01(\x04\x12\x13\n\x0b\x64\x65vice_name\x18\x02 \x01(\t\x12\x18\n\x10last_access_time\x18\x03 \x01(\r\x12\x13\n\x0b\x62orrower_id\x18\x04 \x01(\r\x12\x12\n\nis_pending\x18\x05 \x01(\x08\x12\x12\n\napp_played\x18\x06 \x01(\r\"\xc2\x01\n!CMsgClientSharedLibraryLockStatus\x12H\n\x0elocked_library\x18\x01 \x03(\x0b\x32\x30.CMsgClientSharedLibraryLockStatus.LockedLibrary\x12\x1d\n\x15own_library_locked_by\x18\x02 \x01(\r\x1a\x34\n\rLockedLibrary\x12\x10\n\x08owner_id\x18\x01 \x01(\r\x12\x11\n\tlocked_by\x18\x02 \x01(\r\"\xa7\x01\n\"CMsgClientSharedLibraryStopPlaying\x12\x14\n\x0cseconds_left\x18\x01 \x01(\x05\x12>\n\tstop_apps\x18\x02 \x03(\x0b\x32+.CMsgClientSharedLibraryStopPlaying.StopApp\x1a+\n\x07StopApp\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x10\n\x08owner_id\x18\x02 \x01(\r\"\x81\x02\n\x15\x43MsgClientServiceCall\x12\x15\n\rsysid_routing\x18\x01 \x01(\x0c\x12\x13\n\x0b\x63\x61ll_handle\x18\x02 \x01(\r\x12\x12\n\nmodule_crc\x18\x03 \x01(\r\x12\x13\n\x0bmodule_hash\x18\x04 \x01(\x0c\x12\x13\n\x0b\x66unction_id\x18\x05 \x01(\r\x12\x16\n\x0e\x63ub_output_max\x18\x06 \x01(\r\x12\r\n\x05\x66lags\x18\x07 \x01(\r\x12\x15\n\rcallparameter\x18\x08 \x01(\x0c\x12\x11\n\tping_only\x18\t \x01(\x08\x12\x1d\n\x15max_outstanding_calls\x18\n \x01(\r\x12\x0e\n\x06\x61pp_id\x18\x0b \x01(\r\"Z\n\x17\x43MsgClientServiceModule\x12\x12\n\nmodule_crc\x18\x01 \x01(\r\x12\x13\n\x0bmodule_hash\x18\x02 \x01(\x0c\x12\x16\n\x0emodule_content\x18\x03 \x01(\x0c\"\xb8\x04\n\x1d\x43MsgClientServiceCallResponse\x12\x15\n\rsysid_routing\x18\x01 \x01(\x0c\x12\x13\n\x0b\x63\x61ll_handle\x18\x02 \x01(\r\x12\x12\n\nmodule_crc\x18\x03 \x01(\r\x12\x13\n\x0bmodule_hash\x18\x04 \x01(\x0c\x12\x13\n\x0b\x65\x63\x61llresult\x18\x05 \x01(\r\x12\x16\n\x0eresult_content\x18\x06 \x01(\x0c\x12\x17\n\x0fos_version_info\x18\x07 \x01(\x0c\x12\x13\n\x0bsystem_info\x18\x08 \x01(\x0c\x12\x14\n\x0cload_address\x18\t \x01(\x06\x12\x18\n\x10\x65xception_record\x18\n \x01(\x0c\x12 \n\x18portable_os_version_info\x18\x0b \x01(\x0c\x12\x1c\n\x14portable_system_info\x18\x0c \x01(\x0c\x12\x15\n\rwas_converted\x18\r \x01(\x08\x12\x17\n\x0finternal_result\x18\x0e \x01(\r\x12\x15\n\rcurrent_count\x18\x0f \x01(\r\x12\x18\n\x10last_call_handle\x18\x10 \x01(\r\x12\x1c\n\x14last_call_module_crc\x18\x11 \x01(\r\x12\x1f\n\x17last_call_sysid_routing\x18\x12 \x01(\x0c\x12\x18\n\x10last_ecallresult\x18\x13 \x01(\r\x12\x1c\n\x14last_callissue_delta\x18\x14 \x01(\r\x12\x1f\n\x17last_callcomplete_delta\x18\x15 \x01(\r\"\x17\n\x15\x43MsgAMUnlockStreaming\"K\n\x1d\x43MsgAMUnlockStreamingResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\x12\x16\n\x0e\x65ncryption_key\x18\x02 \x01(\x0c\"\x12\n\x10\x43MsgAMUnlockHEVC\".\n\x18\x43MsgAMUnlockHEVCResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\"M\n\x1d\x43MsgClientPlayingSessionState\x12\x17\n\x0fplaying_blocked\x18\x02 \x01(\x08\x12\x13\n\x0bplaying_app\x18\x03 \x01(\r\"6\n\x1c\x43MsgClientKickPlayingSession\x12\x16\n\x0eonly_stop_game\x18\x01 \x01(\x08\"v\n\x1f\x43MsgClientVoiceCallPreAuthorize\x12\x16\n\x0e\x63\x61ller_steamid\x18\x01 \x01(\x06\x12\x18\n\x10receiver_steamid\x18\x02 \x01(\x06\x12\x11\n\tcaller_id\x18\x03 \x01(\x05\x12\x0e\n\x06hangup\x18\x04 \x01(\x08\"\x82\x01\n\'CMsgClientVoiceCallPreAuthorizeResponse\x12\x16\n\x0e\x63\x61ller_steamid\x18\x01 \x01(\x06\x12\x18\n\x10receiver_steamid\x18\x02 \x01(\x06\x12\x12\n\x07\x65result\x18\x03 \x01(\x05:\x01\x32\x12\x11\n\tcaller_id\x18\x04 \x01(\x05\"B\n\x1c\x43MsgBadgeCraftedNotification\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x13\n\x0b\x62\x61\x64ge_level\x18\x02 \x01(\rB\x05H\x01\x90\x01\x00'
   ,
   dependencies=[steammessages__base__pb2.DESCRIPTOR,])
 
@@ -34,6 +33,7 @@ _CMSGCLIENTUPDATEUSERGAMEINFO = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid_idgs', full_name='CMsgClientUpdateUserGameInfo.steamid_idgs', index=0,
@@ -41,35 +41,35 @@ _CMSGCLIENTUPDATEUSERGAMEINFO = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='gameid', full_name='CMsgClientUpdateUserGameInfo.gameid', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='game_ip', full_name='CMsgClientUpdateUserGameInfo.game_ip', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='game_port', full_name='CMsgClientUpdateUserGameInfo.game_port', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='token', full_name='CMsgClientUpdateUserGameInfo.token', index=4,
       number=5, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -93,21 +93,22 @@ _CMSGCLIENTRICHPRESENCEUPLOAD = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='rich_presence_kv', full_name='CMsgClientRichPresenceUpload.rich_presence_kv', index=0,
       number=1, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steamid_broadcast', full_name='CMsgClientRichPresenceUpload.steamid_broadcast', index=1,
       number=2, type=6, cpp_type=4, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -131,6 +132,7 @@ _CMSGCLIENTRICHPRESENCEREQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid_request', full_name='CMsgClientRichPresenceRequest.steamid_request', index=0,
@@ -138,7 +140,7 @@ _CMSGCLIENTRICHPRESENCEREQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -162,6 +164,7 @@ _CMSGCLIENTRICHPRESENCEINFO_RICHPRESENCE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid_user', full_name='CMsgClientRichPresenceInfo.RichPresence.steamid_user', index=0,
@@ -169,14 +172,14 @@ _CMSGCLIENTRICHPRESENCEINFO_RICHPRESENCE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='rich_presence_kv', full_name='CMsgClientRichPresenceInfo.RichPresence.rich_presence_kv', index=1,
       number=2, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -199,6 +202,7 @@ _CMSGCLIENTRICHPRESENCEINFO = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='rich_presence', full_name='CMsgClientRichPresenceInfo.rich_presence', index=0,
@@ -206,7 +210,7 @@ _CMSGCLIENTRICHPRESENCEINFO = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -230,6 +234,7 @@ _CMSGCLIENTCHECKFILESIGNATURE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CMsgClientCheckFileSignature.app_id', index=0,
@@ -237,7 +242,7 @@ _CMSGCLIENTCHECKFILESIGNATURE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -261,6 +266,7 @@ _CMSGCLIENTCHECKFILESIGNATURERESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CMsgClientCheckFileSignatureResponse.app_id', index=0,
@@ -268,70 +274,70 @@ _CMSGCLIENTCHECKFILESIGNATURERESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='pid', full_name='CMsgClientCheckFileSignatureResponse.pid', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='eresult', full_name='CMsgClientCheckFileSignatureResponse.eresult', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='filename', full_name='CMsgClientCheckFileSignatureResponse.filename', index=3,
       number=4, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='esignatureresult', full_name='CMsgClientCheckFileSignatureResponse.esignatureresult', index=4,
       number=5, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='sha_file', full_name='CMsgClientCheckFileSignatureResponse.sha_file', index=5,
       number=6, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='signatureheader', full_name='CMsgClientCheckFileSignatureResponse.signatureheader', index=6,
       number=7, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='filesize', full_name='CMsgClientCheckFileSignatureResponse.filesize', index=7,
       number=8, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='getlasterror', full_name='CMsgClientCheckFileSignatureResponse.getlasterror', index=8,
       number=9, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='evalvesignaturecheckdetail', full_name='CMsgClientCheckFileSignatureResponse.evalvesignaturecheckdetail', index=9,
       number=10, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -355,28 +361,29 @@ _CMSGCLIENTREADMACHINEAUTH = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='filename', full_name='CMsgClientReadMachineAuth.filename', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='offset', full_name='CMsgClientReadMachineAuth.offset', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='cubtoread', full_name='CMsgClientReadMachineAuth.cubtoread', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -400,70 +407,71 @@ _CMSGCLIENTREADMACHINEAUTHRESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='filename', full_name='CMsgClientReadMachineAuthResponse.filename', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='eresult', full_name='CMsgClientReadMachineAuthResponse.eresult', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='filesize', full_name='CMsgClientReadMachineAuthResponse.filesize', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='sha_file', full_name='CMsgClientReadMachineAuthResponse.sha_file', index=3,
       number=4, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='getlasterror', full_name='CMsgClientReadMachineAuthResponse.getlasterror', index=4,
       number=5, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='offset', full_name='CMsgClientReadMachineAuthResponse.offset', index=5,
       number=6, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='cubread', full_name='CMsgClientReadMachineAuthResponse.cubread', index=6,
       number=7, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='bytes_read', full_name='CMsgClientReadMachineAuthResponse.bytes_read', index=7,
       number=8, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='filename_sentry', full_name='CMsgClientReadMachineAuthResponse.filename_sentry', index=8,
       number=9, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -487,63 +495,64 @@ _CMSGCLIENTUPDATEMACHINEAUTH = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='filename', full_name='CMsgClientUpdateMachineAuth.filename', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='offset', full_name='CMsgClientUpdateMachineAuth.offset', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='cubtowrite', full_name='CMsgClientUpdateMachineAuth.cubtowrite', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='bytes', full_name='CMsgClientUpdateMachineAuth.bytes', index=3,
       number=4, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='otp_type', full_name='CMsgClientUpdateMachineAuth.otp_type', index=4,
       number=5, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='otp_identifier', full_name='CMsgClientUpdateMachineAuth.otp_identifier', index=5,
       number=6, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='otp_sharedsecret', full_name='CMsgClientUpdateMachineAuth.otp_sharedsecret', index=6,
       number=7, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='otp_timedrift', full_name='CMsgClientUpdateMachineAuth.otp_timedrift', index=7,
       number=8, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -567,77 +576,78 @@ _CMSGCLIENTUPDATEMACHINEAUTHRESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='filename', full_name='CMsgClientUpdateMachineAuthResponse.filename', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='eresult', full_name='CMsgClientUpdateMachineAuthResponse.eresult', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='filesize', full_name='CMsgClientUpdateMachineAuthResponse.filesize', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='sha_file', full_name='CMsgClientUpdateMachineAuthResponse.sha_file', index=3,
       number=4, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='getlasterror', full_name='CMsgClientUpdateMachineAuthResponse.getlasterror', index=4,
       number=5, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='offset', full_name='CMsgClientUpdateMachineAuthResponse.offset', index=5,
       number=6, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='cubwrote', full_name='CMsgClientUpdateMachineAuthResponse.cubwrote', index=6,
       number=7, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='otp_type', full_name='CMsgClientUpdateMachineAuthResponse.otp_type', index=7,
       number=8, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='otp_value', full_name='CMsgClientUpdateMachineAuthResponse.otp_value', index=8,
       number=9, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='otp_identifier', full_name='CMsgClientUpdateMachineAuthResponse.otp_identifier', index=9,
       number=10, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -661,84 +671,85 @@ _CMSGCLIENTREQUESTMACHINEAUTH = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='filename', full_name='CMsgClientRequestMachineAuth.filename', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='eresult_sentryfile', full_name='CMsgClientRequestMachineAuth.eresult_sentryfile', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='filesize', full_name='CMsgClientRequestMachineAuth.filesize', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='sha_sentryfile', full_name='CMsgClientRequestMachineAuth.sha_sentryfile', index=3,
       number=4, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='lock_account_action', full_name='CMsgClientRequestMachineAuth.lock_account_action', index=4,
       number=6, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='otp_type', full_name='CMsgClientRequestMachineAuth.otp_type', index=5,
       number=7, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='otp_identifier', full_name='CMsgClientRequestMachineAuth.otp_identifier', index=6,
       number=8, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='otp_sharedsecret', full_name='CMsgClientRequestMachineAuth.otp_sharedsecret', index=7,
       number=9, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='otp_value', full_name='CMsgClientRequestMachineAuth.otp_value', index=8,
       number=10, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='machine_name', full_name='CMsgClientRequestMachineAuth.machine_name', index=9,
       number=11, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='machine_name_userchosen', full_name='CMsgClientRequestMachineAuth.machine_name_userchosen', index=10,
       number=12, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -762,6 +773,7 @@ _CMSGCLIENTREQUESTMACHINEAUTHRESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='eresult', full_name='CMsgClientRequestMachineAuthResponse.eresult', index=0,
@@ -769,7 +781,7 @@ _CMSGCLIENTREQUESTMACHINEAUTHRESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -793,14 +805,15 @@ _CMSGCLIENTREGISTERKEY = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='key', full_name='CMsgClientRegisterKey.key', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -824,6 +837,7 @@ _CMSGCLIENTPURCHASERESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='eresult', full_name='CMsgClientPurchaseResponse.eresult', index=0,
@@ -831,21 +845,21 @@ _CMSGCLIENTPURCHASERESPONSE = _descriptor.Descriptor(
       has_default_value=True, default_value=2,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='purchase_result_details', full_name='CMsgClientPurchaseResponse.purchase_result_details', index=1,
       number=2, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='purchase_receipt_info', full_name='CMsgClientPurchaseResponse.purchase_receipt_info', index=2,
       number=3, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -869,49 +883,50 @@ _CMSGCLIENTACTIVATEOEMLICENSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='bios_manufacturer', full_name='CMsgClientActivateOEMLicense.bios_manufacturer', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='bios_serialnumber', full_name='CMsgClientActivateOEMLicense.bios_serialnumber', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='license_file', full_name='CMsgClientActivateOEMLicense.license_file', index=2,
       number=3, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='mainboard_manufacturer', full_name='CMsgClientActivateOEMLicense.mainboard_manufacturer', index=3,
       number=4, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='mainboard_product', full_name='CMsgClientActivateOEMLicense.mainboard_product', index=4,
       number=5, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='mainboard_serialnumber', full_name='CMsgClientActivateOEMLicense.mainboard_serialnumber', index=5,
       number=6, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -935,14 +950,15 @@ _CMSGCLIENTREGISTEROEMMACHINE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='oem_register_file', full_name='CMsgClientRegisterOEMMachine.oem_register_file', index=0,
       number=1, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -966,6 +982,7 @@ _CMSGCLIENTREGISTEROEMMACHINERESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='eresult', full_name='CMsgClientRegisterOEMMachineResponse.eresult', index=0,
@@ -973,7 +990,7 @@ _CMSGCLIENTREGISTEROEMMACHINERESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -997,6 +1014,7 @@ _CMSGCLIENTPURCHASEWITHMACHINEID = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='package_id', full_name='CMsgClientPurchaseWithMachineID.package_id', index=0,
@@ -1004,14 +1022,14 @@ _CMSGCLIENTPURCHASEWITHMACHINEID = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='machine_info', full_name='CMsgClientPurchaseWithMachineID.machine_info', index=1,
       number=2, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1035,6 +1053,7 @@ _CMSGTRADING_INITIATETRADEREQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='trade_request_id', full_name='CMsgTrading_InitiateTradeRequest.trade_request_id', index=0,
@@ -1042,21 +1061,21 @@ _CMSGTRADING_INITIATETRADEREQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='other_steamid', full_name='CMsgTrading_InitiateTradeRequest.other_steamid', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='other_name', full_name='CMsgTrading_InitiateTradeRequest.other_name', index=2,
       number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1080,6 +1099,7 @@ _CMSGTRADING_INITIATETRADERESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='response', full_name='CMsgTrading_InitiateTradeResponse.response', index=0,
@@ -1087,63 +1107,63 @@ _CMSGTRADING_INITIATETRADERESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='trade_request_id', full_name='CMsgTrading_InitiateTradeResponse.trade_request_id', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='other_steamid', full_name='CMsgTrading_InitiateTradeResponse.other_steamid', index=2,
       number=3, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steamguard_required_days', full_name='CMsgTrading_InitiateTradeResponse.steamguard_required_days', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='new_device_cooldown_days', full_name='CMsgTrading_InitiateTradeResponse.new_device_cooldown_days', index=4,
       number=5, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='default_password_reset_probation_days', full_name='CMsgTrading_InitiateTradeResponse.default_password_reset_probation_days', index=5,
       number=6, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='password_reset_probation_days', full_name='CMsgTrading_InitiateTradeResponse.password_reset_probation_days', index=6,
       number=7, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='default_email_change_probation_days', full_name='CMsgTrading_InitiateTradeResponse.default_email_change_probation_days', index=7,
       number=8, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='email_change_probation_days', full_name='CMsgTrading_InitiateTradeResponse.email_change_probation_days', index=8,
       number=9, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1167,6 +1187,7 @@ _CMSGTRADING_CANCELTRADEREQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='other_steamid', full_name='CMsgTrading_CancelTradeRequest.other_steamid', index=0,
@@ -1174,7 +1195,7 @@ _CMSGTRADING_CANCELTRADEREQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1198,6 +1219,7 @@ _CMSGTRADING_STARTSESSION = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='other_steamid', full_name='CMsgTrading_StartSession.other_steamid', index=0,
@@ -1205,7 +1227,7 @@ _CMSGTRADING_STARTSESSION = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1229,6 +1251,7 @@ _CMSGCLIENTGETCDNAUTHTOKEN = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='depot_id', full_name='CMsgClientGetCDNAuthToken.depot_id', index=0,
@@ -1236,21 +1259,21 @@ _CMSGCLIENTGETCDNAUTHTOKEN = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='host_name', full_name='CMsgClientGetCDNAuthToken.host_name', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CMsgClientGetCDNAuthToken.app_id', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1274,6 +1297,7 @@ _CMSGCLIENTGETDEPOTDECRYPTIONKEY = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='depot_id', full_name='CMsgClientGetDepotDecryptionKey.depot_id', index=0,
@@ -1281,14 +1305,14 @@ _CMSGCLIENTGETDEPOTDECRYPTIONKEY = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CMsgClientGetDepotDecryptionKey.app_id', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1312,6 +1336,7 @@ _CMSGCLIENTGETDEPOTDECRYPTIONKEYRESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='eresult', full_name='CMsgClientGetDepotDecryptionKeyResponse.eresult', index=0,
@@ -1319,21 +1344,21 @@ _CMSGCLIENTGETDEPOTDECRYPTIONKEYRESPONSE = _descriptor.Descriptor(
       has_default_value=True, default_value=2,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='depot_id', full_name='CMsgClientGetDepotDecryptionKeyResponse.depot_id', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='depot_encryption_key', full_name='CMsgClientGetDepotDecryptionKeyResponse.depot_encryption_key', index=2,
       number=3, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1357,6 +1382,7 @@ _CMSGCLIENTCHECKAPPBETAPASSWORD = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CMsgClientCheckAppBetaPassword.app_id', index=0,
@@ -1364,21 +1390,21 @@ _CMSGCLIENTCHECKAPPBETAPASSWORD = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='betapassword', full_name='CMsgClientCheckAppBetaPassword.betapassword', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='language', full_name='CMsgClientCheckAppBetaPassword.language', index=2,
       number=3, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1402,28 +1428,29 @@ _CMSGCLIENTCHECKAPPBETAPASSWORDRESPONSE_BETAPASSWORD = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='betaname', full_name='CMsgClientCheckAppBetaPasswordResponse.BetaPassword.betaname', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='betapassword', full_name='CMsgClientCheckAppBetaPasswordResponse.BetaPassword.betapassword', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='betadescription', full_name='CMsgClientCheckAppBetaPasswordResponse.BetaPassword.betadescription', index=2,
       number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1446,6 +1473,7 @@ _CMSGCLIENTCHECKAPPBETAPASSWORDRESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='eresult', full_name='CMsgClientCheckAppBetaPasswordResponse.eresult', index=0,
@@ -1453,14 +1481,14 @@ _CMSGCLIENTCHECKAPPBETAPASSWORDRESPONSE = _descriptor.Descriptor(
       has_default_value=True, default_value=2,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='betapasswords', full_name='CMsgClientCheckAppBetaPasswordResponse.betapasswords', index=1,
       number=4, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1484,6 +1512,7 @@ _CMSGCLIENTUPDATEAPPJOBREPORT = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CMsgClientUpdateAppJobReport.app_id', index=0,
@@ -1491,154 +1520,154 @@ _CMSGCLIENTUPDATEAPPJOBREPORT = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='depot_ids', full_name='CMsgClientUpdateAppJobReport.depot_ids', index=1,
       number=2, type=13, cpp_type=3, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='app_state', full_name='CMsgClientUpdateAppJobReport.app_state', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='job_app_error', full_name='CMsgClientUpdateAppJobReport.job_app_error', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='error_details', full_name='CMsgClientUpdateAppJobReport.error_details', index=4,
       number=5, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='job_duration', full_name='CMsgClientUpdateAppJobReport.job_duration', index=5,
       number=6, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='files_validation_failed', full_name='CMsgClientUpdateAppJobReport.files_validation_failed', index=6,
       number=7, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='job_bytes_downloaded', full_name='CMsgClientUpdateAppJobReport.job_bytes_downloaded', index=7,
       number=8, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='job_bytes_staged', full_name='CMsgClientUpdateAppJobReport.job_bytes_staged', index=8,
       number=9, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='bytes_comitted', full_name='CMsgClientUpdateAppJobReport.bytes_comitted', index=9,
       number=10, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='start_app_state', full_name='CMsgClientUpdateAppJobReport.start_app_state', index=10,
       number=11, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='stats_machine_id', full_name='CMsgClientUpdateAppJobReport.stats_machine_id', index=11,
       number=12, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='branch_name', full_name='CMsgClientUpdateAppJobReport.branch_name', index=12,
       number=13, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='total_bytes_downloaded', full_name='CMsgClientUpdateAppJobReport.total_bytes_downloaded', index=13,
       number=14, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='total_bytes_staged', full_name='CMsgClientUpdateAppJobReport.total_bytes_staged', index=14,
       number=15, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='total_bytes_restored', full_name='CMsgClientUpdateAppJobReport.total_bytes_restored', index=15,
       number=16, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='is_borrowed', full_name='CMsgClientUpdateAppJobReport.is_borrowed', index=16,
       number=17, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='is_free_weekend', full_name='CMsgClientUpdateAppJobReport.is_free_weekend', index=17,
       number=18, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='total_bytes_legacy', full_name='CMsgClientUpdateAppJobReport.total_bytes_legacy', index=18,
       number=19, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='total_bytes_patched', full_name='CMsgClientUpdateAppJobReport.total_bytes_patched', index=19,
       number=20, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='total_bytes_saved', full_name='CMsgClientUpdateAppJobReport.total_bytes_saved', index=20,
       number=21, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='cell_id', full_name='CMsgClientUpdateAppJobReport.cell_id', index=21,
       number=22, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1662,6 +1691,7 @@ _CMSGCLIENTDPCONTENTSTATSREPORT = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='stats_machine_id', full_name='CMsgClientDPContentStatsReport.stats_machine_id', index=0,
@@ -1669,49 +1699,49 @@ _CMSGCLIENTDPCONTENTSTATSREPORT = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='country_code', full_name='CMsgClientDPContentStatsReport.country_code', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='os_type', full_name='CMsgClientDPContentStatsReport.os_type', index=2,
       number=3, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='language', full_name='CMsgClientDPContentStatsReport.language', index=3,
       number=4, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='num_install_folders', full_name='CMsgClientDPContentStatsReport.num_install_folders', index=4,
       number=5, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='num_installed_games', full_name='CMsgClientDPContentStatsReport.num_installed_games', index=5,
       number=6, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='size_installed_games', full_name='CMsgClientDPContentStatsReport.size_installed_games', index=6,
       number=7, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1735,6 +1765,7 @@ _CMSGCLIENTGETCDNAUTHTOKENRESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='eresult', full_name='CMsgClientGetCDNAuthTokenResponse.eresult', index=0,
@@ -1742,21 +1773,21 @@ _CMSGCLIENTGETCDNAUTHTOKENRESPONSE = _descriptor.Descriptor(
       has_default_value=True, default_value=2,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='token', full_name='CMsgClientGetCDNAuthTokenResponse.token', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='expiration_time', full_name='CMsgClientGetCDNAuthTokenResponse.expiration_time', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1780,6 +1811,7 @@ _CMSGDOWNLOADRATESTATISTICS_STATSINFO = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='source_type', full_name='CMsgDownloadRateStatistics.StatsInfo.source_type', index=0,
@@ -1787,56 +1819,56 @@ _CMSGDOWNLOADRATESTATISTICS_STATSINFO = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='source_id', full_name='CMsgDownloadRateStatistics.StatsInfo.source_id', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='seconds', full_name='CMsgDownloadRateStatistics.StatsInfo.seconds', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='bytes', full_name='CMsgDownloadRateStatistics.StatsInfo.bytes', index=3,
       number=4, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='host_name', full_name='CMsgDownloadRateStatistics.StatsInfo.host_name', index=4,
       number=5, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='microseconds', full_name='CMsgDownloadRateStatistics.StatsInfo.microseconds', index=5,
       number=6, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='used_ipv6', full_name='CMsgDownloadRateStatistics.StatsInfo.used_ipv6', index=6,
       number=7, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='proxied', full_name='CMsgDownloadRateStatistics.StatsInfo.proxied', index=7,
       number=8, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1859,6 +1891,7 @@ _CMSGDOWNLOADRATESTATISTICS = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='cell_id', full_name='CMsgDownloadRateStatistics.cell_id', index=0,
@@ -1866,28 +1899,28 @@ _CMSGDOWNLOADRATESTATISTICS = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='stats', full_name='CMsgDownloadRateStatistics.stats', index=1,
       number=2, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='throttling_kbps', full_name='CMsgDownloadRateStatistics.throttling_kbps', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steam_realm', full_name='CMsgDownloadRateStatistics.steam_realm', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1911,21 +1944,22 @@ _CMSGCLIENTREQUESTACCOUNTDATA = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='account_or_email', full_name='CMsgClientRequestAccountData.account_or_email', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='action', full_name='CMsgClientRequestAccountData.action', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1949,6 +1983,7 @@ _CMSGCLIENTREQUESTACCOUNTDATARESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='action', full_name='CMsgClientRequestAccountDataResponse.action', index=0,
@@ -1956,49 +1991,49 @@ _CMSGCLIENTREQUESTACCOUNTDATARESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='eresult', full_name='CMsgClientRequestAccountDataResponse.eresult', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='account_name', full_name='CMsgClientRequestAccountDataResponse.account_name', index=2,
       number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='ct_matches', full_name='CMsgClientRequestAccountDataResponse.ct_matches', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='account_name_suggestion1', full_name='CMsgClientRequestAccountDataResponse.account_name_suggestion1', index=4,
       number=5, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='account_name_suggestion2', full_name='CMsgClientRequestAccountDataResponse.account_name_suggestion2', index=5,
       number=6, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='account_name_suggestion3', full_name='CMsgClientRequestAccountDataResponse.account_name_suggestion3', index=6,
       number=7, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2022,6 +2057,7 @@ _CMSGCLIENTUGSGETGLOBALSTATS = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='gameid', full_name='CMsgClientUGSGetGlobalStats.gameid', index=0,
@@ -2029,35 +2065,35 @@ _CMSGCLIENTUGSGETGLOBALSTATS = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='history_days_requested', full_name='CMsgClientUGSGetGlobalStats.history_days_requested', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='time_last_requested', full_name='CMsgClientUGSGetGlobalStats.time_last_requested', index=2,
       number=3, type=7, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='first_day_cached', full_name='CMsgClientUGSGetGlobalStats.first_day_cached', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='days_cached', full_name='CMsgClientUGSGetGlobalStats.days_cached', index=4,
       number=5, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2081,6 +2117,7 @@ _CMSGCLIENTUGSGETGLOBALSTATSRESPONSE_DAY_STAT = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='stat_id', full_name='CMsgClientUGSGetGlobalStatsResponse.Day.Stat.stat_id', index=0,
@@ -2088,14 +2125,14 @@ _CMSGCLIENTUGSGETGLOBALSTATSRESPONSE_DAY_STAT = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='data', full_name='CMsgClientUGSGetGlobalStatsResponse.Day.Stat.data', index=1,
       number=2, type=3, cpp_type=2, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2118,6 +2155,7 @@ _CMSGCLIENTUGSGETGLOBALSTATSRESPONSE_DAY = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='day_id', full_name='CMsgClientUGSGetGlobalStatsResponse.Day.day_id', index=0,
@@ -2125,14 +2163,14 @@ _CMSGCLIENTUGSGETGLOBALSTATSRESPONSE_DAY = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='stats', full_name='CMsgClientUGSGetGlobalStatsResponse.Day.stats', index=1,
       number=2, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2155,6 +2193,7 @@ _CMSGCLIENTUGSGETGLOBALSTATSRESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='eresult', full_name='CMsgClientUGSGetGlobalStatsResponse.eresult', index=0,
@@ -2162,28 +2201,28 @@ _CMSGCLIENTUGSGETGLOBALSTATSRESPONSE = _descriptor.Descriptor(
       has_default_value=True, default_value=2,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='timestamp', full_name='CMsgClientUGSGetGlobalStatsResponse.timestamp', index=1,
       number=2, type=7, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='day_current', full_name='CMsgClientUGSGetGlobalStatsResponse.day_current', index=2,
       number=3, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='days', full_name='CMsgClientUGSGetGlobalStatsResponse.days', index=3,
       number=4, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2207,6 +2246,7 @@ _CMSGCLIENTREDEEMGUESTPASS = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='guest_pass_id', full_name='CMsgClientRedeemGuestPass.guest_pass_id', index=0,
@@ -2214,7 +2254,7 @@ _CMSGCLIENTREDEEMGUESTPASS = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2238,6 +2278,7 @@ _CMSGCLIENTREDEEMGUESTPASSRESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='eresult', full_name='CMsgClientRedeemGuestPassResponse.eresult', index=0,
@@ -2245,21 +2286,21 @@ _CMSGCLIENTREDEEMGUESTPASSRESPONSE = _descriptor.Descriptor(
       has_default_value=True, default_value=2,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='package_id', full_name='CMsgClientRedeemGuestPassResponse.package_id', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='must_own_appid', full_name='CMsgClientRedeemGuestPassResponse.must_own_appid', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2283,6 +2324,7 @@ _CMSGCLIENTGETCLANACTIVITYCOUNTS = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid_clans', full_name='CMsgClientGetClanActivityCounts.steamid_clans', index=0,
@@ -2290,7 +2332,7 @@ _CMSGCLIENTGETCLANACTIVITYCOUNTS = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2314,6 +2356,7 @@ _CMSGCLIENTGETCLANACTIVITYCOUNTSRESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='eresult', full_name='CMsgClientGetClanActivityCountsResponse.eresult', index=0,
@@ -2321,7 +2364,7 @@ _CMSGCLIENTGETCLANACTIVITYCOUNTSRESPONSE = _descriptor.Descriptor(
       has_default_value=True, default_value=2,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2345,6 +2388,7 @@ _CMSGCLIENTOGSREPORTSTRING = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='accumulated', full_name='CMsgClientOGSReportString.accumulated', index=0,
@@ -2352,35 +2396,35 @@ _CMSGCLIENTOGSREPORTSTRING = _descriptor.Descriptor(
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='sessionid', full_name='CMsgClientOGSReportString.sessionid', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='severity', full_name='CMsgClientOGSReportString.severity', index=2,
       number=3, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='formatter', full_name='CMsgClientOGSReportString.formatter', index=3,
       number=4, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='varargs', full_name='CMsgClientOGSReportString.varargs', index=4,
       number=5, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2404,6 +2448,7 @@ _CMSGCLIENTOGSREPORTBUG = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='sessionid', full_name='CMsgClientOGSReportBug.sessionid', index=0,
@@ -2411,21 +2456,21 @@ _CMSGCLIENTOGSREPORTBUG = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='bugtext', full_name='CMsgClientOGSReportBug.bugtext', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='screenshot', full_name='CMsgClientOGSReportBug.screenshot', index=2,
       number=3, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2449,6 +2494,7 @@ _CMSGCLIENTSENTLOGS = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -2473,6 +2519,7 @@ _CMSGGCCLIENT = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CMsgGCClient.appid', index=0,
@@ -2480,42 +2527,42 @@ _CMSGGCCLIENT = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='msgtype', full_name='CMsgGCClient.msgtype', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='payload', full_name='CMsgGCClient.payload', index=2,
       number=3, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CMsgGCClient.steamid', index=3,
       number=4, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='gcname', full_name='CMsgGCClient.gcname', index=4,
       number=5, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='ip', full_name='CMsgGCClient.ip', index=5,
       number=6, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2539,6 +2586,7 @@ _CMSGCLIENTREQUESTFREELICENSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appids', full_name='CMsgClientRequestFreeLicense.appids', index=0,
@@ -2546,7 +2594,7 @@ _CMSGCLIENTREQUESTFREELICENSE = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2570,6 +2618,7 @@ _CMSGCLIENTREQUESTFREELICENSERESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='eresult', full_name='CMsgClientRequestFreeLicenseResponse.eresult', index=0,
@@ -2577,21 +2626,21 @@ _CMSGCLIENTREQUESTFREELICENSERESPONSE = _descriptor.Descriptor(
       has_default_value=True, default_value=2,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='granted_packageids', full_name='CMsgClientRequestFreeLicenseResponse.granted_packageids', index=1,
       number=2, type=13, cpp_type=3, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='granted_appids', full_name='CMsgClientRequestFreeLicenseResponse.granted_appids', index=2,
       number=3, type=13, cpp_type=3, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2615,6 +2664,7 @@ _CMSGDRMDOWNLOADREQUESTWITHCRASHDATA = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='download_flags', full_name='CMsgDRMDownloadRequestWithCrashData.download_flags', index=0,
@@ -2622,56 +2672,56 @@ _CMSGDRMDOWNLOADREQUESTWITHCRASHDATA = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='download_types_known', full_name='CMsgDRMDownloadRequestWithCrashData.download_types_known', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='guid_drm', full_name='CMsgDRMDownloadRequestWithCrashData.guid_drm', index=2,
       number=3, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='guid_split', full_name='CMsgDRMDownloadRequestWithCrashData.guid_split', index=3,
       number=4, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='guid_merge', full_name='CMsgDRMDownloadRequestWithCrashData.guid_merge', index=4,
       number=5, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='module_name', full_name='CMsgDRMDownloadRequestWithCrashData.module_name', index=5,
       number=6, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='module_path', full_name='CMsgDRMDownloadRequestWithCrashData.module_path', index=6,
       number=7, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='crash_data', full_name='CMsgDRMDownloadRequestWithCrashData.crash_data', index=7,
       number=8, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2695,6 +2745,7 @@ _CMSGDRMDOWNLOADRESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='eresult', full_name='CMsgDRMDownloadResponse.eresult', index=0,
@@ -2702,56 +2753,56 @@ _CMSGDRMDOWNLOADRESPONSE = _descriptor.Descriptor(
       has_default_value=True, default_value=2,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CMsgDRMDownloadResponse.app_id', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='blob_download_type', full_name='CMsgDRMDownloadResponse.blob_download_type', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='merge_guid', full_name='CMsgDRMDownloadResponse.merge_guid', index=3,
       number=4, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='download_file_dfs_ip', full_name='CMsgDRMDownloadResponse.download_file_dfs_ip', index=4,
       number=5, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='download_file_dfs_port', full_name='CMsgDRMDownloadResponse.download_file_dfs_port', index=5,
       number=6, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='download_file_url', full_name='CMsgDRMDownloadResponse.download_file_url', index=6,
       number=7, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='module_path', full_name='CMsgDRMDownloadResponse.module_path', index=7,
       number=8, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2775,6 +2826,7 @@ _CMSGDRMFINALRESULT = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='eResult', full_name='CMsgDRMFinalResult.eResult', index=0,
@@ -2782,56 +2834,56 @@ _CMSGDRMFINALRESULT = _descriptor.Descriptor(
       has_default_value=True, default_value=2,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CMsgDRMFinalResult.app_id', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='blob_download_type', full_name='CMsgDRMFinalResult.blob_download_type', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='error_detail', full_name='CMsgDRMFinalResult.error_detail', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='merge_guid', full_name='CMsgDRMFinalResult.merge_guid', index=4,
       number=5, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='download_file_dfs_ip', full_name='CMsgDRMFinalResult.download_file_dfs_ip', index=5,
       number=6, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='download_file_dfs_port', full_name='CMsgDRMFinalResult.download_file_dfs_port', index=6,
       number=7, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='download_file_url', full_name='CMsgDRMFinalResult.download_file_url', index=7,
       number=8, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2855,6 +2907,7 @@ _CMSGCLIENTDPCHECKSPECIALSURVEY = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='survey_id', full_name='CMsgClientDPCheckSpecialSurvey.survey_id', index=0,
@@ -2862,7 +2915,7 @@ _CMSGCLIENTDPCHECKSPECIALSURVEY = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2886,6 +2939,7 @@ _CMSGCLIENTDPCHECKSPECIALSURVEYRESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='eResult', full_name='CMsgClientDPCheckSpecialSurveyResponse.eResult', index=0,
@@ -2893,42 +2947,42 @@ _CMSGCLIENTDPCHECKSPECIALSURVEYRESPONSE = _descriptor.Descriptor(
       has_default_value=True, default_value=2,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='state', full_name='CMsgClientDPCheckSpecialSurveyResponse.state', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='name', full_name='CMsgClientDPCheckSpecialSurveyResponse.name', index=2,
       number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='custom_url', full_name='CMsgClientDPCheckSpecialSurveyResponse.custom_url', index=3,
       number=4, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='include_software', full_name='CMsgClientDPCheckSpecialSurveyResponse.include_software', index=4,
       number=5, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='token', full_name='CMsgClientDPCheckSpecialSurveyResponse.token', index=5,
       number=6, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2952,6 +3006,7 @@ _CMSGCLIENTDPSENDSPECIALSURVEYRESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='survey_id', full_name='CMsgClientDPSendSpecialSurveyResponse.survey_id', index=0,
@@ -2959,14 +3014,14 @@ _CMSGCLIENTDPSENDSPECIALSURVEYRESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='data', full_name='CMsgClientDPSendSpecialSurveyResponse.data', index=1,
       number=2, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2990,6 +3045,7 @@ _CMSGCLIENTDPSENDSPECIALSURVEYRESPONSEREPLY = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='eResult', full_name='CMsgClientDPSendSpecialSurveyResponseReply.eResult', index=0,
@@ -2997,14 +3053,14 @@ _CMSGCLIENTDPSENDSPECIALSURVEYRESPONSEREPLY = _descriptor.Descriptor(
       has_default_value=True, default_value=2,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='token', full_name='CMsgClientDPSendSpecialSurveyResponseReply.token', index=1,
       number=2, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3028,21 +3084,22 @@ _CMSGCLIENTREQUESTFORGOTTENPASSWORDEMAIL = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='account_name', full_name='CMsgClientRequestForgottenPasswordEmail.account_name', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='password_tried', full_name='CMsgClientRequestForgottenPasswordEmail.password_tried', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3066,6 +3123,7 @@ _CMSGCLIENTREQUESTFORGOTTENPASSWORDEMAILRESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='eResult', full_name='CMsgClientRequestForgottenPasswordEmailResponse.eResult', index=0,
@@ -3073,14 +3131,14 @@ _CMSGCLIENTREQUESTFORGOTTENPASSWORDEMAILRESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='use_secret_question', full_name='CMsgClientRequestForgottenPasswordEmailResponse.use_secret_question', index=1,
       number=2, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3104,6 +3162,7 @@ _CMSGCLIENTITEMANNOUNCEMENTS_UNSEENITEM = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CMsgClientItemAnnouncements.UnseenItem.appid', index=0,
@@ -3111,42 +3170,42 @@ _CMSGCLIENTITEMANNOUNCEMENTS_UNSEENITEM = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='context_id', full_name='CMsgClientItemAnnouncements.UnseenItem.context_id', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='asset_id', full_name='CMsgClientItemAnnouncements.UnseenItem.asset_id', index=2,
       number=3, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='amount', full_name='CMsgClientItemAnnouncements.UnseenItem.amount', index=3,
       number=4, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='rtime32_gained', full_name='CMsgClientItemAnnouncements.UnseenItem.rtime32_gained', index=4,
       number=5, type=7, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='source_appid', full_name='CMsgClientItemAnnouncements.UnseenItem.source_appid', index=5,
       number=6, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3169,6 +3228,7 @@ _CMSGCLIENTITEMANNOUNCEMENTS = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='count_new_items', full_name='CMsgClientItemAnnouncements.count_new_items', index=0,
@@ -3176,14 +3236,14 @@ _CMSGCLIENTITEMANNOUNCEMENTS = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='unseen_items', full_name='CMsgClientItemAnnouncements.unseen_items', index=1,
       number=2, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3207,6 +3267,7 @@ _CMSGCLIENTREQUESTITEMANNOUNCEMENTS = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -3231,6 +3292,7 @@ _CMSGCLIENTUSERNOTIFICATIONS_NOTIFICATION = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='user_notification_type', full_name='CMsgClientUserNotifications.Notification.user_notification_type', index=0,
@@ -3238,14 +3300,14 @@ _CMSGCLIENTUSERNOTIFICATIONS_NOTIFICATION = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='count', full_name='CMsgClientUserNotifications.Notification.count', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3268,6 +3330,7 @@ _CMSGCLIENTUSERNOTIFICATIONS = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='notifications', full_name='CMsgClientUserNotifications.notifications', index=0,
@@ -3275,7 +3338,7 @@ _CMSGCLIENTUSERNOTIFICATIONS = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3299,6 +3362,7 @@ _CMSGCLIENTCOMMENTNOTIFICATIONS = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='count_new_comments', full_name='CMsgClientCommentNotifications.count_new_comments', index=0,
@@ -3306,21 +3370,21 @@ _CMSGCLIENTCOMMENTNOTIFICATIONS = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='count_new_comments_owner', full_name='CMsgClientCommentNotifications.count_new_comments_owner', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='count_new_comments_subscriptions', full_name='CMsgClientCommentNotifications.count_new_comments_subscriptions', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3344,6 +3408,7 @@ _CMSGCLIENTREQUESTCOMMENTNOTIFICATIONS = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -3368,6 +3433,7 @@ _CMSGCLIENTOFFLINEMESSAGENOTIFICATION = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='offline_messages', full_name='CMsgClientOfflineMessageNotification.offline_messages', index=0,
@@ -3375,14 +3441,14 @@ _CMSGCLIENTOFFLINEMESSAGENOTIFICATION = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='friends_with_offline_messages', full_name='CMsgClientOfflineMessageNotification.friends_with_offline_messages', index=1,
       number=2, type=13, cpp_type=3, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3406,6 +3472,7 @@ _CMSGCLIENTREQUESTOFFLINEMESSAGECOUNT = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -3430,6 +3497,7 @@ _CMSGCLIENTCHATGETFRIENDMESSAGEHISTORY = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CMsgClientChatGetFriendMessageHistory.steamid', index=0,
@@ -3437,7 +3505,7 @@ _CMSGCLIENTCHATGETFRIENDMESSAGEHISTORY = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3461,6 +3529,7 @@ _CMSGCLIENTCHATGETFRIENDMESSAGEHISTORYRESPONSE_FRIENDMESSAGE = _descriptor.Descr
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='accountid', full_name='CMsgClientChatGetFriendMessageHistoryResponse.FriendMessage.accountid', index=0,
@@ -3468,28 +3537,28 @@ _CMSGCLIENTCHATGETFRIENDMESSAGEHISTORYRESPONSE_FRIENDMESSAGE = _descriptor.Descr
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='timestamp', full_name='CMsgClientChatGetFriendMessageHistoryResponse.FriendMessage.timestamp', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='message', full_name='CMsgClientChatGetFriendMessageHistoryResponse.FriendMessage.message', index=2,
       number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='unread', full_name='CMsgClientChatGetFriendMessageHistoryResponse.FriendMessage.unread', index=3,
       number=4, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3512,6 +3581,7 @@ _CMSGCLIENTCHATGETFRIENDMESSAGEHISTORYRESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CMsgClientChatGetFriendMessageHistoryResponse.steamid', index=0,
@@ -3519,21 +3589,21 @@ _CMSGCLIENTCHATGETFRIENDMESSAGEHISTORYRESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='success', full_name='CMsgClientChatGetFriendMessageHistoryResponse.success', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='messages', full_name='CMsgClientChatGetFriendMessageHistoryResponse.messages', index=2,
       number=3, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3557,6 +3627,7 @@ _CMSGCLIENTCHATGETFRIENDMESSAGEHISTORYFOROFFLINEMESSAGES = _descriptor.Descripto
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -3581,6 +3652,7 @@ _CMSGCLIENTFSGETFRIENDSSTEAMLEVELS = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='accountids', full_name='CMsgClientFSGetFriendsSteamLevels.accountids', index=0,
@@ -3588,7 +3660,7 @@ _CMSGCLIENTFSGETFRIENDSSTEAMLEVELS = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3612,6 +3684,7 @@ _CMSGCLIENTFSGETFRIENDSSTEAMLEVELSRESPONSE_FRIEND = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='accountid', full_name='CMsgClientFSGetFriendsSteamLevelsResponse.Friend.accountid', index=0,
@@ -3619,14 +3692,14 @@ _CMSGCLIENTFSGETFRIENDSSTEAMLEVELSRESPONSE_FRIEND = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='level', full_name='CMsgClientFSGetFriendsSteamLevelsResponse.Friend.level', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3649,6 +3722,7 @@ _CMSGCLIENTFSGETFRIENDSSTEAMLEVELSRESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='friends', full_name='CMsgClientFSGetFriendsSteamLevelsResponse.friends', index=0,
@@ -3656,7 +3730,7 @@ _CMSGCLIENTFSGETFRIENDSSTEAMLEVELSRESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3680,49 +3754,50 @@ _CMSGCLIENTEMAILADDRINFO = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='email_address', full_name='CMsgClientEmailAddrInfo.email_address', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='email_is_validated', full_name='CMsgClientEmailAddrInfo.email_is_validated', index=1,
       number=2, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='email_validation_changed', full_name='CMsgClientEmailAddrInfo.email_validation_changed', index=2,
       number=3, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='credential_change_requires_code', full_name='CMsgClientEmailAddrInfo.credential_change_requires_code', index=3,
       number=4, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='password_or_secretqa_change_requires_code', full_name='CMsgClientEmailAddrInfo.password_or_secretqa_change_requires_code', index=4,
       number=5, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='remind_user_about_email', full_name='CMsgClientEmailAddrInfo.remind_user_about_email', index=5,
       number=6, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3746,6 +3821,7 @@ _CMSGCREITEMVOTESUMMARY_PUBLISHEDFILEID = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='published_file_id', full_name='CMsgCREItemVoteSummary.PublishedFileId.published_file_id', index=0,
@@ -3753,7 +3829,7 @@ _CMSGCREITEMVOTESUMMARY_PUBLISHEDFILEID = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3776,6 +3852,7 @@ _CMSGCREITEMVOTESUMMARY = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='published_file_ids', full_name='CMsgCREItemVoteSummary.published_file_ids', index=0,
@@ -3783,7 +3860,7 @@ _CMSGCREITEMVOTESUMMARY = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3807,6 +3884,7 @@ _CMSGCREITEMVOTESUMMARYRESPONSE_ITEMVOTESUMMARY = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='published_file_id', full_name='CMsgCREItemVoteSummaryResponse.ItemVoteSummary.published_file_id', index=0,
@@ -3814,35 +3892,35 @@ _CMSGCREITEMVOTESUMMARYRESPONSE_ITEMVOTESUMMARY = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='votes_for', full_name='CMsgCREItemVoteSummaryResponse.ItemVoteSummary.votes_for', index=1,
       number=2, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='votes_against', full_name='CMsgCREItemVoteSummaryResponse.ItemVoteSummary.votes_against', index=2,
       number=3, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='reports', full_name='CMsgCREItemVoteSummaryResponse.ItemVoteSummary.reports', index=3,
       number=4, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='score', full_name='CMsgCREItemVoteSummaryResponse.ItemVoteSummary.score', index=4,
       number=5, type=2, cpp_type=6, label=1,
       has_default_value=False, default_value=float(0),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3865,6 +3943,7 @@ _CMSGCREITEMVOTESUMMARYRESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='eresult', full_name='CMsgCREItemVoteSummaryResponse.eresult', index=0,
@@ -3872,14 +3951,14 @@ _CMSGCREITEMVOTESUMMARYRESPONSE = _descriptor.Descriptor(
       has_default_value=True, default_value=2,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='item_vote_summaries', full_name='CMsgCREItemVoteSummaryResponse.item_vote_summaries', index=1,
       number=2, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3903,6 +3982,7 @@ _CMSGCREUPDATEUSERPUBLISHEDITEMVOTE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='published_file_id', full_name='CMsgCREUpdateUserPublishedItemVote.published_file_id', index=0,
@@ -3910,14 +3990,14 @@ _CMSGCREUPDATEUSERPUBLISHEDITEMVOTE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='vote_up', full_name='CMsgCREUpdateUserPublishedItemVote.vote_up', index=1,
       number=2, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3941,6 +4021,7 @@ _CMSGCREUPDATEUSERPUBLISHEDITEMVOTERESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='eresult', full_name='CMsgCREUpdateUserPublishedItemVoteResponse.eresult', index=0,
@@ -3948,7 +4029,7 @@ _CMSGCREUPDATEUSERPUBLISHEDITEMVOTERESPONSE = _descriptor.Descriptor(
       has_default_value=True, default_value=2,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3972,6 +4053,7 @@ _CMSGCREGETUSERPUBLISHEDITEMVOTEDETAILS_PUBLISHEDFILEID = _descriptor.Descriptor
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='published_file_id', full_name='CMsgCREGetUserPublishedItemVoteDetails.PublishedFileId.published_file_id', index=0,
@@ -3979,7 +4061,7 @@ _CMSGCREGETUSERPUBLISHEDITEMVOTEDETAILS_PUBLISHEDFILEID = _descriptor.Descriptor
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4002,6 +4084,7 @@ _CMSGCREGETUSERPUBLISHEDITEMVOTEDETAILS = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='published_file_ids', full_name='CMsgCREGetUserPublishedItemVoteDetails.published_file_ids', index=0,
@@ -4009,7 +4092,7 @@ _CMSGCREGETUSERPUBLISHEDITEMVOTEDETAILS = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4033,6 +4116,7 @@ _CMSGCREGETUSERPUBLISHEDITEMVOTEDETAILSRESPONSE_USERITEMVOTEDETAIL = _descriptor
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='published_file_id', full_name='CMsgCREGetUserPublishedItemVoteDetailsResponse.UserItemVoteDetail.published_file_id', index=0,
@@ -4040,14 +4124,14 @@ _CMSGCREGETUSERPUBLISHEDITEMVOTEDETAILSRESPONSE_USERITEMVOTEDETAIL = _descriptor
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='vote', full_name='CMsgCREGetUserPublishedItemVoteDetailsResponse.UserItemVoteDetail.vote', index=1,
       number=2, type=5, cpp_type=1, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4070,6 +4154,7 @@ _CMSGCREGETUSERPUBLISHEDITEMVOTEDETAILSRESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='eresult', full_name='CMsgCREGetUserPublishedItemVoteDetailsResponse.eresult', index=0,
@@ -4077,14 +4162,14 @@ _CMSGCREGETUSERPUBLISHEDITEMVOTEDETAILSRESPONSE = _descriptor.Descriptor(
       has_default_value=True, default_value=2,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='user_item_vote_details', full_name='CMsgCREGetUserPublishedItemVoteDetailsResponse.user_item_vote_details', index=1,
       number=2, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4108,6 +4193,7 @@ _CMSGFSGETFOLLOWERCOUNT = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steam_id', full_name='CMsgFSGetFollowerCount.steam_id', index=0,
@@ -4115,7 +4201,7 @@ _CMSGFSGETFOLLOWERCOUNT = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4139,6 +4225,7 @@ _CMSGFSGETFOLLOWERCOUNTRESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='eresult', full_name='CMsgFSGetFollowerCountResponse.eresult', index=0,
@@ -4146,14 +4233,14 @@ _CMSGFSGETFOLLOWERCOUNTRESPONSE = _descriptor.Descriptor(
       has_default_value=True, default_value=2,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='count', full_name='CMsgFSGetFollowerCountResponse.count', index=1,
       number=2, type=5, cpp_type=1, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4177,6 +4264,7 @@ _CMSGFSGETISFOLLOWING = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steam_id', full_name='CMsgFSGetIsFollowing.steam_id', index=0,
@@ -4184,7 +4272,7 @@ _CMSGFSGETISFOLLOWING = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4208,6 +4296,7 @@ _CMSGFSGETISFOLLOWINGRESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='eresult', full_name='CMsgFSGetIsFollowingResponse.eresult', index=0,
@@ -4215,14 +4304,14 @@ _CMSGFSGETISFOLLOWINGRESPONSE = _descriptor.Descriptor(
       has_default_value=True, default_value=2,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='is_following', full_name='CMsgFSGetIsFollowingResponse.is_following', index=1,
       number=2, type=8, cpp_type=7, label=1,
       has_default_value=True, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4246,6 +4335,7 @@ _CMSGFSENUMERATEFOLLOWINGLIST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='start_index', full_name='CMsgFSEnumerateFollowingList.start_index', index=0,
@@ -4253,7 +4343,7 @@ _CMSGFSENUMERATEFOLLOWINGLIST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4277,6 +4367,7 @@ _CMSGFSENUMERATEFOLLOWINGLISTRESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='eresult', full_name='CMsgFSEnumerateFollowingListResponse.eresult', index=0,
@@ -4284,21 +4375,21 @@ _CMSGFSENUMERATEFOLLOWINGLISTRESPONSE = _descriptor.Descriptor(
       has_default_value=True, default_value=2,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='total_results', full_name='CMsgFSEnumerateFollowingListResponse.total_results', index=1,
       number=2, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steam_ids', full_name='CMsgFSEnumerateFollowingListResponse.steam_ids', index=2,
       number=3, type=6, cpp_type=4, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4322,6 +4413,7 @@ _CMSGDPGETNUMBEROFCURRENTPLAYERS = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CMsgDPGetNumberOfCurrentPlayers.appid', index=0,
@@ -4329,7 +4421,7 @@ _CMSGDPGETNUMBEROFCURRENTPLAYERS = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4353,6 +4445,7 @@ _CMSGDPGETNUMBEROFCURRENTPLAYERSRESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='eresult', full_name='CMsgDPGetNumberOfCurrentPlayersResponse.eresult', index=0,
@@ -4360,14 +4453,14 @@ _CMSGDPGETNUMBEROFCURRENTPLAYERSRESPONSE = _descriptor.Descriptor(
       has_default_value=True, default_value=2,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='player_count', full_name='CMsgDPGetNumberOfCurrentPlayersResponse.player_count', index=1,
       number=2, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4391,6 +4484,7 @@ _CMSGCLIENTFRIENDUSERSTATUSPUBLISHED = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='friend_steamid', full_name='CMsgClientFriendUserStatusPublished.friend_steamid', index=0,
@@ -4398,21 +4492,21 @@ _CMSGCLIENTFRIENDUSERSTATUSPUBLISHED = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='appid', full_name='CMsgClientFriendUserStatusPublished.appid', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='status_text', full_name='CMsgClientFriendUserStatusPublished.status_text', index=2,
       number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4436,28 +4530,29 @@ _CMSGCLIENTSERVICEMETHODLEGACY = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='method_name', full_name='CMsgClientServiceMethodLegacy.method_name', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='serialized_method', full_name='CMsgClientServiceMethodLegacy.serialized_method', index=1,
       number=2, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='is_notification', full_name='CMsgClientServiceMethodLegacy.is_notification', index=2,
       number=3, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4481,21 +4576,22 @@ _CMSGCLIENTSERVICEMETHODLEGACYRESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='method_name', full_name='CMsgClientServiceMethodLegacyResponse.method_name', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='serialized_method_response', full_name='CMsgClientServiceMethodLegacyResponse.serialized_method_response', index=1,
       number=2, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4519,6 +4615,7 @@ _CMSGCLIENTUIMODE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='uimode', full_name='CMsgClientUIMode.uimode', index=0,
@@ -4526,14 +4623,14 @@ _CMSGCLIENTUIMODE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='chat_mode', full_name='CMsgClientUIMode.chat_mode', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4557,14 +4654,15 @@ _CMSGCLIENTVANITYURLCHANGEDNOTIFICATION = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='vanity_url', full_name='CMsgClientVanityURLChangedNotification.vanity_url', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4588,28 +4686,29 @@ _CMSGCLIENTAUTHORIZELOCALDEVICEREQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='device_description', full_name='CMsgClientAuthorizeLocalDeviceRequest.device_description', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='owner_account_id', full_name='CMsgClientAuthorizeLocalDeviceRequest.owner_account_id', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='local_device_token', full_name='CMsgClientAuthorizeLocalDeviceRequest.local_device_token', index=2,
       number=3, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4633,6 +4732,7 @@ _CMSGCLIENTAUTHORIZELOCALDEVICE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='eresult', full_name='CMsgClientAuthorizeLocalDevice.eresult', index=0,
@@ -4640,21 +4740,21 @@ _CMSGCLIENTAUTHORIZELOCALDEVICE = _descriptor.Descriptor(
       has_default_value=True, default_value=2,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='owner_account_id', full_name='CMsgClientAuthorizeLocalDevice.owner_account_id', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='authed_device_token', full_name='CMsgClientAuthorizeLocalDevice.authed_device_token', index=2,
       number=3, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4678,6 +4778,7 @@ _CMSGCLIENTAUTHORIZELOCALDEVICENOTIFICATION = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='eresult', full_name='CMsgClientAuthorizeLocalDeviceNotification.eresult', index=0,
@@ -4685,21 +4786,21 @@ _CMSGCLIENTAUTHORIZELOCALDEVICENOTIFICATION = _descriptor.Descriptor(
       has_default_value=True, default_value=2,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='owner_account_id', full_name='CMsgClientAuthorizeLocalDeviceNotification.owner_account_id', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='local_device_token', full_name='CMsgClientAuthorizeLocalDeviceNotification.local_device_token', index=2,
       number=3, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4723,6 +4824,7 @@ _CMSGCLIENTDEAUTHORIZEDEVICEREQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='deauthorization_account_id', full_name='CMsgClientDeauthorizeDeviceRequest.deauthorization_account_id', index=0,
@@ -4730,14 +4832,14 @@ _CMSGCLIENTDEAUTHORIZEDEVICEREQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='deauthorization_device_token', full_name='CMsgClientDeauthorizeDeviceRequest.deauthorization_device_token', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4761,6 +4863,7 @@ _CMSGCLIENTDEAUTHORIZEDEVICE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='eresult', full_name='CMsgClientDeauthorizeDevice.eresult', index=0,
@@ -4768,14 +4871,14 @@ _CMSGCLIENTDEAUTHORIZEDEVICE = _descriptor.Descriptor(
       has_default_value=True, default_value=2,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='deauthorization_account_id', full_name='CMsgClientDeauthorizeDevice.deauthorization_account_id', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4799,6 +4902,7 @@ _CMSGCLIENTUSELOCALDEVICEAUTHORIZATIONS_DEVICETOKEN = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='owner_account_id', full_name='CMsgClientUseLocalDeviceAuthorizations.DeviceToken.owner_account_id', index=0,
@@ -4806,14 +4910,14 @@ _CMSGCLIENTUSELOCALDEVICEAUTHORIZATIONS_DEVICETOKEN = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='token_id', full_name='CMsgClientUseLocalDeviceAuthorizations.DeviceToken.token_id', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4836,6 +4940,7 @@ _CMSGCLIENTUSELOCALDEVICEAUTHORIZATIONS = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='authorization_account_id', full_name='CMsgClientUseLocalDeviceAuthorizations.authorization_account_id', index=0,
@@ -4843,14 +4948,14 @@ _CMSGCLIENTUSELOCALDEVICEAUTHORIZATIONS = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='device_tokens', full_name='CMsgClientUseLocalDeviceAuthorizations.device_tokens', index=1,
       number=2, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4874,6 +4979,7 @@ _CMSGCLIENTGETAUTHORIZEDDEVICES = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -4898,6 +5004,7 @@ _CMSGCLIENTGETAUTHORIZEDDEVICESRESPONSE_AUTHORIZEDDEVICE = _descriptor.Descripto
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='auth_device_token', full_name='CMsgClientGetAuthorizedDevicesResponse.AuthorizedDevice.auth_device_token', index=0,
@@ -4905,42 +5012,42 @@ _CMSGCLIENTGETAUTHORIZEDDEVICESRESPONSE_AUTHORIZEDDEVICE = _descriptor.Descripto
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='device_name', full_name='CMsgClientGetAuthorizedDevicesResponse.AuthorizedDevice.device_name', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='last_access_time', full_name='CMsgClientGetAuthorizedDevicesResponse.AuthorizedDevice.last_access_time', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='borrower_id', full_name='CMsgClientGetAuthorizedDevicesResponse.AuthorizedDevice.borrower_id', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='is_pending', full_name='CMsgClientGetAuthorizedDevicesResponse.AuthorizedDevice.is_pending', index=4,
       number=5, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='app_played', full_name='CMsgClientGetAuthorizedDevicesResponse.AuthorizedDevice.app_played', index=5,
       number=6, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4963,6 +5070,7 @@ _CMSGCLIENTGETAUTHORIZEDDEVICESRESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='eresult', full_name='CMsgClientGetAuthorizedDevicesResponse.eresult', index=0,
@@ -4970,14 +5078,14 @@ _CMSGCLIENTGETAUTHORIZEDDEVICESRESPONSE = _descriptor.Descriptor(
       has_default_value=True, default_value=2,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='authorized_device', full_name='CMsgClientGetAuthorizedDevicesResponse.authorized_device', index=1,
       number=2, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -5001,6 +5109,7 @@ _CMSGCLIENTSHAREDLIBRARYLOCKSTATUS_LOCKEDLIBRARY = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='owner_id', full_name='CMsgClientSharedLibraryLockStatus.LockedLibrary.owner_id', index=0,
@@ -5008,14 +5117,14 @@ _CMSGCLIENTSHAREDLIBRARYLOCKSTATUS_LOCKEDLIBRARY = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='locked_by', full_name='CMsgClientSharedLibraryLockStatus.LockedLibrary.locked_by', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -5038,6 +5147,7 @@ _CMSGCLIENTSHAREDLIBRARYLOCKSTATUS = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='locked_library', full_name='CMsgClientSharedLibraryLockStatus.locked_library', index=0,
@@ -5045,14 +5155,14 @@ _CMSGCLIENTSHAREDLIBRARYLOCKSTATUS = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='own_library_locked_by', full_name='CMsgClientSharedLibraryLockStatus.own_library_locked_by', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -5076,6 +5186,7 @@ _CMSGCLIENTSHAREDLIBRARYSTOPPLAYING_STOPAPP = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CMsgClientSharedLibraryStopPlaying.StopApp.app_id', index=0,
@@ -5083,14 +5194,14 @@ _CMSGCLIENTSHAREDLIBRARYSTOPPLAYING_STOPAPP = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='owner_id', full_name='CMsgClientSharedLibraryStopPlaying.StopApp.owner_id', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -5113,6 +5224,7 @@ _CMSGCLIENTSHAREDLIBRARYSTOPPLAYING = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='seconds_left', full_name='CMsgClientSharedLibraryStopPlaying.seconds_left', index=0,
@@ -5120,14 +5232,14 @@ _CMSGCLIENTSHAREDLIBRARYSTOPPLAYING = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='stop_apps', full_name='CMsgClientSharedLibraryStopPlaying.stop_apps', index=1,
       number=2, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -5151,77 +5263,85 @@ _CMSGCLIENTSERVICECALL = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='sysid_routing', full_name='CMsgClientServiceCall.sysid_routing', index=0,
       number=1, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='call_handle', full_name='CMsgClientServiceCall.call_handle', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='module_crc', full_name='CMsgClientServiceCall.module_crc', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='module_hash', full_name='CMsgClientServiceCall.module_hash', index=3,
       number=4, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='function_id', full_name='CMsgClientServiceCall.function_id', index=4,
       number=5, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='cub_output_max', full_name='CMsgClientServiceCall.cub_output_max', index=5,
       number=6, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='flags', full_name='CMsgClientServiceCall.flags', index=6,
       number=7, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='callparameter', full_name='CMsgClientServiceCall.callparameter', index=7,
       number=8, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='ping_only', full_name='CMsgClientServiceCall.ping_only', index=8,
       number=9, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='max_outstanding_calls', full_name='CMsgClientServiceCall.max_outstanding_calls', index=9,
       number=10, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='app_id', full_name='CMsgClientServiceCall.app_id', index=10,
+      number=11, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -5235,7 +5355,7 @@ _CMSGCLIENTSERVICECALL = _descriptor.Descriptor(
   oneofs=[
   ],
   serialized_start=12376,
-  serialized_end=12617,
+  serialized_end=12633,
 )
 
 
@@ -5245,6 +5365,7 @@ _CMSGCLIENTSERVICEMODULE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='module_crc', full_name='CMsgClientServiceModule.module_crc', index=0,
@@ -5252,21 +5373,21 @@ _CMSGCLIENTSERVICEMODULE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='module_hash', full_name='CMsgClientServiceModule.module_hash', index=1,
       number=2, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='module_content', full_name='CMsgClientServiceModule.module_content', index=2,
       number=3, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -5279,8 +5400,8 @@ _CMSGCLIENTSERVICEMODULE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=12619,
-  serialized_end=12709,
+  serialized_start=12635,
+  serialized_end=12725,
 )
 
 
@@ -5290,154 +5411,155 @@ _CMSGCLIENTSERVICECALLRESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='sysid_routing', full_name='CMsgClientServiceCallResponse.sysid_routing', index=0,
       number=1, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='call_handle', full_name='CMsgClientServiceCallResponse.call_handle', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='module_crc', full_name='CMsgClientServiceCallResponse.module_crc', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='module_hash', full_name='CMsgClientServiceCallResponse.module_hash', index=3,
       number=4, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='ecallresult', full_name='CMsgClientServiceCallResponse.ecallresult', index=4,
       number=5, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='result_content', full_name='CMsgClientServiceCallResponse.result_content', index=5,
       number=6, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='os_version_info', full_name='CMsgClientServiceCallResponse.os_version_info', index=6,
       number=7, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='system_info', full_name='CMsgClientServiceCallResponse.system_info', index=7,
       number=8, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='load_address', full_name='CMsgClientServiceCallResponse.load_address', index=8,
       number=9, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='exception_record', full_name='CMsgClientServiceCallResponse.exception_record', index=9,
       number=10, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='portable_os_version_info', full_name='CMsgClientServiceCallResponse.portable_os_version_info', index=10,
       number=11, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='portable_system_info', full_name='CMsgClientServiceCallResponse.portable_system_info', index=11,
       number=12, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='was_converted', full_name='CMsgClientServiceCallResponse.was_converted', index=12,
       number=13, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='internal_result', full_name='CMsgClientServiceCallResponse.internal_result', index=13,
       number=14, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='current_count', full_name='CMsgClientServiceCallResponse.current_count', index=14,
       number=15, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='last_call_handle', full_name='CMsgClientServiceCallResponse.last_call_handle', index=15,
       number=16, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='last_call_module_crc', full_name='CMsgClientServiceCallResponse.last_call_module_crc', index=16,
       number=17, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='last_call_sysid_routing', full_name='CMsgClientServiceCallResponse.last_call_sysid_routing', index=17,
       number=18, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='last_ecallresult', full_name='CMsgClientServiceCallResponse.last_ecallresult', index=18,
       number=19, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='last_callissue_delta', full_name='CMsgClientServiceCallResponse.last_callissue_delta', index=19,
       number=20, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='last_callcomplete_delta', full_name='CMsgClientServiceCallResponse.last_callcomplete_delta', index=20,
       number=21, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -5450,8 +5572,8 @@ _CMSGCLIENTSERVICECALLRESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=12712,
-  serialized_end=13280,
+  serialized_start=12728,
+  serialized_end=13296,
 )
 
 
@@ -5461,6 +5583,7 @@ _CMSGAMUNLOCKSTREAMING = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -5474,8 +5597,8 @@ _CMSGAMUNLOCKSTREAMING = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=13282,
-  serialized_end=13305,
+  serialized_start=13298,
+  serialized_end=13321,
 )
 
 
@@ -5485,6 +5608,7 @@ _CMSGAMUNLOCKSTREAMINGRESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='eresult', full_name='CMsgAMUnlockStreamingResponse.eresult', index=0,
@@ -5492,14 +5616,14 @@ _CMSGAMUNLOCKSTREAMINGRESPONSE = _descriptor.Descriptor(
       has_default_value=True, default_value=2,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='encryption_key', full_name='CMsgAMUnlockStreamingResponse.encryption_key', index=1,
       number=2, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -5512,8 +5636,8 @@ _CMSGAMUNLOCKSTREAMINGRESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=13307,
-  serialized_end=13382,
+  serialized_start=13323,
+  serialized_end=13398,
 )
 
 
@@ -5523,6 +5647,7 @@ _CMSGAMUNLOCKHEVC = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -5536,8 +5661,8 @@ _CMSGAMUNLOCKHEVC = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=13384,
-  serialized_end=13402,
+  serialized_start=13400,
+  serialized_end=13418,
 )
 
 
@@ -5547,6 +5672,7 @@ _CMSGAMUNLOCKHEVCRESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='eresult', full_name='CMsgAMUnlockHEVCResponse.eresult', index=0,
@@ -5554,7 +5680,7 @@ _CMSGAMUNLOCKHEVCRESPONSE = _descriptor.Descriptor(
       has_default_value=True, default_value=2,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -5567,8 +5693,8 @@ _CMSGAMUNLOCKHEVCRESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=13404,
-  serialized_end=13450,
+  serialized_start=13420,
+  serialized_end=13466,
 )
 
 
@@ -5578,6 +5704,7 @@ _CMSGCLIENTPLAYINGSESSIONSTATE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='playing_blocked', full_name='CMsgClientPlayingSessionState.playing_blocked', index=0,
@@ -5585,14 +5712,14 @@ _CMSGCLIENTPLAYINGSESSIONSTATE = _descriptor.Descriptor(
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='playing_app', full_name='CMsgClientPlayingSessionState.playing_app', index=1,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -5605,8 +5732,8 @@ _CMSGCLIENTPLAYINGSESSIONSTATE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=13452,
-  serialized_end=13529,
+  serialized_start=13468,
+  serialized_end=13545,
 )
 
 
@@ -5616,6 +5743,7 @@ _CMSGCLIENTKICKPLAYINGSESSION = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='only_stop_game', full_name='CMsgClientKickPlayingSession.only_stop_game', index=0,
@@ -5623,7 +5751,7 @@ _CMSGCLIENTKICKPLAYINGSESSION = _descriptor.Descriptor(
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -5636,8 +5764,8 @@ _CMSGCLIENTKICKPLAYINGSESSION = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=13531,
-  serialized_end=13585,
+  serialized_start=13547,
+  serialized_end=13601,
 )
 
 
@@ -5647,6 +5775,7 @@ _CMSGCLIENTVOICECALLPREAUTHORIZE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='caller_steamid', full_name='CMsgClientVoiceCallPreAuthorize.caller_steamid', index=0,
@@ -5654,28 +5783,28 @@ _CMSGCLIENTVOICECALLPREAUTHORIZE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='receiver_steamid', full_name='CMsgClientVoiceCallPreAuthorize.receiver_steamid', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='caller_id', full_name='CMsgClientVoiceCallPreAuthorize.caller_id', index=2,
       number=3, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='hangup', full_name='CMsgClientVoiceCallPreAuthorize.hangup', index=3,
       number=4, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -5688,8 +5817,8 @@ _CMSGCLIENTVOICECALLPREAUTHORIZE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=13587,
-  serialized_end=13705,
+  serialized_start=13603,
+  serialized_end=13721,
 )
 
 
@@ -5699,6 +5828,7 @@ _CMSGCLIENTVOICECALLPREAUTHORIZERESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='caller_steamid', full_name='CMsgClientVoiceCallPreAuthorizeResponse.caller_steamid', index=0,
@@ -5706,28 +5836,28 @@ _CMSGCLIENTVOICECALLPREAUTHORIZERESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='receiver_steamid', full_name='CMsgClientVoiceCallPreAuthorizeResponse.receiver_steamid', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='eresult', full_name='CMsgClientVoiceCallPreAuthorizeResponse.eresult', index=2,
       number=3, type=5, cpp_type=1, label=1,
       has_default_value=True, default_value=2,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='caller_id', full_name='CMsgClientVoiceCallPreAuthorizeResponse.caller_id', index=3,
       number=4, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -5740,8 +5870,8 @@ _CMSGCLIENTVOICECALLPREAUTHORIZERESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=13708,
-  serialized_end=13838,
+  serialized_start=13724,
+  serialized_end=13854,
 )
 
 
@@ -5751,6 +5881,7 @@ _CMSGBADGECRAFTEDNOTIFICATION = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CMsgBadgeCraftedNotification.appid', index=0,
@@ -5758,14 +5889,14 @@ _CMSGBADGECRAFTEDNOTIFICATION = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='badge_level', full_name='CMsgBadgeCraftedNotification.badge_level', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -5778,8 +5909,8 @@ _CMSGBADGECRAFTEDNOTIFICATION = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=13840,
-  serialized_end=13906,
+  serialized_start=13856,
+  serialized_end=13922,
 )
 
 _CMSGCLIENTRICHPRESENCEINFO_RICHPRESENCE.containing_type = _CMSGCLIENTRICHPRESENCEINFO
@@ -5926,896 +6057,896 @@ DESCRIPTOR.message_types_by_name['CMsgClientVoiceCallPreAuthorizeResponse'] = _C
 DESCRIPTOR.message_types_by_name['CMsgBadgeCraftedNotification'] = _CMSGBADGECRAFTEDNOTIFICATION
 _sym_db.RegisterFileDescriptor(DESCRIPTOR)
 
-CMsgClientUpdateUserGameInfo = _reflection.GeneratedProtocolMessageType('CMsgClientUpdateUserGameInfo', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTUPDATEUSERGAMEINFO,
-  __module__ = 'steammessages_clientserver_2_pb2'
+CMsgClientUpdateUserGameInfo = _reflection.GeneratedProtocolMessageType('CMsgClientUpdateUserGameInfo', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTUPDATEUSERGAMEINFO,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientUpdateUserGameInfo)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientUpdateUserGameInfo)
 
-CMsgClientRichPresenceUpload = _reflection.GeneratedProtocolMessageType('CMsgClientRichPresenceUpload', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTRICHPRESENCEUPLOAD,
-  __module__ = 'steammessages_clientserver_2_pb2'
+CMsgClientRichPresenceUpload = _reflection.GeneratedProtocolMessageType('CMsgClientRichPresenceUpload', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTRICHPRESENCEUPLOAD,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientRichPresenceUpload)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientRichPresenceUpload)
 
-CMsgClientRichPresenceRequest = _reflection.GeneratedProtocolMessageType('CMsgClientRichPresenceRequest', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTRICHPRESENCEREQUEST,
-  __module__ = 'steammessages_clientserver_2_pb2'
+CMsgClientRichPresenceRequest = _reflection.GeneratedProtocolMessageType('CMsgClientRichPresenceRequest', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTRICHPRESENCEREQUEST,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientRichPresenceRequest)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientRichPresenceRequest)
 
-CMsgClientRichPresenceInfo = _reflection.GeneratedProtocolMessageType('CMsgClientRichPresenceInfo', (_message.Message,), dict(
+CMsgClientRichPresenceInfo = _reflection.GeneratedProtocolMessageType('CMsgClientRichPresenceInfo', (_message.Message,), {
 
-  RichPresence = _reflection.GeneratedProtocolMessageType('RichPresence', (_message.Message,), dict(
-    DESCRIPTOR = _CMSGCLIENTRICHPRESENCEINFO_RICHPRESENCE,
-    __module__ = 'steammessages_clientserver_2_pb2'
+  'RichPresence' : _reflection.GeneratedProtocolMessageType('RichPresence', (_message.Message,), {
+    'DESCRIPTOR' : _CMSGCLIENTRICHPRESENCEINFO_RICHPRESENCE,
+    '__module__' : 'steammessages_clientserver_2_pb2'
     # @@protoc_insertion_point(class_scope:CMsgClientRichPresenceInfo.RichPresence)
-    ))
+    })
   ,
-  DESCRIPTOR = _CMSGCLIENTRICHPRESENCEINFO,
-  __module__ = 'steammessages_clientserver_2_pb2'
+  'DESCRIPTOR' : _CMSGCLIENTRICHPRESENCEINFO,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientRichPresenceInfo)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientRichPresenceInfo)
 _sym_db.RegisterMessage(CMsgClientRichPresenceInfo.RichPresence)
 
-CMsgClientCheckFileSignature = _reflection.GeneratedProtocolMessageType('CMsgClientCheckFileSignature', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTCHECKFILESIGNATURE,
-  __module__ = 'steammessages_clientserver_2_pb2'
+CMsgClientCheckFileSignature = _reflection.GeneratedProtocolMessageType('CMsgClientCheckFileSignature', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTCHECKFILESIGNATURE,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientCheckFileSignature)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientCheckFileSignature)
 
-CMsgClientCheckFileSignatureResponse = _reflection.GeneratedProtocolMessageType('CMsgClientCheckFileSignatureResponse', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTCHECKFILESIGNATURERESPONSE,
-  __module__ = 'steammessages_clientserver_2_pb2'
+CMsgClientCheckFileSignatureResponse = _reflection.GeneratedProtocolMessageType('CMsgClientCheckFileSignatureResponse', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTCHECKFILESIGNATURERESPONSE,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientCheckFileSignatureResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientCheckFileSignatureResponse)
 
-CMsgClientReadMachineAuth = _reflection.GeneratedProtocolMessageType('CMsgClientReadMachineAuth', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTREADMACHINEAUTH,
-  __module__ = 'steammessages_clientserver_2_pb2'
+CMsgClientReadMachineAuth = _reflection.GeneratedProtocolMessageType('CMsgClientReadMachineAuth', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTREADMACHINEAUTH,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientReadMachineAuth)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientReadMachineAuth)
 
-CMsgClientReadMachineAuthResponse = _reflection.GeneratedProtocolMessageType('CMsgClientReadMachineAuthResponse', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTREADMACHINEAUTHRESPONSE,
-  __module__ = 'steammessages_clientserver_2_pb2'
+CMsgClientReadMachineAuthResponse = _reflection.GeneratedProtocolMessageType('CMsgClientReadMachineAuthResponse', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTREADMACHINEAUTHRESPONSE,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientReadMachineAuthResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientReadMachineAuthResponse)
 
-CMsgClientUpdateMachineAuth = _reflection.GeneratedProtocolMessageType('CMsgClientUpdateMachineAuth', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTUPDATEMACHINEAUTH,
-  __module__ = 'steammessages_clientserver_2_pb2'
+CMsgClientUpdateMachineAuth = _reflection.GeneratedProtocolMessageType('CMsgClientUpdateMachineAuth', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTUPDATEMACHINEAUTH,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientUpdateMachineAuth)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientUpdateMachineAuth)
 
-CMsgClientUpdateMachineAuthResponse = _reflection.GeneratedProtocolMessageType('CMsgClientUpdateMachineAuthResponse', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTUPDATEMACHINEAUTHRESPONSE,
-  __module__ = 'steammessages_clientserver_2_pb2'
+CMsgClientUpdateMachineAuthResponse = _reflection.GeneratedProtocolMessageType('CMsgClientUpdateMachineAuthResponse', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTUPDATEMACHINEAUTHRESPONSE,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientUpdateMachineAuthResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientUpdateMachineAuthResponse)
 
-CMsgClientRequestMachineAuth = _reflection.GeneratedProtocolMessageType('CMsgClientRequestMachineAuth', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTREQUESTMACHINEAUTH,
-  __module__ = 'steammessages_clientserver_2_pb2'
+CMsgClientRequestMachineAuth = _reflection.GeneratedProtocolMessageType('CMsgClientRequestMachineAuth', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTREQUESTMACHINEAUTH,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientRequestMachineAuth)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientRequestMachineAuth)
 
-CMsgClientRequestMachineAuthResponse = _reflection.GeneratedProtocolMessageType('CMsgClientRequestMachineAuthResponse', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTREQUESTMACHINEAUTHRESPONSE,
-  __module__ = 'steammessages_clientserver_2_pb2'
+CMsgClientRequestMachineAuthResponse = _reflection.GeneratedProtocolMessageType('CMsgClientRequestMachineAuthResponse', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTREQUESTMACHINEAUTHRESPONSE,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientRequestMachineAuthResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientRequestMachineAuthResponse)
 
-CMsgClientRegisterKey = _reflection.GeneratedProtocolMessageType('CMsgClientRegisterKey', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTREGISTERKEY,
-  __module__ = 'steammessages_clientserver_2_pb2'
+CMsgClientRegisterKey = _reflection.GeneratedProtocolMessageType('CMsgClientRegisterKey', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTREGISTERKEY,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientRegisterKey)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientRegisterKey)
 
-CMsgClientPurchaseResponse = _reflection.GeneratedProtocolMessageType('CMsgClientPurchaseResponse', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTPURCHASERESPONSE,
-  __module__ = 'steammessages_clientserver_2_pb2'
+CMsgClientPurchaseResponse = _reflection.GeneratedProtocolMessageType('CMsgClientPurchaseResponse', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTPURCHASERESPONSE,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientPurchaseResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientPurchaseResponse)
 
-CMsgClientActivateOEMLicense = _reflection.GeneratedProtocolMessageType('CMsgClientActivateOEMLicense', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTACTIVATEOEMLICENSE,
-  __module__ = 'steammessages_clientserver_2_pb2'
+CMsgClientActivateOEMLicense = _reflection.GeneratedProtocolMessageType('CMsgClientActivateOEMLicense', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTACTIVATEOEMLICENSE,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientActivateOEMLicense)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientActivateOEMLicense)
 
-CMsgClientRegisterOEMMachine = _reflection.GeneratedProtocolMessageType('CMsgClientRegisterOEMMachine', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTREGISTEROEMMACHINE,
-  __module__ = 'steammessages_clientserver_2_pb2'
+CMsgClientRegisterOEMMachine = _reflection.GeneratedProtocolMessageType('CMsgClientRegisterOEMMachine', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTREGISTEROEMMACHINE,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientRegisterOEMMachine)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientRegisterOEMMachine)
 
-CMsgClientRegisterOEMMachineResponse = _reflection.GeneratedProtocolMessageType('CMsgClientRegisterOEMMachineResponse', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTREGISTEROEMMACHINERESPONSE,
-  __module__ = 'steammessages_clientserver_2_pb2'
+CMsgClientRegisterOEMMachineResponse = _reflection.GeneratedProtocolMessageType('CMsgClientRegisterOEMMachineResponse', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTREGISTEROEMMACHINERESPONSE,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientRegisterOEMMachineResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientRegisterOEMMachineResponse)
 
-CMsgClientPurchaseWithMachineID = _reflection.GeneratedProtocolMessageType('CMsgClientPurchaseWithMachineID', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTPURCHASEWITHMACHINEID,
-  __module__ = 'steammessages_clientserver_2_pb2'
+CMsgClientPurchaseWithMachineID = _reflection.GeneratedProtocolMessageType('CMsgClientPurchaseWithMachineID', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTPURCHASEWITHMACHINEID,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientPurchaseWithMachineID)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientPurchaseWithMachineID)
 
-CMsgTrading_InitiateTradeRequest = _reflection.GeneratedProtocolMessageType('CMsgTrading_InitiateTradeRequest', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGTRADING_INITIATETRADEREQUEST,
-  __module__ = 'steammessages_clientserver_2_pb2'
+CMsgTrading_InitiateTradeRequest = _reflection.GeneratedProtocolMessageType('CMsgTrading_InitiateTradeRequest', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGTRADING_INITIATETRADEREQUEST,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgTrading_InitiateTradeRequest)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgTrading_InitiateTradeRequest)
 
-CMsgTrading_InitiateTradeResponse = _reflection.GeneratedProtocolMessageType('CMsgTrading_InitiateTradeResponse', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGTRADING_INITIATETRADERESPONSE,
-  __module__ = 'steammessages_clientserver_2_pb2'
+CMsgTrading_InitiateTradeResponse = _reflection.GeneratedProtocolMessageType('CMsgTrading_InitiateTradeResponse', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGTRADING_INITIATETRADERESPONSE,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgTrading_InitiateTradeResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgTrading_InitiateTradeResponse)
 
-CMsgTrading_CancelTradeRequest = _reflection.GeneratedProtocolMessageType('CMsgTrading_CancelTradeRequest', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGTRADING_CANCELTRADEREQUEST,
-  __module__ = 'steammessages_clientserver_2_pb2'
+CMsgTrading_CancelTradeRequest = _reflection.GeneratedProtocolMessageType('CMsgTrading_CancelTradeRequest', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGTRADING_CANCELTRADEREQUEST,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgTrading_CancelTradeRequest)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgTrading_CancelTradeRequest)
 
-CMsgTrading_StartSession = _reflection.GeneratedProtocolMessageType('CMsgTrading_StartSession', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGTRADING_STARTSESSION,
-  __module__ = 'steammessages_clientserver_2_pb2'
+CMsgTrading_StartSession = _reflection.GeneratedProtocolMessageType('CMsgTrading_StartSession', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGTRADING_STARTSESSION,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgTrading_StartSession)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgTrading_StartSession)
 
-CMsgClientGetCDNAuthToken = _reflection.GeneratedProtocolMessageType('CMsgClientGetCDNAuthToken', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTGETCDNAUTHTOKEN,
-  __module__ = 'steammessages_clientserver_2_pb2'
+CMsgClientGetCDNAuthToken = _reflection.GeneratedProtocolMessageType('CMsgClientGetCDNAuthToken', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTGETCDNAUTHTOKEN,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientGetCDNAuthToken)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientGetCDNAuthToken)
 
-CMsgClientGetDepotDecryptionKey = _reflection.GeneratedProtocolMessageType('CMsgClientGetDepotDecryptionKey', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTGETDEPOTDECRYPTIONKEY,
-  __module__ = 'steammessages_clientserver_2_pb2'
+CMsgClientGetDepotDecryptionKey = _reflection.GeneratedProtocolMessageType('CMsgClientGetDepotDecryptionKey', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTGETDEPOTDECRYPTIONKEY,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientGetDepotDecryptionKey)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientGetDepotDecryptionKey)
 
-CMsgClientGetDepotDecryptionKeyResponse = _reflection.GeneratedProtocolMessageType('CMsgClientGetDepotDecryptionKeyResponse', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTGETDEPOTDECRYPTIONKEYRESPONSE,
-  __module__ = 'steammessages_clientserver_2_pb2'
+CMsgClientGetDepotDecryptionKeyResponse = _reflection.GeneratedProtocolMessageType('CMsgClientGetDepotDecryptionKeyResponse', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTGETDEPOTDECRYPTIONKEYRESPONSE,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientGetDepotDecryptionKeyResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientGetDepotDecryptionKeyResponse)
 
-CMsgClientCheckAppBetaPassword = _reflection.GeneratedProtocolMessageType('CMsgClientCheckAppBetaPassword', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTCHECKAPPBETAPASSWORD,
-  __module__ = 'steammessages_clientserver_2_pb2'
+CMsgClientCheckAppBetaPassword = _reflection.GeneratedProtocolMessageType('CMsgClientCheckAppBetaPassword', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTCHECKAPPBETAPASSWORD,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientCheckAppBetaPassword)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientCheckAppBetaPassword)
 
-CMsgClientCheckAppBetaPasswordResponse = _reflection.GeneratedProtocolMessageType('CMsgClientCheckAppBetaPasswordResponse', (_message.Message,), dict(
+CMsgClientCheckAppBetaPasswordResponse = _reflection.GeneratedProtocolMessageType('CMsgClientCheckAppBetaPasswordResponse', (_message.Message,), {
 
-  BetaPassword = _reflection.GeneratedProtocolMessageType('BetaPassword', (_message.Message,), dict(
-    DESCRIPTOR = _CMSGCLIENTCHECKAPPBETAPASSWORDRESPONSE_BETAPASSWORD,
-    __module__ = 'steammessages_clientserver_2_pb2'
+  'BetaPassword' : _reflection.GeneratedProtocolMessageType('BetaPassword', (_message.Message,), {
+    'DESCRIPTOR' : _CMSGCLIENTCHECKAPPBETAPASSWORDRESPONSE_BETAPASSWORD,
+    '__module__' : 'steammessages_clientserver_2_pb2'
     # @@protoc_insertion_point(class_scope:CMsgClientCheckAppBetaPasswordResponse.BetaPassword)
-    ))
+    })
   ,
-  DESCRIPTOR = _CMSGCLIENTCHECKAPPBETAPASSWORDRESPONSE,
-  __module__ = 'steammessages_clientserver_2_pb2'
+  'DESCRIPTOR' : _CMSGCLIENTCHECKAPPBETAPASSWORDRESPONSE,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientCheckAppBetaPasswordResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientCheckAppBetaPasswordResponse)
 _sym_db.RegisterMessage(CMsgClientCheckAppBetaPasswordResponse.BetaPassword)
 
-CMsgClientUpdateAppJobReport = _reflection.GeneratedProtocolMessageType('CMsgClientUpdateAppJobReport', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTUPDATEAPPJOBREPORT,
-  __module__ = 'steammessages_clientserver_2_pb2'
+CMsgClientUpdateAppJobReport = _reflection.GeneratedProtocolMessageType('CMsgClientUpdateAppJobReport', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTUPDATEAPPJOBREPORT,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientUpdateAppJobReport)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientUpdateAppJobReport)
 
-CMsgClientDPContentStatsReport = _reflection.GeneratedProtocolMessageType('CMsgClientDPContentStatsReport', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTDPCONTENTSTATSREPORT,
-  __module__ = 'steammessages_clientserver_2_pb2'
+CMsgClientDPContentStatsReport = _reflection.GeneratedProtocolMessageType('CMsgClientDPContentStatsReport', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTDPCONTENTSTATSREPORT,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientDPContentStatsReport)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientDPContentStatsReport)
 
-CMsgClientGetCDNAuthTokenResponse = _reflection.GeneratedProtocolMessageType('CMsgClientGetCDNAuthTokenResponse', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTGETCDNAUTHTOKENRESPONSE,
-  __module__ = 'steammessages_clientserver_2_pb2'
+CMsgClientGetCDNAuthTokenResponse = _reflection.GeneratedProtocolMessageType('CMsgClientGetCDNAuthTokenResponse', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTGETCDNAUTHTOKENRESPONSE,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientGetCDNAuthTokenResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientGetCDNAuthTokenResponse)
 
-CMsgDownloadRateStatistics = _reflection.GeneratedProtocolMessageType('CMsgDownloadRateStatistics', (_message.Message,), dict(
+CMsgDownloadRateStatistics = _reflection.GeneratedProtocolMessageType('CMsgDownloadRateStatistics', (_message.Message,), {
 
-  StatsInfo = _reflection.GeneratedProtocolMessageType('StatsInfo', (_message.Message,), dict(
-    DESCRIPTOR = _CMSGDOWNLOADRATESTATISTICS_STATSINFO,
-    __module__ = 'steammessages_clientserver_2_pb2'
+  'StatsInfo' : _reflection.GeneratedProtocolMessageType('StatsInfo', (_message.Message,), {
+    'DESCRIPTOR' : _CMSGDOWNLOADRATESTATISTICS_STATSINFO,
+    '__module__' : 'steammessages_clientserver_2_pb2'
     # @@protoc_insertion_point(class_scope:CMsgDownloadRateStatistics.StatsInfo)
-    ))
+    })
   ,
-  DESCRIPTOR = _CMSGDOWNLOADRATESTATISTICS,
-  __module__ = 'steammessages_clientserver_2_pb2'
+  'DESCRIPTOR' : _CMSGDOWNLOADRATESTATISTICS,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgDownloadRateStatistics)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgDownloadRateStatistics)
 _sym_db.RegisterMessage(CMsgDownloadRateStatistics.StatsInfo)
 
-CMsgClientRequestAccountData = _reflection.GeneratedProtocolMessageType('CMsgClientRequestAccountData', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTREQUESTACCOUNTDATA,
-  __module__ = 'steammessages_clientserver_2_pb2'
+CMsgClientRequestAccountData = _reflection.GeneratedProtocolMessageType('CMsgClientRequestAccountData', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTREQUESTACCOUNTDATA,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientRequestAccountData)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientRequestAccountData)
 
-CMsgClientRequestAccountDataResponse = _reflection.GeneratedProtocolMessageType('CMsgClientRequestAccountDataResponse', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTREQUESTACCOUNTDATARESPONSE,
-  __module__ = 'steammessages_clientserver_2_pb2'
+CMsgClientRequestAccountDataResponse = _reflection.GeneratedProtocolMessageType('CMsgClientRequestAccountDataResponse', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTREQUESTACCOUNTDATARESPONSE,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientRequestAccountDataResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientRequestAccountDataResponse)
 
-CMsgClientUGSGetGlobalStats = _reflection.GeneratedProtocolMessageType('CMsgClientUGSGetGlobalStats', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTUGSGETGLOBALSTATS,
-  __module__ = 'steammessages_clientserver_2_pb2'
+CMsgClientUGSGetGlobalStats = _reflection.GeneratedProtocolMessageType('CMsgClientUGSGetGlobalStats', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTUGSGETGLOBALSTATS,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientUGSGetGlobalStats)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientUGSGetGlobalStats)
 
-CMsgClientUGSGetGlobalStatsResponse = _reflection.GeneratedProtocolMessageType('CMsgClientUGSGetGlobalStatsResponse', (_message.Message,), dict(
+CMsgClientUGSGetGlobalStatsResponse = _reflection.GeneratedProtocolMessageType('CMsgClientUGSGetGlobalStatsResponse', (_message.Message,), {
 
-  Day = _reflection.GeneratedProtocolMessageType('Day', (_message.Message,), dict(
+  'Day' : _reflection.GeneratedProtocolMessageType('Day', (_message.Message,), {
 
-    Stat = _reflection.GeneratedProtocolMessageType('Stat', (_message.Message,), dict(
-      DESCRIPTOR = _CMSGCLIENTUGSGETGLOBALSTATSRESPONSE_DAY_STAT,
-      __module__ = 'steammessages_clientserver_2_pb2'
+    'Stat' : _reflection.GeneratedProtocolMessageType('Stat', (_message.Message,), {
+      'DESCRIPTOR' : _CMSGCLIENTUGSGETGLOBALSTATSRESPONSE_DAY_STAT,
+      '__module__' : 'steammessages_clientserver_2_pb2'
       # @@protoc_insertion_point(class_scope:CMsgClientUGSGetGlobalStatsResponse.Day.Stat)
-      ))
+      })
     ,
-    DESCRIPTOR = _CMSGCLIENTUGSGETGLOBALSTATSRESPONSE_DAY,
-    __module__ = 'steammessages_clientserver_2_pb2'
+    'DESCRIPTOR' : _CMSGCLIENTUGSGETGLOBALSTATSRESPONSE_DAY,
+    '__module__' : 'steammessages_clientserver_2_pb2'
     # @@protoc_insertion_point(class_scope:CMsgClientUGSGetGlobalStatsResponse.Day)
-    ))
+    })
   ,
-  DESCRIPTOR = _CMSGCLIENTUGSGETGLOBALSTATSRESPONSE,
-  __module__ = 'steammessages_clientserver_2_pb2'
+  'DESCRIPTOR' : _CMSGCLIENTUGSGETGLOBALSTATSRESPONSE,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientUGSGetGlobalStatsResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientUGSGetGlobalStatsResponse)
 _sym_db.RegisterMessage(CMsgClientUGSGetGlobalStatsResponse.Day)
 _sym_db.RegisterMessage(CMsgClientUGSGetGlobalStatsResponse.Day.Stat)
 
-CMsgClientRedeemGuestPass = _reflection.GeneratedProtocolMessageType('CMsgClientRedeemGuestPass', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTREDEEMGUESTPASS,
-  __module__ = 'steammessages_clientserver_2_pb2'
+CMsgClientRedeemGuestPass = _reflection.GeneratedProtocolMessageType('CMsgClientRedeemGuestPass', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTREDEEMGUESTPASS,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientRedeemGuestPass)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientRedeemGuestPass)
 
-CMsgClientRedeemGuestPassResponse = _reflection.GeneratedProtocolMessageType('CMsgClientRedeemGuestPassResponse', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTREDEEMGUESTPASSRESPONSE,
-  __module__ = 'steammessages_clientserver_2_pb2'
+CMsgClientRedeemGuestPassResponse = _reflection.GeneratedProtocolMessageType('CMsgClientRedeemGuestPassResponse', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTREDEEMGUESTPASSRESPONSE,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientRedeemGuestPassResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientRedeemGuestPassResponse)
 
-CMsgClientGetClanActivityCounts = _reflection.GeneratedProtocolMessageType('CMsgClientGetClanActivityCounts', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTGETCLANACTIVITYCOUNTS,
-  __module__ = 'steammessages_clientserver_2_pb2'
+CMsgClientGetClanActivityCounts = _reflection.GeneratedProtocolMessageType('CMsgClientGetClanActivityCounts', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTGETCLANACTIVITYCOUNTS,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientGetClanActivityCounts)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientGetClanActivityCounts)
 
-CMsgClientGetClanActivityCountsResponse = _reflection.GeneratedProtocolMessageType('CMsgClientGetClanActivityCountsResponse', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTGETCLANACTIVITYCOUNTSRESPONSE,
-  __module__ = 'steammessages_clientserver_2_pb2'
+CMsgClientGetClanActivityCountsResponse = _reflection.GeneratedProtocolMessageType('CMsgClientGetClanActivityCountsResponse', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTGETCLANACTIVITYCOUNTSRESPONSE,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientGetClanActivityCountsResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientGetClanActivityCountsResponse)
 
-CMsgClientOGSReportString = _reflection.GeneratedProtocolMessageType('CMsgClientOGSReportString', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTOGSREPORTSTRING,
-  __module__ = 'steammessages_clientserver_2_pb2'
+CMsgClientOGSReportString = _reflection.GeneratedProtocolMessageType('CMsgClientOGSReportString', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTOGSREPORTSTRING,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientOGSReportString)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientOGSReportString)
 
-CMsgClientOGSReportBug = _reflection.GeneratedProtocolMessageType('CMsgClientOGSReportBug', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTOGSREPORTBUG,
-  __module__ = 'steammessages_clientserver_2_pb2'
+CMsgClientOGSReportBug = _reflection.GeneratedProtocolMessageType('CMsgClientOGSReportBug', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTOGSREPORTBUG,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientOGSReportBug)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientOGSReportBug)
 
-CMsgClientSentLogs = _reflection.GeneratedProtocolMessageType('CMsgClientSentLogs', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTSENTLOGS,
-  __module__ = 'steammessages_clientserver_2_pb2'
+CMsgClientSentLogs = _reflection.GeneratedProtocolMessageType('CMsgClientSentLogs', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTSENTLOGS,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientSentLogs)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientSentLogs)
 
-CMsgGCClient = _reflection.GeneratedProtocolMessageType('CMsgGCClient', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGGCCLIENT,
-  __module__ = 'steammessages_clientserver_2_pb2'
+CMsgGCClient = _reflection.GeneratedProtocolMessageType('CMsgGCClient', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGGCCLIENT,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgGCClient)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgGCClient)
 
-CMsgClientRequestFreeLicense = _reflection.GeneratedProtocolMessageType('CMsgClientRequestFreeLicense', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTREQUESTFREELICENSE,
-  __module__ = 'steammessages_clientserver_2_pb2'
+CMsgClientRequestFreeLicense = _reflection.GeneratedProtocolMessageType('CMsgClientRequestFreeLicense', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTREQUESTFREELICENSE,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientRequestFreeLicense)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientRequestFreeLicense)
 
-CMsgClientRequestFreeLicenseResponse = _reflection.GeneratedProtocolMessageType('CMsgClientRequestFreeLicenseResponse', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTREQUESTFREELICENSERESPONSE,
-  __module__ = 'steammessages_clientserver_2_pb2'
+CMsgClientRequestFreeLicenseResponse = _reflection.GeneratedProtocolMessageType('CMsgClientRequestFreeLicenseResponse', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTREQUESTFREELICENSERESPONSE,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientRequestFreeLicenseResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientRequestFreeLicenseResponse)
 
-CMsgDRMDownloadRequestWithCrashData = _reflection.GeneratedProtocolMessageType('CMsgDRMDownloadRequestWithCrashData', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGDRMDOWNLOADREQUESTWITHCRASHDATA,
-  __module__ = 'steammessages_clientserver_2_pb2'
+CMsgDRMDownloadRequestWithCrashData = _reflection.GeneratedProtocolMessageType('CMsgDRMDownloadRequestWithCrashData', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGDRMDOWNLOADREQUESTWITHCRASHDATA,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgDRMDownloadRequestWithCrashData)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgDRMDownloadRequestWithCrashData)
 
-CMsgDRMDownloadResponse = _reflection.GeneratedProtocolMessageType('CMsgDRMDownloadResponse', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGDRMDOWNLOADRESPONSE,
-  __module__ = 'steammessages_clientserver_2_pb2'
+CMsgDRMDownloadResponse = _reflection.GeneratedProtocolMessageType('CMsgDRMDownloadResponse', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGDRMDOWNLOADRESPONSE,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgDRMDownloadResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgDRMDownloadResponse)
 
-CMsgDRMFinalResult = _reflection.GeneratedProtocolMessageType('CMsgDRMFinalResult', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGDRMFINALRESULT,
-  __module__ = 'steammessages_clientserver_2_pb2'
+CMsgDRMFinalResult = _reflection.GeneratedProtocolMessageType('CMsgDRMFinalResult', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGDRMFINALRESULT,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgDRMFinalResult)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgDRMFinalResult)
 
-CMsgClientDPCheckSpecialSurvey = _reflection.GeneratedProtocolMessageType('CMsgClientDPCheckSpecialSurvey', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTDPCHECKSPECIALSURVEY,
-  __module__ = 'steammessages_clientserver_2_pb2'
+CMsgClientDPCheckSpecialSurvey = _reflection.GeneratedProtocolMessageType('CMsgClientDPCheckSpecialSurvey', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTDPCHECKSPECIALSURVEY,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientDPCheckSpecialSurvey)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientDPCheckSpecialSurvey)
 
-CMsgClientDPCheckSpecialSurveyResponse = _reflection.GeneratedProtocolMessageType('CMsgClientDPCheckSpecialSurveyResponse', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTDPCHECKSPECIALSURVEYRESPONSE,
-  __module__ = 'steammessages_clientserver_2_pb2'
+CMsgClientDPCheckSpecialSurveyResponse = _reflection.GeneratedProtocolMessageType('CMsgClientDPCheckSpecialSurveyResponse', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTDPCHECKSPECIALSURVEYRESPONSE,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientDPCheckSpecialSurveyResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientDPCheckSpecialSurveyResponse)
 
-CMsgClientDPSendSpecialSurveyResponse = _reflection.GeneratedProtocolMessageType('CMsgClientDPSendSpecialSurveyResponse', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTDPSENDSPECIALSURVEYRESPONSE,
-  __module__ = 'steammessages_clientserver_2_pb2'
+CMsgClientDPSendSpecialSurveyResponse = _reflection.GeneratedProtocolMessageType('CMsgClientDPSendSpecialSurveyResponse', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTDPSENDSPECIALSURVEYRESPONSE,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientDPSendSpecialSurveyResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientDPSendSpecialSurveyResponse)
 
-CMsgClientDPSendSpecialSurveyResponseReply = _reflection.GeneratedProtocolMessageType('CMsgClientDPSendSpecialSurveyResponseReply', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTDPSENDSPECIALSURVEYRESPONSEREPLY,
-  __module__ = 'steammessages_clientserver_2_pb2'
+CMsgClientDPSendSpecialSurveyResponseReply = _reflection.GeneratedProtocolMessageType('CMsgClientDPSendSpecialSurveyResponseReply', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTDPSENDSPECIALSURVEYRESPONSEREPLY,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientDPSendSpecialSurveyResponseReply)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientDPSendSpecialSurveyResponseReply)
 
-CMsgClientRequestForgottenPasswordEmail = _reflection.GeneratedProtocolMessageType('CMsgClientRequestForgottenPasswordEmail', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTREQUESTFORGOTTENPASSWORDEMAIL,
-  __module__ = 'steammessages_clientserver_2_pb2'
+CMsgClientRequestForgottenPasswordEmail = _reflection.GeneratedProtocolMessageType('CMsgClientRequestForgottenPasswordEmail', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTREQUESTFORGOTTENPASSWORDEMAIL,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientRequestForgottenPasswordEmail)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientRequestForgottenPasswordEmail)
 
-CMsgClientRequestForgottenPasswordEmailResponse = _reflection.GeneratedProtocolMessageType('CMsgClientRequestForgottenPasswordEmailResponse', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTREQUESTFORGOTTENPASSWORDEMAILRESPONSE,
-  __module__ = 'steammessages_clientserver_2_pb2'
+CMsgClientRequestForgottenPasswordEmailResponse = _reflection.GeneratedProtocolMessageType('CMsgClientRequestForgottenPasswordEmailResponse', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTREQUESTFORGOTTENPASSWORDEMAILRESPONSE,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientRequestForgottenPasswordEmailResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientRequestForgottenPasswordEmailResponse)
 
-CMsgClientItemAnnouncements = _reflection.GeneratedProtocolMessageType('CMsgClientItemAnnouncements', (_message.Message,), dict(
+CMsgClientItemAnnouncements = _reflection.GeneratedProtocolMessageType('CMsgClientItemAnnouncements', (_message.Message,), {
 
-  UnseenItem = _reflection.GeneratedProtocolMessageType('UnseenItem', (_message.Message,), dict(
-    DESCRIPTOR = _CMSGCLIENTITEMANNOUNCEMENTS_UNSEENITEM,
-    __module__ = 'steammessages_clientserver_2_pb2'
+  'UnseenItem' : _reflection.GeneratedProtocolMessageType('UnseenItem', (_message.Message,), {
+    'DESCRIPTOR' : _CMSGCLIENTITEMANNOUNCEMENTS_UNSEENITEM,
+    '__module__' : 'steammessages_clientserver_2_pb2'
     # @@protoc_insertion_point(class_scope:CMsgClientItemAnnouncements.UnseenItem)
-    ))
+    })
   ,
-  DESCRIPTOR = _CMSGCLIENTITEMANNOUNCEMENTS,
-  __module__ = 'steammessages_clientserver_2_pb2'
+  'DESCRIPTOR' : _CMSGCLIENTITEMANNOUNCEMENTS,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientItemAnnouncements)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientItemAnnouncements)
 _sym_db.RegisterMessage(CMsgClientItemAnnouncements.UnseenItem)
 
-CMsgClientRequestItemAnnouncements = _reflection.GeneratedProtocolMessageType('CMsgClientRequestItemAnnouncements', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTREQUESTITEMANNOUNCEMENTS,
-  __module__ = 'steammessages_clientserver_2_pb2'
+CMsgClientRequestItemAnnouncements = _reflection.GeneratedProtocolMessageType('CMsgClientRequestItemAnnouncements', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTREQUESTITEMANNOUNCEMENTS,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientRequestItemAnnouncements)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientRequestItemAnnouncements)
 
-CMsgClientUserNotifications = _reflection.GeneratedProtocolMessageType('CMsgClientUserNotifications', (_message.Message,), dict(
+CMsgClientUserNotifications = _reflection.GeneratedProtocolMessageType('CMsgClientUserNotifications', (_message.Message,), {
 
-  Notification = _reflection.GeneratedProtocolMessageType('Notification', (_message.Message,), dict(
-    DESCRIPTOR = _CMSGCLIENTUSERNOTIFICATIONS_NOTIFICATION,
-    __module__ = 'steammessages_clientserver_2_pb2'
+  'Notification' : _reflection.GeneratedProtocolMessageType('Notification', (_message.Message,), {
+    'DESCRIPTOR' : _CMSGCLIENTUSERNOTIFICATIONS_NOTIFICATION,
+    '__module__' : 'steammessages_clientserver_2_pb2'
     # @@protoc_insertion_point(class_scope:CMsgClientUserNotifications.Notification)
-    ))
+    })
   ,
-  DESCRIPTOR = _CMSGCLIENTUSERNOTIFICATIONS,
-  __module__ = 'steammessages_clientserver_2_pb2'
+  'DESCRIPTOR' : _CMSGCLIENTUSERNOTIFICATIONS,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientUserNotifications)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientUserNotifications)
 _sym_db.RegisterMessage(CMsgClientUserNotifications.Notification)
 
-CMsgClientCommentNotifications = _reflection.GeneratedProtocolMessageType('CMsgClientCommentNotifications', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTCOMMENTNOTIFICATIONS,
-  __module__ = 'steammessages_clientserver_2_pb2'
+CMsgClientCommentNotifications = _reflection.GeneratedProtocolMessageType('CMsgClientCommentNotifications', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTCOMMENTNOTIFICATIONS,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientCommentNotifications)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientCommentNotifications)
 
-CMsgClientRequestCommentNotifications = _reflection.GeneratedProtocolMessageType('CMsgClientRequestCommentNotifications', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTREQUESTCOMMENTNOTIFICATIONS,
-  __module__ = 'steammessages_clientserver_2_pb2'
+CMsgClientRequestCommentNotifications = _reflection.GeneratedProtocolMessageType('CMsgClientRequestCommentNotifications', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTREQUESTCOMMENTNOTIFICATIONS,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientRequestCommentNotifications)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientRequestCommentNotifications)
 
-CMsgClientOfflineMessageNotification = _reflection.GeneratedProtocolMessageType('CMsgClientOfflineMessageNotification', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTOFFLINEMESSAGENOTIFICATION,
-  __module__ = 'steammessages_clientserver_2_pb2'
+CMsgClientOfflineMessageNotification = _reflection.GeneratedProtocolMessageType('CMsgClientOfflineMessageNotification', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTOFFLINEMESSAGENOTIFICATION,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientOfflineMessageNotification)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientOfflineMessageNotification)
 
-CMsgClientRequestOfflineMessageCount = _reflection.GeneratedProtocolMessageType('CMsgClientRequestOfflineMessageCount', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTREQUESTOFFLINEMESSAGECOUNT,
-  __module__ = 'steammessages_clientserver_2_pb2'
+CMsgClientRequestOfflineMessageCount = _reflection.GeneratedProtocolMessageType('CMsgClientRequestOfflineMessageCount', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTREQUESTOFFLINEMESSAGECOUNT,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientRequestOfflineMessageCount)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientRequestOfflineMessageCount)
 
-CMsgClientChatGetFriendMessageHistory = _reflection.GeneratedProtocolMessageType('CMsgClientChatGetFriendMessageHistory', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTCHATGETFRIENDMESSAGEHISTORY,
-  __module__ = 'steammessages_clientserver_2_pb2'
+CMsgClientChatGetFriendMessageHistory = _reflection.GeneratedProtocolMessageType('CMsgClientChatGetFriendMessageHistory', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTCHATGETFRIENDMESSAGEHISTORY,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientChatGetFriendMessageHistory)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientChatGetFriendMessageHistory)
 
-CMsgClientChatGetFriendMessageHistoryResponse = _reflection.GeneratedProtocolMessageType('CMsgClientChatGetFriendMessageHistoryResponse', (_message.Message,), dict(
+CMsgClientChatGetFriendMessageHistoryResponse = _reflection.GeneratedProtocolMessageType('CMsgClientChatGetFriendMessageHistoryResponse', (_message.Message,), {
 
-  FriendMessage = _reflection.GeneratedProtocolMessageType('FriendMessage', (_message.Message,), dict(
-    DESCRIPTOR = _CMSGCLIENTCHATGETFRIENDMESSAGEHISTORYRESPONSE_FRIENDMESSAGE,
-    __module__ = 'steammessages_clientserver_2_pb2'
+  'FriendMessage' : _reflection.GeneratedProtocolMessageType('FriendMessage', (_message.Message,), {
+    'DESCRIPTOR' : _CMSGCLIENTCHATGETFRIENDMESSAGEHISTORYRESPONSE_FRIENDMESSAGE,
+    '__module__' : 'steammessages_clientserver_2_pb2'
     # @@protoc_insertion_point(class_scope:CMsgClientChatGetFriendMessageHistoryResponse.FriendMessage)
-    ))
+    })
   ,
-  DESCRIPTOR = _CMSGCLIENTCHATGETFRIENDMESSAGEHISTORYRESPONSE,
-  __module__ = 'steammessages_clientserver_2_pb2'
+  'DESCRIPTOR' : _CMSGCLIENTCHATGETFRIENDMESSAGEHISTORYRESPONSE,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientChatGetFriendMessageHistoryResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientChatGetFriendMessageHistoryResponse)
 _sym_db.RegisterMessage(CMsgClientChatGetFriendMessageHistoryResponse.FriendMessage)
 
-CMsgClientChatGetFriendMessageHistoryForOfflineMessages = _reflection.GeneratedProtocolMessageType('CMsgClientChatGetFriendMessageHistoryForOfflineMessages', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTCHATGETFRIENDMESSAGEHISTORYFOROFFLINEMESSAGES,
-  __module__ = 'steammessages_clientserver_2_pb2'
+CMsgClientChatGetFriendMessageHistoryForOfflineMessages = _reflection.GeneratedProtocolMessageType('CMsgClientChatGetFriendMessageHistoryForOfflineMessages', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTCHATGETFRIENDMESSAGEHISTORYFOROFFLINEMESSAGES,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientChatGetFriendMessageHistoryForOfflineMessages)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientChatGetFriendMessageHistoryForOfflineMessages)
 
-CMsgClientFSGetFriendsSteamLevels = _reflection.GeneratedProtocolMessageType('CMsgClientFSGetFriendsSteamLevels', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTFSGETFRIENDSSTEAMLEVELS,
-  __module__ = 'steammessages_clientserver_2_pb2'
+CMsgClientFSGetFriendsSteamLevels = _reflection.GeneratedProtocolMessageType('CMsgClientFSGetFriendsSteamLevels', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTFSGETFRIENDSSTEAMLEVELS,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientFSGetFriendsSteamLevels)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientFSGetFriendsSteamLevels)
 
-CMsgClientFSGetFriendsSteamLevelsResponse = _reflection.GeneratedProtocolMessageType('CMsgClientFSGetFriendsSteamLevelsResponse', (_message.Message,), dict(
+CMsgClientFSGetFriendsSteamLevelsResponse = _reflection.GeneratedProtocolMessageType('CMsgClientFSGetFriendsSteamLevelsResponse', (_message.Message,), {
 
-  Friend = _reflection.GeneratedProtocolMessageType('Friend', (_message.Message,), dict(
-    DESCRIPTOR = _CMSGCLIENTFSGETFRIENDSSTEAMLEVELSRESPONSE_FRIEND,
-    __module__ = 'steammessages_clientserver_2_pb2'
+  'Friend' : _reflection.GeneratedProtocolMessageType('Friend', (_message.Message,), {
+    'DESCRIPTOR' : _CMSGCLIENTFSGETFRIENDSSTEAMLEVELSRESPONSE_FRIEND,
+    '__module__' : 'steammessages_clientserver_2_pb2'
     # @@protoc_insertion_point(class_scope:CMsgClientFSGetFriendsSteamLevelsResponse.Friend)
-    ))
+    })
   ,
-  DESCRIPTOR = _CMSGCLIENTFSGETFRIENDSSTEAMLEVELSRESPONSE,
-  __module__ = 'steammessages_clientserver_2_pb2'
+  'DESCRIPTOR' : _CMSGCLIENTFSGETFRIENDSSTEAMLEVELSRESPONSE,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientFSGetFriendsSteamLevelsResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientFSGetFriendsSteamLevelsResponse)
 _sym_db.RegisterMessage(CMsgClientFSGetFriendsSteamLevelsResponse.Friend)
 
-CMsgClientEmailAddrInfo = _reflection.GeneratedProtocolMessageType('CMsgClientEmailAddrInfo', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTEMAILADDRINFO,
-  __module__ = 'steammessages_clientserver_2_pb2'
+CMsgClientEmailAddrInfo = _reflection.GeneratedProtocolMessageType('CMsgClientEmailAddrInfo', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTEMAILADDRINFO,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientEmailAddrInfo)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientEmailAddrInfo)
 
-CMsgCREItemVoteSummary = _reflection.GeneratedProtocolMessageType('CMsgCREItemVoteSummary', (_message.Message,), dict(
+CMsgCREItemVoteSummary = _reflection.GeneratedProtocolMessageType('CMsgCREItemVoteSummary', (_message.Message,), {
 
-  PublishedFileId = _reflection.GeneratedProtocolMessageType('PublishedFileId', (_message.Message,), dict(
-    DESCRIPTOR = _CMSGCREITEMVOTESUMMARY_PUBLISHEDFILEID,
-    __module__ = 'steammessages_clientserver_2_pb2'
+  'PublishedFileId' : _reflection.GeneratedProtocolMessageType('PublishedFileId', (_message.Message,), {
+    'DESCRIPTOR' : _CMSGCREITEMVOTESUMMARY_PUBLISHEDFILEID,
+    '__module__' : 'steammessages_clientserver_2_pb2'
     # @@protoc_insertion_point(class_scope:CMsgCREItemVoteSummary.PublishedFileId)
-    ))
+    })
   ,
-  DESCRIPTOR = _CMSGCREITEMVOTESUMMARY,
-  __module__ = 'steammessages_clientserver_2_pb2'
+  'DESCRIPTOR' : _CMSGCREITEMVOTESUMMARY,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgCREItemVoteSummary)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgCREItemVoteSummary)
 _sym_db.RegisterMessage(CMsgCREItemVoteSummary.PublishedFileId)
 
-CMsgCREItemVoteSummaryResponse = _reflection.GeneratedProtocolMessageType('CMsgCREItemVoteSummaryResponse', (_message.Message,), dict(
+CMsgCREItemVoteSummaryResponse = _reflection.GeneratedProtocolMessageType('CMsgCREItemVoteSummaryResponse', (_message.Message,), {
 
-  ItemVoteSummary = _reflection.GeneratedProtocolMessageType('ItemVoteSummary', (_message.Message,), dict(
-    DESCRIPTOR = _CMSGCREITEMVOTESUMMARYRESPONSE_ITEMVOTESUMMARY,
-    __module__ = 'steammessages_clientserver_2_pb2'
+  'ItemVoteSummary' : _reflection.GeneratedProtocolMessageType('ItemVoteSummary', (_message.Message,), {
+    'DESCRIPTOR' : _CMSGCREITEMVOTESUMMARYRESPONSE_ITEMVOTESUMMARY,
+    '__module__' : 'steammessages_clientserver_2_pb2'
     # @@protoc_insertion_point(class_scope:CMsgCREItemVoteSummaryResponse.ItemVoteSummary)
-    ))
+    })
   ,
-  DESCRIPTOR = _CMSGCREITEMVOTESUMMARYRESPONSE,
-  __module__ = 'steammessages_clientserver_2_pb2'
+  'DESCRIPTOR' : _CMSGCREITEMVOTESUMMARYRESPONSE,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgCREItemVoteSummaryResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgCREItemVoteSummaryResponse)
 _sym_db.RegisterMessage(CMsgCREItemVoteSummaryResponse.ItemVoteSummary)
 
-CMsgCREUpdateUserPublishedItemVote = _reflection.GeneratedProtocolMessageType('CMsgCREUpdateUserPublishedItemVote', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCREUPDATEUSERPUBLISHEDITEMVOTE,
-  __module__ = 'steammessages_clientserver_2_pb2'
+CMsgCREUpdateUserPublishedItemVote = _reflection.GeneratedProtocolMessageType('CMsgCREUpdateUserPublishedItemVote', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCREUPDATEUSERPUBLISHEDITEMVOTE,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgCREUpdateUserPublishedItemVote)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgCREUpdateUserPublishedItemVote)
 
-CMsgCREUpdateUserPublishedItemVoteResponse = _reflection.GeneratedProtocolMessageType('CMsgCREUpdateUserPublishedItemVoteResponse', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCREUPDATEUSERPUBLISHEDITEMVOTERESPONSE,
-  __module__ = 'steammessages_clientserver_2_pb2'
+CMsgCREUpdateUserPublishedItemVoteResponse = _reflection.GeneratedProtocolMessageType('CMsgCREUpdateUserPublishedItemVoteResponse', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCREUPDATEUSERPUBLISHEDITEMVOTERESPONSE,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgCREUpdateUserPublishedItemVoteResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgCREUpdateUserPublishedItemVoteResponse)
 
-CMsgCREGetUserPublishedItemVoteDetails = _reflection.GeneratedProtocolMessageType('CMsgCREGetUserPublishedItemVoteDetails', (_message.Message,), dict(
+CMsgCREGetUserPublishedItemVoteDetails = _reflection.GeneratedProtocolMessageType('CMsgCREGetUserPublishedItemVoteDetails', (_message.Message,), {
 
-  PublishedFileId = _reflection.GeneratedProtocolMessageType('PublishedFileId', (_message.Message,), dict(
-    DESCRIPTOR = _CMSGCREGETUSERPUBLISHEDITEMVOTEDETAILS_PUBLISHEDFILEID,
-    __module__ = 'steammessages_clientserver_2_pb2'
+  'PublishedFileId' : _reflection.GeneratedProtocolMessageType('PublishedFileId', (_message.Message,), {
+    'DESCRIPTOR' : _CMSGCREGETUSERPUBLISHEDITEMVOTEDETAILS_PUBLISHEDFILEID,
+    '__module__' : 'steammessages_clientserver_2_pb2'
     # @@protoc_insertion_point(class_scope:CMsgCREGetUserPublishedItemVoteDetails.PublishedFileId)
-    ))
+    })
   ,
-  DESCRIPTOR = _CMSGCREGETUSERPUBLISHEDITEMVOTEDETAILS,
-  __module__ = 'steammessages_clientserver_2_pb2'
+  'DESCRIPTOR' : _CMSGCREGETUSERPUBLISHEDITEMVOTEDETAILS,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgCREGetUserPublishedItemVoteDetails)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgCREGetUserPublishedItemVoteDetails)
 _sym_db.RegisterMessage(CMsgCREGetUserPublishedItemVoteDetails.PublishedFileId)
 
-CMsgCREGetUserPublishedItemVoteDetailsResponse = _reflection.GeneratedProtocolMessageType('CMsgCREGetUserPublishedItemVoteDetailsResponse', (_message.Message,), dict(
+CMsgCREGetUserPublishedItemVoteDetailsResponse = _reflection.GeneratedProtocolMessageType('CMsgCREGetUserPublishedItemVoteDetailsResponse', (_message.Message,), {
 
-  UserItemVoteDetail = _reflection.GeneratedProtocolMessageType('UserItemVoteDetail', (_message.Message,), dict(
-    DESCRIPTOR = _CMSGCREGETUSERPUBLISHEDITEMVOTEDETAILSRESPONSE_USERITEMVOTEDETAIL,
-    __module__ = 'steammessages_clientserver_2_pb2'
+  'UserItemVoteDetail' : _reflection.GeneratedProtocolMessageType('UserItemVoteDetail', (_message.Message,), {
+    'DESCRIPTOR' : _CMSGCREGETUSERPUBLISHEDITEMVOTEDETAILSRESPONSE_USERITEMVOTEDETAIL,
+    '__module__' : 'steammessages_clientserver_2_pb2'
     # @@protoc_insertion_point(class_scope:CMsgCREGetUserPublishedItemVoteDetailsResponse.UserItemVoteDetail)
-    ))
+    })
   ,
-  DESCRIPTOR = _CMSGCREGETUSERPUBLISHEDITEMVOTEDETAILSRESPONSE,
-  __module__ = 'steammessages_clientserver_2_pb2'
+  'DESCRIPTOR' : _CMSGCREGETUSERPUBLISHEDITEMVOTEDETAILSRESPONSE,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgCREGetUserPublishedItemVoteDetailsResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgCREGetUserPublishedItemVoteDetailsResponse)
 _sym_db.RegisterMessage(CMsgCREGetUserPublishedItemVoteDetailsResponse.UserItemVoteDetail)
 
-CMsgFSGetFollowerCount = _reflection.GeneratedProtocolMessageType('CMsgFSGetFollowerCount', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGFSGETFOLLOWERCOUNT,
-  __module__ = 'steammessages_clientserver_2_pb2'
+CMsgFSGetFollowerCount = _reflection.GeneratedProtocolMessageType('CMsgFSGetFollowerCount', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGFSGETFOLLOWERCOUNT,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgFSGetFollowerCount)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgFSGetFollowerCount)
 
-CMsgFSGetFollowerCountResponse = _reflection.GeneratedProtocolMessageType('CMsgFSGetFollowerCountResponse', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGFSGETFOLLOWERCOUNTRESPONSE,
-  __module__ = 'steammessages_clientserver_2_pb2'
+CMsgFSGetFollowerCountResponse = _reflection.GeneratedProtocolMessageType('CMsgFSGetFollowerCountResponse', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGFSGETFOLLOWERCOUNTRESPONSE,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgFSGetFollowerCountResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgFSGetFollowerCountResponse)
 
-CMsgFSGetIsFollowing = _reflection.GeneratedProtocolMessageType('CMsgFSGetIsFollowing', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGFSGETISFOLLOWING,
-  __module__ = 'steammessages_clientserver_2_pb2'
+CMsgFSGetIsFollowing = _reflection.GeneratedProtocolMessageType('CMsgFSGetIsFollowing', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGFSGETISFOLLOWING,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgFSGetIsFollowing)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgFSGetIsFollowing)
 
-CMsgFSGetIsFollowingResponse = _reflection.GeneratedProtocolMessageType('CMsgFSGetIsFollowingResponse', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGFSGETISFOLLOWINGRESPONSE,
-  __module__ = 'steammessages_clientserver_2_pb2'
+CMsgFSGetIsFollowingResponse = _reflection.GeneratedProtocolMessageType('CMsgFSGetIsFollowingResponse', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGFSGETISFOLLOWINGRESPONSE,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgFSGetIsFollowingResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgFSGetIsFollowingResponse)
 
-CMsgFSEnumerateFollowingList = _reflection.GeneratedProtocolMessageType('CMsgFSEnumerateFollowingList', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGFSENUMERATEFOLLOWINGLIST,
-  __module__ = 'steammessages_clientserver_2_pb2'
+CMsgFSEnumerateFollowingList = _reflection.GeneratedProtocolMessageType('CMsgFSEnumerateFollowingList', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGFSENUMERATEFOLLOWINGLIST,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgFSEnumerateFollowingList)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgFSEnumerateFollowingList)
 
-CMsgFSEnumerateFollowingListResponse = _reflection.GeneratedProtocolMessageType('CMsgFSEnumerateFollowingListResponse', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGFSENUMERATEFOLLOWINGLISTRESPONSE,
-  __module__ = 'steammessages_clientserver_2_pb2'
+CMsgFSEnumerateFollowingListResponse = _reflection.GeneratedProtocolMessageType('CMsgFSEnumerateFollowingListResponse', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGFSENUMERATEFOLLOWINGLISTRESPONSE,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgFSEnumerateFollowingListResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgFSEnumerateFollowingListResponse)
 
-CMsgDPGetNumberOfCurrentPlayers = _reflection.GeneratedProtocolMessageType('CMsgDPGetNumberOfCurrentPlayers', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGDPGETNUMBEROFCURRENTPLAYERS,
-  __module__ = 'steammessages_clientserver_2_pb2'
+CMsgDPGetNumberOfCurrentPlayers = _reflection.GeneratedProtocolMessageType('CMsgDPGetNumberOfCurrentPlayers', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGDPGETNUMBEROFCURRENTPLAYERS,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgDPGetNumberOfCurrentPlayers)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgDPGetNumberOfCurrentPlayers)
 
-CMsgDPGetNumberOfCurrentPlayersResponse = _reflection.GeneratedProtocolMessageType('CMsgDPGetNumberOfCurrentPlayersResponse', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGDPGETNUMBEROFCURRENTPLAYERSRESPONSE,
-  __module__ = 'steammessages_clientserver_2_pb2'
+CMsgDPGetNumberOfCurrentPlayersResponse = _reflection.GeneratedProtocolMessageType('CMsgDPGetNumberOfCurrentPlayersResponse', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGDPGETNUMBEROFCURRENTPLAYERSRESPONSE,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgDPGetNumberOfCurrentPlayersResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgDPGetNumberOfCurrentPlayersResponse)
 
-CMsgClientFriendUserStatusPublished = _reflection.GeneratedProtocolMessageType('CMsgClientFriendUserStatusPublished', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTFRIENDUSERSTATUSPUBLISHED,
-  __module__ = 'steammessages_clientserver_2_pb2'
+CMsgClientFriendUserStatusPublished = _reflection.GeneratedProtocolMessageType('CMsgClientFriendUserStatusPublished', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTFRIENDUSERSTATUSPUBLISHED,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientFriendUserStatusPublished)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientFriendUserStatusPublished)
 
-CMsgClientServiceMethodLegacy = _reflection.GeneratedProtocolMessageType('CMsgClientServiceMethodLegacy', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTSERVICEMETHODLEGACY,
-  __module__ = 'steammessages_clientserver_2_pb2'
+CMsgClientServiceMethodLegacy = _reflection.GeneratedProtocolMessageType('CMsgClientServiceMethodLegacy', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTSERVICEMETHODLEGACY,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientServiceMethodLegacy)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientServiceMethodLegacy)
 
-CMsgClientServiceMethodLegacyResponse = _reflection.GeneratedProtocolMessageType('CMsgClientServiceMethodLegacyResponse', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTSERVICEMETHODLEGACYRESPONSE,
-  __module__ = 'steammessages_clientserver_2_pb2'
+CMsgClientServiceMethodLegacyResponse = _reflection.GeneratedProtocolMessageType('CMsgClientServiceMethodLegacyResponse', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTSERVICEMETHODLEGACYRESPONSE,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientServiceMethodLegacyResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientServiceMethodLegacyResponse)
 
-CMsgClientUIMode = _reflection.GeneratedProtocolMessageType('CMsgClientUIMode', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTUIMODE,
-  __module__ = 'steammessages_clientserver_2_pb2'
+CMsgClientUIMode = _reflection.GeneratedProtocolMessageType('CMsgClientUIMode', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTUIMODE,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientUIMode)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientUIMode)
 
-CMsgClientVanityURLChangedNotification = _reflection.GeneratedProtocolMessageType('CMsgClientVanityURLChangedNotification', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTVANITYURLCHANGEDNOTIFICATION,
-  __module__ = 'steammessages_clientserver_2_pb2'
+CMsgClientVanityURLChangedNotification = _reflection.GeneratedProtocolMessageType('CMsgClientVanityURLChangedNotification', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTVANITYURLCHANGEDNOTIFICATION,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientVanityURLChangedNotification)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientVanityURLChangedNotification)
 
-CMsgClientAuthorizeLocalDeviceRequest = _reflection.GeneratedProtocolMessageType('CMsgClientAuthorizeLocalDeviceRequest', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTAUTHORIZELOCALDEVICEREQUEST,
-  __module__ = 'steammessages_clientserver_2_pb2'
+CMsgClientAuthorizeLocalDeviceRequest = _reflection.GeneratedProtocolMessageType('CMsgClientAuthorizeLocalDeviceRequest', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTAUTHORIZELOCALDEVICEREQUEST,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientAuthorizeLocalDeviceRequest)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientAuthorizeLocalDeviceRequest)
 
-CMsgClientAuthorizeLocalDevice = _reflection.GeneratedProtocolMessageType('CMsgClientAuthorizeLocalDevice', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTAUTHORIZELOCALDEVICE,
-  __module__ = 'steammessages_clientserver_2_pb2'
+CMsgClientAuthorizeLocalDevice = _reflection.GeneratedProtocolMessageType('CMsgClientAuthorizeLocalDevice', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTAUTHORIZELOCALDEVICE,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientAuthorizeLocalDevice)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientAuthorizeLocalDevice)
 
-CMsgClientAuthorizeLocalDeviceNotification = _reflection.GeneratedProtocolMessageType('CMsgClientAuthorizeLocalDeviceNotification', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTAUTHORIZELOCALDEVICENOTIFICATION,
-  __module__ = 'steammessages_clientserver_2_pb2'
+CMsgClientAuthorizeLocalDeviceNotification = _reflection.GeneratedProtocolMessageType('CMsgClientAuthorizeLocalDeviceNotification', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTAUTHORIZELOCALDEVICENOTIFICATION,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientAuthorizeLocalDeviceNotification)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientAuthorizeLocalDeviceNotification)
 
-CMsgClientDeauthorizeDeviceRequest = _reflection.GeneratedProtocolMessageType('CMsgClientDeauthorizeDeviceRequest', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTDEAUTHORIZEDEVICEREQUEST,
-  __module__ = 'steammessages_clientserver_2_pb2'
+CMsgClientDeauthorizeDeviceRequest = _reflection.GeneratedProtocolMessageType('CMsgClientDeauthorizeDeviceRequest', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTDEAUTHORIZEDEVICEREQUEST,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientDeauthorizeDeviceRequest)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientDeauthorizeDeviceRequest)
 
-CMsgClientDeauthorizeDevice = _reflection.GeneratedProtocolMessageType('CMsgClientDeauthorizeDevice', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTDEAUTHORIZEDEVICE,
-  __module__ = 'steammessages_clientserver_2_pb2'
+CMsgClientDeauthorizeDevice = _reflection.GeneratedProtocolMessageType('CMsgClientDeauthorizeDevice', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTDEAUTHORIZEDEVICE,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientDeauthorizeDevice)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientDeauthorizeDevice)
 
-CMsgClientUseLocalDeviceAuthorizations = _reflection.GeneratedProtocolMessageType('CMsgClientUseLocalDeviceAuthorizations', (_message.Message,), dict(
+CMsgClientUseLocalDeviceAuthorizations = _reflection.GeneratedProtocolMessageType('CMsgClientUseLocalDeviceAuthorizations', (_message.Message,), {
 
-  DeviceToken = _reflection.GeneratedProtocolMessageType('DeviceToken', (_message.Message,), dict(
-    DESCRIPTOR = _CMSGCLIENTUSELOCALDEVICEAUTHORIZATIONS_DEVICETOKEN,
-    __module__ = 'steammessages_clientserver_2_pb2'
+  'DeviceToken' : _reflection.GeneratedProtocolMessageType('DeviceToken', (_message.Message,), {
+    'DESCRIPTOR' : _CMSGCLIENTUSELOCALDEVICEAUTHORIZATIONS_DEVICETOKEN,
+    '__module__' : 'steammessages_clientserver_2_pb2'
     # @@protoc_insertion_point(class_scope:CMsgClientUseLocalDeviceAuthorizations.DeviceToken)
-    ))
+    })
   ,
-  DESCRIPTOR = _CMSGCLIENTUSELOCALDEVICEAUTHORIZATIONS,
-  __module__ = 'steammessages_clientserver_2_pb2'
+  'DESCRIPTOR' : _CMSGCLIENTUSELOCALDEVICEAUTHORIZATIONS,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientUseLocalDeviceAuthorizations)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientUseLocalDeviceAuthorizations)
 _sym_db.RegisterMessage(CMsgClientUseLocalDeviceAuthorizations.DeviceToken)
 
-CMsgClientGetAuthorizedDevices = _reflection.GeneratedProtocolMessageType('CMsgClientGetAuthorizedDevices', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTGETAUTHORIZEDDEVICES,
-  __module__ = 'steammessages_clientserver_2_pb2'
+CMsgClientGetAuthorizedDevices = _reflection.GeneratedProtocolMessageType('CMsgClientGetAuthorizedDevices', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTGETAUTHORIZEDDEVICES,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientGetAuthorizedDevices)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientGetAuthorizedDevices)
 
-CMsgClientGetAuthorizedDevicesResponse = _reflection.GeneratedProtocolMessageType('CMsgClientGetAuthorizedDevicesResponse', (_message.Message,), dict(
+CMsgClientGetAuthorizedDevicesResponse = _reflection.GeneratedProtocolMessageType('CMsgClientGetAuthorizedDevicesResponse', (_message.Message,), {
 
-  AuthorizedDevice = _reflection.GeneratedProtocolMessageType('AuthorizedDevice', (_message.Message,), dict(
-    DESCRIPTOR = _CMSGCLIENTGETAUTHORIZEDDEVICESRESPONSE_AUTHORIZEDDEVICE,
-    __module__ = 'steammessages_clientserver_2_pb2'
+  'AuthorizedDevice' : _reflection.GeneratedProtocolMessageType('AuthorizedDevice', (_message.Message,), {
+    'DESCRIPTOR' : _CMSGCLIENTGETAUTHORIZEDDEVICESRESPONSE_AUTHORIZEDDEVICE,
+    '__module__' : 'steammessages_clientserver_2_pb2'
     # @@protoc_insertion_point(class_scope:CMsgClientGetAuthorizedDevicesResponse.AuthorizedDevice)
-    ))
+    })
   ,
-  DESCRIPTOR = _CMSGCLIENTGETAUTHORIZEDDEVICESRESPONSE,
-  __module__ = 'steammessages_clientserver_2_pb2'
+  'DESCRIPTOR' : _CMSGCLIENTGETAUTHORIZEDDEVICESRESPONSE,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientGetAuthorizedDevicesResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientGetAuthorizedDevicesResponse)
 _sym_db.RegisterMessage(CMsgClientGetAuthorizedDevicesResponse.AuthorizedDevice)
 
-CMsgClientSharedLibraryLockStatus = _reflection.GeneratedProtocolMessageType('CMsgClientSharedLibraryLockStatus', (_message.Message,), dict(
+CMsgClientSharedLibraryLockStatus = _reflection.GeneratedProtocolMessageType('CMsgClientSharedLibraryLockStatus', (_message.Message,), {
 
-  LockedLibrary = _reflection.GeneratedProtocolMessageType('LockedLibrary', (_message.Message,), dict(
-    DESCRIPTOR = _CMSGCLIENTSHAREDLIBRARYLOCKSTATUS_LOCKEDLIBRARY,
-    __module__ = 'steammessages_clientserver_2_pb2'
+  'LockedLibrary' : _reflection.GeneratedProtocolMessageType('LockedLibrary', (_message.Message,), {
+    'DESCRIPTOR' : _CMSGCLIENTSHAREDLIBRARYLOCKSTATUS_LOCKEDLIBRARY,
+    '__module__' : 'steammessages_clientserver_2_pb2'
     # @@protoc_insertion_point(class_scope:CMsgClientSharedLibraryLockStatus.LockedLibrary)
-    ))
+    })
   ,
-  DESCRIPTOR = _CMSGCLIENTSHAREDLIBRARYLOCKSTATUS,
-  __module__ = 'steammessages_clientserver_2_pb2'
+  'DESCRIPTOR' : _CMSGCLIENTSHAREDLIBRARYLOCKSTATUS,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientSharedLibraryLockStatus)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientSharedLibraryLockStatus)
 _sym_db.RegisterMessage(CMsgClientSharedLibraryLockStatus.LockedLibrary)
 
-CMsgClientSharedLibraryStopPlaying = _reflection.GeneratedProtocolMessageType('CMsgClientSharedLibraryStopPlaying', (_message.Message,), dict(
+CMsgClientSharedLibraryStopPlaying = _reflection.GeneratedProtocolMessageType('CMsgClientSharedLibraryStopPlaying', (_message.Message,), {
 
-  StopApp = _reflection.GeneratedProtocolMessageType('StopApp', (_message.Message,), dict(
-    DESCRIPTOR = _CMSGCLIENTSHAREDLIBRARYSTOPPLAYING_STOPAPP,
-    __module__ = 'steammessages_clientserver_2_pb2'
+  'StopApp' : _reflection.GeneratedProtocolMessageType('StopApp', (_message.Message,), {
+    'DESCRIPTOR' : _CMSGCLIENTSHAREDLIBRARYSTOPPLAYING_STOPAPP,
+    '__module__' : 'steammessages_clientserver_2_pb2'
     # @@protoc_insertion_point(class_scope:CMsgClientSharedLibraryStopPlaying.StopApp)
-    ))
+    })
   ,
-  DESCRIPTOR = _CMSGCLIENTSHAREDLIBRARYSTOPPLAYING,
-  __module__ = 'steammessages_clientserver_2_pb2'
+  'DESCRIPTOR' : _CMSGCLIENTSHAREDLIBRARYSTOPPLAYING,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientSharedLibraryStopPlaying)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientSharedLibraryStopPlaying)
 _sym_db.RegisterMessage(CMsgClientSharedLibraryStopPlaying.StopApp)
 
-CMsgClientServiceCall = _reflection.GeneratedProtocolMessageType('CMsgClientServiceCall', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTSERVICECALL,
-  __module__ = 'steammessages_clientserver_2_pb2'
+CMsgClientServiceCall = _reflection.GeneratedProtocolMessageType('CMsgClientServiceCall', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTSERVICECALL,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientServiceCall)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientServiceCall)
 
-CMsgClientServiceModule = _reflection.GeneratedProtocolMessageType('CMsgClientServiceModule', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTSERVICEMODULE,
-  __module__ = 'steammessages_clientserver_2_pb2'
+CMsgClientServiceModule = _reflection.GeneratedProtocolMessageType('CMsgClientServiceModule', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTSERVICEMODULE,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientServiceModule)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientServiceModule)
 
-CMsgClientServiceCallResponse = _reflection.GeneratedProtocolMessageType('CMsgClientServiceCallResponse', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTSERVICECALLRESPONSE,
-  __module__ = 'steammessages_clientserver_2_pb2'
+CMsgClientServiceCallResponse = _reflection.GeneratedProtocolMessageType('CMsgClientServiceCallResponse', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTSERVICECALLRESPONSE,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientServiceCallResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientServiceCallResponse)
 
-CMsgAMUnlockStreaming = _reflection.GeneratedProtocolMessageType('CMsgAMUnlockStreaming', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGAMUNLOCKSTREAMING,
-  __module__ = 'steammessages_clientserver_2_pb2'
+CMsgAMUnlockStreaming = _reflection.GeneratedProtocolMessageType('CMsgAMUnlockStreaming', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGAMUNLOCKSTREAMING,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgAMUnlockStreaming)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgAMUnlockStreaming)
 
-CMsgAMUnlockStreamingResponse = _reflection.GeneratedProtocolMessageType('CMsgAMUnlockStreamingResponse', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGAMUNLOCKSTREAMINGRESPONSE,
-  __module__ = 'steammessages_clientserver_2_pb2'
+CMsgAMUnlockStreamingResponse = _reflection.GeneratedProtocolMessageType('CMsgAMUnlockStreamingResponse', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGAMUNLOCKSTREAMINGRESPONSE,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgAMUnlockStreamingResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgAMUnlockStreamingResponse)
 
-CMsgAMUnlockHEVC = _reflection.GeneratedProtocolMessageType('CMsgAMUnlockHEVC', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGAMUNLOCKHEVC,
-  __module__ = 'steammessages_clientserver_2_pb2'
+CMsgAMUnlockHEVC = _reflection.GeneratedProtocolMessageType('CMsgAMUnlockHEVC', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGAMUNLOCKHEVC,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgAMUnlockHEVC)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgAMUnlockHEVC)
 
-CMsgAMUnlockHEVCResponse = _reflection.GeneratedProtocolMessageType('CMsgAMUnlockHEVCResponse', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGAMUNLOCKHEVCRESPONSE,
-  __module__ = 'steammessages_clientserver_2_pb2'
+CMsgAMUnlockHEVCResponse = _reflection.GeneratedProtocolMessageType('CMsgAMUnlockHEVCResponse', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGAMUNLOCKHEVCRESPONSE,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgAMUnlockHEVCResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgAMUnlockHEVCResponse)
 
-CMsgClientPlayingSessionState = _reflection.GeneratedProtocolMessageType('CMsgClientPlayingSessionState', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTPLAYINGSESSIONSTATE,
-  __module__ = 'steammessages_clientserver_2_pb2'
+CMsgClientPlayingSessionState = _reflection.GeneratedProtocolMessageType('CMsgClientPlayingSessionState', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTPLAYINGSESSIONSTATE,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientPlayingSessionState)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientPlayingSessionState)
 
-CMsgClientKickPlayingSession = _reflection.GeneratedProtocolMessageType('CMsgClientKickPlayingSession', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTKICKPLAYINGSESSION,
-  __module__ = 'steammessages_clientserver_2_pb2'
+CMsgClientKickPlayingSession = _reflection.GeneratedProtocolMessageType('CMsgClientKickPlayingSession', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTKICKPLAYINGSESSION,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientKickPlayingSession)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientKickPlayingSession)
 
-CMsgClientVoiceCallPreAuthorize = _reflection.GeneratedProtocolMessageType('CMsgClientVoiceCallPreAuthorize', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTVOICECALLPREAUTHORIZE,
-  __module__ = 'steammessages_clientserver_2_pb2'
+CMsgClientVoiceCallPreAuthorize = _reflection.GeneratedProtocolMessageType('CMsgClientVoiceCallPreAuthorize', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTVOICECALLPREAUTHORIZE,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientVoiceCallPreAuthorize)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientVoiceCallPreAuthorize)
 
-CMsgClientVoiceCallPreAuthorizeResponse = _reflection.GeneratedProtocolMessageType('CMsgClientVoiceCallPreAuthorizeResponse', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTVOICECALLPREAUTHORIZERESPONSE,
-  __module__ = 'steammessages_clientserver_2_pb2'
+CMsgClientVoiceCallPreAuthorizeResponse = _reflection.GeneratedProtocolMessageType('CMsgClientVoiceCallPreAuthorizeResponse', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTVOICECALLPREAUTHORIZERESPONSE,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientVoiceCallPreAuthorizeResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientVoiceCallPreAuthorizeResponse)
 
-CMsgBadgeCraftedNotification = _reflection.GeneratedProtocolMessageType('CMsgBadgeCraftedNotification', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGBADGECRAFTEDNOTIFICATION,
-  __module__ = 'steammessages_clientserver_2_pb2'
+CMsgBadgeCraftedNotification = _reflection.GeneratedProtocolMessageType('CMsgBadgeCraftedNotification', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGBADGECRAFTEDNOTIFICATION,
+  '__module__' : 'steammessages_clientserver_2_pb2'
   # @@protoc_insertion_point(class_scope:CMsgBadgeCraftedNotification)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgBadgeCraftedNotification)
 
 
diff --git a/steam/protobufs/steammessages_clientserver_appinfo_pb2.py b/steam/protobufs/steammessages_clientserver_appinfo_pb2.py
index 6fd0e8a..5517ced 100644
--- a/steam/protobufs/steammessages_clientserver_appinfo_pb2.py
+++ b/steam/protobufs/steammessages_clientserver_appinfo_pb2.py
@@ -1,9 +1,7 @@
 # -*- coding: utf-8 -*-
 # Generated by the protocol buffer compiler.  DO NOT EDIT!
 # source: steammessages_clientserver_appinfo.proto
-
-import sys
-_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1'))
+"""Generated protocol buffer code."""
 from google.protobuf import descriptor as _descriptor
 from google.protobuf import message as _message
 from google.protobuf import reflection as _reflection
@@ -20,8 +18,9 @@ DESCRIPTOR = _descriptor.FileDescriptor(
   name='steammessages_clientserver_appinfo.proto',
   package='',
   syntax='proto2',
-  serialized_options=_b('H\001\220\001\000'),
-  serialized_pb=_b('\n(steammessages_clientserver_appinfo.proto\x1a\x18steammessages_base.proto\"M\n\x17\x43MsgClientAppInfoUpdate\x12\x19\n\x11last_changenumber\x18\x01 \x01(\r\x12\x17\n\x0fsend_changelist\x18\x02 \x01(\x08\"d\n\x18\x43MsgClientAppInfoChanges\x12\x1d\n\x15\x63urrent_change_number\x18\x01 \x01(\r\x12\x19\n\x11\x66orce_full_update\x18\x02 \x01(\x08\x12\x0e\n\x06\x61ppIDs\x18\x03 \x03(\r\"\xab\x01\n\x18\x43MsgClientAppInfoRequest\x12+\n\x04\x61pps\x18\x01 \x03(\x0b\x32\x1d.CMsgClientAppInfoRequest.App\x12\x1f\n\x10supports_batches\x18\x02 \x01(\x08:\x05\x66\x61lse\x1a\x41\n\x03\x41pp\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x15\n\rsection_flags\x18\x02 \x01(\r\x12\x13\n\x0bsection_CRC\x18\x03 \x03(\r\"\x97\x02\n\x19\x43MsgClientAppInfoResponse\x12,\n\x04\x61pps\x18\x01 \x03(\x0b\x32\x1e.CMsgClientAppInfoResponse.App\x12\x14\n\x0c\x61pps_unknown\x18\x02 \x03(\r\x12\x14\n\x0c\x61pps_pending\x18\x03 \x01(\r\x1a\x99\x01\n\x03\x41pp\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x15\n\rchange_number\x18\x02 \x01(\r\x12\x38\n\x08sections\x18\x03 \x03(\x0b\x32&.CMsgClientAppInfoResponse.App.Section\x1a\x31\n\x07Section\x12\x12\n\nsection_id\x18\x01 \x01(\r\x12\x12\n\nsection_kv\x18\x02 \x01(\x0c:\x04\x88\xb5\x18\x00\"K\n\x1c\x43MsgClientPackageInfoRequest\x12\x13\n\x0bpackage_ids\x18\x01 \x03(\r\x12\x16\n\x0emeta_data_only\x18\x02 \x01(\x08\"\xe0\x01\n\x1d\x43MsgClientPackageInfoResponse\x12\x38\n\x08packages\x18\x01 \x03(\x0b\x32&.CMsgClientPackageInfoResponse.Package\x12\x18\n\x10packages_unknown\x18\x02 \x03(\r\x12\x18\n\x10packages_pending\x18\x03 \x01(\r\x1aQ\n\x07Package\x12\x12\n\npackage_id\x18\x01 \x01(\r\x12\x15\n\rchange_number\x18\x02 \x01(\r\x12\x0b\n\x03sha\x18\x03 \x01(\x0c\x12\x0e\n\x06\x62uffer\x18\x04 \x01(\x0c\"\xc0\x01\n!CMsgClientPICSChangesSinceRequest\x12\x1b\n\x13since_change_number\x18\x01 \x01(\r\x12\x1d\n\x15send_app_info_changes\x18\x02 \x01(\x08\x12!\n\x19send_package_info_changes\x18\x03 \x01(\x08\x12\x1b\n\x13num_app_info_cached\x18\x04 \x01(\r\x12\x1f\n\x17num_package_info_cached\x18\x05 \x01(\r\"\xe5\x03\n\"CMsgClientPICSChangesSinceResponse\x12\x1d\n\x15\x63urrent_change_number\x18\x01 \x01(\r\x12\x1b\n\x13since_change_number\x18\x02 \x01(\r\x12\x19\n\x11\x66orce_full_update\x18\x03 \x01(\x08\x12J\n\x0fpackage_changes\x18\x04 \x03(\x0b\x32\x31.CMsgClientPICSChangesSinceResponse.PackageChange\x12\x42\n\x0b\x61pp_changes\x18\x05 \x03(\x0b\x32-.CMsgClientPICSChangesSinceResponse.AppChange\x12\x1d\n\x15\x66orce_full_app_update\x18\x06 \x01(\x08\x12!\n\x19\x66orce_full_package_update\x18\x07 \x01(\x08\x1aN\n\rPackageChange\x12\x11\n\tpackageid\x18\x01 \x01(\r\x12\x15\n\rchange_number\x18\x02 \x01(\r\x12\x13\n\x0bneeds_token\x18\x03 \x01(\x08\x1a\x46\n\tAppChange\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x15\n\rchange_number\x18\x02 \x01(\r\x12\x13\n\x0bneeds_token\x18\x03 \x01(\x08\"\xf4\x02\n CMsgClientPICSProductInfoRequest\x12?\n\x08packages\x18\x01 \x03(\x0b\x32-.CMsgClientPICSProductInfoRequest.PackageInfo\x12\x37\n\x04\x61pps\x18\x02 \x03(\x0b\x32).CMsgClientPICSProductInfoRequest.AppInfo\x12\x16\n\x0emeta_data_only\x18\x03 \x01(\x08\x12\x17\n\x0fnum_prev_failed\x18\x04 \x01(\r\x12\x1f\n\x17supports_package_tokens\x18\x05 \x01(\r\x1aL\n\x07\x41ppInfo\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x14\n\x0c\x61\x63\x63\x65ss_token\x18\x02 \x01(\x04\x12\x1c\n\x14only_public_obsolete\x18\x03 \x01(\x08\x1a\x36\n\x0bPackageInfo\x12\x11\n\tpackageid\x18\x01 \x01(\r\x12\x14\n\x0c\x61\x63\x63\x65ss_token\x18\x02 \x01(\x04\"\xb9\x04\n!CMsgClientPICSProductInfoResponse\x12\x38\n\x04\x61pps\x18\x01 \x03(\x0b\x32*.CMsgClientPICSProductInfoResponse.AppInfo\x12\x16\n\x0eunknown_appids\x18\x02 \x03(\r\x12@\n\x08packages\x18\x03 \x03(\x0b\x32..CMsgClientPICSProductInfoResponse.PackageInfo\x12\x1a\n\x12unknown_packageids\x18\x04 \x03(\r\x12\x16\n\x0emeta_data_only\x18\x05 \x01(\x08\x12\x18\n\x10response_pending\x18\x06 \x01(\x08\x12\x15\n\rhttp_min_size\x18\x07 \x01(\r\x12\x11\n\thttp_host\x18\x08 \x01(\t\x1a\x86\x01\n\x07\x41ppInfo\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x15\n\rchange_number\x18\x02 \x01(\r\x12\x15\n\rmissing_token\x18\x03 \x01(\x08\x12\x0b\n\x03sha\x18\x04 \x01(\x0c\x12\x0e\n\x06\x62uffer\x18\x05 \x01(\x0c\x12\x13\n\x0bonly_public\x18\x06 \x01(\x08\x12\x0c\n\x04size\x18\x07 \x01(\r\x1ay\n\x0bPackageInfo\x12\x11\n\tpackageid\x18\x01 \x01(\r\x12\x15\n\rchange_number\x18\x02 \x01(\r\x12\x15\n\rmissing_token\x18\x03 \x01(\x08\x12\x0b\n\x03sha\x18\x04 \x01(\x0c\x12\x0e\n\x06\x62uffer\x18\x05 \x01(\x0c\x12\x0c\n\x04size\x18\x06 \x01(\r:\x04\x88\xb5\x18\x00\"F\n CMsgClientPICSAccessTokenRequest\x12\x12\n\npackageids\x18\x01 \x03(\r\x12\x0e\n\x06\x61ppids\x18\x02 \x03(\r\"\xdf\x02\n!CMsgClientPICSAccessTokenResponse\x12N\n\x15package_access_tokens\x18\x01 \x03(\x0b\x32/.CMsgClientPICSAccessTokenResponse.PackageToken\x12\x1d\n\x15package_denied_tokens\x18\x02 \x03(\r\x12\x46\n\x11\x61pp_access_tokens\x18\x03 \x03(\x0b\x32+.CMsgClientPICSAccessTokenResponse.AppToken\x12\x19\n\x11\x61pp_denied_tokens\x18\x04 \x03(\r\x1a\x37\n\x0cPackageToken\x12\x11\n\tpackageid\x18\x01 \x01(\r\x12\x14\n\x0c\x61\x63\x63\x65ss_token\x18\x02 \x01(\x04\x1a/\n\x08\x41ppToken\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x14\n\x0c\x61\x63\x63\x65ss_token\x18\x02 \x01(\x04\x42\x05H\x01\x90\x01\x00')
+  serialized_options=b'H\001\220\001\000',
+  create_key=_descriptor._internal_create_key,
+  serialized_pb=b'\n(steammessages_clientserver_appinfo.proto\x1a\x18steammessages_base.proto\"M\n\x17\x43MsgClientAppInfoUpdate\x12\x19\n\x11last_changenumber\x18\x01 \x01(\r\x12\x17\n\x0fsend_changelist\x18\x02 \x01(\x08\"d\n\x18\x43MsgClientAppInfoChanges\x12\x1d\n\x15\x63urrent_change_number\x18\x01 \x01(\r\x12\x19\n\x11\x66orce_full_update\x18\x02 \x01(\x08\x12\x0e\n\x06\x61ppIDs\x18\x03 \x03(\r\"\xab\x01\n\x18\x43MsgClientAppInfoRequest\x12+\n\x04\x61pps\x18\x01 \x03(\x0b\x32\x1d.CMsgClientAppInfoRequest.App\x12\x1f\n\x10supports_batches\x18\x02 \x01(\x08:\x05\x66\x61lse\x1a\x41\n\x03\x41pp\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x15\n\rsection_flags\x18\x02 \x01(\r\x12\x13\n\x0bsection_CRC\x18\x03 \x03(\r\"\x97\x02\n\x19\x43MsgClientAppInfoResponse\x12,\n\x04\x61pps\x18\x01 \x03(\x0b\x32\x1e.CMsgClientAppInfoResponse.App\x12\x14\n\x0c\x61pps_unknown\x18\x02 \x03(\r\x12\x14\n\x0c\x61pps_pending\x18\x03 \x01(\r\x1a\x99\x01\n\x03\x41pp\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x15\n\rchange_number\x18\x02 \x01(\r\x12\x38\n\x08sections\x18\x03 \x03(\x0b\x32&.CMsgClientAppInfoResponse.App.Section\x1a\x31\n\x07Section\x12\x12\n\nsection_id\x18\x01 \x01(\r\x12\x12\n\nsection_kv\x18\x02 \x01(\x0c:\x04\x88\xb5\x18\x00\"K\n\x1c\x43MsgClientPackageInfoRequest\x12\x13\n\x0bpackage_ids\x18\x01 \x03(\r\x12\x16\n\x0emeta_data_only\x18\x02 \x01(\x08\"\xe0\x01\n\x1d\x43MsgClientPackageInfoResponse\x12\x38\n\x08packages\x18\x01 \x03(\x0b\x32&.CMsgClientPackageInfoResponse.Package\x12\x18\n\x10packages_unknown\x18\x02 \x03(\r\x12\x18\n\x10packages_pending\x18\x03 \x01(\r\x1aQ\n\x07Package\x12\x12\n\npackage_id\x18\x01 \x01(\r\x12\x15\n\rchange_number\x18\x02 \x01(\r\x12\x0b\n\x03sha\x18\x03 \x01(\x0c\x12\x0e\n\x06\x62uffer\x18\x04 \x01(\x0c\"\xc0\x01\n!CMsgClientPICSChangesSinceRequest\x12\x1b\n\x13since_change_number\x18\x01 \x01(\r\x12\x1d\n\x15send_app_info_changes\x18\x02 \x01(\x08\x12!\n\x19send_package_info_changes\x18\x03 \x01(\x08\x12\x1b\n\x13num_app_info_cached\x18\x04 \x01(\r\x12\x1f\n\x17num_package_info_cached\x18\x05 \x01(\r\"\xe5\x03\n\"CMsgClientPICSChangesSinceResponse\x12\x1d\n\x15\x63urrent_change_number\x18\x01 \x01(\r\x12\x1b\n\x13since_change_number\x18\x02 \x01(\r\x12\x19\n\x11\x66orce_full_update\x18\x03 \x01(\x08\x12J\n\x0fpackage_changes\x18\x04 \x03(\x0b\x32\x31.CMsgClientPICSChangesSinceResponse.PackageChange\x12\x42\n\x0b\x61pp_changes\x18\x05 \x03(\x0b\x32-.CMsgClientPICSChangesSinceResponse.AppChange\x12\x1d\n\x15\x66orce_full_app_update\x18\x06 \x01(\x08\x12!\n\x19\x66orce_full_package_update\x18\x07 \x01(\x08\x1aN\n\rPackageChange\x12\x11\n\tpackageid\x18\x01 \x01(\r\x12\x15\n\rchange_number\x18\x02 \x01(\r\x12\x13\n\x0bneeds_token\x18\x03 \x01(\x08\x1a\x46\n\tAppChange\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x15\n\rchange_number\x18\x02 \x01(\r\x12\x13\n\x0bneeds_token\x18\x03 \x01(\x08\"\xf4\x02\n CMsgClientPICSProductInfoRequest\x12?\n\x08packages\x18\x01 \x03(\x0b\x32-.CMsgClientPICSProductInfoRequest.PackageInfo\x12\x37\n\x04\x61pps\x18\x02 \x03(\x0b\x32).CMsgClientPICSProductInfoRequest.AppInfo\x12\x16\n\x0emeta_data_only\x18\x03 \x01(\x08\x12\x17\n\x0fnum_prev_failed\x18\x04 \x01(\r\x12\x1f\n\x17supports_package_tokens\x18\x05 \x01(\r\x1aL\n\x07\x41ppInfo\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x14\n\x0c\x61\x63\x63\x65ss_token\x18\x02 \x01(\x04\x12\x1c\n\x14only_public_obsolete\x18\x03 \x01(\x08\x1a\x36\n\x0bPackageInfo\x12\x11\n\tpackageid\x18\x01 \x01(\r\x12\x14\n\x0c\x61\x63\x63\x65ss_token\x18\x02 \x01(\x04\"\xb9\x04\n!CMsgClientPICSProductInfoResponse\x12\x38\n\x04\x61pps\x18\x01 \x03(\x0b\x32*.CMsgClientPICSProductInfoResponse.AppInfo\x12\x16\n\x0eunknown_appids\x18\x02 \x03(\r\x12@\n\x08packages\x18\x03 \x03(\x0b\x32..CMsgClientPICSProductInfoResponse.PackageInfo\x12\x1a\n\x12unknown_packageids\x18\x04 \x03(\r\x12\x16\n\x0emeta_data_only\x18\x05 \x01(\x08\x12\x18\n\x10response_pending\x18\x06 \x01(\x08\x12\x15\n\rhttp_min_size\x18\x07 \x01(\r\x12\x11\n\thttp_host\x18\x08 \x01(\t\x1a\x86\x01\n\x07\x41ppInfo\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x15\n\rchange_number\x18\x02 \x01(\r\x12\x15\n\rmissing_token\x18\x03 \x01(\x08\x12\x0b\n\x03sha\x18\x04 \x01(\x0c\x12\x0e\n\x06\x62uffer\x18\x05 \x01(\x0c\x12\x13\n\x0bonly_public\x18\x06 \x01(\x08\x12\x0c\n\x04size\x18\x07 \x01(\r\x1ay\n\x0bPackageInfo\x12\x11\n\tpackageid\x18\x01 \x01(\r\x12\x15\n\rchange_number\x18\x02 \x01(\r\x12\x15\n\rmissing_token\x18\x03 \x01(\x08\x12\x0b\n\x03sha\x18\x04 \x01(\x0c\x12\x0e\n\x06\x62uffer\x18\x05 \x01(\x0c\x12\x0c\n\x04size\x18\x06 \x01(\r:\x04\x88\xb5\x18\x00\"F\n CMsgClientPICSAccessTokenRequest\x12\x12\n\npackageids\x18\x01 \x03(\r\x12\x0e\n\x06\x61ppids\x18\x02 \x03(\r\"\xdf\x02\n!CMsgClientPICSAccessTokenResponse\x12N\n\x15package_access_tokens\x18\x01 \x03(\x0b\x32/.CMsgClientPICSAccessTokenResponse.PackageToken\x12\x1d\n\x15package_denied_tokens\x18\x02 \x03(\r\x12\x46\n\x11\x61pp_access_tokens\x18\x03 \x03(\x0b\x32+.CMsgClientPICSAccessTokenResponse.AppToken\x12\x19\n\x11\x61pp_denied_tokens\x18\x04 \x03(\r\x1a\x37\n\x0cPackageToken\x12\x11\n\tpackageid\x18\x01 \x01(\r\x12\x14\n\x0c\x61\x63\x63\x65ss_token\x18\x02 \x01(\x04\x1a/\n\x08\x41ppToken\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x14\n\x0c\x61\x63\x63\x65ss_token\x18\x02 \x01(\x04\x42\x05H\x01\x90\x01\x00'
   ,
   dependencies=[steammessages__base__pb2.DESCRIPTOR,])
 
@@ -34,6 +33,7 @@ _CMSGCLIENTAPPINFOUPDATE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='last_changenumber', full_name='CMsgClientAppInfoUpdate.last_changenumber', index=0,
@@ -41,14 +41,14 @@ _CMSGCLIENTAPPINFOUPDATE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='send_changelist', full_name='CMsgClientAppInfoUpdate.send_changelist', index=1,
       number=2, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -72,6 +72,7 @@ _CMSGCLIENTAPPINFOCHANGES = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='current_change_number', full_name='CMsgClientAppInfoChanges.current_change_number', index=0,
@@ -79,21 +80,21 @@ _CMSGCLIENTAPPINFOCHANGES = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='force_full_update', full_name='CMsgClientAppInfoChanges.force_full_update', index=1,
       number=2, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='appIDs', full_name='CMsgClientAppInfoChanges.appIDs', index=2,
       number=3, type=13, cpp_type=3, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -117,6 +118,7 @@ _CMSGCLIENTAPPINFOREQUEST_APP = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CMsgClientAppInfoRequest.App.app_id', index=0,
@@ -124,21 +126,21 @@ _CMSGCLIENTAPPINFOREQUEST_APP = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='section_flags', full_name='CMsgClientAppInfoRequest.App.section_flags', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='section_CRC', full_name='CMsgClientAppInfoRequest.App.section_CRC', index=2,
       number=3, type=13, cpp_type=3, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -161,6 +163,7 @@ _CMSGCLIENTAPPINFOREQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='apps', full_name='CMsgClientAppInfoRequest.apps', index=0,
@@ -168,14 +171,14 @@ _CMSGCLIENTAPPINFOREQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='supports_batches', full_name='CMsgClientAppInfoRequest.supports_batches', index=1,
       number=2, type=8, cpp_type=7, label=1,
       has_default_value=True, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -199,6 +202,7 @@ _CMSGCLIENTAPPINFORESPONSE_APP_SECTION = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='section_id', full_name='CMsgClientAppInfoResponse.App.Section.section_id', index=0,
@@ -206,14 +210,14 @@ _CMSGCLIENTAPPINFORESPONSE_APP_SECTION = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='section_kv', full_name='CMsgClientAppInfoResponse.App.Section.section_kv', index=1,
       number=2, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -236,6 +240,7 @@ _CMSGCLIENTAPPINFORESPONSE_APP = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CMsgClientAppInfoResponse.App.app_id', index=0,
@@ -243,21 +248,21 @@ _CMSGCLIENTAPPINFORESPONSE_APP = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='change_number', full_name='CMsgClientAppInfoResponse.App.change_number', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='sections', full_name='CMsgClientAppInfoResponse.App.sections', index=2,
       number=3, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -280,6 +285,7 @@ _CMSGCLIENTAPPINFORESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='apps', full_name='CMsgClientAppInfoResponse.apps', index=0,
@@ -287,28 +293,28 @@ _CMSGCLIENTAPPINFORESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='apps_unknown', full_name='CMsgClientAppInfoResponse.apps_unknown', index=1,
       number=2, type=13, cpp_type=3, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='apps_pending', full_name='CMsgClientAppInfoResponse.apps_pending', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
   nested_types=[_CMSGCLIENTAPPINFORESPONSE_APP, ],
   enum_types=[
   ],
-  serialized_options=_b('\210\265\030\000'),
+  serialized_options=b'\210\265\030\000',
   is_extendable=False,
   syntax='proto2',
   extension_ranges=[],
@@ -325,6 +331,7 @@ _CMSGCLIENTPACKAGEINFOREQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='package_ids', full_name='CMsgClientPackageInfoRequest.package_ids', index=0,
@@ -332,14 +339,14 @@ _CMSGCLIENTPACKAGEINFOREQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='meta_data_only', full_name='CMsgClientPackageInfoRequest.meta_data_only', index=1,
       number=2, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -363,6 +370,7 @@ _CMSGCLIENTPACKAGEINFORESPONSE_PACKAGE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='package_id', full_name='CMsgClientPackageInfoResponse.Package.package_id', index=0,
@@ -370,28 +378,28 @@ _CMSGCLIENTPACKAGEINFORESPONSE_PACKAGE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='change_number', full_name='CMsgClientPackageInfoResponse.Package.change_number', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='sha', full_name='CMsgClientPackageInfoResponse.Package.sha', index=2,
       number=3, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='buffer', full_name='CMsgClientPackageInfoResponse.Package.buffer', index=3,
       number=4, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -414,6 +422,7 @@ _CMSGCLIENTPACKAGEINFORESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='packages', full_name='CMsgClientPackageInfoResponse.packages', index=0,
@@ -421,21 +430,21 @@ _CMSGCLIENTPACKAGEINFORESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='packages_unknown', full_name='CMsgClientPackageInfoResponse.packages_unknown', index=1,
       number=2, type=13, cpp_type=3, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='packages_pending', full_name='CMsgClientPackageInfoResponse.packages_pending', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -459,6 +468,7 @@ _CMSGCLIENTPICSCHANGESSINCEREQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='since_change_number', full_name='CMsgClientPICSChangesSinceRequest.since_change_number', index=0,
@@ -466,35 +476,35 @@ _CMSGCLIENTPICSCHANGESSINCEREQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='send_app_info_changes', full_name='CMsgClientPICSChangesSinceRequest.send_app_info_changes', index=1,
       number=2, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='send_package_info_changes', full_name='CMsgClientPICSChangesSinceRequest.send_package_info_changes', index=2,
       number=3, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='num_app_info_cached', full_name='CMsgClientPICSChangesSinceRequest.num_app_info_cached', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='num_package_info_cached', full_name='CMsgClientPICSChangesSinceRequest.num_package_info_cached', index=4,
       number=5, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -518,6 +528,7 @@ _CMSGCLIENTPICSCHANGESSINCERESPONSE_PACKAGECHANGE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='packageid', full_name='CMsgClientPICSChangesSinceResponse.PackageChange.packageid', index=0,
@@ -525,21 +536,21 @@ _CMSGCLIENTPICSCHANGESSINCERESPONSE_PACKAGECHANGE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='change_number', full_name='CMsgClientPICSChangesSinceResponse.PackageChange.change_number', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='needs_token', full_name='CMsgClientPICSChangesSinceResponse.PackageChange.needs_token', index=2,
       number=3, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -562,6 +573,7 @@ _CMSGCLIENTPICSCHANGESSINCERESPONSE_APPCHANGE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CMsgClientPICSChangesSinceResponse.AppChange.appid', index=0,
@@ -569,21 +581,21 @@ _CMSGCLIENTPICSCHANGESSINCERESPONSE_APPCHANGE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='change_number', full_name='CMsgClientPICSChangesSinceResponse.AppChange.change_number', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='needs_token', full_name='CMsgClientPICSChangesSinceResponse.AppChange.needs_token', index=2,
       number=3, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -606,6 +618,7 @@ _CMSGCLIENTPICSCHANGESSINCERESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='current_change_number', full_name='CMsgClientPICSChangesSinceResponse.current_change_number', index=0,
@@ -613,49 +626,49 @@ _CMSGCLIENTPICSCHANGESSINCERESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='since_change_number', full_name='CMsgClientPICSChangesSinceResponse.since_change_number', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='force_full_update', full_name='CMsgClientPICSChangesSinceResponse.force_full_update', index=2,
       number=3, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='package_changes', full_name='CMsgClientPICSChangesSinceResponse.package_changes', index=3,
       number=4, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='app_changes', full_name='CMsgClientPICSChangesSinceResponse.app_changes', index=4,
       number=5, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='force_full_app_update', full_name='CMsgClientPICSChangesSinceResponse.force_full_app_update', index=5,
       number=6, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='force_full_package_update', full_name='CMsgClientPICSChangesSinceResponse.force_full_package_update', index=6,
       number=7, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -679,6 +692,7 @@ _CMSGCLIENTPICSPRODUCTINFOREQUEST_APPINFO = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CMsgClientPICSProductInfoRequest.AppInfo.appid', index=0,
@@ -686,21 +700,21 @@ _CMSGCLIENTPICSPRODUCTINFOREQUEST_APPINFO = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='access_token', full_name='CMsgClientPICSProductInfoRequest.AppInfo.access_token', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='only_public_obsolete', full_name='CMsgClientPICSProductInfoRequest.AppInfo.only_public_obsolete', index=2,
       number=3, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -723,6 +737,7 @@ _CMSGCLIENTPICSPRODUCTINFOREQUEST_PACKAGEINFO = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='packageid', full_name='CMsgClientPICSProductInfoRequest.PackageInfo.packageid', index=0,
@@ -730,14 +745,14 @@ _CMSGCLIENTPICSPRODUCTINFOREQUEST_PACKAGEINFO = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='access_token', full_name='CMsgClientPICSProductInfoRequest.PackageInfo.access_token', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -760,6 +775,7 @@ _CMSGCLIENTPICSPRODUCTINFOREQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='packages', full_name='CMsgClientPICSProductInfoRequest.packages', index=0,
@@ -767,35 +783,35 @@ _CMSGCLIENTPICSPRODUCTINFOREQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='apps', full_name='CMsgClientPICSProductInfoRequest.apps', index=1,
       number=2, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='meta_data_only', full_name='CMsgClientPICSProductInfoRequest.meta_data_only', index=2,
       number=3, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='num_prev_failed', full_name='CMsgClientPICSProductInfoRequest.num_prev_failed', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='supports_package_tokens', full_name='CMsgClientPICSProductInfoRequest.supports_package_tokens', index=4,
       number=5, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -819,6 +835,7 @@ _CMSGCLIENTPICSPRODUCTINFORESPONSE_APPINFO = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CMsgClientPICSProductInfoResponse.AppInfo.appid', index=0,
@@ -826,49 +843,49 @@ _CMSGCLIENTPICSPRODUCTINFORESPONSE_APPINFO = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='change_number', full_name='CMsgClientPICSProductInfoResponse.AppInfo.change_number', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='missing_token', full_name='CMsgClientPICSProductInfoResponse.AppInfo.missing_token', index=2,
       number=3, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='sha', full_name='CMsgClientPICSProductInfoResponse.AppInfo.sha', index=3,
       number=4, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='buffer', full_name='CMsgClientPICSProductInfoResponse.AppInfo.buffer', index=4,
       number=5, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='only_public', full_name='CMsgClientPICSProductInfoResponse.AppInfo.only_public', index=5,
       number=6, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='size', full_name='CMsgClientPICSProductInfoResponse.AppInfo.size', index=6,
       number=7, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -891,6 +908,7 @@ _CMSGCLIENTPICSPRODUCTINFORESPONSE_PACKAGEINFO = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='packageid', full_name='CMsgClientPICSProductInfoResponse.PackageInfo.packageid', index=0,
@@ -898,42 +916,42 @@ _CMSGCLIENTPICSPRODUCTINFORESPONSE_PACKAGEINFO = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='change_number', full_name='CMsgClientPICSProductInfoResponse.PackageInfo.change_number', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='missing_token', full_name='CMsgClientPICSProductInfoResponse.PackageInfo.missing_token', index=2,
       number=3, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='sha', full_name='CMsgClientPICSProductInfoResponse.PackageInfo.sha', index=3,
       number=4, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='buffer', full_name='CMsgClientPICSProductInfoResponse.PackageInfo.buffer', index=4,
       number=5, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='size', full_name='CMsgClientPICSProductInfoResponse.PackageInfo.size', index=5,
       number=6, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -956,6 +974,7 @@ _CMSGCLIENTPICSPRODUCTINFORESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='apps', full_name='CMsgClientPICSProductInfoResponse.apps', index=0,
@@ -963,63 +982,63 @@ _CMSGCLIENTPICSPRODUCTINFORESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='unknown_appids', full_name='CMsgClientPICSProductInfoResponse.unknown_appids', index=1,
       number=2, type=13, cpp_type=3, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='packages', full_name='CMsgClientPICSProductInfoResponse.packages', index=2,
       number=3, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='unknown_packageids', full_name='CMsgClientPICSProductInfoResponse.unknown_packageids', index=3,
       number=4, type=13, cpp_type=3, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='meta_data_only', full_name='CMsgClientPICSProductInfoResponse.meta_data_only', index=4,
       number=5, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='response_pending', full_name='CMsgClientPICSProductInfoResponse.response_pending', index=5,
       number=6, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='http_min_size', full_name='CMsgClientPICSProductInfoResponse.http_min_size', index=6,
       number=7, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='http_host', full_name='CMsgClientPICSProductInfoResponse.http_host', index=7,
       number=8, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
   nested_types=[_CMSGCLIENTPICSPRODUCTINFORESPONSE_APPINFO, _CMSGCLIENTPICSPRODUCTINFORESPONSE_PACKAGEINFO, ],
   enum_types=[
   ],
-  serialized_options=_b('\210\265\030\000'),
+  serialized_options=b'\210\265\030\000',
   is_extendable=False,
   syntax='proto2',
   extension_ranges=[],
@@ -1036,6 +1055,7 @@ _CMSGCLIENTPICSACCESSTOKENREQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='packageids', full_name='CMsgClientPICSAccessTokenRequest.packageids', index=0,
@@ -1043,14 +1063,14 @@ _CMSGCLIENTPICSACCESSTOKENREQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='appids', full_name='CMsgClientPICSAccessTokenRequest.appids', index=1,
       number=2, type=13, cpp_type=3, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1074,6 +1094,7 @@ _CMSGCLIENTPICSACCESSTOKENRESPONSE_PACKAGETOKEN = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='packageid', full_name='CMsgClientPICSAccessTokenResponse.PackageToken.packageid', index=0,
@@ -1081,14 +1102,14 @@ _CMSGCLIENTPICSACCESSTOKENRESPONSE_PACKAGETOKEN = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='access_token', full_name='CMsgClientPICSAccessTokenResponse.PackageToken.access_token', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1111,6 +1132,7 @@ _CMSGCLIENTPICSACCESSTOKENRESPONSE_APPTOKEN = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CMsgClientPICSAccessTokenResponse.AppToken.appid', index=0,
@@ -1118,14 +1140,14 @@ _CMSGCLIENTPICSACCESSTOKENRESPONSE_APPTOKEN = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='access_token', full_name='CMsgClientPICSAccessTokenResponse.AppToken.access_token', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1148,6 +1170,7 @@ _CMSGCLIENTPICSACCESSTOKENRESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='package_access_tokens', full_name='CMsgClientPICSAccessTokenResponse.package_access_tokens', index=0,
@@ -1155,28 +1178,28 @@ _CMSGCLIENTPICSACCESSTOKENRESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='package_denied_tokens', full_name='CMsgClientPICSAccessTokenResponse.package_denied_tokens', index=1,
       number=2, type=13, cpp_type=3, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='app_access_tokens', full_name='CMsgClientPICSAccessTokenResponse.app_access_tokens', index=2,
       number=3, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='app_denied_tokens', full_name='CMsgClientPICSAccessTokenResponse.app_denied_tokens', index=3,
       number=4, type=13, cpp_type=3, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1231,182 +1254,182 @@ DESCRIPTOR.message_types_by_name['CMsgClientPICSAccessTokenRequest'] = _CMSGCLIE
 DESCRIPTOR.message_types_by_name['CMsgClientPICSAccessTokenResponse'] = _CMSGCLIENTPICSACCESSTOKENRESPONSE
 _sym_db.RegisterFileDescriptor(DESCRIPTOR)
 
-CMsgClientAppInfoUpdate = _reflection.GeneratedProtocolMessageType('CMsgClientAppInfoUpdate', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTAPPINFOUPDATE,
-  __module__ = 'steammessages_clientserver_appinfo_pb2'
+CMsgClientAppInfoUpdate = _reflection.GeneratedProtocolMessageType('CMsgClientAppInfoUpdate', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTAPPINFOUPDATE,
+  '__module__' : 'steammessages_clientserver_appinfo_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientAppInfoUpdate)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientAppInfoUpdate)
 
-CMsgClientAppInfoChanges = _reflection.GeneratedProtocolMessageType('CMsgClientAppInfoChanges', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTAPPINFOCHANGES,
-  __module__ = 'steammessages_clientserver_appinfo_pb2'
+CMsgClientAppInfoChanges = _reflection.GeneratedProtocolMessageType('CMsgClientAppInfoChanges', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTAPPINFOCHANGES,
+  '__module__' : 'steammessages_clientserver_appinfo_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientAppInfoChanges)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientAppInfoChanges)
 
-CMsgClientAppInfoRequest = _reflection.GeneratedProtocolMessageType('CMsgClientAppInfoRequest', (_message.Message,), dict(
+CMsgClientAppInfoRequest = _reflection.GeneratedProtocolMessageType('CMsgClientAppInfoRequest', (_message.Message,), {
 
-  App = _reflection.GeneratedProtocolMessageType('App', (_message.Message,), dict(
-    DESCRIPTOR = _CMSGCLIENTAPPINFOREQUEST_APP,
-    __module__ = 'steammessages_clientserver_appinfo_pb2'
+  'App' : _reflection.GeneratedProtocolMessageType('App', (_message.Message,), {
+    'DESCRIPTOR' : _CMSGCLIENTAPPINFOREQUEST_APP,
+    '__module__' : 'steammessages_clientserver_appinfo_pb2'
     # @@protoc_insertion_point(class_scope:CMsgClientAppInfoRequest.App)
-    ))
+    })
   ,
-  DESCRIPTOR = _CMSGCLIENTAPPINFOREQUEST,
-  __module__ = 'steammessages_clientserver_appinfo_pb2'
+  'DESCRIPTOR' : _CMSGCLIENTAPPINFOREQUEST,
+  '__module__' : 'steammessages_clientserver_appinfo_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientAppInfoRequest)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientAppInfoRequest)
 _sym_db.RegisterMessage(CMsgClientAppInfoRequest.App)
 
-CMsgClientAppInfoResponse = _reflection.GeneratedProtocolMessageType('CMsgClientAppInfoResponse', (_message.Message,), dict(
+CMsgClientAppInfoResponse = _reflection.GeneratedProtocolMessageType('CMsgClientAppInfoResponse', (_message.Message,), {
 
-  App = _reflection.GeneratedProtocolMessageType('App', (_message.Message,), dict(
+  'App' : _reflection.GeneratedProtocolMessageType('App', (_message.Message,), {
 
-    Section = _reflection.GeneratedProtocolMessageType('Section', (_message.Message,), dict(
-      DESCRIPTOR = _CMSGCLIENTAPPINFORESPONSE_APP_SECTION,
-      __module__ = 'steammessages_clientserver_appinfo_pb2'
+    'Section' : _reflection.GeneratedProtocolMessageType('Section', (_message.Message,), {
+      'DESCRIPTOR' : _CMSGCLIENTAPPINFORESPONSE_APP_SECTION,
+      '__module__' : 'steammessages_clientserver_appinfo_pb2'
       # @@protoc_insertion_point(class_scope:CMsgClientAppInfoResponse.App.Section)
-      ))
+      })
     ,
-    DESCRIPTOR = _CMSGCLIENTAPPINFORESPONSE_APP,
-    __module__ = 'steammessages_clientserver_appinfo_pb2'
+    'DESCRIPTOR' : _CMSGCLIENTAPPINFORESPONSE_APP,
+    '__module__' : 'steammessages_clientserver_appinfo_pb2'
     # @@protoc_insertion_point(class_scope:CMsgClientAppInfoResponse.App)
-    ))
+    })
   ,
-  DESCRIPTOR = _CMSGCLIENTAPPINFORESPONSE,
-  __module__ = 'steammessages_clientserver_appinfo_pb2'
+  'DESCRIPTOR' : _CMSGCLIENTAPPINFORESPONSE,
+  '__module__' : 'steammessages_clientserver_appinfo_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientAppInfoResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientAppInfoResponse)
 _sym_db.RegisterMessage(CMsgClientAppInfoResponse.App)
 _sym_db.RegisterMessage(CMsgClientAppInfoResponse.App.Section)
 
-CMsgClientPackageInfoRequest = _reflection.GeneratedProtocolMessageType('CMsgClientPackageInfoRequest', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTPACKAGEINFOREQUEST,
-  __module__ = 'steammessages_clientserver_appinfo_pb2'
+CMsgClientPackageInfoRequest = _reflection.GeneratedProtocolMessageType('CMsgClientPackageInfoRequest', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTPACKAGEINFOREQUEST,
+  '__module__' : 'steammessages_clientserver_appinfo_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientPackageInfoRequest)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientPackageInfoRequest)
 
-CMsgClientPackageInfoResponse = _reflection.GeneratedProtocolMessageType('CMsgClientPackageInfoResponse', (_message.Message,), dict(
+CMsgClientPackageInfoResponse = _reflection.GeneratedProtocolMessageType('CMsgClientPackageInfoResponse', (_message.Message,), {
 
-  Package = _reflection.GeneratedProtocolMessageType('Package', (_message.Message,), dict(
-    DESCRIPTOR = _CMSGCLIENTPACKAGEINFORESPONSE_PACKAGE,
-    __module__ = 'steammessages_clientserver_appinfo_pb2'
+  'Package' : _reflection.GeneratedProtocolMessageType('Package', (_message.Message,), {
+    'DESCRIPTOR' : _CMSGCLIENTPACKAGEINFORESPONSE_PACKAGE,
+    '__module__' : 'steammessages_clientserver_appinfo_pb2'
     # @@protoc_insertion_point(class_scope:CMsgClientPackageInfoResponse.Package)
-    ))
+    })
   ,
-  DESCRIPTOR = _CMSGCLIENTPACKAGEINFORESPONSE,
-  __module__ = 'steammessages_clientserver_appinfo_pb2'
+  'DESCRIPTOR' : _CMSGCLIENTPACKAGEINFORESPONSE,
+  '__module__' : 'steammessages_clientserver_appinfo_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientPackageInfoResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientPackageInfoResponse)
 _sym_db.RegisterMessage(CMsgClientPackageInfoResponse.Package)
 
-CMsgClientPICSChangesSinceRequest = _reflection.GeneratedProtocolMessageType('CMsgClientPICSChangesSinceRequest', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTPICSCHANGESSINCEREQUEST,
-  __module__ = 'steammessages_clientserver_appinfo_pb2'
+CMsgClientPICSChangesSinceRequest = _reflection.GeneratedProtocolMessageType('CMsgClientPICSChangesSinceRequest', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTPICSCHANGESSINCEREQUEST,
+  '__module__' : 'steammessages_clientserver_appinfo_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientPICSChangesSinceRequest)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientPICSChangesSinceRequest)
 
-CMsgClientPICSChangesSinceResponse = _reflection.GeneratedProtocolMessageType('CMsgClientPICSChangesSinceResponse', (_message.Message,), dict(
+CMsgClientPICSChangesSinceResponse = _reflection.GeneratedProtocolMessageType('CMsgClientPICSChangesSinceResponse', (_message.Message,), {
 
-  PackageChange = _reflection.GeneratedProtocolMessageType('PackageChange', (_message.Message,), dict(
-    DESCRIPTOR = _CMSGCLIENTPICSCHANGESSINCERESPONSE_PACKAGECHANGE,
-    __module__ = 'steammessages_clientserver_appinfo_pb2'
+  'PackageChange' : _reflection.GeneratedProtocolMessageType('PackageChange', (_message.Message,), {
+    'DESCRIPTOR' : _CMSGCLIENTPICSCHANGESSINCERESPONSE_PACKAGECHANGE,
+    '__module__' : 'steammessages_clientserver_appinfo_pb2'
     # @@protoc_insertion_point(class_scope:CMsgClientPICSChangesSinceResponse.PackageChange)
-    ))
+    })
   ,
 
-  AppChange = _reflection.GeneratedProtocolMessageType('AppChange', (_message.Message,), dict(
-    DESCRIPTOR = _CMSGCLIENTPICSCHANGESSINCERESPONSE_APPCHANGE,
-    __module__ = 'steammessages_clientserver_appinfo_pb2'
+  'AppChange' : _reflection.GeneratedProtocolMessageType('AppChange', (_message.Message,), {
+    'DESCRIPTOR' : _CMSGCLIENTPICSCHANGESSINCERESPONSE_APPCHANGE,
+    '__module__' : 'steammessages_clientserver_appinfo_pb2'
     # @@protoc_insertion_point(class_scope:CMsgClientPICSChangesSinceResponse.AppChange)
-    ))
+    })
   ,
-  DESCRIPTOR = _CMSGCLIENTPICSCHANGESSINCERESPONSE,
-  __module__ = 'steammessages_clientserver_appinfo_pb2'
+  'DESCRIPTOR' : _CMSGCLIENTPICSCHANGESSINCERESPONSE,
+  '__module__' : 'steammessages_clientserver_appinfo_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientPICSChangesSinceResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientPICSChangesSinceResponse)
 _sym_db.RegisterMessage(CMsgClientPICSChangesSinceResponse.PackageChange)
 _sym_db.RegisterMessage(CMsgClientPICSChangesSinceResponse.AppChange)
 
-CMsgClientPICSProductInfoRequest = _reflection.GeneratedProtocolMessageType('CMsgClientPICSProductInfoRequest', (_message.Message,), dict(
+CMsgClientPICSProductInfoRequest = _reflection.GeneratedProtocolMessageType('CMsgClientPICSProductInfoRequest', (_message.Message,), {
 
-  AppInfo = _reflection.GeneratedProtocolMessageType('AppInfo', (_message.Message,), dict(
-    DESCRIPTOR = _CMSGCLIENTPICSPRODUCTINFOREQUEST_APPINFO,
-    __module__ = 'steammessages_clientserver_appinfo_pb2'
+  'AppInfo' : _reflection.GeneratedProtocolMessageType('AppInfo', (_message.Message,), {
+    'DESCRIPTOR' : _CMSGCLIENTPICSPRODUCTINFOREQUEST_APPINFO,
+    '__module__' : 'steammessages_clientserver_appinfo_pb2'
     # @@protoc_insertion_point(class_scope:CMsgClientPICSProductInfoRequest.AppInfo)
-    ))
+    })
   ,
 
-  PackageInfo = _reflection.GeneratedProtocolMessageType('PackageInfo', (_message.Message,), dict(
-    DESCRIPTOR = _CMSGCLIENTPICSPRODUCTINFOREQUEST_PACKAGEINFO,
-    __module__ = 'steammessages_clientserver_appinfo_pb2'
+  'PackageInfo' : _reflection.GeneratedProtocolMessageType('PackageInfo', (_message.Message,), {
+    'DESCRIPTOR' : _CMSGCLIENTPICSPRODUCTINFOREQUEST_PACKAGEINFO,
+    '__module__' : 'steammessages_clientserver_appinfo_pb2'
     # @@protoc_insertion_point(class_scope:CMsgClientPICSProductInfoRequest.PackageInfo)
-    ))
+    })
   ,
-  DESCRIPTOR = _CMSGCLIENTPICSPRODUCTINFOREQUEST,
-  __module__ = 'steammessages_clientserver_appinfo_pb2'
+  'DESCRIPTOR' : _CMSGCLIENTPICSPRODUCTINFOREQUEST,
+  '__module__' : 'steammessages_clientserver_appinfo_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientPICSProductInfoRequest)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientPICSProductInfoRequest)
 _sym_db.RegisterMessage(CMsgClientPICSProductInfoRequest.AppInfo)
 _sym_db.RegisterMessage(CMsgClientPICSProductInfoRequest.PackageInfo)
 
-CMsgClientPICSProductInfoResponse = _reflection.GeneratedProtocolMessageType('CMsgClientPICSProductInfoResponse', (_message.Message,), dict(
+CMsgClientPICSProductInfoResponse = _reflection.GeneratedProtocolMessageType('CMsgClientPICSProductInfoResponse', (_message.Message,), {
 
-  AppInfo = _reflection.GeneratedProtocolMessageType('AppInfo', (_message.Message,), dict(
-    DESCRIPTOR = _CMSGCLIENTPICSPRODUCTINFORESPONSE_APPINFO,
-    __module__ = 'steammessages_clientserver_appinfo_pb2'
+  'AppInfo' : _reflection.GeneratedProtocolMessageType('AppInfo', (_message.Message,), {
+    'DESCRIPTOR' : _CMSGCLIENTPICSPRODUCTINFORESPONSE_APPINFO,
+    '__module__' : 'steammessages_clientserver_appinfo_pb2'
     # @@protoc_insertion_point(class_scope:CMsgClientPICSProductInfoResponse.AppInfo)
-    ))
+    })
   ,
 
-  PackageInfo = _reflection.GeneratedProtocolMessageType('PackageInfo', (_message.Message,), dict(
-    DESCRIPTOR = _CMSGCLIENTPICSPRODUCTINFORESPONSE_PACKAGEINFO,
-    __module__ = 'steammessages_clientserver_appinfo_pb2'
+  'PackageInfo' : _reflection.GeneratedProtocolMessageType('PackageInfo', (_message.Message,), {
+    'DESCRIPTOR' : _CMSGCLIENTPICSPRODUCTINFORESPONSE_PACKAGEINFO,
+    '__module__' : 'steammessages_clientserver_appinfo_pb2'
     # @@protoc_insertion_point(class_scope:CMsgClientPICSProductInfoResponse.PackageInfo)
-    ))
+    })
   ,
-  DESCRIPTOR = _CMSGCLIENTPICSPRODUCTINFORESPONSE,
-  __module__ = 'steammessages_clientserver_appinfo_pb2'
+  'DESCRIPTOR' : _CMSGCLIENTPICSPRODUCTINFORESPONSE,
+  '__module__' : 'steammessages_clientserver_appinfo_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientPICSProductInfoResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientPICSProductInfoResponse)
 _sym_db.RegisterMessage(CMsgClientPICSProductInfoResponse.AppInfo)
 _sym_db.RegisterMessage(CMsgClientPICSProductInfoResponse.PackageInfo)
 
-CMsgClientPICSAccessTokenRequest = _reflection.GeneratedProtocolMessageType('CMsgClientPICSAccessTokenRequest', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTPICSACCESSTOKENREQUEST,
-  __module__ = 'steammessages_clientserver_appinfo_pb2'
+CMsgClientPICSAccessTokenRequest = _reflection.GeneratedProtocolMessageType('CMsgClientPICSAccessTokenRequest', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTPICSACCESSTOKENREQUEST,
+  '__module__' : 'steammessages_clientserver_appinfo_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientPICSAccessTokenRequest)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientPICSAccessTokenRequest)
 
-CMsgClientPICSAccessTokenResponse = _reflection.GeneratedProtocolMessageType('CMsgClientPICSAccessTokenResponse', (_message.Message,), dict(
+CMsgClientPICSAccessTokenResponse = _reflection.GeneratedProtocolMessageType('CMsgClientPICSAccessTokenResponse', (_message.Message,), {
 
-  PackageToken = _reflection.GeneratedProtocolMessageType('PackageToken', (_message.Message,), dict(
-    DESCRIPTOR = _CMSGCLIENTPICSACCESSTOKENRESPONSE_PACKAGETOKEN,
-    __module__ = 'steammessages_clientserver_appinfo_pb2'
+  'PackageToken' : _reflection.GeneratedProtocolMessageType('PackageToken', (_message.Message,), {
+    'DESCRIPTOR' : _CMSGCLIENTPICSACCESSTOKENRESPONSE_PACKAGETOKEN,
+    '__module__' : 'steammessages_clientserver_appinfo_pb2'
     # @@protoc_insertion_point(class_scope:CMsgClientPICSAccessTokenResponse.PackageToken)
-    ))
+    })
   ,
 
-  AppToken = _reflection.GeneratedProtocolMessageType('AppToken', (_message.Message,), dict(
-    DESCRIPTOR = _CMSGCLIENTPICSACCESSTOKENRESPONSE_APPTOKEN,
-    __module__ = 'steammessages_clientserver_appinfo_pb2'
+  'AppToken' : _reflection.GeneratedProtocolMessageType('AppToken', (_message.Message,), {
+    'DESCRIPTOR' : _CMSGCLIENTPICSACCESSTOKENRESPONSE_APPTOKEN,
+    '__module__' : 'steammessages_clientserver_appinfo_pb2'
     # @@protoc_insertion_point(class_scope:CMsgClientPICSAccessTokenResponse.AppToken)
-    ))
+    })
   ,
-  DESCRIPTOR = _CMSGCLIENTPICSACCESSTOKENRESPONSE,
-  __module__ = 'steammessages_clientserver_appinfo_pb2'
+  'DESCRIPTOR' : _CMSGCLIENTPICSACCESSTOKENRESPONSE,
+  '__module__' : 'steammessages_clientserver_appinfo_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientPICSAccessTokenResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientPICSAccessTokenResponse)
 _sym_db.RegisterMessage(CMsgClientPICSAccessTokenResponse.PackageToken)
 _sym_db.RegisterMessage(CMsgClientPICSAccessTokenResponse.AppToken)
diff --git a/steam/protobufs/steammessages_clientserver_friends_pb2.py b/steam/protobufs/steammessages_clientserver_friends_pb2.py
index 59b499c..cdf982a 100644
--- a/steam/protobufs/steammessages_clientserver_friends_pb2.py
+++ b/steam/protobufs/steammessages_clientserver_friends_pb2.py
@@ -1,9 +1,7 @@
 # -*- coding: utf-8 -*-
 # Generated by the protocol buffer compiler.  DO NOT EDIT!
 # source: steammessages_clientserver_friends.proto
-
-import sys
-_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1'))
+"""Generated protocol buffer code."""
 from google.protobuf import descriptor as _descriptor
 from google.protobuf import message as _message
 from google.protobuf import reflection as _reflection
@@ -20,8 +18,9 @@ DESCRIPTOR = _descriptor.FileDescriptor(
   name='steammessages_clientserver_friends.proto',
   package='',
   syntax='proto2',
-  serialized_options=_b('H\001\220\001\000'),
-  serialized_pb=_b('\n(steammessages_clientserver_friends.proto\x1a\x18steammessages_base.proto\"\x8a\x01\n\x13\x43MsgClientFriendMsg\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12\x17\n\x0f\x63hat_entry_type\x18\x02 \x01(\x05\x12\x0f\n\x07message\x18\x03 \x01(\x0c\x12 \n\x18rtime32_server_timestamp\x18\x04 \x01(\x07\x12\x16\n\x0e\x65\x63ho_to_sender\x18\x05 \x01(\x08\"\x9d\x01\n\x1b\x43MsgClientFriendMsgIncoming\x12\x14\n\x0csteamid_from\x18\x01 \x01(\x06\x12\x17\n\x0f\x63hat_entry_type\x18\x02 \x01(\x05\x12\x1c\n\x14\x66rom_limited_account\x18\x03 \x01(\x08\x12\x0f\n\x07message\x18\x04 \x01(\x0c\x12 \n\x18rtime32_server_timestamp\x18\x05 \x01(\x07\"R\n\x13\x43MsgClientAddFriend\x12\x16\n\x0esteamid_to_add\x18\x01 \x01(\x06\x12#\n\x1b\x61\x63\x63ountname_or_email_to_add\x18\x02 \x01(\t\"e\n\x1b\x43MsgClientAddFriendResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\x12\x16\n\x0esteam_id_added\x18\x02 \x01(\x06\x12\x1a\n\x12persona_name_added\x18\x03 \x01(\t\"*\n\x16\x43MsgClientRemoveFriend\x12\x10\n\x08\x66riendid\x18\x01 \x01(\x06\"6\n\x14\x43MsgClientHideFriend\x12\x10\n\x08\x66riendid\x18\x01 \x01(\x06\x12\x0c\n\x04hide\x18\x02 \x01(\x08\"\xea\x01\n\x15\x43MsgClientFriendsList\x12\x14\n\x0c\x62incremental\x18\x01 \x01(\x08\x12.\n\x07\x66riends\x18\x02 \x03(\x0b\x32\x1d.CMsgClientFriendsList.Friend\x12\x18\n\x10max_friend_count\x18\x03 \x01(\r\x12\x1b\n\x13\x61\x63tive_friend_count\x18\x04 \x01(\r\x12\x19\n\x11\x66riends_limit_hit\x18\x05 \x01(\x08\x1a\x39\n\x06\x46riend\x12\x12\n\nulfriendid\x18\x01 \x01(\x06\x12\x1b\n\x13\x65\x66riendrelationship\x18\x02 \x01(\r\"\xc5\x02\n\x1b\x43MsgClientFriendsGroupsList\x12\x10\n\x08\x62removal\x18\x01 \x01(\x08\x12\x14\n\x0c\x62incremental\x18\x02 \x01(\x08\x12>\n\x0c\x66riendGroups\x18\x03 \x03(\x0b\x32(.CMsgClientFriendsGroupsList.FriendGroup\x12H\n\x0bmemberships\x18\x04 \x03(\x0b\x32\x33.CMsgClientFriendsGroupsList.FriendGroupsMembership\x1a\x35\n\x0b\x46riendGroup\x12\x10\n\x08nGroupID\x18\x01 \x01(\x05\x12\x14\n\x0cstrGroupName\x18\x02 \x01(\t\x1a=\n\x16\x46riendGroupsMembership\x12\x11\n\tulSteamID\x18\x01 \x01(\x06\x12\x10\n\x08nGroupID\x18\x02 \x01(\x05\"\xba\x01\n\x1c\x43MsgClientPlayerNicknameList\x12\x0f\n\x07removal\x18\x01 \x01(\x08\x12\x13\n\x0bincremental\x18\x02 \x01(\x08\x12?\n\tnicknames\x18\x03 \x03(\x0b\x32,.CMsgClientPlayerNicknameList.PlayerNickname\x1a\x33\n\x0ePlayerNickname\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12\x10\n\x08nickname\x18\x03 \x01(\t\"@\n\x1b\x43MsgClientSetPlayerNickname\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12\x10\n\x08nickname\x18\x02 \x01(\t\"6\n#CMsgClientSetPlayerNicknameResponse\x12\x0f\n\x07\x65result\x18\x01 \x01(\r\"O\n\x1b\x43MsgClientRequestFriendData\x12\x1f\n\x17persona_state_requested\x18\x01 \x01(\r\x12\x0f\n\x07\x66riends\x18\x02 \x03(\x06\"\xef\x01\n\x16\x43MsgClientChangeStatus\x12\x15\n\rpersona_state\x18\x01 \x01(\r\x12\x13\n\x0bplayer_name\x18\x02 \x01(\t\x12\x1e\n\x16is_auto_generated_name\x18\x03 \x01(\x08\x12\x15\n\rhigh_priority\x18\x04 \x01(\x08\x12\x1b\n\x13persona_set_by_user\x18\x05 \x01(\x08\x12\x1e\n\x13persona_state_flags\x18\x06 \x01(\r:\x01\x30\x12\x1d\n\x15need_persona_response\x18\x07 \x01(\x08\x12\x16\n\x0eis_client_idle\x18\x08 \x01(\x08\"@\n\x19\x43MsgPersonaChangeResponse\x12\x0e\n\x06result\x18\x01 \x01(\r\x12\x13\n\x0bplayer_name\x18\x02 \x01(\t\"\xa0\x08\n\x16\x43MsgClientPersonaState\x12\x14\n\x0cstatus_flags\x18\x01 \x01(\r\x12/\n\x07\x66riends\x18\x02 \x03(\x0b\x32\x1e.CMsgClientPersonaState.Friend\x1a\xbe\x07\n\x06\x46riend\x12\x10\n\x08\x66riendid\x18\x01 \x01(\x06\x12\x15\n\rpersona_state\x18\x02 \x01(\r\x12\x1a\n\x12game_played_app_id\x18\x03 \x01(\r\x12\x16\n\x0egame_server_ip\x18\x04 \x01(\r\x12\x18\n\x10game_server_port\x18\x05 \x01(\r\x12\x1b\n\x13persona_state_flags\x18\x06 \x01(\r\x12 \n\x18online_session_instances\x18\x07 \x01(\r\x12\x1b\n\x13persona_set_by_user\x18\n \x01(\x08\x12\x13\n\x0bplayer_name\x18\x0f \x01(\t\x12\x12\n\nquery_port\x18\x14 \x01(\r\x12\x16\n\x0esteamid_source\x18\x19 \x01(\x06\x12\x13\n\x0b\x61vatar_hash\x18\x1f \x01(\x0c\x12\x13\n\x0blast_logoff\x18- \x01(\r\x12\x12\n\nlast_logon\x18. \x01(\r\x12\x18\n\x10last_seen_online\x18/ \x01(\r\x12\x11\n\tclan_rank\x18\x32 \x01(\r\x12\x11\n\tgame_name\x18\x37 \x01(\t\x12\x0e\n\x06gameid\x18\x38 \x01(\x06\x12\x16\n\x0egame_data_blob\x18< \x01(\x0c\x12:\n\tclan_data\x18@ \x01(\x0b\x32\'.CMsgClientPersonaState.Friend.ClanData\x12\x10\n\x08\x63lan_tag\x18\x41 \x01(\t\x12\x38\n\rrich_presence\x18G \x03(\x0b\x32!.CMsgClientPersonaState.Friend.KV\x12\x14\n\x0c\x62roadcast_id\x18H \x01(\x06\x12\x15\n\rgame_lobby_id\x18I \x01(\x06\x12$\n\x1cwatching_broadcast_accountid\x18J \x01(\r\x12 \n\x18watching_broadcast_appid\x18K \x01(\r\x12\"\n\x1awatching_broadcast_viewers\x18L \x01(\r\x12 \n\x18watching_broadcast_title\x18M \x01(\t\x12\x1b\n\x13is_community_banned\x18N \x01(\x08\x12\"\n\x1aplayer_name_pending_review\x18O \x01(\x08\x12\x1d\n\x15\x61vatar_pending_review\x18P \x01(\x08\x1a\x35\n\x08\x43lanData\x12\x12\n\nogg_app_id\x18\x01 \x01(\r\x12\x15\n\rchat_group_id\x18\x02 \x01(\x04\x1a \n\x02KV\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t\"5\n\x1b\x43MsgClientFriendProfileInfo\x12\x16\n\x0esteamid_friend\x18\x01 \x01(\x06\"\xda\x01\n#CMsgClientFriendProfileInfoResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\x12\x16\n\x0esteamid_friend\x18\x02 \x01(\x06\x12\x14\n\x0ctime_created\x18\x03 \x01(\r\x12\x11\n\treal_name\x18\x04 \x01(\t\x12\x11\n\tcity_name\x18\x05 \x01(\t\x12\x12\n\nstate_name\x18\x06 \x01(\t\x12\x14\n\x0c\x63ountry_name\x18\x07 \x01(\t\x12\x10\n\x08headline\x18\x08 \x01(\t\x12\x0f\n\x07summary\x18\t \x01(\t\"[\n\x1c\x43MsgClientCreateFriendsGroup\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12\x11\n\tgroupname\x18\x02 \x01(\t\x12\x17\n\x0fsteamid_friends\x18\x03 \x03(\x06\"H\n$CMsgClientCreateFriendsGroupResponse\x12\x0f\n\x07\x65result\x18\x01 \x01(\r\x12\x0f\n\x07groupid\x18\x02 \x01(\x05\"@\n\x1c\x43MsgClientDeleteFriendsGroup\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12\x0f\n\x07groupid\x18\x02 \x01(\x05\"7\n$CMsgClientDeleteFriendsGroupResponse\x12\x0f\n\x07\x65result\x18\x01 \x01(\r\"\x82\x01\n\x1c\x43MsgClientManageFriendsGroup\x12\x0f\n\x07groupid\x18\x01 \x01(\x05\x12\x11\n\tgroupname\x18\x02 \x01(\t\x12\x1d\n\x15steamid_friends_added\x18\x03 \x03(\x06\x12\x1f\n\x17steamid_friends_removed\x18\x04 \x03(\x06\"7\n$CMsgClientManageFriendsGroupResponse\x12\x0f\n\x07\x65result\x18\x01 \x01(\r\"B\n\x1a\x43MsgClientAddFriendToGroup\x12\x0f\n\x07groupid\x18\x01 \x01(\x05\x12\x13\n\x0bsteamiduser\x18\x02 \x01(\x06\"5\n\"CMsgClientAddFriendToGroupResponse\x12\x0f\n\x07\x65result\x18\x01 \x01(\r\"G\n\x1f\x43MsgClientRemoveFriendFromGroup\x12\x0f\n\x07groupid\x18\x01 \x01(\x05\x12\x13\n\x0bsteamiduser\x18\x02 \x01(\x06\":\n\'CMsgClientRemoveFriendFromGroupResponse\x12\x0f\n\x07\x65result\x18\x01 \x01(\r\"\x1b\n\x19\x43MsgClientGetEmoticonList\"\x87\x04\n\x16\x43MsgClientEmoticonList\x12\x33\n\temoticons\x18\x01 \x03(\x0b\x32 .CMsgClientEmoticonList.Emoticon\x12\x31\n\x08stickers\x18\x02 \x03(\x0b\x32\x1f.CMsgClientEmoticonList.Sticker\x12/\n\x07\x65\x66\x66\x65\x63ts\x18\x03 \x03(\x0b\x32\x1e.CMsgClientEmoticonList.Effect\x1ax\n\x08\x45moticon\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\r\n\x05\x63ount\x18\x02 \x01(\x05\x12\x16\n\x0etime_last_used\x18\x03 \x01(\r\x12\x11\n\tuse_count\x18\x04 \x01(\r\x12\x15\n\rtime_received\x18\x05 \x01(\r\x12\r\n\x05\x61ppid\x18\x06 \x01(\r\x1aw\n\x07Sticker\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\r\n\x05\x63ount\x18\x02 \x01(\x05\x12\x15\n\rtime_received\x18\x03 \x01(\r\x12\r\n\x05\x61ppid\x18\x04 \x01(\r\x12\x16\n\x0etime_last_used\x18\x05 \x01(\r\x12\x11\n\tuse_count\x18\x06 \x01(\r\x1a\x61\n\x06\x45\x66\x66\x65\x63t\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\r\n\x05\x63ount\x18\x02 \x01(\x05\x12\x15\n\rtime_received\x18\x03 \x01(\r\x12\x14\n\x0cinfinite_use\x18\x04 \x01(\x08\x12\r\n\x05\x61ppid\x18\x05 \x01(\rB\x05H\x01\x90\x01\x00')
+  serialized_options=b'H\001\220\001\000',
+  create_key=_descriptor._internal_create_key,
+  serialized_pb=b'\n(steammessages_clientserver_friends.proto\x1a\x18steammessages_base.proto\"\x8a\x01\n\x13\x43MsgClientFriendMsg\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12\x17\n\x0f\x63hat_entry_type\x18\x02 \x01(\x05\x12\x0f\n\x07message\x18\x03 \x01(\x0c\x12 \n\x18rtime32_server_timestamp\x18\x04 \x01(\x07\x12\x16\n\x0e\x65\x63ho_to_sender\x18\x05 \x01(\x08\"\x9d\x01\n\x1b\x43MsgClientFriendMsgIncoming\x12\x14\n\x0csteamid_from\x18\x01 \x01(\x06\x12\x17\n\x0f\x63hat_entry_type\x18\x02 \x01(\x05\x12\x1c\n\x14\x66rom_limited_account\x18\x03 \x01(\x08\x12\x0f\n\x07message\x18\x04 \x01(\x0c\x12 \n\x18rtime32_server_timestamp\x18\x05 \x01(\x07\"R\n\x13\x43MsgClientAddFriend\x12\x16\n\x0esteamid_to_add\x18\x01 \x01(\x06\x12#\n\x1b\x61\x63\x63ountname_or_email_to_add\x18\x02 \x01(\t\"e\n\x1b\x43MsgClientAddFriendResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\x12\x16\n\x0esteam_id_added\x18\x02 \x01(\x06\x12\x1a\n\x12persona_name_added\x18\x03 \x01(\t\"*\n\x16\x43MsgClientRemoveFriend\x12\x10\n\x08\x66riendid\x18\x01 \x01(\x06\"6\n\x14\x43MsgClientHideFriend\x12\x10\n\x08\x66riendid\x18\x01 \x01(\x06\x12\x0c\n\x04hide\x18\x02 \x01(\x08\"\xea\x01\n\x15\x43MsgClientFriendsList\x12\x14\n\x0c\x62incremental\x18\x01 \x01(\x08\x12.\n\x07\x66riends\x18\x02 \x03(\x0b\x32\x1d.CMsgClientFriendsList.Friend\x12\x18\n\x10max_friend_count\x18\x03 \x01(\r\x12\x1b\n\x13\x61\x63tive_friend_count\x18\x04 \x01(\r\x12\x19\n\x11\x66riends_limit_hit\x18\x05 \x01(\x08\x1a\x39\n\x06\x46riend\x12\x12\n\nulfriendid\x18\x01 \x01(\x06\x12\x1b\n\x13\x65\x66riendrelationship\x18\x02 \x01(\r\"\xc5\x02\n\x1b\x43MsgClientFriendsGroupsList\x12\x10\n\x08\x62removal\x18\x01 \x01(\x08\x12\x14\n\x0c\x62incremental\x18\x02 \x01(\x08\x12>\n\x0c\x66riendGroups\x18\x03 \x03(\x0b\x32(.CMsgClientFriendsGroupsList.FriendGroup\x12H\n\x0bmemberships\x18\x04 \x03(\x0b\x32\x33.CMsgClientFriendsGroupsList.FriendGroupsMembership\x1a\x35\n\x0b\x46riendGroup\x12\x10\n\x08nGroupID\x18\x01 \x01(\x05\x12\x14\n\x0cstrGroupName\x18\x02 \x01(\t\x1a=\n\x16\x46riendGroupsMembership\x12\x11\n\tulSteamID\x18\x01 \x01(\x06\x12\x10\n\x08nGroupID\x18\x02 \x01(\x05\"\xba\x01\n\x1c\x43MsgClientPlayerNicknameList\x12\x0f\n\x07removal\x18\x01 \x01(\x08\x12\x13\n\x0bincremental\x18\x02 \x01(\x08\x12?\n\tnicknames\x18\x03 \x03(\x0b\x32,.CMsgClientPlayerNicknameList.PlayerNickname\x1a\x33\n\x0ePlayerNickname\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12\x10\n\x08nickname\x18\x03 \x01(\t\"@\n\x1b\x43MsgClientSetPlayerNickname\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12\x10\n\x08nickname\x18\x02 \x01(\t\"6\n#CMsgClientSetPlayerNicknameResponse\x12\x0f\n\x07\x65result\x18\x01 \x01(\r\"O\n\x1b\x43MsgClientRequestFriendData\x12\x1f\n\x17persona_state_requested\x18\x01 \x01(\r\x12\x0f\n\x07\x66riends\x18\x02 \x03(\x06\"\xef\x01\n\x16\x43MsgClientChangeStatus\x12\x15\n\rpersona_state\x18\x01 \x01(\r\x12\x13\n\x0bplayer_name\x18\x02 \x01(\t\x12\x1e\n\x16is_auto_generated_name\x18\x03 \x01(\x08\x12\x15\n\rhigh_priority\x18\x04 \x01(\x08\x12\x1b\n\x13persona_set_by_user\x18\x05 \x01(\x08\x12\x1e\n\x13persona_state_flags\x18\x06 \x01(\r:\x01\x30\x12\x1d\n\x15need_persona_response\x18\x07 \x01(\x08\x12\x16\n\x0eis_client_idle\x18\x08 \x01(\x08\"@\n\x19\x43MsgPersonaChangeResponse\x12\x0e\n\x06result\x18\x01 \x01(\r\x12\x13\n\x0bplayer_name\x18\x02 \x01(\t\"\xa0\x08\n\x16\x43MsgClientPersonaState\x12\x14\n\x0cstatus_flags\x18\x01 \x01(\r\x12/\n\x07\x66riends\x18\x02 \x03(\x0b\x32\x1e.CMsgClientPersonaState.Friend\x1a\xbe\x07\n\x06\x46riend\x12\x10\n\x08\x66riendid\x18\x01 \x01(\x06\x12\x15\n\rpersona_state\x18\x02 \x01(\r\x12\x1a\n\x12game_played_app_id\x18\x03 \x01(\r\x12\x16\n\x0egame_server_ip\x18\x04 \x01(\r\x12\x18\n\x10game_server_port\x18\x05 \x01(\r\x12\x1b\n\x13persona_state_flags\x18\x06 \x01(\r\x12 \n\x18online_session_instances\x18\x07 \x01(\r\x12\x1b\n\x13persona_set_by_user\x18\n \x01(\x08\x12\x13\n\x0bplayer_name\x18\x0f \x01(\t\x12\x12\n\nquery_port\x18\x14 \x01(\r\x12\x16\n\x0esteamid_source\x18\x19 \x01(\x06\x12\x13\n\x0b\x61vatar_hash\x18\x1f \x01(\x0c\x12\x13\n\x0blast_logoff\x18- \x01(\r\x12\x12\n\nlast_logon\x18. \x01(\r\x12\x18\n\x10last_seen_online\x18/ \x01(\r\x12\x11\n\tclan_rank\x18\x32 \x01(\r\x12\x11\n\tgame_name\x18\x37 \x01(\t\x12\x0e\n\x06gameid\x18\x38 \x01(\x06\x12\x16\n\x0egame_data_blob\x18< \x01(\x0c\x12:\n\tclan_data\x18@ \x01(\x0b\x32\'.CMsgClientPersonaState.Friend.ClanData\x12\x10\n\x08\x63lan_tag\x18\x41 \x01(\t\x12\x38\n\rrich_presence\x18G \x03(\x0b\x32!.CMsgClientPersonaState.Friend.KV\x12\x14\n\x0c\x62roadcast_id\x18H \x01(\x06\x12\x15\n\rgame_lobby_id\x18I \x01(\x06\x12$\n\x1cwatching_broadcast_accountid\x18J \x01(\r\x12 \n\x18watching_broadcast_appid\x18K \x01(\r\x12\"\n\x1awatching_broadcast_viewers\x18L \x01(\r\x12 \n\x18watching_broadcast_title\x18M \x01(\t\x12\x1b\n\x13is_community_banned\x18N \x01(\x08\x12\"\n\x1aplayer_name_pending_review\x18O \x01(\x08\x12\x1d\n\x15\x61vatar_pending_review\x18P \x01(\x08\x1a\x35\n\x08\x43lanData\x12\x12\n\nogg_app_id\x18\x01 \x01(\r\x12\x15\n\rchat_group_id\x18\x02 \x01(\x04\x1a \n\x02KV\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t\"5\n\x1b\x43MsgClientFriendProfileInfo\x12\x16\n\x0esteamid_friend\x18\x01 \x01(\x06\"\xda\x01\n#CMsgClientFriendProfileInfoResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\x12\x16\n\x0esteamid_friend\x18\x02 \x01(\x06\x12\x14\n\x0ctime_created\x18\x03 \x01(\r\x12\x11\n\treal_name\x18\x04 \x01(\t\x12\x11\n\tcity_name\x18\x05 \x01(\t\x12\x12\n\nstate_name\x18\x06 \x01(\t\x12\x14\n\x0c\x63ountry_name\x18\x07 \x01(\t\x12\x10\n\x08headline\x18\x08 \x01(\t\x12\x0f\n\x07summary\x18\t \x01(\t\"[\n\x1c\x43MsgClientCreateFriendsGroup\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12\x11\n\tgroupname\x18\x02 \x01(\t\x12\x17\n\x0fsteamid_friends\x18\x03 \x03(\x06\"H\n$CMsgClientCreateFriendsGroupResponse\x12\x0f\n\x07\x65result\x18\x01 \x01(\r\x12\x0f\n\x07groupid\x18\x02 \x01(\x05\"@\n\x1c\x43MsgClientDeleteFriendsGroup\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12\x0f\n\x07groupid\x18\x02 \x01(\x05\"7\n$CMsgClientDeleteFriendsGroupResponse\x12\x0f\n\x07\x65result\x18\x01 \x01(\r\"\x82\x01\n\x1c\x43MsgClientManageFriendsGroup\x12\x0f\n\x07groupid\x18\x01 \x01(\x05\x12\x11\n\tgroupname\x18\x02 \x01(\t\x12\x1d\n\x15steamid_friends_added\x18\x03 \x03(\x06\x12\x1f\n\x17steamid_friends_removed\x18\x04 \x03(\x06\"7\n$CMsgClientManageFriendsGroupResponse\x12\x0f\n\x07\x65result\x18\x01 \x01(\r\"B\n\x1a\x43MsgClientAddFriendToGroup\x12\x0f\n\x07groupid\x18\x01 \x01(\x05\x12\x13\n\x0bsteamiduser\x18\x02 \x01(\x06\"5\n\"CMsgClientAddFriendToGroupResponse\x12\x0f\n\x07\x65result\x18\x01 \x01(\r\"G\n\x1f\x43MsgClientRemoveFriendFromGroup\x12\x0f\n\x07groupid\x18\x01 \x01(\x05\x12\x13\n\x0bsteamiduser\x18\x02 \x01(\x06\":\n\'CMsgClientRemoveFriendFromGroupResponse\x12\x0f\n\x07\x65result\x18\x01 \x01(\r\"\x1b\n\x19\x43MsgClientGetEmoticonList\"\x87\x04\n\x16\x43MsgClientEmoticonList\x12\x33\n\temoticons\x18\x01 \x03(\x0b\x32 .CMsgClientEmoticonList.Emoticon\x12\x31\n\x08stickers\x18\x02 \x03(\x0b\x32\x1f.CMsgClientEmoticonList.Sticker\x12/\n\x07\x65\x66\x66\x65\x63ts\x18\x03 \x03(\x0b\x32\x1e.CMsgClientEmoticonList.Effect\x1ax\n\x08\x45moticon\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\r\n\x05\x63ount\x18\x02 \x01(\x05\x12\x16\n\x0etime_last_used\x18\x03 \x01(\r\x12\x11\n\tuse_count\x18\x04 \x01(\r\x12\x15\n\rtime_received\x18\x05 \x01(\r\x12\r\n\x05\x61ppid\x18\x06 \x01(\r\x1aw\n\x07Sticker\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\r\n\x05\x63ount\x18\x02 \x01(\x05\x12\x15\n\rtime_received\x18\x03 \x01(\r\x12\r\n\x05\x61ppid\x18\x04 \x01(\r\x12\x16\n\x0etime_last_used\x18\x05 \x01(\r\x12\x11\n\tuse_count\x18\x06 \x01(\r\x1a\x61\n\x06\x45\x66\x66\x65\x63t\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\r\n\x05\x63ount\x18\x02 \x01(\x05\x12\x15\n\rtime_received\x18\x03 \x01(\r\x12\x14\n\x0cinfinite_use\x18\x04 \x01(\x08\x12\r\n\x05\x61ppid\x18\x05 \x01(\rB\x05H\x01\x90\x01\x00'
   ,
   dependencies=[steammessages__base__pb2.DESCRIPTOR,])
 
@@ -34,6 +33,7 @@ _CMSGCLIENTFRIENDMSG = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CMsgClientFriendMsg.steamid', index=0,
@@ -41,35 +41,35 @@ _CMSGCLIENTFRIENDMSG = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='chat_entry_type', full_name='CMsgClientFriendMsg.chat_entry_type', index=1,
       number=2, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='message', full_name='CMsgClientFriendMsg.message', index=2,
       number=3, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='rtime32_server_timestamp', full_name='CMsgClientFriendMsg.rtime32_server_timestamp', index=3,
       number=4, type=7, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='echo_to_sender', full_name='CMsgClientFriendMsg.echo_to_sender', index=4,
       number=5, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -93,6 +93,7 @@ _CMSGCLIENTFRIENDMSGINCOMING = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid_from', full_name='CMsgClientFriendMsgIncoming.steamid_from', index=0,
@@ -100,35 +101,35 @@ _CMSGCLIENTFRIENDMSGINCOMING = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='chat_entry_type', full_name='CMsgClientFriendMsgIncoming.chat_entry_type', index=1,
       number=2, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='from_limited_account', full_name='CMsgClientFriendMsgIncoming.from_limited_account', index=2,
       number=3, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='message', full_name='CMsgClientFriendMsgIncoming.message', index=3,
       number=4, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='rtime32_server_timestamp', full_name='CMsgClientFriendMsgIncoming.rtime32_server_timestamp', index=4,
       number=5, type=7, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -152,6 +153,7 @@ _CMSGCLIENTADDFRIEND = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid_to_add', full_name='CMsgClientAddFriend.steamid_to_add', index=0,
@@ -159,14 +161,14 @@ _CMSGCLIENTADDFRIEND = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='accountname_or_email_to_add', full_name='CMsgClientAddFriend.accountname_or_email_to_add', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -190,6 +192,7 @@ _CMSGCLIENTADDFRIENDRESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='eresult', full_name='CMsgClientAddFriendResponse.eresult', index=0,
@@ -197,21 +200,21 @@ _CMSGCLIENTADDFRIENDRESPONSE = _descriptor.Descriptor(
       has_default_value=True, default_value=2,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steam_id_added', full_name='CMsgClientAddFriendResponse.steam_id_added', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='persona_name_added', full_name='CMsgClientAddFriendResponse.persona_name_added', index=2,
       number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -235,6 +238,7 @@ _CMSGCLIENTREMOVEFRIEND = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='friendid', full_name='CMsgClientRemoveFriend.friendid', index=0,
@@ -242,7 +246,7 @@ _CMSGCLIENTREMOVEFRIEND = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -266,6 +270,7 @@ _CMSGCLIENTHIDEFRIEND = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='friendid', full_name='CMsgClientHideFriend.friendid', index=0,
@@ -273,14 +278,14 @@ _CMSGCLIENTHIDEFRIEND = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='hide', full_name='CMsgClientHideFriend.hide', index=1,
       number=2, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -304,6 +309,7 @@ _CMSGCLIENTFRIENDSLIST_FRIEND = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='ulfriendid', full_name='CMsgClientFriendsList.Friend.ulfriendid', index=0,
@@ -311,14 +317,14 @@ _CMSGCLIENTFRIENDSLIST_FRIEND = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='efriendrelationship', full_name='CMsgClientFriendsList.Friend.efriendrelationship', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -341,6 +347,7 @@ _CMSGCLIENTFRIENDSLIST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='bincremental', full_name='CMsgClientFriendsList.bincremental', index=0,
@@ -348,35 +355,35 @@ _CMSGCLIENTFRIENDSLIST = _descriptor.Descriptor(
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='friends', full_name='CMsgClientFriendsList.friends', index=1,
       number=2, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='max_friend_count', full_name='CMsgClientFriendsList.max_friend_count', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='active_friend_count', full_name='CMsgClientFriendsList.active_friend_count', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='friends_limit_hit', full_name='CMsgClientFriendsList.friends_limit_hit', index=4,
       number=5, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -400,6 +407,7 @@ _CMSGCLIENTFRIENDSGROUPSLIST_FRIENDGROUP = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='nGroupID', full_name='CMsgClientFriendsGroupsList.FriendGroup.nGroupID', index=0,
@@ -407,14 +415,14 @@ _CMSGCLIENTFRIENDSGROUPSLIST_FRIENDGROUP = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='strGroupName', full_name='CMsgClientFriendsGroupsList.FriendGroup.strGroupName', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -437,6 +445,7 @@ _CMSGCLIENTFRIENDSGROUPSLIST_FRIENDGROUPSMEMBERSHIP = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='ulSteamID', full_name='CMsgClientFriendsGroupsList.FriendGroupsMembership.ulSteamID', index=0,
@@ -444,14 +453,14 @@ _CMSGCLIENTFRIENDSGROUPSLIST_FRIENDGROUPSMEMBERSHIP = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='nGroupID', full_name='CMsgClientFriendsGroupsList.FriendGroupsMembership.nGroupID', index=1,
       number=2, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -474,6 +483,7 @@ _CMSGCLIENTFRIENDSGROUPSLIST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='bremoval', full_name='CMsgClientFriendsGroupsList.bremoval', index=0,
@@ -481,28 +491,28 @@ _CMSGCLIENTFRIENDSGROUPSLIST = _descriptor.Descriptor(
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='bincremental', full_name='CMsgClientFriendsGroupsList.bincremental', index=1,
       number=2, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='friendGroups', full_name='CMsgClientFriendsGroupsList.friendGroups', index=2,
       number=3, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='memberships', full_name='CMsgClientFriendsGroupsList.memberships', index=3,
       number=4, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -526,6 +536,7 @@ _CMSGCLIENTPLAYERNICKNAMELIST_PLAYERNICKNAME = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CMsgClientPlayerNicknameList.PlayerNickname.steamid', index=0,
@@ -533,14 +544,14 @@ _CMSGCLIENTPLAYERNICKNAMELIST_PLAYERNICKNAME = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='nickname', full_name='CMsgClientPlayerNicknameList.PlayerNickname.nickname', index=1,
       number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -563,6 +574,7 @@ _CMSGCLIENTPLAYERNICKNAMELIST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='removal', full_name='CMsgClientPlayerNicknameList.removal', index=0,
@@ -570,21 +582,21 @@ _CMSGCLIENTPLAYERNICKNAMELIST = _descriptor.Descriptor(
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='incremental', full_name='CMsgClientPlayerNicknameList.incremental', index=1,
       number=2, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='nicknames', full_name='CMsgClientPlayerNicknameList.nicknames', index=2,
       number=3, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -608,6 +620,7 @@ _CMSGCLIENTSETPLAYERNICKNAME = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CMsgClientSetPlayerNickname.steamid', index=0,
@@ -615,14 +628,14 @@ _CMSGCLIENTSETPLAYERNICKNAME = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='nickname', full_name='CMsgClientSetPlayerNickname.nickname', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -646,6 +659,7 @@ _CMSGCLIENTSETPLAYERNICKNAMERESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='eresult', full_name='CMsgClientSetPlayerNicknameResponse.eresult', index=0,
@@ -653,7 +667,7 @@ _CMSGCLIENTSETPLAYERNICKNAMERESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -677,6 +691,7 @@ _CMSGCLIENTREQUESTFRIENDDATA = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='persona_state_requested', full_name='CMsgClientRequestFriendData.persona_state_requested', index=0,
@@ -684,14 +699,14 @@ _CMSGCLIENTREQUESTFRIENDDATA = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='friends', full_name='CMsgClientRequestFriendData.friends', index=1,
       number=2, type=6, cpp_type=4, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -715,6 +730,7 @@ _CMSGCLIENTCHANGESTATUS = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='persona_state', full_name='CMsgClientChangeStatus.persona_state', index=0,
@@ -722,56 +738,56 @@ _CMSGCLIENTCHANGESTATUS = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='player_name', full_name='CMsgClientChangeStatus.player_name', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='is_auto_generated_name', full_name='CMsgClientChangeStatus.is_auto_generated_name', index=2,
       number=3, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='high_priority', full_name='CMsgClientChangeStatus.high_priority', index=3,
       number=4, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='persona_set_by_user', full_name='CMsgClientChangeStatus.persona_set_by_user', index=4,
       number=5, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='persona_state_flags', full_name='CMsgClientChangeStatus.persona_state_flags', index=5,
       number=6, type=13, cpp_type=3, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='need_persona_response', full_name='CMsgClientChangeStatus.need_persona_response', index=6,
       number=7, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='is_client_idle', full_name='CMsgClientChangeStatus.is_client_idle', index=7,
       number=8, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -795,6 +811,7 @@ _CMSGPERSONACHANGERESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='result', full_name='CMsgPersonaChangeResponse.result', index=0,
@@ -802,14 +819,14 @@ _CMSGPERSONACHANGERESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='player_name', full_name='CMsgPersonaChangeResponse.player_name', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -833,6 +850,7 @@ _CMSGCLIENTPERSONASTATE_FRIEND_CLANDATA = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='ogg_app_id', full_name='CMsgClientPersonaState.Friend.ClanData.ogg_app_id', index=0,
@@ -840,14 +858,14 @@ _CMSGCLIENTPERSONASTATE_FRIEND_CLANDATA = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='chat_group_id', full_name='CMsgClientPersonaState.Friend.ClanData.chat_group_id', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -870,21 +888,22 @@ _CMSGCLIENTPERSONASTATE_FRIEND_KV = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='key', full_name='CMsgClientPersonaState.Friend.KV.key', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='value', full_name='CMsgClientPersonaState.Friend.KV.value', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -907,6 +926,7 @@ _CMSGCLIENTPERSONASTATE_FRIEND = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='friendid', full_name='CMsgClientPersonaState.Friend.friendid', index=0,
@@ -914,217 +934,217 @@ _CMSGCLIENTPERSONASTATE_FRIEND = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='persona_state', full_name='CMsgClientPersonaState.Friend.persona_state', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='game_played_app_id', full_name='CMsgClientPersonaState.Friend.game_played_app_id', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='game_server_ip', full_name='CMsgClientPersonaState.Friend.game_server_ip', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='game_server_port', full_name='CMsgClientPersonaState.Friend.game_server_port', index=4,
       number=5, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='persona_state_flags', full_name='CMsgClientPersonaState.Friend.persona_state_flags', index=5,
       number=6, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='online_session_instances', full_name='CMsgClientPersonaState.Friend.online_session_instances', index=6,
       number=7, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='persona_set_by_user', full_name='CMsgClientPersonaState.Friend.persona_set_by_user', index=7,
       number=10, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='player_name', full_name='CMsgClientPersonaState.Friend.player_name', index=8,
       number=15, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='query_port', full_name='CMsgClientPersonaState.Friend.query_port', index=9,
       number=20, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steamid_source', full_name='CMsgClientPersonaState.Friend.steamid_source', index=10,
       number=25, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='avatar_hash', full_name='CMsgClientPersonaState.Friend.avatar_hash', index=11,
       number=31, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='last_logoff', full_name='CMsgClientPersonaState.Friend.last_logoff', index=12,
       number=45, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='last_logon', full_name='CMsgClientPersonaState.Friend.last_logon', index=13,
       number=46, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='last_seen_online', full_name='CMsgClientPersonaState.Friend.last_seen_online', index=14,
       number=47, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='clan_rank', full_name='CMsgClientPersonaState.Friend.clan_rank', index=15,
       number=50, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='game_name', full_name='CMsgClientPersonaState.Friend.game_name', index=16,
       number=55, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='gameid', full_name='CMsgClientPersonaState.Friend.gameid', index=17,
       number=56, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='game_data_blob', full_name='CMsgClientPersonaState.Friend.game_data_blob', index=18,
       number=60, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='clan_data', full_name='CMsgClientPersonaState.Friend.clan_data', index=19,
       number=64, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='clan_tag', full_name='CMsgClientPersonaState.Friend.clan_tag', index=20,
       number=65, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='rich_presence', full_name='CMsgClientPersonaState.Friend.rich_presence', index=21,
       number=71, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='broadcast_id', full_name='CMsgClientPersonaState.Friend.broadcast_id', index=22,
       number=72, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='game_lobby_id', full_name='CMsgClientPersonaState.Friend.game_lobby_id', index=23,
       number=73, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='watching_broadcast_accountid', full_name='CMsgClientPersonaState.Friend.watching_broadcast_accountid', index=24,
       number=74, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='watching_broadcast_appid', full_name='CMsgClientPersonaState.Friend.watching_broadcast_appid', index=25,
       number=75, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='watching_broadcast_viewers', full_name='CMsgClientPersonaState.Friend.watching_broadcast_viewers', index=26,
       number=76, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='watching_broadcast_title', full_name='CMsgClientPersonaState.Friend.watching_broadcast_title', index=27,
       number=77, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='is_community_banned', full_name='CMsgClientPersonaState.Friend.is_community_banned', index=28,
       number=78, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='player_name_pending_review', full_name='CMsgClientPersonaState.Friend.player_name_pending_review', index=29,
       number=79, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='avatar_pending_review', full_name='CMsgClientPersonaState.Friend.avatar_pending_review', index=30,
       number=80, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1147,6 +1167,7 @@ _CMSGCLIENTPERSONASTATE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='status_flags', full_name='CMsgClientPersonaState.status_flags', index=0,
@@ -1154,14 +1175,14 @@ _CMSGCLIENTPERSONASTATE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='friends', full_name='CMsgClientPersonaState.friends', index=1,
       number=2, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1185,6 +1206,7 @@ _CMSGCLIENTFRIENDPROFILEINFO = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid_friend', full_name='CMsgClientFriendProfileInfo.steamid_friend', index=0,
@@ -1192,7 +1214,7 @@ _CMSGCLIENTFRIENDPROFILEINFO = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1216,6 +1238,7 @@ _CMSGCLIENTFRIENDPROFILEINFORESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='eresult', full_name='CMsgClientFriendProfileInfoResponse.eresult', index=0,
@@ -1223,63 +1246,63 @@ _CMSGCLIENTFRIENDPROFILEINFORESPONSE = _descriptor.Descriptor(
       has_default_value=True, default_value=2,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steamid_friend', full_name='CMsgClientFriendProfileInfoResponse.steamid_friend', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='time_created', full_name='CMsgClientFriendProfileInfoResponse.time_created', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='real_name', full_name='CMsgClientFriendProfileInfoResponse.real_name', index=3,
       number=4, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='city_name', full_name='CMsgClientFriendProfileInfoResponse.city_name', index=4,
       number=5, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='state_name', full_name='CMsgClientFriendProfileInfoResponse.state_name', index=5,
       number=6, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='country_name', full_name='CMsgClientFriendProfileInfoResponse.country_name', index=6,
       number=7, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='headline', full_name='CMsgClientFriendProfileInfoResponse.headline', index=7,
       number=8, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='summary', full_name='CMsgClientFriendProfileInfoResponse.summary', index=8,
       number=9, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1303,6 +1326,7 @@ _CMSGCLIENTCREATEFRIENDSGROUP = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CMsgClientCreateFriendsGroup.steamid', index=0,
@@ -1310,21 +1334,21 @@ _CMSGCLIENTCREATEFRIENDSGROUP = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='groupname', full_name='CMsgClientCreateFriendsGroup.groupname', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steamid_friends', full_name='CMsgClientCreateFriendsGroup.steamid_friends', index=2,
       number=3, type=6, cpp_type=4, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1348,6 +1372,7 @@ _CMSGCLIENTCREATEFRIENDSGROUPRESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='eresult', full_name='CMsgClientCreateFriendsGroupResponse.eresult', index=0,
@@ -1355,14 +1380,14 @@ _CMSGCLIENTCREATEFRIENDSGROUPRESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='groupid', full_name='CMsgClientCreateFriendsGroupResponse.groupid', index=1,
       number=2, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1386,6 +1411,7 @@ _CMSGCLIENTDELETEFRIENDSGROUP = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CMsgClientDeleteFriendsGroup.steamid', index=0,
@@ -1393,14 +1419,14 @@ _CMSGCLIENTDELETEFRIENDSGROUP = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='groupid', full_name='CMsgClientDeleteFriendsGroup.groupid', index=1,
       number=2, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1424,6 +1450,7 @@ _CMSGCLIENTDELETEFRIENDSGROUPRESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='eresult', full_name='CMsgClientDeleteFriendsGroupResponse.eresult', index=0,
@@ -1431,7 +1458,7 @@ _CMSGCLIENTDELETEFRIENDSGROUPRESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1455,6 +1482,7 @@ _CMSGCLIENTMANAGEFRIENDSGROUP = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='groupid', full_name='CMsgClientManageFriendsGroup.groupid', index=0,
@@ -1462,28 +1490,28 @@ _CMSGCLIENTMANAGEFRIENDSGROUP = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='groupname', full_name='CMsgClientManageFriendsGroup.groupname', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steamid_friends_added', full_name='CMsgClientManageFriendsGroup.steamid_friends_added', index=2,
       number=3, type=6, cpp_type=4, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steamid_friends_removed', full_name='CMsgClientManageFriendsGroup.steamid_friends_removed', index=3,
       number=4, type=6, cpp_type=4, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1507,6 +1535,7 @@ _CMSGCLIENTMANAGEFRIENDSGROUPRESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='eresult', full_name='CMsgClientManageFriendsGroupResponse.eresult', index=0,
@@ -1514,7 +1543,7 @@ _CMSGCLIENTMANAGEFRIENDSGROUPRESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1538,6 +1567,7 @@ _CMSGCLIENTADDFRIENDTOGROUP = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='groupid', full_name='CMsgClientAddFriendToGroup.groupid', index=0,
@@ -1545,14 +1575,14 @@ _CMSGCLIENTADDFRIENDTOGROUP = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steamiduser', full_name='CMsgClientAddFriendToGroup.steamiduser', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1576,6 +1606,7 @@ _CMSGCLIENTADDFRIENDTOGROUPRESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='eresult', full_name='CMsgClientAddFriendToGroupResponse.eresult', index=0,
@@ -1583,7 +1614,7 @@ _CMSGCLIENTADDFRIENDTOGROUPRESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1607,6 +1638,7 @@ _CMSGCLIENTREMOVEFRIENDFROMGROUP = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='groupid', full_name='CMsgClientRemoveFriendFromGroup.groupid', index=0,
@@ -1614,14 +1646,14 @@ _CMSGCLIENTREMOVEFRIENDFROMGROUP = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steamiduser', full_name='CMsgClientRemoveFriendFromGroup.steamiduser', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1645,6 +1677,7 @@ _CMSGCLIENTREMOVEFRIENDFROMGROUPRESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='eresult', full_name='CMsgClientRemoveFriendFromGroupResponse.eresult', index=0,
@@ -1652,7 +1685,7 @@ _CMSGCLIENTREMOVEFRIENDFROMGROUPRESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1676,6 +1709,7 @@ _CMSGCLIENTGETEMOTICONLIST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -1700,49 +1734,50 @@ _CMSGCLIENTEMOTICONLIST_EMOTICON = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='name', full_name='CMsgClientEmoticonList.Emoticon.name', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='count', full_name='CMsgClientEmoticonList.Emoticon.count', index=1,
       number=2, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='time_last_used', full_name='CMsgClientEmoticonList.Emoticon.time_last_used', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='use_count', full_name='CMsgClientEmoticonList.Emoticon.use_count', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='time_received', full_name='CMsgClientEmoticonList.Emoticon.time_received', index=4,
       number=5, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='appid', full_name='CMsgClientEmoticonList.Emoticon.appid', index=5,
       number=6, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1765,49 +1800,50 @@ _CMSGCLIENTEMOTICONLIST_STICKER = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='name', full_name='CMsgClientEmoticonList.Sticker.name', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='count', full_name='CMsgClientEmoticonList.Sticker.count', index=1,
       number=2, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='time_received', full_name='CMsgClientEmoticonList.Sticker.time_received', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='appid', full_name='CMsgClientEmoticonList.Sticker.appid', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='time_last_used', full_name='CMsgClientEmoticonList.Sticker.time_last_used', index=4,
       number=5, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='use_count', full_name='CMsgClientEmoticonList.Sticker.use_count', index=5,
       number=6, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1830,42 +1866,43 @@ _CMSGCLIENTEMOTICONLIST_EFFECT = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='name', full_name='CMsgClientEmoticonList.Effect.name', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='count', full_name='CMsgClientEmoticonList.Effect.count', index=1,
       number=2, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='time_received', full_name='CMsgClientEmoticonList.Effect.time_received', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='infinite_use', full_name='CMsgClientEmoticonList.Effect.infinite_use', index=3,
       number=4, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='appid', full_name='CMsgClientEmoticonList.Effect.appid', index=4,
       number=5, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1888,6 +1925,7 @@ _CMSGCLIENTEMOTICONLIST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='emoticons', full_name='CMsgClientEmoticonList.emoticons', index=0,
@@ -1895,21 +1933,21 @@ _CMSGCLIENTEMOTICONLIST = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='stickers', full_name='CMsgClientEmoticonList.stickers', index=1,
       number=2, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='effects', full_name='CMsgClientEmoticonList.effects', index=2,
       number=3, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1977,284 +2015,284 @@ DESCRIPTOR.message_types_by_name['CMsgClientGetEmoticonList'] = _CMSGCLIENTGETEM
 DESCRIPTOR.message_types_by_name['CMsgClientEmoticonList'] = _CMSGCLIENTEMOTICONLIST
 _sym_db.RegisterFileDescriptor(DESCRIPTOR)
 
-CMsgClientFriendMsg = _reflection.GeneratedProtocolMessageType('CMsgClientFriendMsg', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTFRIENDMSG,
-  __module__ = 'steammessages_clientserver_friends_pb2'
+CMsgClientFriendMsg = _reflection.GeneratedProtocolMessageType('CMsgClientFriendMsg', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTFRIENDMSG,
+  '__module__' : 'steammessages_clientserver_friends_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientFriendMsg)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientFriendMsg)
 
-CMsgClientFriendMsgIncoming = _reflection.GeneratedProtocolMessageType('CMsgClientFriendMsgIncoming', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTFRIENDMSGINCOMING,
-  __module__ = 'steammessages_clientserver_friends_pb2'
+CMsgClientFriendMsgIncoming = _reflection.GeneratedProtocolMessageType('CMsgClientFriendMsgIncoming', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTFRIENDMSGINCOMING,
+  '__module__' : 'steammessages_clientserver_friends_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientFriendMsgIncoming)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientFriendMsgIncoming)
 
-CMsgClientAddFriend = _reflection.GeneratedProtocolMessageType('CMsgClientAddFriend', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTADDFRIEND,
-  __module__ = 'steammessages_clientserver_friends_pb2'
+CMsgClientAddFriend = _reflection.GeneratedProtocolMessageType('CMsgClientAddFriend', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTADDFRIEND,
+  '__module__' : 'steammessages_clientserver_friends_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientAddFriend)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientAddFriend)
 
-CMsgClientAddFriendResponse = _reflection.GeneratedProtocolMessageType('CMsgClientAddFriendResponse', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTADDFRIENDRESPONSE,
-  __module__ = 'steammessages_clientserver_friends_pb2'
+CMsgClientAddFriendResponse = _reflection.GeneratedProtocolMessageType('CMsgClientAddFriendResponse', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTADDFRIENDRESPONSE,
+  '__module__' : 'steammessages_clientserver_friends_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientAddFriendResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientAddFriendResponse)
 
-CMsgClientRemoveFriend = _reflection.GeneratedProtocolMessageType('CMsgClientRemoveFriend', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTREMOVEFRIEND,
-  __module__ = 'steammessages_clientserver_friends_pb2'
+CMsgClientRemoveFriend = _reflection.GeneratedProtocolMessageType('CMsgClientRemoveFriend', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTREMOVEFRIEND,
+  '__module__' : 'steammessages_clientserver_friends_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientRemoveFriend)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientRemoveFriend)
 
-CMsgClientHideFriend = _reflection.GeneratedProtocolMessageType('CMsgClientHideFriend', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTHIDEFRIEND,
-  __module__ = 'steammessages_clientserver_friends_pb2'
+CMsgClientHideFriend = _reflection.GeneratedProtocolMessageType('CMsgClientHideFriend', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTHIDEFRIEND,
+  '__module__' : 'steammessages_clientserver_friends_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientHideFriend)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientHideFriend)
 
-CMsgClientFriendsList = _reflection.GeneratedProtocolMessageType('CMsgClientFriendsList', (_message.Message,), dict(
+CMsgClientFriendsList = _reflection.GeneratedProtocolMessageType('CMsgClientFriendsList', (_message.Message,), {
 
-  Friend = _reflection.GeneratedProtocolMessageType('Friend', (_message.Message,), dict(
-    DESCRIPTOR = _CMSGCLIENTFRIENDSLIST_FRIEND,
-    __module__ = 'steammessages_clientserver_friends_pb2'
+  'Friend' : _reflection.GeneratedProtocolMessageType('Friend', (_message.Message,), {
+    'DESCRIPTOR' : _CMSGCLIENTFRIENDSLIST_FRIEND,
+    '__module__' : 'steammessages_clientserver_friends_pb2'
     # @@protoc_insertion_point(class_scope:CMsgClientFriendsList.Friend)
-    ))
+    })
   ,
-  DESCRIPTOR = _CMSGCLIENTFRIENDSLIST,
-  __module__ = 'steammessages_clientserver_friends_pb2'
+  'DESCRIPTOR' : _CMSGCLIENTFRIENDSLIST,
+  '__module__' : 'steammessages_clientserver_friends_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientFriendsList)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientFriendsList)
 _sym_db.RegisterMessage(CMsgClientFriendsList.Friend)
 
-CMsgClientFriendsGroupsList = _reflection.GeneratedProtocolMessageType('CMsgClientFriendsGroupsList', (_message.Message,), dict(
+CMsgClientFriendsGroupsList = _reflection.GeneratedProtocolMessageType('CMsgClientFriendsGroupsList', (_message.Message,), {
 
-  FriendGroup = _reflection.GeneratedProtocolMessageType('FriendGroup', (_message.Message,), dict(
-    DESCRIPTOR = _CMSGCLIENTFRIENDSGROUPSLIST_FRIENDGROUP,
-    __module__ = 'steammessages_clientserver_friends_pb2'
+  'FriendGroup' : _reflection.GeneratedProtocolMessageType('FriendGroup', (_message.Message,), {
+    'DESCRIPTOR' : _CMSGCLIENTFRIENDSGROUPSLIST_FRIENDGROUP,
+    '__module__' : 'steammessages_clientserver_friends_pb2'
     # @@protoc_insertion_point(class_scope:CMsgClientFriendsGroupsList.FriendGroup)
-    ))
+    })
   ,
 
-  FriendGroupsMembership = _reflection.GeneratedProtocolMessageType('FriendGroupsMembership', (_message.Message,), dict(
-    DESCRIPTOR = _CMSGCLIENTFRIENDSGROUPSLIST_FRIENDGROUPSMEMBERSHIP,
-    __module__ = 'steammessages_clientserver_friends_pb2'
+  'FriendGroupsMembership' : _reflection.GeneratedProtocolMessageType('FriendGroupsMembership', (_message.Message,), {
+    'DESCRIPTOR' : _CMSGCLIENTFRIENDSGROUPSLIST_FRIENDGROUPSMEMBERSHIP,
+    '__module__' : 'steammessages_clientserver_friends_pb2'
     # @@protoc_insertion_point(class_scope:CMsgClientFriendsGroupsList.FriendGroupsMembership)
-    ))
+    })
   ,
-  DESCRIPTOR = _CMSGCLIENTFRIENDSGROUPSLIST,
-  __module__ = 'steammessages_clientserver_friends_pb2'
+  'DESCRIPTOR' : _CMSGCLIENTFRIENDSGROUPSLIST,
+  '__module__' : 'steammessages_clientserver_friends_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientFriendsGroupsList)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientFriendsGroupsList)
 _sym_db.RegisterMessage(CMsgClientFriendsGroupsList.FriendGroup)
 _sym_db.RegisterMessage(CMsgClientFriendsGroupsList.FriendGroupsMembership)
 
-CMsgClientPlayerNicknameList = _reflection.GeneratedProtocolMessageType('CMsgClientPlayerNicknameList', (_message.Message,), dict(
+CMsgClientPlayerNicknameList = _reflection.GeneratedProtocolMessageType('CMsgClientPlayerNicknameList', (_message.Message,), {
 
-  PlayerNickname = _reflection.GeneratedProtocolMessageType('PlayerNickname', (_message.Message,), dict(
-    DESCRIPTOR = _CMSGCLIENTPLAYERNICKNAMELIST_PLAYERNICKNAME,
-    __module__ = 'steammessages_clientserver_friends_pb2'
+  'PlayerNickname' : _reflection.GeneratedProtocolMessageType('PlayerNickname', (_message.Message,), {
+    'DESCRIPTOR' : _CMSGCLIENTPLAYERNICKNAMELIST_PLAYERNICKNAME,
+    '__module__' : 'steammessages_clientserver_friends_pb2'
     # @@protoc_insertion_point(class_scope:CMsgClientPlayerNicknameList.PlayerNickname)
-    ))
+    })
   ,
-  DESCRIPTOR = _CMSGCLIENTPLAYERNICKNAMELIST,
-  __module__ = 'steammessages_clientserver_friends_pb2'
+  'DESCRIPTOR' : _CMSGCLIENTPLAYERNICKNAMELIST,
+  '__module__' : 'steammessages_clientserver_friends_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientPlayerNicknameList)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientPlayerNicknameList)
 _sym_db.RegisterMessage(CMsgClientPlayerNicknameList.PlayerNickname)
 
-CMsgClientSetPlayerNickname = _reflection.GeneratedProtocolMessageType('CMsgClientSetPlayerNickname', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTSETPLAYERNICKNAME,
-  __module__ = 'steammessages_clientserver_friends_pb2'
+CMsgClientSetPlayerNickname = _reflection.GeneratedProtocolMessageType('CMsgClientSetPlayerNickname', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTSETPLAYERNICKNAME,
+  '__module__' : 'steammessages_clientserver_friends_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientSetPlayerNickname)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientSetPlayerNickname)
 
-CMsgClientSetPlayerNicknameResponse = _reflection.GeneratedProtocolMessageType('CMsgClientSetPlayerNicknameResponse', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTSETPLAYERNICKNAMERESPONSE,
-  __module__ = 'steammessages_clientserver_friends_pb2'
+CMsgClientSetPlayerNicknameResponse = _reflection.GeneratedProtocolMessageType('CMsgClientSetPlayerNicknameResponse', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTSETPLAYERNICKNAMERESPONSE,
+  '__module__' : 'steammessages_clientserver_friends_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientSetPlayerNicknameResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientSetPlayerNicknameResponse)
 
-CMsgClientRequestFriendData = _reflection.GeneratedProtocolMessageType('CMsgClientRequestFriendData', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTREQUESTFRIENDDATA,
-  __module__ = 'steammessages_clientserver_friends_pb2'
+CMsgClientRequestFriendData = _reflection.GeneratedProtocolMessageType('CMsgClientRequestFriendData', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTREQUESTFRIENDDATA,
+  '__module__' : 'steammessages_clientserver_friends_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientRequestFriendData)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientRequestFriendData)
 
-CMsgClientChangeStatus = _reflection.GeneratedProtocolMessageType('CMsgClientChangeStatus', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTCHANGESTATUS,
-  __module__ = 'steammessages_clientserver_friends_pb2'
+CMsgClientChangeStatus = _reflection.GeneratedProtocolMessageType('CMsgClientChangeStatus', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTCHANGESTATUS,
+  '__module__' : 'steammessages_clientserver_friends_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientChangeStatus)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientChangeStatus)
 
-CMsgPersonaChangeResponse = _reflection.GeneratedProtocolMessageType('CMsgPersonaChangeResponse', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGPERSONACHANGERESPONSE,
-  __module__ = 'steammessages_clientserver_friends_pb2'
+CMsgPersonaChangeResponse = _reflection.GeneratedProtocolMessageType('CMsgPersonaChangeResponse', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGPERSONACHANGERESPONSE,
+  '__module__' : 'steammessages_clientserver_friends_pb2'
   # @@protoc_insertion_point(class_scope:CMsgPersonaChangeResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgPersonaChangeResponse)
 
-CMsgClientPersonaState = _reflection.GeneratedProtocolMessageType('CMsgClientPersonaState', (_message.Message,), dict(
+CMsgClientPersonaState = _reflection.GeneratedProtocolMessageType('CMsgClientPersonaState', (_message.Message,), {
 
-  Friend = _reflection.GeneratedProtocolMessageType('Friend', (_message.Message,), dict(
+  'Friend' : _reflection.GeneratedProtocolMessageType('Friend', (_message.Message,), {
 
-    ClanData = _reflection.GeneratedProtocolMessageType('ClanData', (_message.Message,), dict(
-      DESCRIPTOR = _CMSGCLIENTPERSONASTATE_FRIEND_CLANDATA,
-      __module__ = 'steammessages_clientserver_friends_pb2'
+    'ClanData' : _reflection.GeneratedProtocolMessageType('ClanData', (_message.Message,), {
+      'DESCRIPTOR' : _CMSGCLIENTPERSONASTATE_FRIEND_CLANDATA,
+      '__module__' : 'steammessages_clientserver_friends_pb2'
       # @@protoc_insertion_point(class_scope:CMsgClientPersonaState.Friend.ClanData)
-      ))
+      })
     ,
 
-    KV = _reflection.GeneratedProtocolMessageType('KV', (_message.Message,), dict(
-      DESCRIPTOR = _CMSGCLIENTPERSONASTATE_FRIEND_KV,
-      __module__ = 'steammessages_clientserver_friends_pb2'
+    'KV' : _reflection.GeneratedProtocolMessageType('KV', (_message.Message,), {
+      'DESCRIPTOR' : _CMSGCLIENTPERSONASTATE_FRIEND_KV,
+      '__module__' : 'steammessages_clientserver_friends_pb2'
       # @@protoc_insertion_point(class_scope:CMsgClientPersonaState.Friend.KV)
-      ))
+      })
     ,
-    DESCRIPTOR = _CMSGCLIENTPERSONASTATE_FRIEND,
-    __module__ = 'steammessages_clientserver_friends_pb2'
+    'DESCRIPTOR' : _CMSGCLIENTPERSONASTATE_FRIEND,
+    '__module__' : 'steammessages_clientserver_friends_pb2'
     # @@protoc_insertion_point(class_scope:CMsgClientPersonaState.Friend)
-    ))
+    })
   ,
-  DESCRIPTOR = _CMSGCLIENTPERSONASTATE,
-  __module__ = 'steammessages_clientserver_friends_pb2'
+  'DESCRIPTOR' : _CMSGCLIENTPERSONASTATE,
+  '__module__' : 'steammessages_clientserver_friends_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientPersonaState)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientPersonaState)
 _sym_db.RegisterMessage(CMsgClientPersonaState.Friend)
 _sym_db.RegisterMessage(CMsgClientPersonaState.Friend.ClanData)
 _sym_db.RegisterMessage(CMsgClientPersonaState.Friend.KV)
 
-CMsgClientFriendProfileInfo = _reflection.GeneratedProtocolMessageType('CMsgClientFriendProfileInfo', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTFRIENDPROFILEINFO,
-  __module__ = 'steammessages_clientserver_friends_pb2'
+CMsgClientFriendProfileInfo = _reflection.GeneratedProtocolMessageType('CMsgClientFriendProfileInfo', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTFRIENDPROFILEINFO,
+  '__module__' : 'steammessages_clientserver_friends_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientFriendProfileInfo)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientFriendProfileInfo)
 
-CMsgClientFriendProfileInfoResponse = _reflection.GeneratedProtocolMessageType('CMsgClientFriendProfileInfoResponse', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTFRIENDPROFILEINFORESPONSE,
-  __module__ = 'steammessages_clientserver_friends_pb2'
+CMsgClientFriendProfileInfoResponse = _reflection.GeneratedProtocolMessageType('CMsgClientFriendProfileInfoResponse', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTFRIENDPROFILEINFORESPONSE,
+  '__module__' : 'steammessages_clientserver_friends_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientFriendProfileInfoResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientFriendProfileInfoResponse)
 
-CMsgClientCreateFriendsGroup = _reflection.GeneratedProtocolMessageType('CMsgClientCreateFriendsGroup', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTCREATEFRIENDSGROUP,
-  __module__ = 'steammessages_clientserver_friends_pb2'
+CMsgClientCreateFriendsGroup = _reflection.GeneratedProtocolMessageType('CMsgClientCreateFriendsGroup', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTCREATEFRIENDSGROUP,
+  '__module__' : 'steammessages_clientserver_friends_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientCreateFriendsGroup)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientCreateFriendsGroup)
 
-CMsgClientCreateFriendsGroupResponse = _reflection.GeneratedProtocolMessageType('CMsgClientCreateFriendsGroupResponse', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTCREATEFRIENDSGROUPRESPONSE,
-  __module__ = 'steammessages_clientserver_friends_pb2'
+CMsgClientCreateFriendsGroupResponse = _reflection.GeneratedProtocolMessageType('CMsgClientCreateFriendsGroupResponse', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTCREATEFRIENDSGROUPRESPONSE,
+  '__module__' : 'steammessages_clientserver_friends_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientCreateFriendsGroupResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientCreateFriendsGroupResponse)
 
-CMsgClientDeleteFriendsGroup = _reflection.GeneratedProtocolMessageType('CMsgClientDeleteFriendsGroup', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTDELETEFRIENDSGROUP,
-  __module__ = 'steammessages_clientserver_friends_pb2'
+CMsgClientDeleteFriendsGroup = _reflection.GeneratedProtocolMessageType('CMsgClientDeleteFriendsGroup', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTDELETEFRIENDSGROUP,
+  '__module__' : 'steammessages_clientserver_friends_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientDeleteFriendsGroup)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientDeleteFriendsGroup)
 
-CMsgClientDeleteFriendsGroupResponse = _reflection.GeneratedProtocolMessageType('CMsgClientDeleteFriendsGroupResponse', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTDELETEFRIENDSGROUPRESPONSE,
-  __module__ = 'steammessages_clientserver_friends_pb2'
+CMsgClientDeleteFriendsGroupResponse = _reflection.GeneratedProtocolMessageType('CMsgClientDeleteFriendsGroupResponse', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTDELETEFRIENDSGROUPRESPONSE,
+  '__module__' : 'steammessages_clientserver_friends_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientDeleteFriendsGroupResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientDeleteFriendsGroupResponse)
 
-CMsgClientManageFriendsGroup = _reflection.GeneratedProtocolMessageType('CMsgClientManageFriendsGroup', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTMANAGEFRIENDSGROUP,
-  __module__ = 'steammessages_clientserver_friends_pb2'
+CMsgClientManageFriendsGroup = _reflection.GeneratedProtocolMessageType('CMsgClientManageFriendsGroup', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTMANAGEFRIENDSGROUP,
+  '__module__' : 'steammessages_clientserver_friends_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientManageFriendsGroup)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientManageFriendsGroup)
 
-CMsgClientManageFriendsGroupResponse = _reflection.GeneratedProtocolMessageType('CMsgClientManageFriendsGroupResponse', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTMANAGEFRIENDSGROUPRESPONSE,
-  __module__ = 'steammessages_clientserver_friends_pb2'
+CMsgClientManageFriendsGroupResponse = _reflection.GeneratedProtocolMessageType('CMsgClientManageFriendsGroupResponse', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTMANAGEFRIENDSGROUPRESPONSE,
+  '__module__' : 'steammessages_clientserver_friends_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientManageFriendsGroupResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientManageFriendsGroupResponse)
 
-CMsgClientAddFriendToGroup = _reflection.GeneratedProtocolMessageType('CMsgClientAddFriendToGroup', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTADDFRIENDTOGROUP,
-  __module__ = 'steammessages_clientserver_friends_pb2'
+CMsgClientAddFriendToGroup = _reflection.GeneratedProtocolMessageType('CMsgClientAddFriendToGroup', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTADDFRIENDTOGROUP,
+  '__module__' : 'steammessages_clientserver_friends_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientAddFriendToGroup)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientAddFriendToGroup)
 
-CMsgClientAddFriendToGroupResponse = _reflection.GeneratedProtocolMessageType('CMsgClientAddFriendToGroupResponse', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTADDFRIENDTOGROUPRESPONSE,
-  __module__ = 'steammessages_clientserver_friends_pb2'
+CMsgClientAddFriendToGroupResponse = _reflection.GeneratedProtocolMessageType('CMsgClientAddFriendToGroupResponse', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTADDFRIENDTOGROUPRESPONSE,
+  '__module__' : 'steammessages_clientserver_friends_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientAddFriendToGroupResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientAddFriendToGroupResponse)
 
-CMsgClientRemoveFriendFromGroup = _reflection.GeneratedProtocolMessageType('CMsgClientRemoveFriendFromGroup', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTREMOVEFRIENDFROMGROUP,
-  __module__ = 'steammessages_clientserver_friends_pb2'
+CMsgClientRemoveFriendFromGroup = _reflection.GeneratedProtocolMessageType('CMsgClientRemoveFriendFromGroup', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTREMOVEFRIENDFROMGROUP,
+  '__module__' : 'steammessages_clientserver_friends_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientRemoveFriendFromGroup)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientRemoveFriendFromGroup)
 
-CMsgClientRemoveFriendFromGroupResponse = _reflection.GeneratedProtocolMessageType('CMsgClientRemoveFriendFromGroupResponse', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTREMOVEFRIENDFROMGROUPRESPONSE,
-  __module__ = 'steammessages_clientserver_friends_pb2'
+CMsgClientRemoveFriendFromGroupResponse = _reflection.GeneratedProtocolMessageType('CMsgClientRemoveFriendFromGroupResponse', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTREMOVEFRIENDFROMGROUPRESPONSE,
+  '__module__' : 'steammessages_clientserver_friends_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientRemoveFriendFromGroupResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientRemoveFriendFromGroupResponse)
 
-CMsgClientGetEmoticonList = _reflection.GeneratedProtocolMessageType('CMsgClientGetEmoticonList', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTGETEMOTICONLIST,
-  __module__ = 'steammessages_clientserver_friends_pb2'
+CMsgClientGetEmoticonList = _reflection.GeneratedProtocolMessageType('CMsgClientGetEmoticonList', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTGETEMOTICONLIST,
+  '__module__' : 'steammessages_clientserver_friends_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientGetEmoticonList)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientGetEmoticonList)
 
-CMsgClientEmoticonList = _reflection.GeneratedProtocolMessageType('CMsgClientEmoticonList', (_message.Message,), dict(
+CMsgClientEmoticonList = _reflection.GeneratedProtocolMessageType('CMsgClientEmoticonList', (_message.Message,), {
 
-  Emoticon = _reflection.GeneratedProtocolMessageType('Emoticon', (_message.Message,), dict(
-    DESCRIPTOR = _CMSGCLIENTEMOTICONLIST_EMOTICON,
-    __module__ = 'steammessages_clientserver_friends_pb2'
+  'Emoticon' : _reflection.GeneratedProtocolMessageType('Emoticon', (_message.Message,), {
+    'DESCRIPTOR' : _CMSGCLIENTEMOTICONLIST_EMOTICON,
+    '__module__' : 'steammessages_clientserver_friends_pb2'
     # @@protoc_insertion_point(class_scope:CMsgClientEmoticonList.Emoticon)
-    ))
+    })
   ,
 
-  Sticker = _reflection.GeneratedProtocolMessageType('Sticker', (_message.Message,), dict(
-    DESCRIPTOR = _CMSGCLIENTEMOTICONLIST_STICKER,
-    __module__ = 'steammessages_clientserver_friends_pb2'
+  'Sticker' : _reflection.GeneratedProtocolMessageType('Sticker', (_message.Message,), {
+    'DESCRIPTOR' : _CMSGCLIENTEMOTICONLIST_STICKER,
+    '__module__' : 'steammessages_clientserver_friends_pb2'
     # @@protoc_insertion_point(class_scope:CMsgClientEmoticonList.Sticker)
-    ))
+    })
   ,
 
-  Effect = _reflection.GeneratedProtocolMessageType('Effect', (_message.Message,), dict(
-    DESCRIPTOR = _CMSGCLIENTEMOTICONLIST_EFFECT,
-    __module__ = 'steammessages_clientserver_friends_pb2'
+  'Effect' : _reflection.GeneratedProtocolMessageType('Effect', (_message.Message,), {
+    'DESCRIPTOR' : _CMSGCLIENTEMOTICONLIST_EFFECT,
+    '__module__' : 'steammessages_clientserver_friends_pb2'
     # @@protoc_insertion_point(class_scope:CMsgClientEmoticonList.Effect)
-    ))
+    })
   ,
-  DESCRIPTOR = _CMSGCLIENTEMOTICONLIST,
-  __module__ = 'steammessages_clientserver_friends_pb2'
+  'DESCRIPTOR' : _CMSGCLIENTEMOTICONLIST,
+  '__module__' : 'steammessages_clientserver_friends_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientEmoticonList)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientEmoticonList)
 _sym_db.RegisterMessage(CMsgClientEmoticonList.Emoticon)
 _sym_db.RegisterMessage(CMsgClientEmoticonList.Sticker)
diff --git a/steam/protobufs/steammessages_clientserver_gameservers_pb2.py b/steam/protobufs/steammessages_clientserver_gameservers_pb2.py
index e6e7ff9..4933b54 100644
--- a/steam/protobufs/steammessages_clientserver_gameservers_pb2.py
+++ b/steam/protobufs/steammessages_clientserver_gameservers_pb2.py
@@ -1,9 +1,7 @@
 # -*- coding: utf-8 -*-
 # Generated by the protocol buffer compiler.  DO NOT EDIT!
 # source: steammessages_clientserver_gameservers.proto
-
-import sys
-_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1'))
+"""Generated protocol buffer code."""
 from google.protobuf import descriptor as _descriptor
 from google.protobuf import message as _message
 from google.protobuf import reflection as _reflection
@@ -20,8 +18,9 @@ DESCRIPTOR = _descriptor.FileDescriptor(
   name='steammessages_clientserver_gameservers.proto',
   package='',
   syntax='proto2',
-  serialized_options=_b('H\001\220\001\000'),
-  serialized_pb=_b('\n,steammessages_clientserver_gameservers.proto\x1a\x18steammessages_base.proto\"\xd4\x01\n\x10\x43MsgGSServerType\x12\x15\n\rapp_id_served\x18\x01 \x01(\r\x12\r\n\x05\x66lags\x18\x02 \x01(\r\x12\"\n\x1a\x64\x65precated_game_ip_address\x18\x03 \x01(\r\x12\x11\n\tgame_port\x18\x04 \x01(\r\x12\x10\n\x08game_dir\x18\x05 \x01(\t\x12\x14\n\x0cgame_version\x18\x06 \x01(\t\x12\x17\n\x0fgame_query_port\x18\x07 \x01(\r\x12\x11\n\tsdr_logon\x18\x08 \x01(\x0c\x12\x0f\n\x07\x66\x61ke_ip\x18\t \x01(\x07\"&\n\x11\x43MsgGSStatusReply\x12\x11\n\tis_secure\x18\x01 \x01(\x08\"\xa9\x01\n\x10\x43MsgGSPlayerList\x12)\n\x07players\x18\x01 \x03(\x0b\x32\x18.CMsgGSPlayerList.Player\x1aj\n\x06Player\x12\x10\n\x08steam_id\x18\x01 \x01(\x04\x12\x1c\n\x14\x64\x65precated_public_ip\x18\x02 \x01(\r\x12\r\n\x05token\x18\x03 \x01(\x0c\x12!\n\tpublic_ip\x18\x04 \x01(\x0b\x32\x0e.CMsgIPAddress\"u\n\x11\x43MsgGSUserPlaying\x12\x10\n\x08steam_id\x18\x01 \x01(\x06\x12\x1c\n\x14\x64\x65precated_public_ip\x18\x02 \x01(\r\x12\r\n\x05token\x18\x03 \x01(\x0c\x12!\n\tpublic_ip\x18\x04 \x01(\x0b\x32\x0e.CMsgIPAddress\"*\n\x16\x43MsgGSDisconnectNotice\x12\x10\n\x08steam_id\x18\x01 \x01(\x06\"\x91\x04\n\x12\x43MsgGameServerData\x12\x10\n\x08revision\x18\x18 \x01(\r\x12\x13\n\x0bsteam_id_gs\x18\x01 \x01(\x06\x12\x12\n\nquery_port\x18\x03 \x01(\r\x12\x11\n\tgame_port\x18\x04 \x01(\r\x12\x16\n\x0espectator_port\x18\x05 \x01(\r\x12\x13\n\x0bserver_name\x18\x16 \x01(\t\x12\x18\n\x10game_description\x18\x1d \x01(\t\x12\x1d\n\x15spectator_server_name\x18\x1b \x01(\t\x12\x0f\n\x07\x66\x61ke_ip\x18\x1c \x01(\x07\x12\x0e\n\x06\x61pp_id\x18\x06 \x01(\r\x12\x0f\n\x07gamedir\x18\x07 \x01(\t\x12\x0f\n\x07version\x18\x08 \x01(\t\x12\x0f\n\x07product\x18\t \x01(\t\x12\x0e\n\x06region\x18\n \x01(\t\x12+\n\x07players\x18\x0b \x03(\x0b\x32\x1a.CMsgGameServerData.Player\x12\x13\n\x0bmax_players\x18\x0c \x01(\r\x12\x11\n\tbot_count\x18\r \x01(\r\x12\x10\n\x08password\x18\x0e \x01(\x08\x12\x0e\n\x06secure\x18\x0f \x01(\x08\x12\x11\n\tdedicated\x18\x10 \x01(\x08\x12\n\n\x02os\x18\x11 \x01(\t\x12\x11\n\tgame_data\x18\x12 \x01(\t\x12\x11\n\tgame_type\x18\x14 \x01(\t\x12\x0b\n\x03map\x18\x15 \x01(\t\x1a\x1a\n\x06Player\x12\x10\n\x08steam_id\x18\x01 \x01(\x06\"M\n\x14\x43MsgGameServerRemove\x12\x1a\n\x12legacy_steam_id_gs\x18\x01 \x01(\x06\x12\x19\n\x11legacy_query_port\x18\x03 \x01(\r\"\x82\x01\n\x18\x43MsgClientGMSServerQuery\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x17\n\x0fgeo_location_ip\x18\x02 \x01(\r\x12\x13\n\x0bregion_code\x18\x03 \x01(\r\x12\x13\n\x0b\x66ilter_text\x18\x04 \x01(\t\x12\x13\n\x0bmax_servers\x18\x05 \x01(\r\"\x8a\x07\n CMsgGMSClientServerQueryResponse\x12\x39\n\x07servers\x18\x01 \x03(\x0b\x32(.CMsgGMSClientServerQueryResponse.Server\x12\r\n\x05\x65rror\x18\x02 \x01(\t\x12\x45\n\x13\x64\x65\x66\x61ult_server_data\x18\x03 \x01(\x0b\x32(.CMsgGMSClientServerQueryResponse.Server\x12\x16\n\x0eserver_strings\x18\x04 \x03(\t\x1a\x85\x05\n\x06Server\x12\x1c\n\x14\x64\x65precated_server_ip\x18\x01 \x01(\r\x12\x12\n\nquery_port\x18\x02 \x01(\r\x12\x14\n\x0c\x61uth_players\x18\x03 \x01(\r\x12!\n\tserver_ip\x18\x04 \x01(\x0b\x32\x0e.CMsgIPAddress\x12\x10\n\x08steam_id\x18\x06 \x01(\x06\x12\x10\n\x08revision\x18\x07 \x01(\r\x12\x0f\n\x07players\x18\x08 \x01(\r\x12\x11\n\tgame_port\x18\t \x01(\r\x12\x11\n\tsdr_popid\x18\n \x01(\x07\x12\r\n\x05\x66lags\x18\x0b \x01(\r\x12\x0e\n\x06\x61pp_id\x18\x0c \x01(\r\x12\x13\n\x0bmax_players\x18\r \x01(\r\x12\x0c\n\x04\x62ots\x18\x0e \x01(\r\x12\x16\n\x0espectator_port\x18\x0f \x01(\r\x12\x13\n\x0bgamedir_str\x18\x10 \x01(\t\x12\x18\n\x10gamedir_strindex\x18\x11 \x01(\r\x12\x0f\n\x07map_str\x18\x12 \x01(\t\x12\x14\n\x0cmap_strindex\x18\x13 \x01(\r\x12\x10\n\x08name_str\x18\x14 \x01(\t\x12\x15\n\rname_strindex\x18\x15 \x01(\r\x12\x1c\n\x14game_description_str\x18\x16 \x01(\t\x12!\n\x19game_description_strindex\x18\x17 \x01(\r\x12\x13\n\x0bversion_str\x18\x18 \x01(\t\x12\x18\n\x10version_strindex\x18\x19 \x01(\r\x12\x14\n\x0cgametype_str\x18\x1a \x01(\t\x12\x19\n\x11gametype_strindex\x18\x1b \x01(\r\x12\x1a\n\x12spectator_name_str\x18\x1e \x01(\t\x12\x1f\n\x17spectator_name_strindex\x18\x1f \x01(\r\"5\n\x06\x45\x46lags\x12\x17\n\x13k_EFlag_HasPassword\x10\x01\x12\x12\n\x0ek_EFlag_Secure\x10\x02\"O\n\x17\x43MsgGameServerOutOfDate\x12\x13\n\x0bsteam_id_gs\x18\x01 \x01(\x06\x12\x0e\n\x06reject\x18\x02 \x01(\x08\x12\x0f\n\x07message\x18\x03 \x01(\t\"0\n\x17\x43MsgGSAssociateWithClan\x12\x15\n\rsteam_id_clan\x18\x01 \x01(\x06\"L\n\x1f\x43MsgGSAssociateWithClanResponse\x12\x15\n\rsteam_id_clan\x18\x01 \x01(\x06\x12\x12\n\x07\x65result\x18\x02 \x01(\r:\x01\x32\"A\n#CMsgGSComputeNewPlayerCompatibility\x12\x1a\n\x12steam_id_candidate\x18\x01 \x01(\x06\"\xcf\x01\n+CMsgGSComputeNewPlayerCompatibilityResponse\x12\x1a\n\x12steam_id_candidate\x18\x01 \x01(\x06\x12\x12\n\x07\x65result\x18\x02 \x01(\r:\x01\x32\x12\x16\n\x0eis_clan_member\x18\x03 \x01(\x08\x12\x18\n\x10\x63t_dont_like_you\x18\x04 \x01(\x05\x12\x18\n\x10\x63t_you_dont_like\x18\x05 \x01(\x05\x12$\n\x1c\x63t_clanmembers_dont_like_you\x18\x06 \x01(\x05\x42\x05H\x01\x90\x01\x00')
+  serialized_options=b'H\001\220\001\000',
+  create_key=_descriptor._internal_create_key,
+  serialized_pb=b'\n,steammessages_clientserver_gameservers.proto\x1a\x18steammessages_base.proto\"\xed\x01\n\x10\x43MsgGSServerType\x12\x15\n\rapp_id_served\x18\x01 \x01(\r\x12\r\n\x05\x66lags\x18\x02 \x01(\r\x12\"\n\x1a\x64\x65precated_game_ip_address\x18\x03 \x01(\r\x12\x11\n\tgame_port\x18\x04 \x01(\r\x12\x10\n\x08game_dir\x18\x05 \x01(\t\x12\x14\n\x0cgame_version\x18\x06 \x01(\t\x12\x17\n\x0fgame_query_port\x18\x07 \x01(\r\x12\x17\n\x0fgame_port_local\x18\n \x01(\r\x12\x11\n\tsdr_logon\x18\x08 \x01(\x0c\x12\x0f\n\x07\x66\x61ke_ip\x18\t \x01(\x07\"&\n\x11\x43MsgGSStatusReply\x12\x11\n\tis_secure\x18\x01 \x01(\x08\"\xa9\x01\n\x10\x43MsgGSPlayerList\x12)\n\x07players\x18\x01 \x03(\x0b\x32\x18.CMsgGSPlayerList.Player\x1aj\n\x06Player\x12\x10\n\x08steam_id\x18\x01 \x01(\x04\x12\x1c\n\x14\x64\x65precated_public_ip\x18\x02 \x01(\r\x12\r\n\x05token\x18\x03 \x01(\x0c\x12!\n\tpublic_ip\x18\x04 \x01(\x0b\x32\x0e.CMsgIPAddress\"u\n\x11\x43MsgGSUserPlaying\x12\x10\n\x08steam_id\x18\x01 \x01(\x06\x12\x1c\n\x14\x64\x65precated_public_ip\x18\x02 \x01(\r\x12\r\n\x05token\x18\x03 \x01(\x0c\x12!\n\tpublic_ip\x18\x04 \x01(\x0b\x32\x0e.CMsgIPAddress\"*\n\x16\x43MsgGSDisconnectNotice\x12\x10\n\x08steam_id\x18\x01 \x01(\x06\"\x97\x04\n\x12\x43MsgGameServerData\x12\x10\n\x08revision\x18\x18 \x01(\r\x12\x12\n\nquery_port\x18\x03 \x01(\r\x12\x11\n\tgame_port\x18\x04 \x01(\r\x12\x16\n\x0espectator_port\x18\x05 \x01(\r\x12\x13\n\x0bserver_name\x18\x16 \x01(\t\x12\x18\n\x10game_description\x18\x1d \x01(\t\x12\x1d\n\x15spectator_server_name\x18\x1b \x01(\t\x12\x0f\n\x07\x66\x61ke_ip\x18\x1c \x01(\x07\x12\x19\n\x11sdr_ping_location\x18\x1e \x01(\t\x12\x0e\n\x06\x61pp_id\x18\x06 \x01(\r\x12\x0f\n\x07gamedir\x18\x07 \x01(\t\x12\x0f\n\x07version\x18\x08 \x01(\t\x12\x0f\n\x07product\x18\t \x01(\t\x12\x0e\n\x06region\x18\n \x01(\t\x12+\n\x07players\x18\x0b \x03(\x0b\x32\x1a.CMsgGameServerData.Player\x12\x13\n\x0bmax_players\x18\x0c \x01(\r\x12\x11\n\tbot_count\x18\r \x01(\r\x12\x10\n\x08password\x18\x0e \x01(\x08\x12\x0e\n\x06secure\x18\x0f \x01(\x08\x12\x11\n\tdedicated\x18\x10 \x01(\x08\x12\n\n\x02os\x18\x11 \x01(\t\x12\x11\n\tgame_data\x18\x12 \x01(\t\x12\x11\n\tgame_type\x18\x14 \x01(\t\x12\x0b\n\x03map\x18\x15 \x01(\t\x1a\x1a\n\x06Player\x12\x10\n\x08steam_id\x18\x01 \x01(\x06\"M\n\x14\x43MsgGameServerRemove\x12\x1a\n\x12legacy_steam_id_gs\x18\x01 \x01(\x06\x12\x19\n\x11legacy_query_port\x18\x03 \x01(\r\"\x82\x01\n\x18\x43MsgClientGMSServerQuery\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x17\n\x0fgeo_location_ip\x18\x02 \x01(\r\x12\x13\n\x0bregion_code\x18\x03 \x01(\r\x12\x13\n\x0b\x66ilter_text\x18\x04 \x01(\t\x12\x13\n\x0bmax_servers\x18\x05 \x01(\r\"\xa5\x07\n CMsgGMSClientServerQueryResponse\x12\x39\n\x07servers\x18\x01 \x03(\x0b\x32(.CMsgGMSClientServerQueryResponse.Server\x12\r\n\x05\x65rror\x18\x02 \x01(\t\x12\x45\n\x13\x64\x65\x66\x61ult_server_data\x18\x03 \x01(\x0b\x32(.CMsgGMSClientServerQueryResponse.Server\x12\x16\n\x0eserver_strings\x18\x04 \x03(\t\x1a\xa0\x05\n\x06Server\x12\x1c\n\x14\x64\x65precated_server_ip\x18\x01 \x01(\r\x12\x12\n\nquery_port\x18\x02 \x01(\r\x12\x14\n\x0c\x61uth_players\x18\x03 \x01(\r\x12!\n\tserver_ip\x18\x04 \x01(\x0b\x32\x0e.CMsgIPAddress\x12\x10\n\x08steam_id\x18\x06 \x01(\x06\x12\x10\n\x08revision\x18\x07 \x01(\r\x12\x0f\n\x07players\x18\x08 \x01(\r\x12\x11\n\tgame_port\x18\t \x01(\r\x12\x11\n\tsdr_popid\x18\n \x01(\x07\x12\x19\n\x11sdr_ping_location\x18  \x01(\t\x12\r\n\x05\x66lags\x18\x0b \x01(\r\x12\x0e\n\x06\x61pp_id\x18\x0c \x01(\r\x12\x13\n\x0bmax_players\x18\r \x01(\r\x12\x0c\n\x04\x62ots\x18\x0e \x01(\r\x12\x16\n\x0espectator_port\x18\x0f \x01(\r\x12\x13\n\x0bgamedir_str\x18\x10 \x01(\t\x12\x18\n\x10gamedir_strindex\x18\x11 \x01(\r\x12\x0f\n\x07map_str\x18\x12 \x01(\t\x12\x14\n\x0cmap_strindex\x18\x13 \x01(\r\x12\x10\n\x08name_str\x18\x14 \x01(\t\x12\x15\n\rname_strindex\x18\x15 \x01(\r\x12\x1c\n\x14game_description_str\x18\x16 \x01(\t\x12!\n\x19game_description_strindex\x18\x17 \x01(\r\x12\x13\n\x0bversion_str\x18\x18 \x01(\t\x12\x18\n\x10version_strindex\x18\x19 \x01(\r\x12\x14\n\x0cgametype_str\x18\x1a \x01(\t\x12\x19\n\x11gametype_strindex\x18\x1b \x01(\r\x12\x1a\n\x12spectator_name_str\x18\x1e \x01(\t\x12\x1f\n\x17spectator_name_strindex\x18\x1f \x01(\r\"5\n\x06\x45\x46lags\x12\x17\n\x13k_EFlag_HasPassword\x10\x01\x12\x12\n\x0ek_EFlag_Secure\x10\x02\"O\n\x17\x43MsgGameServerOutOfDate\x12\x13\n\x0bsteam_id_gs\x18\x01 \x01(\x06\x12\x0e\n\x06reject\x18\x02 \x01(\x08\x12\x0f\n\x07message\x18\x03 \x01(\t\"0\n\x17\x43MsgGSAssociateWithClan\x12\x15\n\rsteam_id_clan\x18\x01 \x01(\x06\"L\n\x1f\x43MsgGSAssociateWithClanResponse\x12\x15\n\rsteam_id_clan\x18\x01 \x01(\x06\x12\x12\n\x07\x65result\x18\x02 \x01(\r:\x01\x32\"A\n#CMsgGSComputeNewPlayerCompatibility\x12\x1a\n\x12steam_id_candidate\x18\x01 \x01(\x06\"\xcf\x01\n+CMsgGSComputeNewPlayerCompatibilityResponse\x12\x1a\n\x12steam_id_candidate\x18\x01 \x01(\x06\x12\x12\n\x07\x65result\x18\x02 \x01(\r:\x01\x32\x12\x16\n\x0eis_clan_member\x18\x03 \x01(\x08\x12\x18\n\x10\x63t_dont_like_you\x18\x04 \x01(\x05\x12\x18\n\x10\x63t_you_dont_like\x18\x05 \x01(\x05\x12$\n\x1c\x63t_clanmembers_dont_like_you\x18\x06 \x01(\x05\x42\x05H\x01\x90\x01\x00'
   ,
   dependencies=[steammessages__base__pb2.DESCRIPTOR,])
 
@@ -32,20 +31,23 @@ _CMSGGMSCLIENTSERVERQUERYRESPONSE_EFLAGS = _descriptor.EnumDescriptor(
   full_name='CMsgGMSClientServerQueryResponse.EFlags',
   filename=None,
   file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
   values=[
     _descriptor.EnumValueDescriptor(
       name='k_EFlag_HasPassword', index=0, number=1,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EFlag_Secure', index=1, number=2,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
   ],
   containing_type=None,
   serialized_options=None,
-  serialized_start=2262,
-  serialized_end=2315,
+  serialized_start=2320,
+  serialized_end=2373,
 )
 _sym_db.RegisterEnumDescriptor(_CMSGGMSCLIENTSERVERQUERYRESPONSE_EFLAGS)
 
@@ -56,6 +58,7 @@ _CMSGGSSERVERTYPE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='app_id_served', full_name='CMsgGSServerType.app_id_served', index=0,
@@ -63,63 +66,70 @@ _CMSGGSSERVERTYPE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='flags', full_name='CMsgGSServerType.flags', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='deprecated_game_ip_address', full_name='CMsgGSServerType.deprecated_game_ip_address', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='game_port', full_name='CMsgGSServerType.game_port', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='game_dir', full_name='CMsgGSServerType.game_dir', index=4,
       number=5, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='game_version', full_name='CMsgGSServerType.game_version', index=5,
       number=6, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='game_query_port', full_name='CMsgGSServerType.game_query_port', index=6,
       number=7, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='game_port_local', full_name='CMsgGSServerType.game_port_local', index=7,
+      number=10, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
-      name='sdr_logon', full_name='CMsgGSServerType.sdr_logon', index=7,
+      name='sdr_logon', full_name='CMsgGSServerType.sdr_logon', index=8,
       number=8, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
-      name='fake_ip', full_name='CMsgGSServerType.fake_ip', index=8,
+      name='fake_ip', full_name='CMsgGSServerType.fake_ip', index=9,
       number=9, type=7, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -133,7 +143,7 @@ _CMSGGSSERVERTYPE = _descriptor.Descriptor(
   oneofs=[
   ],
   serialized_start=75,
-  serialized_end=287,
+  serialized_end=312,
 )
 
 
@@ -143,6 +153,7 @@ _CMSGGSSTATUSREPLY = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='is_secure', full_name='CMsgGSStatusReply.is_secure', index=0,
@@ -150,7 +161,7 @@ _CMSGGSSTATUSREPLY = _descriptor.Descriptor(
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -163,8 +174,8 @@ _CMSGGSSTATUSREPLY = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=289,
-  serialized_end=327,
+  serialized_start=314,
+  serialized_end=352,
 )
 
 
@@ -174,6 +185,7 @@ _CMSGGSPLAYERLIST_PLAYER = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steam_id', full_name='CMsgGSPlayerList.Player.steam_id', index=0,
@@ -181,28 +193,28 @@ _CMSGGSPLAYERLIST_PLAYER = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='deprecated_public_ip', full_name='CMsgGSPlayerList.Player.deprecated_public_ip', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='token', full_name='CMsgGSPlayerList.Player.token', index=2,
       number=3, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='public_ip', full_name='CMsgGSPlayerList.Player.public_ip', index=3,
       number=4, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -215,8 +227,8 @@ _CMSGGSPLAYERLIST_PLAYER = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=393,
-  serialized_end=499,
+  serialized_start=418,
+  serialized_end=524,
 )
 
 _CMSGGSPLAYERLIST = _descriptor.Descriptor(
@@ -225,6 +237,7 @@ _CMSGGSPLAYERLIST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='players', full_name='CMsgGSPlayerList.players', index=0,
@@ -232,7 +245,7 @@ _CMSGGSPLAYERLIST = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -245,8 +258,8 @@ _CMSGGSPLAYERLIST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=330,
-  serialized_end=499,
+  serialized_start=355,
+  serialized_end=524,
 )
 
 
@@ -256,6 +269,7 @@ _CMSGGSUSERPLAYING = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steam_id', full_name='CMsgGSUserPlaying.steam_id', index=0,
@@ -263,28 +277,28 @@ _CMSGGSUSERPLAYING = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='deprecated_public_ip', full_name='CMsgGSUserPlaying.deprecated_public_ip', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='token', full_name='CMsgGSUserPlaying.token', index=2,
       number=3, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='public_ip', full_name='CMsgGSUserPlaying.public_ip', index=3,
       number=4, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -297,8 +311,8 @@ _CMSGGSUSERPLAYING = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=501,
-  serialized_end=618,
+  serialized_start=526,
+  serialized_end=643,
 )
 
 
@@ -308,6 +322,7 @@ _CMSGGSDISCONNECTNOTICE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steam_id', full_name='CMsgGSDisconnectNotice.steam_id', index=0,
@@ -315,7 +330,7 @@ _CMSGGSDISCONNECTNOTICE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -328,8 +343,8 @@ _CMSGGSDISCONNECTNOTICE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=620,
-  serialized_end=662,
+  serialized_start=645,
+  serialized_end=687,
 )
 
 
@@ -339,6 +354,7 @@ _CMSGGAMESERVERDATA_PLAYER = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steam_id', full_name='CMsgGameServerData.Player.steam_id', index=0,
@@ -346,7 +362,7 @@ _CMSGGAMESERVERDATA_PLAYER = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -359,8 +375,8 @@ _CMSGGAMESERVERDATA_PLAYER = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1168,
-  serialized_end=1194,
+  serialized_start=1199,
+  serialized_end=1225,
 )
 
 _CMSGGAMESERVERDATA = _descriptor.Descriptor(
@@ -369,6 +385,7 @@ _CMSGGAMESERVERDATA = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='revision', full_name='CMsgGameServerData.revision', index=0,
@@ -376,168 +393,168 @@ _CMSGGAMESERVERDATA = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
-      name='steam_id_gs', full_name='CMsgGameServerData.steam_id_gs', index=1,
-      number=1, type=6, cpp_type=4, label=1,
-      has_default_value=False, default_value=0,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='query_port', full_name='CMsgGameServerData.query_port', index=2,
+      name='query_port', full_name='CMsgGameServerData.query_port', index=1,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
-      name='game_port', full_name='CMsgGameServerData.game_port', index=3,
+      name='game_port', full_name='CMsgGameServerData.game_port', index=2,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
-      name='spectator_port', full_name='CMsgGameServerData.spectator_port', index=4,
+      name='spectator_port', full_name='CMsgGameServerData.spectator_port', index=3,
       number=5, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
-      name='server_name', full_name='CMsgGameServerData.server_name', index=5,
+      name='server_name', full_name='CMsgGameServerData.server_name', index=4,
       number=22, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
-      name='game_description', full_name='CMsgGameServerData.game_description', index=6,
+      name='game_description', full_name='CMsgGameServerData.game_description', index=5,
       number=29, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
-      name='spectator_server_name', full_name='CMsgGameServerData.spectator_server_name', index=7,
+      name='spectator_server_name', full_name='CMsgGameServerData.spectator_server_name', index=6,
       number=27, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
-      name='fake_ip', full_name='CMsgGameServerData.fake_ip', index=8,
+      name='fake_ip', full_name='CMsgGameServerData.fake_ip', index=7,
       number=28, type=7, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='sdr_ping_location', full_name='CMsgGameServerData.sdr_ping_location', index=8,
+      number=30, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CMsgGameServerData.app_id', index=9,
       number=6, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='gamedir', full_name='CMsgGameServerData.gamedir', index=10,
       number=7, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='version', full_name='CMsgGameServerData.version', index=11,
       number=8, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='product', full_name='CMsgGameServerData.product', index=12,
       number=9, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='region', full_name='CMsgGameServerData.region', index=13,
       number=10, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='players', full_name='CMsgGameServerData.players', index=14,
       number=11, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='max_players', full_name='CMsgGameServerData.max_players', index=15,
       number=12, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='bot_count', full_name='CMsgGameServerData.bot_count', index=16,
       number=13, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='password', full_name='CMsgGameServerData.password', index=17,
       number=14, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='secure', full_name='CMsgGameServerData.secure', index=18,
       number=15, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='dedicated', full_name='CMsgGameServerData.dedicated', index=19,
       number=16, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='os', full_name='CMsgGameServerData.os', index=20,
       number=17, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='game_data', full_name='CMsgGameServerData.game_data', index=21,
       number=18, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='game_type', full_name='CMsgGameServerData.game_type', index=22,
       number=20, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='map', full_name='CMsgGameServerData.map', index=23,
       number=21, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -550,8 +567,8 @@ _CMSGGAMESERVERDATA = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=665,
-  serialized_end=1194,
+  serialized_start=690,
+  serialized_end=1225,
 )
 
 
@@ -561,6 +578,7 @@ _CMSGGAMESERVERREMOVE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='legacy_steam_id_gs', full_name='CMsgGameServerRemove.legacy_steam_id_gs', index=0,
@@ -568,14 +586,14 @@ _CMSGGAMESERVERREMOVE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='legacy_query_port', full_name='CMsgGameServerRemove.legacy_query_port', index=1,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -588,8 +606,8 @@ _CMSGGAMESERVERREMOVE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1196,
-  serialized_end=1273,
+  serialized_start=1227,
+  serialized_end=1304,
 )
 
 
@@ -599,6 +617,7 @@ _CMSGCLIENTGMSSERVERQUERY = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CMsgClientGMSServerQuery.app_id', index=0,
@@ -606,35 +625,35 @@ _CMSGCLIENTGMSSERVERQUERY = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='geo_location_ip', full_name='CMsgClientGMSServerQuery.geo_location_ip', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='region_code', full_name='CMsgClientGMSServerQuery.region_code', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='filter_text', full_name='CMsgClientGMSServerQuery.filter_text', index=3,
       number=4, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='max_servers', full_name='CMsgClientGMSServerQuery.max_servers', index=4,
       number=5, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -647,8 +666,8 @@ _CMSGCLIENTGMSSERVERQUERY = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1276,
-  serialized_end=1406,
+  serialized_start=1307,
+  serialized_end=1437,
 )
 
 
@@ -658,6 +677,7 @@ _CMSGGMSCLIENTSERVERQUERYRESPONSE_SERVER = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='deprecated_server_ip', full_name='CMsgGMSClientServerQueryResponse.Server.deprecated_server_ip', index=0,
@@ -665,196 +685,203 @@ _CMSGGMSCLIENTSERVERQUERYRESPONSE_SERVER = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='query_port', full_name='CMsgGMSClientServerQueryResponse.Server.query_port', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='auth_players', full_name='CMsgGMSClientServerQueryResponse.Server.auth_players', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='server_ip', full_name='CMsgGMSClientServerQueryResponse.Server.server_ip', index=3,
       number=4, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steam_id', full_name='CMsgGMSClientServerQueryResponse.Server.steam_id', index=4,
       number=6, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='revision', full_name='CMsgGMSClientServerQueryResponse.Server.revision', index=5,
       number=7, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='players', full_name='CMsgGMSClientServerQueryResponse.Server.players', index=6,
       number=8, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='game_port', full_name='CMsgGMSClientServerQueryResponse.Server.game_port', index=7,
       number=9, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='sdr_popid', full_name='CMsgGMSClientServerQueryResponse.Server.sdr_popid', index=8,
       number=10, type=7, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='sdr_ping_location', full_name='CMsgGMSClientServerQueryResponse.Server.sdr_ping_location', index=9,
+      number=32, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
-      name='flags', full_name='CMsgGMSClientServerQueryResponse.Server.flags', index=9,
+      name='flags', full_name='CMsgGMSClientServerQueryResponse.Server.flags', index=10,
       number=11, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
-      name='app_id', full_name='CMsgGMSClientServerQueryResponse.Server.app_id', index=10,
+      name='app_id', full_name='CMsgGMSClientServerQueryResponse.Server.app_id', index=11,
       number=12, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
-      name='max_players', full_name='CMsgGMSClientServerQueryResponse.Server.max_players', index=11,
+      name='max_players', full_name='CMsgGMSClientServerQueryResponse.Server.max_players', index=12,
       number=13, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
-      name='bots', full_name='CMsgGMSClientServerQueryResponse.Server.bots', index=12,
+      name='bots', full_name='CMsgGMSClientServerQueryResponse.Server.bots', index=13,
       number=14, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
-      name='spectator_port', full_name='CMsgGMSClientServerQueryResponse.Server.spectator_port', index=13,
+      name='spectator_port', full_name='CMsgGMSClientServerQueryResponse.Server.spectator_port', index=14,
       number=15, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
-      name='gamedir_str', full_name='CMsgGMSClientServerQueryResponse.Server.gamedir_str', index=14,
+      name='gamedir_str', full_name='CMsgGMSClientServerQueryResponse.Server.gamedir_str', index=15,
       number=16, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
-      name='gamedir_strindex', full_name='CMsgGMSClientServerQueryResponse.Server.gamedir_strindex', index=15,
+      name='gamedir_strindex', full_name='CMsgGMSClientServerQueryResponse.Server.gamedir_strindex', index=16,
       number=17, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
-      name='map_str', full_name='CMsgGMSClientServerQueryResponse.Server.map_str', index=16,
+      name='map_str', full_name='CMsgGMSClientServerQueryResponse.Server.map_str', index=17,
       number=18, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
-      name='map_strindex', full_name='CMsgGMSClientServerQueryResponse.Server.map_strindex', index=17,
+      name='map_strindex', full_name='CMsgGMSClientServerQueryResponse.Server.map_strindex', index=18,
       number=19, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
-      name='name_str', full_name='CMsgGMSClientServerQueryResponse.Server.name_str', index=18,
+      name='name_str', full_name='CMsgGMSClientServerQueryResponse.Server.name_str', index=19,
       number=20, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
-      name='name_strindex', full_name='CMsgGMSClientServerQueryResponse.Server.name_strindex', index=19,
+      name='name_strindex', full_name='CMsgGMSClientServerQueryResponse.Server.name_strindex', index=20,
       number=21, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
-      name='game_description_str', full_name='CMsgGMSClientServerQueryResponse.Server.game_description_str', index=20,
+      name='game_description_str', full_name='CMsgGMSClientServerQueryResponse.Server.game_description_str', index=21,
       number=22, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
-      name='game_description_strindex', full_name='CMsgGMSClientServerQueryResponse.Server.game_description_strindex', index=21,
+      name='game_description_strindex', full_name='CMsgGMSClientServerQueryResponse.Server.game_description_strindex', index=22,
       number=23, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
-      name='version_str', full_name='CMsgGMSClientServerQueryResponse.Server.version_str', index=22,
+      name='version_str', full_name='CMsgGMSClientServerQueryResponse.Server.version_str', index=23,
       number=24, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
-      name='version_strindex', full_name='CMsgGMSClientServerQueryResponse.Server.version_strindex', index=23,
+      name='version_strindex', full_name='CMsgGMSClientServerQueryResponse.Server.version_strindex', index=24,
       number=25, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
-      name='gametype_str', full_name='CMsgGMSClientServerQueryResponse.Server.gametype_str', index=24,
+      name='gametype_str', full_name='CMsgGMSClientServerQueryResponse.Server.gametype_str', index=25,
       number=26, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
-      name='gametype_strindex', full_name='CMsgGMSClientServerQueryResponse.Server.gametype_strindex', index=25,
+      name='gametype_strindex', full_name='CMsgGMSClientServerQueryResponse.Server.gametype_strindex', index=26,
       number=27, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
-      name='spectator_name_str', full_name='CMsgGMSClientServerQueryResponse.Server.spectator_name_str', index=26,
+      name='spectator_name_str', full_name='CMsgGMSClientServerQueryResponse.Server.spectator_name_str', index=27,
       number=30, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
-      name='spectator_name_strindex', full_name='CMsgGMSClientServerQueryResponse.Server.spectator_name_strindex', index=27,
+      name='spectator_name_strindex', full_name='CMsgGMSClientServerQueryResponse.Server.spectator_name_strindex', index=28,
       number=31, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -867,8 +894,8 @@ _CMSGGMSCLIENTSERVERQUERYRESPONSE_SERVER = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1615,
-  serialized_end=2260,
+  serialized_start=1646,
+  serialized_end=2318,
 )
 
 _CMSGGMSCLIENTSERVERQUERYRESPONSE = _descriptor.Descriptor(
@@ -877,6 +904,7 @@ _CMSGGMSCLIENTSERVERQUERYRESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='servers', full_name='CMsgGMSClientServerQueryResponse.servers', index=0,
@@ -884,28 +912,28 @@ _CMSGGMSCLIENTSERVERQUERYRESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='error', full_name='CMsgGMSClientServerQueryResponse.error', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='default_server_data', full_name='CMsgGMSClientServerQueryResponse.default_server_data', index=2,
       number=3, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='server_strings', full_name='CMsgGMSClientServerQueryResponse.server_strings', index=3,
       number=4, type=9, cpp_type=9, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -919,8 +947,8 @@ _CMSGGMSCLIENTSERVERQUERYRESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1409,
-  serialized_end=2315,
+  serialized_start=1440,
+  serialized_end=2373,
 )
 
 
@@ -930,6 +958,7 @@ _CMSGGAMESERVEROUTOFDATE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steam_id_gs', full_name='CMsgGameServerOutOfDate.steam_id_gs', index=0,
@@ -937,21 +966,21 @@ _CMSGGAMESERVEROUTOFDATE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='reject', full_name='CMsgGameServerOutOfDate.reject', index=1,
       number=2, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='message', full_name='CMsgGameServerOutOfDate.message', index=2,
       number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -964,8 +993,8 @@ _CMSGGAMESERVEROUTOFDATE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=2317,
-  serialized_end=2396,
+  serialized_start=2375,
+  serialized_end=2454,
 )
 
 
@@ -975,6 +1004,7 @@ _CMSGGSASSOCIATEWITHCLAN = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steam_id_clan', full_name='CMsgGSAssociateWithClan.steam_id_clan', index=0,
@@ -982,7 +1012,7 @@ _CMSGGSASSOCIATEWITHCLAN = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -995,8 +1025,8 @@ _CMSGGSASSOCIATEWITHCLAN = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=2398,
-  serialized_end=2446,
+  serialized_start=2456,
+  serialized_end=2504,
 )
 
 
@@ -1006,6 +1036,7 @@ _CMSGGSASSOCIATEWITHCLANRESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steam_id_clan', full_name='CMsgGSAssociateWithClanResponse.steam_id_clan', index=0,
@@ -1013,14 +1044,14 @@ _CMSGGSASSOCIATEWITHCLANRESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='eresult', full_name='CMsgGSAssociateWithClanResponse.eresult', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=True, default_value=2,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1033,8 +1064,8 @@ _CMSGGSASSOCIATEWITHCLANRESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=2448,
-  serialized_end=2524,
+  serialized_start=2506,
+  serialized_end=2582,
 )
 
 
@@ -1044,6 +1075,7 @@ _CMSGGSCOMPUTENEWPLAYERCOMPATIBILITY = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steam_id_candidate', full_name='CMsgGSComputeNewPlayerCompatibility.steam_id_candidate', index=0,
@@ -1051,7 +1083,7 @@ _CMSGGSCOMPUTENEWPLAYERCOMPATIBILITY = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1064,8 +1096,8 @@ _CMSGGSCOMPUTENEWPLAYERCOMPATIBILITY = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=2526,
-  serialized_end=2591,
+  serialized_start=2584,
+  serialized_end=2649,
 )
 
 
@@ -1075,6 +1107,7 @@ _CMSGGSCOMPUTENEWPLAYERCOMPATIBILITYRESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steam_id_candidate', full_name='CMsgGSComputeNewPlayerCompatibilityResponse.steam_id_candidate', index=0,
@@ -1082,42 +1115,42 @@ _CMSGGSCOMPUTENEWPLAYERCOMPATIBILITYRESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='eresult', full_name='CMsgGSComputeNewPlayerCompatibilityResponse.eresult', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=True, default_value=2,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='is_clan_member', full_name='CMsgGSComputeNewPlayerCompatibilityResponse.is_clan_member', index=2,
       number=3, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='ct_dont_like_you', full_name='CMsgGSComputeNewPlayerCompatibilityResponse.ct_dont_like_you', index=3,
       number=4, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='ct_you_dont_like', full_name='CMsgGSComputeNewPlayerCompatibilityResponse.ct_you_dont_like', index=4,
       number=5, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='ct_clanmembers_dont_like_you', full_name='CMsgGSComputeNewPlayerCompatibilityResponse.ct_clanmembers_dont_like_you', index=5,
       number=6, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1130,8 +1163,8 @@ _CMSGGSCOMPUTENEWPLAYERCOMPATIBILITYRESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=2594,
-  serialized_end=2801,
+  serialized_start=2652,
+  serialized_end=2859,
 )
 
 _CMSGGSPLAYERLIST_PLAYER.fields_by_name['public_ip'].message_type = steammessages__base__pb2._CMSGIPADDRESS
@@ -1161,126 +1194,126 @@ DESCRIPTOR.message_types_by_name['CMsgGSComputeNewPlayerCompatibility'] = _CMSGG
 DESCRIPTOR.message_types_by_name['CMsgGSComputeNewPlayerCompatibilityResponse'] = _CMSGGSCOMPUTENEWPLAYERCOMPATIBILITYRESPONSE
 _sym_db.RegisterFileDescriptor(DESCRIPTOR)
 
-CMsgGSServerType = _reflection.GeneratedProtocolMessageType('CMsgGSServerType', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGGSSERVERTYPE,
-  __module__ = 'steammessages_clientserver_gameservers_pb2'
+CMsgGSServerType = _reflection.GeneratedProtocolMessageType('CMsgGSServerType', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGGSSERVERTYPE,
+  '__module__' : 'steammessages_clientserver_gameservers_pb2'
   # @@protoc_insertion_point(class_scope:CMsgGSServerType)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgGSServerType)
 
-CMsgGSStatusReply = _reflection.GeneratedProtocolMessageType('CMsgGSStatusReply', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGGSSTATUSREPLY,
-  __module__ = 'steammessages_clientserver_gameservers_pb2'
+CMsgGSStatusReply = _reflection.GeneratedProtocolMessageType('CMsgGSStatusReply', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGGSSTATUSREPLY,
+  '__module__' : 'steammessages_clientserver_gameservers_pb2'
   # @@protoc_insertion_point(class_scope:CMsgGSStatusReply)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgGSStatusReply)
 
-CMsgGSPlayerList = _reflection.GeneratedProtocolMessageType('CMsgGSPlayerList', (_message.Message,), dict(
+CMsgGSPlayerList = _reflection.GeneratedProtocolMessageType('CMsgGSPlayerList', (_message.Message,), {
 
-  Player = _reflection.GeneratedProtocolMessageType('Player', (_message.Message,), dict(
-    DESCRIPTOR = _CMSGGSPLAYERLIST_PLAYER,
-    __module__ = 'steammessages_clientserver_gameservers_pb2'
+  'Player' : _reflection.GeneratedProtocolMessageType('Player', (_message.Message,), {
+    'DESCRIPTOR' : _CMSGGSPLAYERLIST_PLAYER,
+    '__module__' : 'steammessages_clientserver_gameservers_pb2'
     # @@protoc_insertion_point(class_scope:CMsgGSPlayerList.Player)
-    ))
+    })
   ,
-  DESCRIPTOR = _CMSGGSPLAYERLIST,
-  __module__ = 'steammessages_clientserver_gameservers_pb2'
+  'DESCRIPTOR' : _CMSGGSPLAYERLIST,
+  '__module__' : 'steammessages_clientserver_gameservers_pb2'
   # @@protoc_insertion_point(class_scope:CMsgGSPlayerList)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgGSPlayerList)
 _sym_db.RegisterMessage(CMsgGSPlayerList.Player)
 
-CMsgGSUserPlaying = _reflection.GeneratedProtocolMessageType('CMsgGSUserPlaying', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGGSUSERPLAYING,
-  __module__ = 'steammessages_clientserver_gameservers_pb2'
+CMsgGSUserPlaying = _reflection.GeneratedProtocolMessageType('CMsgGSUserPlaying', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGGSUSERPLAYING,
+  '__module__' : 'steammessages_clientserver_gameservers_pb2'
   # @@protoc_insertion_point(class_scope:CMsgGSUserPlaying)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgGSUserPlaying)
 
-CMsgGSDisconnectNotice = _reflection.GeneratedProtocolMessageType('CMsgGSDisconnectNotice', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGGSDISCONNECTNOTICE,
-  __module__ = 'steammessages_clientserver_gameservers_pb2'
+CMsgGSDisconnectNotice = _reflection.GeneratedProtocolMessageType('CMsgGSDisconnectNotice', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGGSDISCONNECTNOTICE,
+  '__module__' : 'steammessages_clientserver_gameservers_pb2'
   # @@protoc_insertion_point(class_scope:CMsgGSDisconnectNotice)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgGSDisconnectNotice)
 
-CMsgGameServerData = _reflection.GeneratedProtocolMessageType('CMsgGameServerData', (_message.Message,), dict(
+CMsgGameServerData = _reflection.GeneratedProtocolMessageType('CMsgGameServerData', (_message.Message,), {
 
-  Player = _reflection.GeneratedProtocolMessageType('Player', (_message.Message,), dict(
-    DESCRIPTOR = _CMSGGAMESERVERDATA_PLAYER,
-    __module__ = 'steammessages_clientserver_gameservers_pb2'
+  'Player' : _reflection.GeneratedProtocolMessageType('Player', (_message.Message,), {
+    'DESCRIPTOR' : _CMSGGAMESERVERDATA_PLAYER,
+    '__module__' : 'steammessages_clientserver_gameservers_pb2'
     # @@protoc_insertion_point(class_scope:CMsgGameServerData.Player)
-    ))
+    })
   ,
-  DESCRIPTOR = _CMSGGAMESERVERDATA,
-  __module__ = 'steammessages_clientserver_gameservers_pb2'
+  'DESCRIPTOR' : _CMSGGAMESERVERDATA,
+  '__module__' : 'steammessages_clientserver_gameservers_pb2'
   # @@protoc_insertion_point(class_scope:CMsgGameServerData)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgGameServerData)
 _sym_db.RegisterMessage(CMsgGameServerData.Player)
 
-CMsgGameServerRemove = _reflection.GeneratedProtocolMessageType('CMsgGameServerRemove', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGGAMESERVERREMOVE,
-  __module__ = 'steammessages_clientserver_gameservers_pb2'
+CMsgGameServerRemove = _reflection.GeneratedProtocolMessageType('CMsgGameServerRemove', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGGAMESERVERREMOVE,
+  '__module__' : 'steammessages_clientserver_gameservers_pb2'
   # @@protoc_insertion_point(class_scope:CMsgGameServerRemove)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgGameServerRemove)
 
-CMsgClientGMSServerQuery = _reflection.GeneratedProtocolMessageType('CMsgClientGMSServerQuery', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTGMSSERVERQUERY,
-  __module__ = 'steammessages_clientserver_gameservers_pb2'
+CMsgClientGMSServerQuery = _reflection.GeneratedProtocolMessageType('CMsgClientGMSServerQuery', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTGMSSERVERQUERY,
+  '__module__' : 'steammessages_clientserver_gameservers_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientGMSServerQuery)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientGMSServerQuery)
 
-CMsgGMSClientServerQueryResponse = _reflection.GeneratedProtocolMessageType('CMsgGMSClientServerQueryResponse', (_message.Message,), dict(
+CMsgGMSClientServerQueryResponse = _reflection.GeneratedProtocolMessageType('CMsgGMSClientServerQueryResponse', (_message.Message,), {
 
-  Server = _reflection.GeneratedProtocolMessageType('Server', (_message.Message,), dict(
-    DESCRIPTOR = _CMSGGMSCLIENTSERVERQUERYRESPONSE_SERVER,
-    __module__ = 'steammessages_clientserver_gameservers_pb2'
+  'Server' : _reflection.GeneratedProtocolMessageType('Server', (_message.Message,), {
+    'DESCRIPTOR' : _CMSGGMSCLIENTSERVERQUERYRESPONSE_SERVER,
+    '__module__' : 'steammessages_clientserver_gameservers_pb2'
     # @@protoc_insertion_point(class_scope:CMsgGMSClientServerQueryResponse.Server)
-    ))
+    })
   ,
-  DESCRIPTOR = _CMSGGMSCLIENTSERVERQUERYRESPONSE,
-  __module__ = 'steammessages_clientserver_gameservers_pb2'
+  'DESCRIPTOR' : _CMSGGMSCLIENTSERVERQUERYRESPONSE,
+  '__module__' : 'steammessages_clientserver_gameservers_pb2'
   # @@protoc_insertion_point(class_scope:CMsgGMSClientServerQueryResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgGMSClientServerQueryResponse)
 _sym_db.RegisterMessage(CMsgGMSClientServerQueryResponse.Server)
 
-CMsgGameServerOutOfDate = _reflection.GeneratedProtocolMessageType('CMsgGameServerOutOfDate', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGGAMESERVEROUTOFDATE,
-  __module__ = 'steammessages_clientserver_gameservers_pb2'
+CMsgGameServerOutOfDate = _reflection.GeneratedProtocolMessageType('CMsgGameServerOutOfDate', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGGAMESERVEROUTOFDATE,
+  '__module__' : 'steammessages_clientserver_gameservers_pb2'
   # @@protoc_insertion_point(class_scope:CMsgGameServerOutOfDate)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgGameServerOutOfDate)
 
-CMsgGSAssociateWithClan = _reflection.GeneratedProtocolMessageType('CMsgGSAssociateWithClan', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGGSASSOCIATEWITHCLAN,
-  __module__ = 'steammessages_clientserver_gameservers_pb2'
+CMsgGSAssociateWithClan = _reflection.GeneratedProtocolMessageType('CMsgGSAssociateWithClan', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGGSASSOCIATEWITHCLAN,
+  '__module__' : 'steammessages_clientserver_gameservers_pb2'
   # @@protoc_insertion_point(class_scope:CMsgGSAssociateWithClan)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgGSAssociateWithClan)
 
-CMsgGSAssociateWithClanResponse = _reflection.GeneratedProtocolMessageType('CMsgGSAssociateWithClanResponse', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGGSASSOCIATEWITHCLANRESPONSE,
-  __module__ = 'steammessages_clientserver_gameservers_pb2'
+CMsgGSAssociateWithClanResponse = _reflection.GeneratedProtocolMessageType('CMsgGSAssociateWithClanResponse', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGGSASSOCIATEWITHCLANRESPONSE,
+  '__module__' : 'steammessages_clientserver_gameservers_pb2'
   # @@protoc_insertion_point(class_scope:CMsgGSAssociateWithClanResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgGSAssociateWithClanResponse)
 
-CMsgGSComputeNewPlayerCompatibility = _reflection.GeneratedProtocolMessageType('CMsgGSComputeNewPlayerCompatibility', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGGSCOMPUTENEWPLAYERCOMPATIBILITY,
-  __module__ = 'steammessages_clientserver_gameservers_pb2'
+CMsgGSComputeNewPlayerCompatibility = _reflection.GeneratedProtocolMessageType('CMsgGSComputeNewPlayerCompatibility', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGGSCOMPUTENEWPLAYERCOMPATIBILITY,
+  '__module__' : 'steammessages_clientserver_gameservers_pb2'
   # @@protoc_insertion_point(class_scope:CMsgGSComputeNewPlayerCompatibility)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgGSComputeNewPlayerCompatibility)
 
-CMsgGSComputeNewPlayerCompatibilityResponse = _reflection.GeneratedProtocolMessageType('CMsgGSComputeNewPlayerCompatibilityResponse', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGGSCOMPUTENEWPLAYERCOMPATIBILITYRESPONSE,
-  __module__ = 'steammessages_clientserver_gameservers_pb2'
+CMsgGSComputeNewPlayerCompatibilityResponse = _reflection.GeneratedProtocolMessageType('CMsgGSComputeNewPlayerCompatibilityResponse', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGGSCOMPUTENEWPLAYERCOMPATIBILITYRESPONSE,
+  '__module__' : 'steammessages_clientserver_gameservers_pb2'
   # @@protoc_insertion_point(class_scope:CMsgGSComputeNewPlayerCompatibilityResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgGSComputeNewPlayerCompatibilityResponse)
 
 
diff --git a/steam/protobufs/steammessages_clientserver_lbs_pb2.py b/steam/protobufs/steammessages_clientserver_lbs_pb2.py
index 5818d07..5c8816b 100644
--- a/steam/protobufs/steammessages_clientserver_lbs_pb2.py
+++ b/steam/protobufs/steammessages_clientserver_lbs_pb2.py
@@ -1,9 +1,7 @@
 # -*- coding: utf-8 -*-
 # Generated by the protocol buffer compiler.  DO NOT EDIT!
 # source: steammessages_clientserver_lbs.proto
-
-import sys
-_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1'))
+"""Generated protocol buffer code."""
 from google.protobuf import descriptor as _descriptor
 from google.protobuf import message as _message
 from google.protobuf import reflection as _reflection
@@ -20,8 +18,9 @@ DESCRIPTOR = _descriptor.FileDescriptor(
   name='steammessages_clientserver_lbs.proto',
   package='',
   syntax='proto2',
-  serialized_options=_b('H\001\220\001\000'),
-  serialized_pb=_b('\n$steammessages_clientserver_lbs.proto\x1a\x18steammessages_base.proto\"|\n\x15\x43MsgClientLBSSetScore\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x16\n\x0eleaderboard_id\x18\x02 \x01(\x05\x12\r\n\x05score\x18\x03 \x01(\x05\x12\x0f\n\x07\x64\x65tails\x18\x04 \x01(\x0c\x12\x1b\n\x13upload_score_method\x18\x05 \x01(\x05\"\xa2\x01\n\x1d\x43MsgClientLBSSetScoreResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\x12\x1f\n\x17leaderboard_entry_count\x18\x02 \x01(\x05\x12\x15\n\rscore_changed\x18\x03 \x01(\x08\x12\x1c\n\x14global_rank_previous\x18\x04 \x01(\x05\x12\x17\n\x0fglobal_rank_new\x18\x05 \x01(\x05\"M\n\x13\x43MsgClientLBSSetUGC\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x16\n\x0eleaderboard_id\x18\x02 \x01(\x05\x12\x0e\n\x06ugc_id\x18\x03 \x01(\x06\"1\n\x1b\x43MsgClientLBSSetUGCResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\"\xa7\x01\n\x1b\x43MsgClientLBSFindOrCreateLB\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x1f\n\x17leaderboard_sort_method\x18\x02 \x01(\x05\x12 \n\x18leaderboard_display_type\x18\x03 \x01(\x05\x12\x1b\n\x13\x63reate_if_not_found\x18\x04 \x01(\x08\x12\x18\n\x10leaderboard_name\x18\x05 \x01(\t\"\xd5\x01\n#CMsgClientLBSFindOrCreateLBResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\x12\x16\n\x0eleaderboard_id\x18\x02 \x01(\x05\x12\x1f\n\x17leaderboard_entry_count\x18\x03 \x01(\x05\x12\"\n\x17leaderboard_sort_method\x18\x04 \x01(\x05:\x01\x30\x12#\n\x18leaderboard_display_type\x18\x05 \x01(\x05:\x01\x30\x12\x18\n\x10leaderboard_name\x18\x06 \x01(\t\"\x9f\x01\n\x19\x43MsgClientLBSGetLBEntries\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\x05\x12\x16\n\x0eleaderboard_id\x18\x02 \x01(\x05\x12\x13\n\x0brange_start\x18\x03 \x01(\x05\x12\x11\n\trange_end\x18\x04 \x01(\x05\x12 \n\x18leaderboard_data_request\x18\x05 \x01(\x05\x12\x10\n\x08steamids\x18\x06 \x03(\x06\"\xf8\x01\n!CMsgClientLBSGetLBEntriesResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\x12\x1f\n\x17leaderboard_entry_count\x18\x02 \x01(\x05\x12\x39\n\x07\x65ntries\x18\x03 \x03(\x0b\x32(.CMsgClientLBSGetLBEntriesResponse.Entry\x1a\x63\n\x05\x45ntry\x12\x15\n\rsteam_id_user\x18\x01 \x01(\x06\x12\x13\n\x0bglobal_rank\x18\x02 \x01(\x05\x12\r\n\x05score\x18\x03 \x01(\x05\x12\x0f\n\x07\x64\x65tails\x18\x04 \x01(\x0c\x12\x0e\n\x06ugc_id\x18\x05 \x01(\x06\x42\x05H\x01\x90\x01\x00')
+  serialized_options=b'H\001\220\001\000',
+  create_key=_descriptor._internal_create_key,
+  serialized_pb=b'\n$steammessages_clientserver_lbs.proto\x1a\x18steammessages_base.proto\"|\n\x15\x43MsgClientLBSSetScore\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x16\n\x0eleaderboard_id\x18\x02 \x01(\x05\x12\r\n\x05score\x18\x03 \x01(\x05\x12\x0f\n\x07\x64\x65tails\x18\x04 \x01(\x0c\x12\x1b\n\x13upload_score_method\x18\x05 \x01(\x05\"\xa2\x01\n\x1d\x43MsgClientLBSSetScoreResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\x12\x1f\n\x17leaderboard_entry_count\x18\x02 \x01(\x05\x12\x15\n\rscore_changed\x18\x03 \x01(\x08\x12\x1c\n\x14global_rank_previous\x18\x04 \x01(\x05\x12\x17\n\x0fglobal_rank_new\x18\x05 \x01(\x05\"M\n\x13\x43MsgClientLBSSetUGC\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x16\n\x0eleaderboard_id\x18\x02 \x01(\x05\x12\x0e\n\x06ugc_id\x18\x03 \x01(\x06\"1\n\x1b\x43MsgClientLBSSetUGCResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\"\xa7\x01\n\x1b\x43MsgClientLBSFindOrCreateLB\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x1f\n\x17leaderboard_sort_method\x18\x02 \x01(\x05\x12 \n\x18leaderboard_display_type\x18\x03 \x01(\x05\x12\x1b\n\x13\x63reate_if_not_found\x18\x04 \x01(\x08\x12\x18\n\x10leaderboard_name\x18\x05 \x01(\t\"\xd5\x01\n#CMsgClientLBSFindOrCreateLBResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\x12\x16\n\x0eleaderboard_id\x18\x02 \x01(\x05\x12\x1f\n\x17leaderboard_entry_count\x18\x03 \x01(\x05\x12\"\n\x17leaderboard_sort_method\x18\x04 \x01(\x05:\x01\x30\x12#\n\x18leaderboard_display_type\x18\x05 \x01(\x05:\x01\x30\x12\x18\n\x10leaderboard_name\x18\x06 \x01(\t\"\x9f\x01\n\x19\x43MsgClientLBSGetLBEntries\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\x05\x12\x16\n\x0eleaderboard_id\x18\x02 \x01(\x05\x12\x13\n\x0brange_start\x18\x03 \x01(\x05\x12\x11\n\trange_end\x18\x04 \x01(\x05\x12 \n\x18leaderboard_data_request\x18\x05 \x01(\x05\x12\x10\n\x08steamids\x18\x06 \x03(\x06\"\xf8\x01\n!CMsgClientLBSGetLBEntriesResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\x12\x1f\n\x17leaderboard_entry_count\x18\x02 \x01(\x05\x12\x39\n\x07\x65ntries\x18\x03 \x03(\x0b\x32(.CMsgClientLBSGetLBEntriesResponse.Entry\x1a\x63\n\x05\x45ntry\x12\x15\n\rsteam_id_user\x18\x01 \x01(\x06\x12\x13\n\x0bglobal_rank\x18\x02 \x01(\x05\x12\r\n\x05score\x18\x03 \x01(\x05\x12\x0f\n\x07\x64\x65tails\x18\x04 \x01(\x0c\x12\x0e\n\x06ugc_id\x18\x05 \x01(\x06\x42\x05H\x01\x90\x01\x00'
   ,
   dependencies=[steammessages__base__pb2.DESCRIPTOR,])
 
@@ -34,6 +33,7 @@ _CMSGCLIENTLBSSETSCORE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CMsgClientLBSSetScore.app_id', index=0,
@@ -41,35 +41,35 @@ _CMSGCLIENTLBSSETSCORE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='leaderboard_id', full_name='CMsgClientLBSSetScore.leaderboard_id', index=1,
       number=2, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='score', full_name='CMsgClientLBSSetScore.score', index=2,
       number=3, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='details', full_name='CMsgClientLBSSetScore.details', index=3,
       number=4, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='upload_score_method', full_name='CMsgClientLBSSetScore.upload_score_method', index=4,
       number=5, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -93,6 +93,7 @@ _CMSGCLIENTLBSSETSCORERESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='eresult', full_name='CMsgClientLBSSetScoreResponse.eresult', index=0,
@@ -100,35 +101,35 @@ _CMSGCLIENTLBSSETSCORERESPONSE = _descriptor.Descriptor(
       has_default_value=True, default_value=2,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='leaderboard_entry_count', full_name='CMsgClientLBSSetScoreResponse.leaderboard_entry_count', index=1,
       number=2, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='score_changed', full_name='CMsgClientLBSSetScoreResponse.score_changed', index=2,
       number=3, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='global_rank_previous', full_name='CMsgClientLBSSetScoreResponse.global_rank_previous', index=3,
       number=4, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='global_rank_new', full_name='CMsgClientLBSSetScoreResponse.global_rank_new', index=4,
       number=5, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -152,6 +153,7 @@ _CMSGCLIENTLBSSETUGC = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CMsgClientLBSSetUGC.app_id', index=0,
@@ -159,21 +161,21 @@ _CMSGCLIENTLBSSETUGC = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='leaderboard_id', full_name='CMsgClientLBSSetUGC.leaderboard_id', index=1,
       number=2, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='ugc_id', full_name='CMsgClientLBSSetUGC.ugc_id', index=2,
       number=3, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -197,6 +199,7 @@ _CMSGCLIENTLBSSETUGCRESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='eresult', full_name='CMsgClientLBSSetUGCResponse.eresult', index=0,
@@ -204,7 +207,7 @@ _CMSGCLIENTLBSSETUGCRESPONSE = _descriptor.Descriptor(
       has_default_value=True, default_value=2,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -228,6 +231,7 @@ _CMSGCLIENTLBSFINDORCREATELB = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CMsgClientLBSFindOrCreateLB.app_id', index=0,
@@ -235,35 +239,35 @@ _CMSGCLIENTLBSFINDORCREATELB = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='leaderboard_sort_method', full_name='CMsgClientLBSFindOrCreateLB.leaderboard_sort_method', index=1,
       number=2, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='leaderboard_display_type', full_name='CMsgClientLBSFindOrCreateLB.leaderboard_display_type', index=2,
       number=3, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='create_if_not_found', full_name='CMsgClientLBSFindOrCreateLB.create_if_not_found', index=3,
       number=4, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='leaderboard_name', full_name='CMsgClientLBSFindOrCreateLB.leaderboard_name', index=4,
       number=5, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -287,6 +291,7 @@ _CMSGCLIENTLBSFINDORCREATELBRESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='eresult', full_name='CMsgClientLBSFindOrCreateLBResponse.eresult', index=0,
@@ -294,42 +299,42 @@ _CMSGCLIENTLBSFINDORCREATELBRESPONSE = _descriptor.Descriptor(
       has_default_value=True, default_value=2,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='leaderboard_id', full_name='CMsgClientLBSFindOrCreateLBResponse.leaderboard_id', index=1,
       number=2, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='leaderboard_entry_count', full_name='CMsgClientLBSFindOrCreateLBResponse.leaderboard_entry_count', index=2,
       number=3, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='leaderboard_sort_method', full_name='CMsgClientLBSFindOrCreateLBResponse.leaderboard_sort_method', index=3,
       number=4, type=5, cpp_type=1, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='leaderboard_display_type', full_name='CMsgClientLBSFindOrCreateLBResponse.leaderboard_display_type', index=4,
       number=5, type=5, cpp_type=1, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='leaderboard_name', full_name='CMsgClientLBSFindOrCreateLBResponse.leaderboard_name', index=5,
       number=6, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -353,6 +358,7 @@ _CMSGCLIENTLBSGETLBENTRIES = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CMsgClientLBSGetLBEntries.app_id', index=0,
@@ -360,42 +366,42 @@ _CMSGCLIENTLBSGETLBENTRIES = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='leaderboard_id', full_name='CMsgClientLBSGetLBEntries.leaderboard_id', index=1,
       number=2, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='range_start', full_name='CMsgClientLBSGetLBEntries.range_start', index=2,
       number=3, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='range_end', full_name='CMsgClientLBSGetLBEntries.range_end', index=3,
       number=4, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='leaderboard_data_request', full_name='CMsgClientLBSGetLBEntries.leaderboard_data_request', index=4,
       number=5, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steamids', full_name='CMsgClientLBSGetLBEntries.steamids', index=5,
       number=6, type=6, cpp_type=4, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -419,6 +425,7 @@ _CMSGCLIENTLBSGETLBENTRIESRESPONSE_ENTRY = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steam_id_user', full_name='CMsgClientLBSGetLBEntriesResponse.Entry.steam_id_user', index=0,
@@ -426,35 +433,35 @@ _CMSGCLIENTLBSGETLBENTRIESRESPONSE_ENTRY = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='global_rank', full_name='CMsgClientLBSGetLBEntriesResponse.Entry.global_rank', index=1,
       number=2, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='score', full_name='CMsgClientLBSGetLBEntriesResponse.Entry.score', index=2,
       number=3, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='details', full_name='CMsgClientLBSGetLBEntriesResponse.Entry.details', index=3,
       number=4, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='ugc_id', full_name='CMsgClientLBSGetLBEntriesResponse.Entry.ugc_id', index=4,
       number=5, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -477,6 +484,7 @@ _CMSGCLIENTLBSGETLBENTRIESRESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='eresult', full_name='CMsgClientLBSGetLBEntriesResponse.eresult', index=0,
@@ -484,21 +492,21 @@ _CMSGCLIENTLBSGETLBENTRIESRESPONSE = _descriptor.Descriptor(
       has_default_value=True, default_value=2,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='leaderboard_entry_count', full_name='CMsgClientLBSGetLBEntriesResponse.leaderboard_entry_count', index=1,
       number=2, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='entries', full_name='CMsgClientLBSGetLBEntriesResponse.entries', index=2,
       number=3, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -527,67 +535,67 @@ DESCRIPTOR.message_types_by_name['CMsgClientLBSGetLBEntries'] = _CMSGCLIENTLBSGE
 DESCRIPTOR.message_types_by_name['CMsgClientLBSGetLBEntriesResponse'] = _CMSGCLIENTLBSGETLBENTRIESRESPONSE
 _sym_db.RegisterFileDescriptor(DESCRIPTOR)
 
-CMsgClientLBSSetScore = _reflection.GeneratedProtocolMessageType('CMsgClientLBSSetScore', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTLBSSETSCORE,
-  __module__ = 'steammessages_clientserver_lbs_pb2'
+CMsgClientLBSSetScore = _reflection.GeneratedProtocolMessageType('CMsgClientLBSSetScore', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTLBSSETSCORE,
+  '__module__' : 'steammessages_clientserver_lbs_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientLBSSetScore)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientLBSSetScore)
 
-CMsgClientLBSSetScoreResponse = _reflection.GeneratedProtocolMessageType('CMsgClientLBSSetScoreResponse', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTLBSSETSCORERESPONSE,
-  __module__ = 'steammessages_clientserver_lbs_pb2'
+CMsgClientLBSSetScoreResponse = _reflection.GeneratedProtocolMessageType('CMsgClientLBSSetScoreResponse', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTLBSSETSCORERESPONSE,
+  '__module__' : 'steammessages_clientserver_lbs_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientLBSSetScoreResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientLBSSetScoreResponse)
 
-CMsgClientLBSSetUGC = _reflection.GeneratedProtocolMessageType('CMsgClientLBSSetUGC', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTLBSSETUGC,
-  __module__ = 'steammessages_clientserver_lbs_pb2'
+CMsgClientLBSSetUGC = _reflection.GeneratedProtocolMessageType('CMsgClientLBSSetUGC', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTLBSSETUGC,
+  '__module__' : 'steammessages_clientserver_lbs_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientLBSSetUGC)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientLBSSetUGC)
 
-CMsgClientLBSSetUGCResponse = _reflection.GeneratedProtocolMessageType('CMsgClientLBSSetUGCResponse', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTLBSSETUGCRESPONSE,
-  __module__ = 'steammessages_clientserver_lbs_pb2'
+CMsgClientLBSSetUGCResponse = _reflection.GeneratedProtocolMessageType('CMsgClientLBSSetUGCResponse', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTLBSSETUGCRESPONSE,
+  '__module__' : 'steammessages_clientserver_lbs_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientLBSSetUGCResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientLBSSetUGCResponse)
 
-CMsgClientLBSFindOrCreateLB = _reflection.GeneratedProtocolMessageType('CMsgClientLBSFindOrCreateLB', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTLBSFINDORCREATELB,
-  __module__ = 'steammessages_clientserver_lbs_pb2'
+CMsgClientLBSFindOrCreateLB = _reflection.GeneratedProtocolMessageType('CMsgClientLBSFindOrCreateLB', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTLBSFINDORCREATELB,
+  '__module__' : 'steammessages_clientserver_lbs_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientLBSFindOrCreateLB)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientLBSFindOrCreateLB)
 
-CMsgClientLBSFindOrCreateLBResponse = _reflection.GeneratedProtocolMessageType('CMsgClientLBSFindOrCreateLBResponse', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTLBSFINDORCREATELBRESPONSE,
-  __module__ = 'steammessages_clientserver_lbs_pb2'
+CMsgClientLBSFindOrCreateLBResponse = _reflection.GeneratedProtocolMessageType('CMsgClientLBSFindOrCreateLBResponse', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTLBSFINDORCREATELBRESPONSE,
+  '__module__' : 'steammessages_clientserver_lbs_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientLBSFindOrCreateLBResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientLBSFindOrCreateLBResponse)
 
-CMsgClientLBSGetLBEntries = _reflection.GeneratedProtocolMessageType('CMsgClientLBSGetLBEntries', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTLBSGETLBENTRIES,
-  __module__ = 'steammessages_clientserver_lbs_pb2'
+CMsgClientLBSGetLBEntries = _reflection.GeneratedProtocolMessageType('CMsgClientLBSGetLBEntries', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTLBSGETLBENTRIES,
+  '__module__' : 'steammessages_clientserver_lbs_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientLBSGetLBEntries)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientLBSGetLBEntries)
 
-CMsgClientLBSGetLBEntriesResponse = _reflection.GeneratedProtocolMessageType('CMsgClientLBSGetLBEntriesResponse', (_message.Message,), dict(
+CMsgClientLBSGetLBEntriesResponse = _reflection.GeneratedProtocolMessageType('CMsgClientLBSGetLBEntriesResponse', (_message.Message,), {
 
-  Entry = _reflection.GeneratedProtocolMessageType('Entry', (_message.Message,), dict(
-    DESCRIPTOR = _CMSGCLIENTLBSGETLBENTRIESRESPONSE_ENTRY,
-    __module__ = 'steammessages_clientserver_lbs_pb2'
+  'Entry' : _reflection.GeneratedProtocolMessageType('Entry', (_message.Message,), {
+    'DESCRIPTOR' : _CMSGCLIENTLBSGETLBENTRIESRESPONSE_ENTRY,
+    '__module__' : 'steammessages_clientserver_lbs_pb2'
     # @@protoc_insertion_point(class_scope:CMsgClientLBSGetLBEntriesResponse.Entry)
-    ))
+    })
   ,
-  DESCRIPTOR = _CMSGCLIENTLBSGETLBENTRIESRESPONSE,
-  __module__ = 'steammessages_clientserver_lbs_pb2'
+  'DESCRIPTOR' : _CMSGCLIENTLBSGETLBENTRIESRESPONSE,
+  '__module__' : 'steammessages_clientserver_lbs_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientLBSGetLBEntriesResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientLBSGetLBEntriesResponse)
 _sym_db.RegisterMessage(CMsgClientLBSGetLBEntriesResponse.Entry)
 
diff --git a/steam/protobufs/steammessages_clientserver_login_pb2.py b/steam/protobufs/steammessages_clientserver_login_pb2.py
index 3fbf4e2..b69f1c7 100644
--- a/steam/protobufs/steammessages_clientserver_login_pb2.py
+++ b/steam/protobufs/steammessages_clientserver_login_pb2.py
@@ -1,9 +1,7 @@
 # -*- coding: utf-8 -*-
 # Generated by the protocol buffer compiler.  DO NOT EDIT!
 # source: steammessages_clientserver_login.proto
-
-import sys
-_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1'))
+"""Generated protocol buffer code."""
 from google.protobuf import descriptor as _descriptor
 from google.protobuf import message as _message
 from google.protobuf import reflection as _reflection
@@ -20,8 +18,9 @@ DESCRIPTOR = _descriptor.FileDescriptor(
   name='steammessages_clientserver_login.proto',
   package='',
   syntax='proto2',
-  serialized_options=_b('H\001\220\001\000'),
-  serialized_pb=_b('\n&steammessages_clientserver_login.proto\x1a\x18steammessages_base.proto\")\n\x13\x43MsgClientHeartBeat\x12\x12\n\nsend_reply\x18\x01 \x01(\x08\"D\n CMsgClientServerTimestampRequest\x12 \n\x18\x63lient_request_timestamp\x18\x01 \x01(\x04\"b\n!CMsgClientServerTimestampResponse\x12 \n\x18\x63lient_request_timestamp\x18\x01 \x01(\x04\x12\x1b\n\x13server_timestamp_ms\x18\x02 \x01(\x04\"a\n\x10\x43MsgClientSecret\x12\x0f\n\x07version\x18\x01 \x01(\r\x12\r\n\x05\x61ppid\x18\x02 \x01(\r\x12\x10\n\x08\x64\x65viceid\x18\x03 \x01(\r\x12\r\n\x05nonce\x18\x04 \x01(\x06\x12\x0c\n\x04hmac\x18\x05 \x01(\x0c\"\xfe\x0b\n\x0f\x43MsgClientLogon\x12\x18\n\x10protocol_version\x18\x01 \x01(\r\x12*\n\"deprecated_obfustucated_private_ip\x18\x02 \x01(\r\x12\x0f\n\x07\x63\x65ll_id\x18\x03 \x01(\r\x12\x17\n\x0flast_session_id\x18\x04 \x01(\r\x12\x1e\n\x16\x63lient_package_version\x18\x05 \x01(\r\x12\x17\n\x0f\x63lient_language\x18\x06 \x01(\t\x12\x16\n\x0e\x63lient_os_type\x18\x07 \x01(\r\x12\'\n\x18should_remember_password\x18\x08 \x01(\x08:\x05\x66\x61lse\x12\x14\n\x0cwine_version\x18\t \x01(\t\x12\x15\n\rdeprecated_10\x18\n \x01(\r\x12-\n\x15obfuscated_private_ip\x18\x0b \x01(\x0b\x32\x0e.CMsgIPAddress\x12\x1c\n\x14\x64\x65precated_public_ip\x18\x14 \x01(\r\x12\x11\n\tqos_level\x18\x15 \x01(\r\x12 \n\x18\x63lient_supplied_steam_id\x18\x16 \x01(\x06\x12!\n\tpublic_ip\x18\x17 \x01(\x0b\x32\x0e.CMsgIPAddress\x12\x12\n\nmachine_id\x18\x1e \x01(\x0c\x12\x18\n\rlauncher_type\x18\x1f \x01(\r:\x01\x30\x12\x12\n\x07ui_mode\x18  \x01(\r:\x01\x30\x12\x14\n\tchat_mode\x18! \x01(\r:\x01\x30\x12\x1a\n\x12steam2_auth_ticket\x18) \x01(\x0c\x12\x15\n\remail_address\x18* \x01(\t\x12 \n\x18rtime32_account_creation\x18+ \x01(\x07\x12\x14\n\x0c\x61\x63\x63ount_name\x18\x32 \x01(\t\x12\x10\n\x08password\x18\x33 \x01(\t\x12\x19\n\x11game_server_token\x18\x34 \x01(\t\x12\x11\n\tlogin_key\x18< \x01(\t\x12+\n\x1cwas_converted_deprecated_msg\x18\x46 \x01(\x08:\x05\x66\x61lse\x12%\n\x1d\x61non_user_target_account_name\x18P \x01(\t\x12\x1e\n\x16resolved_user_steam_id\x18Q \x01(\x06\x12\x1a\n\x12\x65result_sentryfile\x18R \x01(\x05\x12\x16\n\x0esha_sentryfile\x18S \x01(\x0c\x12\x11\n\tauth_code\x18T \x01(\t\x12\x10\n\x08otp_type\x18U \x01(\x05\x12\x11\n\totp_value\x18V \x01(\r\x12\x16\n\x0eotp_identifier\x18W \x01(\t\x12\x1d\n\x15steam2_ticket_request\x18X \x01(\x08\x12\x17\n\x0fsony_psn_ticket\x18Z \x01(\x0c\x12\x1b\n\x13sony_psn_service_id\x18[ \x01(\t\x12\x36\n\'create_new_psn_linked_account_if_needed\x18\\ \x01(\x08:\x05\x66\x61lse\x12\x15\n\rsony_psn_name\x18] \x01(\t\x12\x1a\n\x12game_server_app_id\x18^ \x01(\x05\x12)\n!steamguard_dont_remember_computer\x18_ \x01(\x08\x12\x14\n\x0cmachine_name\x18` \x01(\t\x12\x1f\n\x17machine_name_userchosen\x18\x61 \x01(\t\x12\x18\n\x10\x63ountry_override\x18\x62 \x01(\t\x12\x14\n\x0cis_steam_box\x18\x63 \x01(\x08\x12\x1a\n\x12\x63lient_instance_id\x18\x64 \x01(\x04\x12\x17\n\x0ftwo_factor_code\x18\x65 \x01(\t\x12$\n\x1csupports_rate_limit_response\x18\x66 \x01(\x08\x12\x17\n\x0fweb_logon_nonce\x18g \x01(\t\x12\x17\n\x0fpriority_reason\x18h \x01(\x05\x12\x31\n\x16\x65mbedded_client_secret\x18i \x01(\x0b\x32\x11.CMsgClientSecret\x12\"\n\x1a\x64isable_partner_autogrants\x18j \x01(\x08\"\x87\x06\n\x17\x43MsgClientLogonResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\x12%\n\x1dout_of_game_heartbeat_seconds\x18\x02 \x01(\x05\x12!\n\x19in_game_heartbeat_seconds\x18\x03 \x01(\x05\x12\x1c\n\x14\x64\x65precated_public_ip\x18\x04 \x01(\r\x12\x1b\n\x13rtime32_server_time\x18\x05 \x01(\x07\x12\x15\n\raccount_flags\x18\x06 \x01(\r\x12\x0f\n\x07\x63\x65ll_id\x18\x07 \x01(\r\x12\x14\n\x0c\x65mail_domain\x18\x08 \x01(\t\x12\x15\n\rsteam2_ticket\x18\t \x01(\x0c\x12\x18\n\x10\x65result_extended\x18\n \x01(\x05\x12&\n\x1ewebapi_authenticate_user_nonce\x18\x0b \x01(\t\x12\x1e\n\x16\x63\x65ll_id_ping_threshold\x18\x0c \x01(\r\x12\x1b\n\x13\x64\x65precated_use_pics\x18\r \x01(\x08\x12\x12\n\nvanity_url\x18\x0e \x01(\t\x12!\n\tpublic_ip\x18\x0f \x01(\x0b\x32\x0e.CMsgIPAddress\x12\x1f\n\x17\x63lient_supplied_steamid\x18\x14 \x01(\x06\x12\x17\n\x0fip_country_code\x18\x15 \x01(\t\x12\x19\n\x11parental_settings\x18\x16 \x01(\x0c\x12\"\n\x1aparental_setting_signature\x18\x17 \x01(\x0c\x12&\n\x1e\x63ount_loginfailures_to_migrate\x18\x18 \x01(\x05\x12$\n\x1c\x63ount_disconnects_to_migrate\x18\x19 \x01(\x05\x12#\n\x1bogs_data_report_time_window\x18\x1a \x01(\x05\x12\x1a\n\x12\x63lient_instance_id\x18\x1b \x01(\x04\x12!\n\x19\x66orce_client_update_check\x18\x1c \x01(\x08\x12\x1d\n\x15\x61greement_session_url\x18\x1d \x01(\t\"F\n,CMsgClientRequestWebAPIAuthenticateUserNonce\x12\x16\n\ntoken_type\x18\x01 \x01(\x05:\x02-1\"\x8a\x01\n4CMsgClientRequestWebAPIAuthenticateUserNonceResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\x12&\n\x1ewebapi_authenticate_user_nonce\x18\x0b \x01(\t\x12\x16\n\ntoken_type\x18\x03 \x01(\x05:\x02-1\"\x12\n\x10\x43MsgClientLogOff\")\n\x13\x43MsgClientLoggedOff\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\"=\n\x15\x43MsgClientNewLoginKey\x12\x11\n\tunique_id\x18\x01 \x01(\r\x12\x11\n\tlogin_key\x18\x02 \x01(\t\"2\n\x1d\x43MsgClientNewLoginKeyAccepted\x12\x11\n\tunique_id\x18\x01 \x01(\r\"\xee\x02\n\x15\x43MsgClientAccountInfo\x12\x14\n\x0cpersona_name\x18\x01 \x01(\t\x12\x12\n\nip_country\x18\x02 \x01(\t\x12\x1e\n\x16\x63ount_authed_computers\x18\x05 \x01(\x05\x12\x15\n\raccount_flags\x18\x07 \x01(\r\x12\x13\n\x0b\x66\x61\x63\x65\x62ook_id\x18\x08 \x01(\x04\x12\x15\n\rfacebook_name\x18\t \x01(\t\x12%\n\x1dsteamguard_notify_newmachines\x18\x0e \x01(\x08\x12+\n#steamguard_machine_name_user_chosen\x18\x0f \x01(\t\x12\x19\n\x11is_phone_verified\x18\x10 \x01(\x08\x12\x18\n\x10two_factor_state\x18\x11 \x01(\r\x12\x1c\n\x14is_phone_identifying\x18\x12 \x01(\x08\x12!\n\x19is_phone_needing_reverify\x18\x13 \x01(\x08\"-\n\x1a\x43MsgClientChallengeRequest\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\"0\n\x1b\x43MsgClientChallengeResponse\x12\x11\n\tchallenge\x18\x01 \x01(\x06\x42\x05H\x01\x90\x01\x00')
+  serialized_options=b'H\001\220\001\000',
+  create_key=_descriptor._internal_create_key,
+  serialized_pb=b'\n&steammessages_clientserver_login.proto\x1a\x18steammessages_base.proto\")\n\x13\x43MsgClientHeartBeat\x12\x12\n\nsend_reply\x18\x01 \x01(\x08\"D\n CMsgClientServerTimestampRequest\x12 \n\x18\x63lient_request_timestamp\x18\x01 \x01(\x04\"b\n!CMsgClientServerTimestampResponse\x12 \n\x18\x63lient_request_timestamp\x18\x01 \x01(\x04\x12\x1b\n\x13server_timestamp_ms\x18\x02 \x01(\x04\"a\n\x10\x43MsgClientSecret\x12\x0f\n\x07version\x18\x01 \x01(\r\x12\r\n\x05\x61ppid\x18\x02 \x01(\r\x12\x10\n\x08\x64\x65viceid\x18\x03 \x01(\r\x12\r\n\x05nonce\x18\x04 \x01(\x06\x12\x0c\n\x04hmac\x18\x05 \x01(\x0c\"+\n\x0f\x43MsgClientHello\x12\x18\n\x10protocol_version\x18\x01 \x01(\r\"\xab\x0c\n\x0f\x43MsgClientLogon\x12\x18\n\x10protocol_version\x18\x01 \x01(\r\x12*\n\"deprecated_obfustucated_private_ip\x18\x02 \x01(\r\x12\x0f\n\x07\x63\x65ll_id\x18\x03 \x01(\r\x12\x17\n\x0flast_session_id\x18\x04 \x01(\r\x12\x1e\n\x16\x63lient_package_version\x18\x05 \x01(\r\x12\x17\n\x0f\x63lient_language\x18\x06 \x01(\t\x12\x16\n\x0e\x63lient_os_type\x18\x07 \x01(\r\x12\'\n\x18should_remember_password\x18\x08 \x01(\x08:\x05\x66\x61lse\x12\x14\n\x0cwine_version\x18\t \x01(\t\x12\x15\n\rdeprecated_10\x18\n \x01(\r\x12-\n\x15obfuscated_private_ip\x18\x0b \x01(\x0b\x32\x0e.CMsgIPAddress\x12\x1c\n\x14\x64\x65precated_public_ip\x18\x14 \x01(\r\x12\x11\n\tqos_level\x18\x15 \x01(\r\x12 \n\x18\x63lient_supplied_steam_id\x18\x16 \x01(\x06\x12!\n\tpublic_ip\x18\x17 \x01(\x0b\x32\x0e.CMsgIPAddress\x12\x12\n\nmachine_id\x18\x1e \x01(\x0c\x12\x18\n\rlauncher_type\x18\x1f \x01(\r:\x01\x30\x12\x12\n\x07ui_mode\x18  \x01(\r:\x01\x30\x12\x14\n\tchat_mode\x18! \x01(\r:\x01\x30\x12\x1a\n\x12steam2_auth_ticket\x18) \x01(\x0c\x12\x15\n\remail_address\x18* \x01(\t\x12 \n\x18rtime32_account_creation\x18+ \x01(\x07\x12\x14\n\x0c\x61\x63\x63ount_name\x18\x32 \x01(\t\x12\x10\n\x08password\x18\x33 \x01(\t\x12\x19\n\x11game_server_token\x18\x34 \x01(\t\x12\x11\n\tlogin_key\x18< \x01(\t\x12+\n\x1cwas_converted_deprecated_msg\x18\x46 \x01(\x08:\x05\x66\x61lse\x12%\n\x1d\x61non_user_target_account_name\x18P \x01(\t\x12\x1e\n\x16resolved_user_steam_id\x18Q \x01(\x06\x12\x1a\n\x12\x65result_sentryfile\x18R \x01(\x05\x12\x16\n\x0esha_sentryfile\x18S \x01(\x0c\x12\x11\n\tauth_code\x18T \x01(\t\x12\x10\n\x08otp_type\x18U \x01(\x05\x12\x11\n\totp_value\x18V \x01(\r\x12\x16\n\x0eotp_identifier\x18W \x01(\t\x12\x1d\n\x15steam2_ticket_request\x18X \x01(\x08\x12\x17\n\x0fsony_psn_ticket\x18Z \x01(\x0c\x12\x1b\n\x13sony_psn_service_id\x18[ \x01(\t\x12\x36\n\'create_new_psn_linked_account_if_needed\x18\\ \x01(\x08:\x05\x66\x61lse\x12\x15\n\rsony_psn_name\x18] \x01(\t\x12\x1a\n\x12game_server_app_id\x18^ \x01(\x05\x12)\n!steamguard_dont_remember_computer\x18_ \x01(\x08\x12\x14\n\x0cmachine_name\x18` \x01(\t\x12\x1f\n\x17machine_name_userchosen\x18\x61 \x01(\t\x12\x18\n\x10\x63ountry_override\x18\x62 \x01(\t\x12\x14\n\x0cis_steam_box\x18\x63 \x01(\x08\x12\x1a\n\x12\x63lient_instance_id\x18\x64 \x01(\x04\x12\x17\n\x0ftwo_factor_code\x18\x65 \x01(\t\x12$\n\x1csupports_rate_limit_response\x18\x66 \x01(\x08\x12\x17\n\x0fweb_logon_nonce\x18g \x01(\t\x12\x17\n\x0fpriority_reason\x18h \x01(\x05\x12\x31\n\x16\x65mbedded_client_secret\x18i \x01(\x0b\x32\x11.CMsgClientSecret\x12\"\n\x1a\x64isable_partner_autogrants\x18j \x01(\x08\x12\x15\n\ris_steam_deck\x18k \x01(\x08\x12\x14\n\x0c\x61\x63\x63\x65ss_token\x18l \x01(\t\"\x98\x06\n\x17\x43MsgClientLogonResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\x12,\n$legacy_out_of_game_heartbeat_seconds\x18\x02 \x01(\x05\x12\x19\n\x11heartbeat_seconds\x18\x03 \x01(\x05\x12\x1c\n\x14\x64\x65precated_public_ip\x18\x04 \x01(\r\x12\x1b\n\x13rtime32_server_time\x18\x05 \x01(\x07\x12\x15\n\raccount_flags\x18\x06 \x01(\r\x12\x0f\n\x07\x63\x65ll_id\x18\x07 \x01(\r\x12\x14\n\x0c\x65mail_domain\x18\x08 \x01(\t\x12\x15\n\rsteam2_ticket\x18\t \x01(\x0c\x12\x18\n\x10\x65result_extended\x18\n \x01(\x05\x12&\n\x1ewebapi_authenticate_user_nonce\x18\x0b \x01(\t\x12\x1e\n\x16\x63\x65ll_id_ping_threshold\x18\x0c \x01(\r\x12\x1b\n\x13\x64\x65precated_use_pics\x18\r \x01(\x08\x12\x12\n\nvanity_url\x18\x0e \x01(\t\x12!\n\tpublic_ip\x18\x0f \x01(\x0b\x32\x0e.CMsgIPAddress\x12\x1f\n\x17\x63lient_supplied_steamid\x18\x14 \x01(\x06\x12\x17\n\x0fip_country_code\x18\x15 \x01(\t\x12\x19\n\x11parental_settings\x18\x16 \x01(\x0c\x12\"\n\x1aparental_setting_signature\x18\x17 \x01(\x0c\x12&\n\x1e\x63ount_loginfailures_to_migrate\x18\x18 \x01(\x05\x12$\n\x1c\x63ount_disconnects_to_migrate\x18\x19 \x01(\x05\x12#\n\x1bogs_data_report_time_window\x18\x1a \x01(\x05\x12\x1a\n\x12\x63lient_instance_id\x18\x1b \x01(\x04\x12!\n\x19\x66orce_client_update_check\x18\x1c \x01(\x08\x12\x1d\n\x15\x61greement_session_url\x18\x1d \x01(\t\x12\x10\n\x08token_id\x18\x1e \x01(\x04\"F\n,CMsgClientRequestWebAPIAuthenticateUserNonce\x12\x16\n\ntoken_type\x18\x01 \x01(\x05:\x02-1\"\x8a\x01\n4CMsgClientRequestWebAPIAuthenticateUserNonceResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\x12&\n\x1ewebapi_authenticate_user_nonce\x18\x0b \x01(\t\x12\x16\n\ntoken_type\x18\x03 \x01(\x05:\x02-1\"\x12\n\x10\x43MsgClientLogOff\")\n\x13\x43MsgClientLoggedOff\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\"=\n\x15\x43MsgClientNewLoginKey\x12\x11\n\tunique_id\x18\x01 \x01(\r\x12\x11\n\tlogin_key\x18\x02 \x01(\t\"2\n\x1d\x43MsgClientNewLoginKeyAccepted\x12\x11\n\tunique_id\x18\x01 \x01(\r\"\xee\x02\n\x15\x43MsgClientAccountInfo\x12\x14\n\x0cpersona_name\x18\x01 \x01(\t\x12\x12\n\nip_country\x18\x02 \x01(\t\x12\x1e\n\x16\x63ount_authed_computers\x18\x05 \x01(\x05\x12\x15\n\raccount_flags\x18\x07 \x01(\r\x12\x13\n\x0b\x66\x61\x63\x65\x62ook_id\x18\x08 \x01(\x04\x12\x15\n\rfacebook_name\x18\t \x01(\t\x12%\n\x1dsteamguard_notify_newmachines\x18\x0e \x01(\x08\x12+\n#steamguard_machine_name_user_chosen\x18\x0f \x01(\t\x12\x19\n\x11is_phone_verified\x18\x10 \x01(\x08\x12\x18\n\x10two_factor_state\x18\x11 \x01(\r\x12\x1c\n\x14is_phone_identifying\x18\x12 \x01(\x08\x12!\n\x19is_phone_needing_reverify\x18\x13 \x01(\x08\"-\n\x1a\x43MsgClientChallengeRequest\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\"0\n\x1b\x43MsgClientChallengeResponse\x12\x11\n\tchallenge\x18\x01 \x01(\x06\x42\x05H\x01\x90\x01\x00'
   ,
   dependencies=[steammessages__base__pb2.DESCRIPTOR,])
 
@@ -34,6 +33,7 @@ _CMSGCLIENTHEARTBEAT = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='send_reply', full_name='CMsgClientHeartBeat.send_reply', index=0,
@@ -41,7 +41,7 @@ _CMSGCLIENTHEARTBEAT = _descriptor.Descriptor(
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -65,6 +65,7 @@ _CMSGCLIENTSERVERTIMESTAMPREQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='client_request_timestamp', full_name='CMsgClientServerTimestampRequest.client_request_timestamp', index=0,
@@ -72,7 +73,7 @@ _CMSGCLIENTSERVERTIMESTAMPREQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -96,6 +97,7 @@ _CMSGCLIENTSERVERTIMESTAMPRESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='client_request_timestamp', full_name='CMsgClientServerTimestampResponse.client_request_timestamp', index=0,
@@ -103,14 +105,14 @@ _CMSGCLIENTSERVERTIMESTAMPRESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='server_timestamp_ms', full_name='CMsgClientServerTimestampResponse.server_timestamp_ms', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -134,6 +136,7 @@ _CMSGCLIENTSECRET = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='version', full_name='CMsgClientSecret.version', index=0,
@@ -141,35 +144,35 @@ _CMSGCLIENTSECRET = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='appid', full_name='CMsgClientSecret.appid', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='deviceid', full_name='CMsgClientSecret.deviceid', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='nonce', full_name='CMsgClientSecret.nonce', index=3,
       number=4, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='hmac', full_name='CMsgClientSecret.hmac', index=4,
       number=5, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -187,12 +190,45 @@ _CMSGCLIENTSECRET = _descriptor.Descriptor(
 )
 
 
+_CMSGCLIENTHELLO = _descriptor.Descriptor(
+  name='CMsgClientHello',
+  full_name='CMsgClientHello',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='protocol_version', full_name='CMsgClientHello.protocol_version', index=0,
+      number=1, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=380,
+  serialized_end=423,
+)
+
+
 _CMSGCLIENTLOGON = _descriptor.Descriptor(
   name='CMsgClientLogon',
   full_name='CMsgClientLogon',
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='protocol_version', full_name='CMsgClientLogon.protocol_version', index=0,
@@ -200,371 +236,385 @@ _CMSGCLIENTLOGON = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='deprecated_obfustucated_private_ip', full_name='CMsgClientLogon.deprecated_obfustucated_private_ip', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='cell_id', full_name='CMsgClientLogon.cell_id', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='last_session_id', full_name='CMsgClientLogon.last_session_id', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='client_package_version', full_name='CMsgClientLogon.client_package_version', index=4,
       number=5, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='client_language', full_name='CMsgClientLogon.client_language', index=5,
       number=6, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='client_os_type', full_name='CMsgClientLogon.client_os_type', index=6,
       number=7, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='should_remember_password', full_name='CMsgClientLogon.should_remember_password', index=7,
       number=8, type=8, cpp_type=7, label=1,
       has_default_value=True, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='wine_version', full_name='CMsgClientLogon.wine_version', index=8,
       number=9, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='deprecated_10', full_name='CMsgClientLogon.deprecated_10', index=9,
       number=10, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='obfuscated_private_ip', full_name='CMsgClientLogon.obfuscated_private_ip', index=10,
       number=11, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='deprecated_public_ip', full_name='CMsgClientLogon.deprecated_public_ip', index=11,
       number=20, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='qos_level', full_name='CMsgClientLogon.qos_level', index=12,
       number=21, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='client_supplied_steam_id', full_name='CMsgClientLogon.client_supplied_steam_id', index=13,
       number=22, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='public_ip', full_name='CMsgClientLogon.public_ip', index=14,
       number=23, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='machine_id', full_name='CMsgClientLogon.machine_id', index=15,
       number=30, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='launcher_type', full_name='CMsgClientLogon.launcher_type', index=16,
       number=31, type=13, cpp_type=3, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='ui_mode', full_name='CMsgClientLogon.ui_mode', index=17,
       number=32, type=13, cpp_type=3, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='chat_mode', full_name='CMsgClientLogon.chat_mode', index=18,
       number=33, type=13, cpp_type=3, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steam2_auth_ticket', full_name='CMsgClientLogon.steam2_auth_ticket', index=19,
       number=41, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='email_address', full_name='CMsgClientLogon.email_address', index=20,
       number=42, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='rtime32_account_creation', full_name='CMsgClientLogon.rtime32_account_creation', index=21,
       number=43, type=7, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='account_name', full_name='CMsgClientLogon.account_name', index=22,
       number=50, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='password', full_name='CMsgClientLogon.password', index=23,
       number=51, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='game_server_token', full_name='CMsgClientLogon.game_server_token', index=24,
       number=52, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='login_key', full_name='CMsgClientLogon.login_key', index=25,
       number=60, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='was_converted_deprecated_msg', full_name='CMsgClientLogon.was_converted_deprecated_msg', index=26,
       number=70, type=8, cpp_type=7, label=1,
       has_default_value=True, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='anon_user_target_account_name', full_name='CMsgClientLogon.anon_user_target_account_name', index=27,
       number=80, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='resolved_user_steam_id', full_name='CMsgClientLogon.resolved_user_steam_id', index=28,
       number=81, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='eresult_sentryfile', full_name='CMsgClientLogon.eresult_sentryfile', index=29,
       number=82, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='sha_sentryfile', full_name='CMsgClientLogon.sha_sentryfile', index=30,
       number=83, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='auth_code', full_name='CMsgClientLogon.auth_code', index=31,
       number=84, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='otp_type', full_name='CMsgClientLogon.otp_type', index=32,
       number=85, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='otp_value', full_name='CMsgClientLogon.otp_value', index=33,
       number=86, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='otp_identifier', full_name='CMsgClientLogon.otp_identifier', index=34,
       number=87, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steam2_ticket_request', full_name='CMsgClientLogon.steam2_ticket_request', index=35,
       number=88, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='sony_psn_ticket', full_name='CMsgClientLogon.sony_psn_ticket', index=36,
       number=90, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='sony_psn_service_id', full_name='CMsgClientLogon.sony_psn_service_id', index=37,
       number=91, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='create_new_psn_linked_account_if_needed', full_name='CMsgClientLogon.create_new_psn_linked_account_if_needed', index=38,
       number=92, type=8, cpp_type=7, label=1,
       has_default_value=True, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='sony_psn_name', full_name='CMsgClientLogon.sony_psn_name', index=39,
       number=93, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='game_server_app_id', full_name='CMsgClientLogon.game_server_app_id', index=40,
       number=94, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steamguard_dont_remember_computer', full_name='CMsgClientLogon.steamguard_dont_remember_computer', index=41,
       number=95, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='machine_name', full_name='CMsgClientLogon.machine_name', index=42,
       number=96, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='machine_name_userchosen', full_name='CMsgClientLogon.machine_name_userchosen', index=43,
       number=97, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='country_override', full_name='CMsgClientLogon.country_override', index=44,
       number=98, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='is_steam_box', full_name='CMsgClientLogon.is_steam_box', index=45,
       number=99, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='client_instance_id', full_name='CMsgClientLogon.client_instance_id', index=46,
       number=100, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='two_factor_code', full_name='CMsgClientLogon.two_factor_code', index=47,
       number=101, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='supports_rate_limit_response', full_name='CMsgClientLogon.supports_rate_limit_response', index=48,
       number=102, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='web_logon_nonce', full_name='CMsgClientLogon.web_logon_nonce', index=49,
       number=103, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='priority_reason', full_name='CMsgClientLogon.priority_reason', index=50,
       number=104, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='embedded_client_secret', full_name='CMsgClientLogon.embedded_client_secret', index=51,
       number=105, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='disable_partner_autogrants', full_name='CMsgClientLogon.disable_partner_autogrants', index=52,
       number=106, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='is_steam_deck', full_name='CMsgClientLogon.is_steam_deck', index=53,
+      number=107, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='access_token', full_name='CMsgClientLogon.access_token', index=54,
+      number=108, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -577,8 +627,8 @@ _CMSGCLIENTLOGON = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=381,
-  serialized_end=1915,
+  serialized_start=426,
+  serialized_end=2005,
 )
 
 
@@ -588,6 +638,7 @@ _CMSGCLIENTLOGONRESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='eresult', full_name='CMsgClientLogonResponse.eresult', index=0,
@@ -595,175 +646,182 @@ _CMSGCLIENTLOGONRESPONSE = _descriptor.Descriptor(
       has_default_value=True, default_value=2,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
-      name='out_of_game_heartbeat_seconds', full_name='CMsgClientLogonResponse.out_of_game_heartbeat_seconds', index=1,
+      name='legacy_out_of_game_heartbeat_seconds', full_name='CMsgClientLogonResponse.legacy_out_of_game_heartbeat_seconds', index=1,
       number=2, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
-      name='in_game_heartbeat_seconds', full_name='CMsgClientLogonResponse.in_game_heartbeat_seconds', index=2,
+      name='heartbeat_seconds', full_name='CMsgClientLogonResponse.heartbeat_seconds', index=2,
       number=3, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='deprecated_public_ip', full_name='CMsgClientLogonResponse.deprecated_public_ip', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='rtime32_server_time', full_name='CMsgClientLogonResponse.rtime32_server_time', index=4,
       number=5, type=7, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='account_flags', full_name='CMsgClientLogonResponse.account_flags', index=5,
       number=6, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='cell_id', full_name='CMsgClientLogonResponse.cell_id', index=6,
       number=7, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='email_domain', full_name='CMsgClientLogonResponse.email_domain', index=7,
       number=8, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steam2_ticket', full_name='CMsgClientLogonResponse.steam2_ticket', index=8,
       number=9, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='eresult_extended', full_name='CMsgClientLogonResponse.eresult_extended', index=9,
       number=10, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='webapi_authenticate_user_nonce', full_name='CMsgClientLogonResponse.webapi_authenticate_user_nonce', index=10,
       number=11, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='cell_id_ping_threshold', full_name='CMsgClientLogonResponse.cell_id_ping_threshold', index=11,
       number=12, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='deprecated_use_pics', full_name='CMsgClientLogonResponse.deprecated_use_pics', index=12,
       number=13, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='vanity_url', full_name='CMsgClientLogonResponse.vanity_url', index=13,
       number=14, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='public_ip', full_name='CMsgClientLogonResponse.public_ip', index=14,
       number=15, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='client_supplied_steamid', full_name='CMsgClientLogonResponse.client_supplied_steamid', index=15,
       number=20, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='ip_country_code', full_name='CMsgClientLogonResponse.ip_country_code', index=16,
       number=21, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='parental_settings', full_name='CMsgClientLogonResponse.parental_settings', index=17,
       number=22, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='parental_setting_signature', full_name='CMsgClientLogonResponse.parental_setting_signature', index=18,
       number=23, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='count_loginfailures_to_migrate', full_name='CMsgClientLogonResponse.count_loginfailures_to_migrate', index=19,
       number=24, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='count_disconnects_to_migrate', full_name='CMsgClientLogonResponse.count_disconnects_to_migrate', index=20,
       number=25, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='ogs_data_report_time_window', full_name='CMsgClientLogonResponse.ogs_data_report_time_window', index=21,
       number=26, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='client_instance_id', full_name='CMsgClientLogonResponse.client_instance_id', index=22,
       number=27, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='force_client_update_check', full_name='CMsgClientLogonResponse.force_client_update_check', index=23,
       number=28, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='agreement_session_url', full_name='CMsgClientLogonResponse.agreement_session_url', index=24,
       number=29, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='token_id', full_name='CMsgClientLogonResponse.token_id', index=25,
+      number=30, type=4, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -776,8 +834,8 @@ _CMSGCLIENTLOGONRESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1918,
-  serialized_end=2693,
+  serialized_start=2008,
+  serialized_end=2800,
 )
 
 
@@ -787,6 +845,7 @@ _CMSGCLIENTREQUESTWEBAPIAUTHENTICATEUSERNONCE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='token_type', full_name='CMsgClientRequestWebAPIAuthenticateUserNonce.token_type', index=0,
@@ -794,7 +853,7 @@ _CMSGCLIENTREQUESTWEBAPIAUTHENTICATEUSERNONCE = _descriptor.Descriptor(
       has_default_value=True, default_value=-1,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -807,8 +866,8 @@ _CMSGCLIENTREQUESTWEBAPIAUTHENTICATEUSERNONCE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=2695,
-  serialized_end=2765,
+  serialized_start=2802,
+  serialized_end=2872,
 )
 
 
@@ -818,6 +877,7 @@ _CMSGCLIENTREQUESTWEBAPIAUTHENTICATEUSERNONCERESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='eresult', full_name='CMsgClientRequestWebAPIAuthenticateUserNonceResponse.eresult', index=0,
@@ -825,21 +885,21 @@ _CMSGCLIENTREQUESTWEBAPIAUTHENTICATEUSERNONCERESPONSE = _descriptor.Descriptor(
       has_default_value=True, default_value=2,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='webapi_authenticate_user_nonce', full_name='CMsgClientRequestWebAPIAuthenticateUserNonceResponse.webapi_authenticate_user_nonce', index=1,
       number=11, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='token_type', full_name='CMsgClientRequestWebAPIAuthenticateUserNonceResponse.token_type', index=2,
       number=3, type=5, cpp_type=1, label=1,
       has_default_value=True, default_value=-1,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -852,8 +912,8 @@ _CMSGCLIENTREQUESTWEBAPIAUTHENTICATEUSERNONCERESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=2768,
-  serialized_end=2906,
+  serialized_start=2875,
+  serialized_end=3013,
 )
 
 
@@ -863,6 +923,7 @@ _CMSGCLIENTLOGOFF = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -876,8 +937,8 @@ _CMSGCLIENTLOGOFF = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=2908,
-  serialized_end=2926,
+  serialized_start=3015,
+  serialized_end=3033,
 )
 
 
@@ -887,6 +948,7 @@ _CMSGCLIENTLOGGEDOFF = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='eresult', full_name='CMsgClientLoggedOff.eresult', index=0,
@@ -894,7 +956,7 @@ _CMSGCLIENTLOGGEDOFF = _descriptor.Descriptor(
       has_default_value=True, default_value=2,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -907,8 +969,8 @@ _CMSGCLIENTLOGGEDOFF = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=2928,
-  serialized_end=2969,
+  serialized_start=3035,
+  serialized_end=3076,
 )
 
 
@@ -918,6 +980,7 @@ _CMSGCLIENTNEWLOGINKEY = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='unique_id', full_name='CMsgClientNewLoginKey.unique_id', index=0,
@@ -925,14 +988,14 @@ _CMSGCLIENTNEWLOGINKEY = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='login_key', full_name='CMsgClientNewLoginKey.login_key', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -945,8 +1008,8 @@ _CMSGCLIENTNEWLOGINKEY = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=2971,
-  serialized_end=3032,
+  serialized_start=3078,
+  serialized_end=3139,
 )
 
 
@@ -956,6 +1019,7 @@ _CMSGCLIENTNEWLOGINKEYACCEPTED = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='unique_id', full_name='CMsgClientNewLoginKeyAccepted.unique_id', index=0,
@@ -963,7 +1027,7 @@ _CMSGCLIENTNEWLOGINKEYACCEPTED = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -976,8 +1040,8 @@ _CMSGCLIENTNEWLOGINKEYACCEPTED = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=3034,
-  serialized_end=3084,
+  serialized_start=3141,
+  serialized_end=3191,
 )
 
 
@@ -987,91 +1051,92 @@ _CMSGCLIENTACCOUNTINFO = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='persona_name', full_name='CMsgClientAccountInfo.persona_name', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='ip_country', full_name='CMsgClientAccountInfo.ip_country', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='count_authed_computers', full_name='CMsgClientAccountInfo.count_authed_computers', index=2,
       number=5, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='account_flags', full_name='CMsgClientAccountInfo.account_flags', index=3,
       number=7, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='facebook_id', full_name='CMsgClientAccountInfo.facebook_id', index=4,
       number=8, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='facebook_name', full_name='CMsgClientAccountInfo.facebook_name', index=5,
       number=9, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steamguard_notify_newmachines', full_name='CMsgClientAccountInfo.steamguard_notify_newmachines', index=6,
       number=14, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steamguard_machine_name_user_chosen', full_name='CMsgClientAccountInfo.steamguard_machine_name_user_chosen', index=7,
       number=15, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='is_phone_verified', full_name='CMsgClientAccountInfo.is_phone_verified', index=8,
       number=16, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='two_factor_state', full_name='CMsgClientAccountInfo.two_factor_state', index=9,
       number=17, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='is_phone_identifying', full_name='CMsgClientAccountInfo.is_phone_identifying', index=10,
       number=18, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='is_phone_needing_reverify', full_name='CMsgClientAccountInfo.is_phone_needing_reverify', index=11,
       number=19, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1084,8 +1149,8 @@ _CMSGCLIENTACCOUNTINFO = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=3087,
-  serialized_end=3453,
+  serialized_start=3194,
+  serialized_end=3560,
 )
 
 
@@ -1095,6 +1160,7 @@ _CMSGCLIENTCHALLENGEREQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CMsgClientChallengeRequest.steamid', index=0,
@@ -1102,7 +1168,7 @@ _CMSGCLIENTCHALLENGEREQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1115,8 +1181,8 @@ _CMSGCLIENTCHALLENGEREQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=3455,
-  serialized_end=3500,
+  serialized_start=3562,
+  serialized_end=3607,
 )
 
 
@@ -1126,6 +1192,7 @@ _CMSGCLIENTCHALLENGERESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='challenge', full_name='CMsgClientChallengeResponse.challenge', index=0,
@@ -1133,7 +1200,7 @@ _CMSGCLIENTCHALLENGERESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1146,8 +1213,8 @@ _CMSGCLIENTCHALLENGERESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=3502,
-  serialized_end=3550,
+  serialized_start=3609,
+  serialized_end=3657,
 )
 
 _CMSGCLIENTLOGON.fields_by_name['obfuscated_private_ip'].message_type = steammessages__base__pb2._CMSGIPADDRESS
@@ -1158,6 +1225,7 @@ DESCRIPTOR.message_types_by_name['CMsgClientHeartBeat'] = _CMSGCLIENTHEARTBEAT
 DESCRIPTOR.message_types_by_name['CMsgClientServerTimestampRequest'] = _CMSGCLIENTSERVERTIMESTAMPREQUEST
 DESCRIPTOR.message_types_by_name['CMsgClientServerTimestampResponse'] = _CMSGCLIENTSERVERTIMESTAMPRESPONSE
 DESCRIPTOR.message_types_by_name['CMsgClientSecret'] = _CMSGCLIENTSECRET
+DESCRIPTOR.message_types_by_name['CMsgClientHello'] = _CMSGCLIENTHELLO
 DESCRIPTOR.message_types_by_name['CMsgClientLogon'] = _CMSGCLIENTLOGON
 DESCRIPTOR.message_types_by_name['CMsgClientLogonResponse'] = _CMSGCLIENTLOGONRESPONSE
 DESCRIPTOR.message_types_by_name['CMsgClientRequestWebAPIAuthenticateUserNonce'] = _CMSGCLIENTREQUESTWEBAPIAUTHENTICATEUSERNONCE
@@ -1171,109 +1239,116 @@ DESCRIPTOR.message_types_by_name['CMsgClientChallengeRequest'] = _CMSGCLIENTCHAL
 DESCRIPTOR.message_types_by_name['CMsgClientChallengeResponse'] = _CMSGCLIENTCHALLENGERESPONSE
 _sym_db.RegisterFileDescriptor(DESCRIPTOR)
 
-CMsgClientHeartBeat = _reflection.GeneratedProtocolMessageType('CMsgClientHeartBeat', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTHEARTBEAT,
-  __module__ = 'steammessages_clientserver_login_pb2'
+CMsgClientHeartBeat = _reflection.GeneratedProtocolMessageType('CMsgClientHeartBeat', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTHEARTBEAT,
+  '__module__' : 'steammessages_clientserver_login_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientHeartBeat)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientHeartBeat)
 
-CMsgClientServerTimestampRequest = _reflection.GeneratedProtocolMessageType('CMsgClientServerTimestampRequest', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTSERVERTIMESTAMPREQUEST,
-  __module__ = 'steammessages_clientserver_login_pb2'
+CMsgClientServerTimestampRequest = _reflection.GeneratedProtocolMessageType('CMsgClientServerTimestampRequest', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTSERVERTIMESTAMPREQUEST,
+  '__module__' : 'steammessages_clientserver_login_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientServerTimestampRequest)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientServerTimestampRequest)
 
-CMsgClientServerTimestampResponse = _reflection.GeneratedProtocolMessageType('CMsgClientServerTimestampResponse', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTSERVERTIMESTAMPRESPONSE,
-  __module__ = 'steammessages_clientserver_login_pb2'
+CMsgClientServerTimestampResponse = _reflection.GeneratedProtocolMessageType('CMsgClientServerTimestampResponse', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTSERVERTIMESTAMPRESPONSE,
+  '__module__' : 'steammessages_clientserver_login_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientServerTimestampResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientServerTimestampResponse)
 
-CMsgClientSecret = _reflection.GeneratedProtocolMessageType('CMsgClientSecret', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTSECRET,
-  __module__ = 'steammessages_clientserver_login_pb2'
+CMsgClientSecret = _reflection.GeneratedProtocolMessageType('CMsgClientSecret', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTSECRET,
+  '__module__' : 'steammessages_clientserver_login_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientSecret)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientSecret)
 
-CMsgClientLogon = _reflection.GeneratedProtocolMessageType('CMsgClientLogon', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTLOGON,
-  __module__ = 'steammessages_clientserver_login_pb2'
+CMsgClientHello = _reflection.GeneratedProtocolMessageType('CMsgClientHello', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTHELLO,
+  '__module__' : 'steammessages_clientserver_login_pb2'
+  # @@protoc_insertion_point(class_scope:CMsgClientHello)
+  })
+_sym_db.RegisterMessage(CMsgClientHello)
+
+CMsgClientLogon = _reflection.GeneratedProtocolMessageType('CMsgClientLogon', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTLOGON,
+  '__module__' : 'steammessages_clientserver_login_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientLogon)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientLogon)
 
-CMsgClientLogonResponse = _reflection.GeneratedProtocolMessageType('CMsgClientLogonResponse', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTLOGONRESPONSE,
-  __module__ = 'steammessages_clientserver_login_pb2'
+CMsgClientLogonResponse = _reflection.GeneratedProtocolMessageType('CMsgClientLogonResponse', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTLOGONRESPONSE,
+  '__module__' : 'steammessages_clientserver_login_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientLogonResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientLogonResponse)
 
-CMsgClientRequestWebAPIAuthenticateUserNonce = _reflection.GeneratedProtocolMessageType('CMsgClientRequestWebAPIAuthenticateUserNonce', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTREQUESTWEBAPIAUTHENTICATEUSERNONCE,
-  __module__ = 'steammessages_clientserver_login_pb2'
+CMsgClientRequestWebAPIAuthenticateUserNonce = _reflection.GeneratedProtocolMessageType('CMsgClientRequestWebAPIAuthenticateUserNonce', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTREQUESTWEBAPIAUTHENTICATEUSERNONCE,
+  '__module__' : 'steammessages_clientserver_login_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientRequestWebAPIAuthenticateUserNonce)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientRequestWebAPIAuthenticateUserNonce)
 
-CMsgClientRequestWebAPIAuthenticateUserNonceResponse = _reflection.GeneratedProtocolMessageType('CMsgClientRequestWebAPIAuthenticateUserNonceResponse', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTREQUESTWEBAPIAUTHENTICATEUSERNONCERESPONSE,
-  __module__ = 'steammessages_clientserver_login_pb2'
+CMsgClientRequestWebAPIAuthenticateUserNonceResponse = _reflection.GeneratedProtocolMessageType('CMsgClientRequestWebAPIAuthenticateUserNonceResponse', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTREQUESTWEBAPIAUTHENTICATEUSERNONCERESPONSE,
+  '__module__' : 'steammessages_clientserver_login_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientRequestWebAPIAuthenticateUserNonceResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientRequestWebAPIAuthenticateUserNonceResponse)
 
-CMsgClientLogOff = _reflection.GeneratedProtocolMessageType('CMsgClientLogOff', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTLOGOFF,
-  __module__ = 'steammessages_clientserver_login_pb2'
+CMsgClientLogOff = _reflection.GeneratedProtocolMessageType('CMsgClientLogOff', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTLOGOFF,
+  '__module__' : 'steammessages_clientserver_login_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientLogOff)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientLogOff)
 
-CMsgClientLoggedOff = _reflection.GeneratedProtocolMessageType('CMsgClientLoggedOff', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTLOGGEDOFF,
-  __module__ = 'steammessages_clientserver_login_pb2'
+CMsgClientLoggedOff = _reflection.GeneratedProtocolMessageType('CMsgClientLoggedOff', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTLOGGEDOFF,
+  '__module__' : 'steammessages_clientserver_login_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientLoggedOff)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientLoggedOff)
 
-CMsgClientNewLoginKey = _reflection.GeneratedProtocolMessageType('CMsgClientNewLoginKey', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTNEWLOGINKEY,
-  __module__ = 'steammessages_clientserver_login_pb2'
+CMsgClientNewLoginKey = _reflection.GeneratedProtocolMessageType('CMsgClientNewLoginKey', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTNEWLOGINKEY,
+  '__module__' : 'steammessages_clientserver_login_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientNewLoginKey)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientNewLoginKey)
 
-CMsgClientNewLoginKeyAccepted = _reflection.GeneratedProtocolMessageType('CMsgClientNewLoginKeyAccepted', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTNEWLOGINKEYACCEPTED,
-  __module__ = 'steammessages_clientserver_login_pb2'
+CMsgClientNewLoginKeyAccepted = _reflection.GeneratedProtocolMessageType('CMsgClientNewLoginKeyAccepted', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTNEWLOGINKEYACCEPTED,
+  '__module__' : 'steammessages_clientserver_login_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientNewLoginKeyAccepted)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientNewLoginKeyAccepted)
 
-CMsgClientAccountInfo = _reflection.GeneratedProtocolMessageType('CMsgClientAccountInfo', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTACCOUNTINFO,
-  __module__ = 'steammessages_clientserver_login_pb2'
+CMsgClientAccountInfo = _reflection.GeneratedProtocolMessageType('CMsgClientAccountInfo', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTACCOUNTINFO,
+  '__module__' : 'steammessages_clientserver_login_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientAccountInfo)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientAccountInfo)
 
-CMsgClientChallengeRequest = _reflection.GeneratedProtocolMessageType('CMsgClientChallengeRequest', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTCHALLENGEREQUEST,
-  __module__ = 'steammessages_clientserver_login_pb2'
+CMsgClientChallengeRequest = _reflection.GeneratedProtocolMessageType('CMsgClientChallengeRequest', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTCHALLENGEREQUEST,
+  '__module__' : 'steammessages_clientserver_login_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientChallengeRequest)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientChallengeRequest)
 
-CMsgClientChallengeResponse = _reflection.GeneratedProtocolMessageType('CMsgClientChallengeResponse', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTCHALLENGERESPONSE,
-  __module__ = 'steammessages_clientserver_login_pb2'
+CMsgClientChallengeResponse = _reflection.GeneratedProtocolMessageType('CMsgClientChallengeResponse', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTCHALLENGERESPONSE,
+  '__module__' : 'steammessages_clientserver_login_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientChallengeResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientChallengeResponse)
 
 
diff --git a/steam/protobufs/steammessages_clientserver_mms_pb2.py b/steam/protobufs/steammessages_clientserver_mms_pb2.py
index f3c8aeb..38fca37 100644
--- a/steam/protobufs/steammessages_clientserver_mms_pb2.py
+++ b/steam/protobufs/steammessages_clientserver_mms_pb2.py
@@ -1,9 +1,7 @@
 # -*- coding: utf-8 -*-
 # Generated by the protocol buffer compiler.  DO NOT EDIT!
 # source: steammessages_clientserver_mms.proto
-
-import sys
-_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1'))
+"""Generated protocol buffer code."""
 from google.protobuf.internal import enum_type_wrapper
 from google.protobuf import descriptor as _descriptor
 from google.protobuf import message as _message
@@ -21,8 +19,9 @@ DESCRIPTOR = _descriptor.FileDescriptor(
   name='steammessages_clientserver_mms.proto',
   package='',
   syntax='proto2',
-  serialized_options=_b('H\001\220\001\000'),
-  serialized_pb=_b('\n$steammessages_clientserver_mms.proto\x1a\x18steammessages_base.proto\"\x98\x01\n\'CMsgClientMMSSetRatelimitPolicyOnClient\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x1a\n\x12\x65nable_rate_limits\x18\x02 \x01(\x08\x12\x1b\n\x13seconds_per_message\x18\x03 \x01(\x05\x12$\n\x1cmilliseconds_per_data_update\x18\x04 \x01(\x05\"\xe8\x01\n\x18\x43MsgClientMMSCreateLobby\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x13\n\x0bmax_members\x18\x02 \x01(\x05\x12\x12\n\nlobby_type\x18\x03 \x01(\x05\x12\x13\n\x0blobby_flags\x18\x04 \x01(\x05\x12\x0f\n\x07\x63\x65ll_id\x18\x05 \x01(\r\x12\x1c\n\x14\x64\x65precated_public_ip\x18\x06 \x01(\r\x12\x10\n\x08metadata\x18\x07 \x01(\x0c\x12\x1a\n\x12persona_name_owner\x18\x08 \x01(\t\x12!\n\tpublic_ip\x18\t \x01(\x0b\x32\x0e.CMsgIPAddress\"^\n CMsgClientMMSCreateLobbyResponse\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x16\n\x0esteam_id_lobby\x18\x02 \x01(\x06\x12\x12\n\x07\x65result\x18\x03 \x01(\x05:\x01\x32\"V\n\x16\x43MsgClientMMSJoinLobby\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x16\n\x0esteam_id_lobby\x18\x02 \x01(\x06\x12\x14\n\x0cpersona_name\x18\x03 \x01(\t\"\xcf\x02\n\x1e\x43MsgClientMMSJoinLobbyResponse\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x16\n\x0esteam_id_lobby\x18\x02 \x01(\x06\x12 \n\x18\x63hat_room_enter_response\x18\x03 \x01(\x05\x12\x13\n\x0bmax_members\x18\x04 \x01(\x05\x12\x12\n\nlobby_type\x18\x05 \x01(\x05\x12\x13\n\x0blobby_flags\x18\x06 \x01(\x05\x12\x16\n\x0esteam_id_owner\x18\x07 \x01(\x06\x12\x10\n\x08metadata\x18\x08 \x01(\x0c\x12\x37\n\x07members\x18\t \x03(\x0b\x32&.CMsgClientMMSJoinLobbyResponse.Member\x1a\x42\n\x06Member\x12\x10\n\x08steam_id\x18\x01 \x01(\x06\x12\x14\n\x0cpersona_name\x18\x02 \x01(\t\x12\x10\n\x08metadata\x18\x03 \x01(\x0c\"A\n\x17\x43MsgClientMMSLeaveLobby\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x16\n\x0esteam_id_lobby\x18\x02 \x01(\x06\"]\n\x1f\x43MsgClientMMSLeaveLobbyResponse\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x16\n\x0esteam_id_lobby\x18\x02 \x01(\x06\x12\x12\n\x07\x65result\x18\x03 \x01(\x05:\x01\x32\"\xa0\x02\n\x19\x43MsgClientMMSGetLobbyList\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x1d\n\x15num_lobbies_requested\x18\x03 \x01(\x05\x12\x0f\n\x07\x63\x65ll_id\x18\x04 \x01(\r\x12\x1c\n\x14\x64\x65precated_public_ip\x18\x05 \x01(\r\x12\x32\n\x07\x66ilters\x18\x06 \x03(\x0b\x32!.CMsgClientMMSGetLobbyList.Filter\x12!\n\tpublic_ip\x18\x07 \x01(\x0b\x32\x0e.CMsgIPAddress\x1aN\n\x06\x46ilter\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t\x12\x13\n\x0b\x63omparision\x18\x03 \x01(\x05\x12\x13\n\x0b\x66ilter_type\x18\x04 \x01(\x05\"\xa5\x02\n!CMsgClientMMSGetLobbyListResponse\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x12\n\x07\x65result\x18\x03 \x01(\x05:\x01\x32\x12\x39\n\x07lobbies\x18\x04 \x03(\x0b\x32(.CMsgClientMMSGetLobbyListResponse.Lobby\x1a\xa0\x01\n\x05Lobby\x12\x10\n\x08steam_id\x18\x01 \x01(\x06\x12\x13\n\x0bmax_members\x18\x02 \x01(\x05\x12\x12\n\nlobby_type\x18\x03 \x01(\x05\x12\x13\n\x0blobby_flags\x18\x04 \x01(\x05\x12\x10\n\x08metadata\x18\x05 \x01(\x0c\x12\x13\n\x0bnum_members\x18\x06 \x01(\x05\x12\x10\n\x08\x64istance\x18\x07 \x01(\x02\x12\x0e\n\x06weight\x18\x08 \x01(\x03\"\xac\x01\n\x19\x43MsgClientMMSSetLobbyData\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x16\n\x0esteam_id_lobby\x18\x02 \x01(\x06\x12\x17\n\x0fsteam_id_member\x18\x03 \x01(\x06\x12\x13\n\x0bmax_members\x18\x04 \x01(\x05\x12\x12\n\nlobby_type\x18\x05 \x01(\x05\x12\x13\n\x0blobby_flags\x18\x06 \x01(\x05\x12\x10\n\x08metadata\x18\x07 \x01(\x0c\"_\n!CMsgClientMMSSetLobbyDataResponse\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x16\n\x0esteam_id_lobby\x18\x02 \x01(\x06\x12\x12\n\x07\x65result\x18\x03 \x01(\x05:\x01\x32\"C\n\x19\x43MsgClientMMSGetLobbyData\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x16\n\x0esteam_id_lobby\x18\x02 \x01(\x06\"\xed\x02\n\x16\x43MsgClientMMSLobbyData\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x16\n\x0esteam_id_lobby\x18\x02 \x01(\x06\x12\x13\n\x0bnum_members\x18\x03 \x01(\x05\x12\x13\n\x0bmax_members\x18\x04 \x01(\x05\x12\x12\n\nlobby_type\x18\x05 \x01(\x05\x12\x13\n\x0blobby_flags\x18\x06 \x01(\x05\x12\x16\n\x0esteam_id_owner\x18\x07 \x01(\x06\x12\x10\n\x08metadata\x18\x08 \x01(\x0c\x12/\n\x07members\x18\t \x03(\x0b\x32\x1e.CMsgClientMMSLobbyData.Member\x12\x14\n\x0clobby_cellid\x18\n \x01(\r\x12#\n\x1bowner_should_accept_changes\x18\x0b \x01(\x08\x1a\x42\n\x06Member\x12\x10\n\x08steam_id\x18\x01 \x01(\x06\x12\x14\n\x0cpersona_name\x18\x02 \x01(\t\x12\x10\n\x08metadata\x18\x03 \x01(\x0c\"w\n\x1d\x43MsgClientMMSSendLobbyChatMsg\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x16\n\x0esteam_id_lobby\x18\x02 \x01(\x06\x12\x17\n\x0fsteam_id_target\x18\x03 \x01(\x06\x12\x15\n\rlobby_message\x18\x04 \x01(\x0c\"s\n\x19\x43MsgClientMMSLobbyChatMsg\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x16\n\x0esteam_id_lobby\x18\x02 \x01(\x06\x12\x17\n\x0fsteam_id_sender\x18\x03 \x01(\x06\x12\x15\n\rlobby_message\x18\x04 \x01(\x0c\"`\n\x1a\x43MsgClientMMSSetLobbyOwner\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x16\n\x0esteam_id_lobby\x18\x02 \x01(\x06\x12\x1a\n\x12steam_id_new_owner\x18\x03 \x01(\x06\"`\n\"CMsgClientMMSSetLobbyOwnerResponse\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x16\n\x0esteam_id_lobby\x18\x02 \x01(\x06\x12\x12\n\x07\x65result\x18\x03 \x01(\x05:\x01\x32\"^\n\x1b\x43MsgClientMMSSetLobbyLinked\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x16\n\x0esteam_id_lobby\x18\x02 \x01(\x06\x12\x17\n\x0fsteam_id_lobby2\x18\x03 \x01(\x06\"\xcc\x01\n\x1f\x43MsgClientMMSSetLobbyGameServer\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x16\n\x0esteam_id_lobby\x18\x02 \x01(\x06\x12!\n\x19\x64\x65precated_game_server_ip\x18\x03 \x01(\r\x12\x18\n\x10game_server_port\x18\x04 \x01(\r\x12\x1c\n\x14game_server_steam_id\x18\x05 \x01(\x06\x12&\n\x0egame_server_ip\x18\x06 \x01(\x0b\x32\x0e.CMsgIPAddress\"\xcc\x01\n\x1f\x43MsgClientMMSLobbyGameServerSet\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x16\n\x0esteam_id_lobby\x18\x02 \x01(\x06\x12!\n\x19\x64\x65precated_game_server_ip\x18\x03 \x01(\r\x12\x18\n\x10game_server_port\x18\x04 \x01(\r\x12\x1c\n\x14game_server_steam_id\x18\x05 \x01(\x06\x12&\n\x0egame_server_ip\x18\x06 \x01(\x0b\x32\x0e.CMsgIPAddress\"s\n\x1c\x43MsgClientMMSUserJoinedLobby\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x16\n\x0esteam_id_lobby\x18\x02 \x01(\x06\x12\x15\n\rsteam_id_user\x18\x03 \x01(\x06\x12\x14\n\x0cpersona_name\x18\x04 \x01(\t\"q\n\x1a\x43MsgClientMMSUserLeftLobby\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x16\n\x0esteam_id_lobby\x18\x02 \x01(\x06\x12\x15\n\rsteam_id_user\x18\x03 \x01(\x06\x12\x14\n\x0cpersona_name\x18\x04 \x01(\t\"c\n\x1a\x43MsgClientMMSInviteToLobby\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x16\n\x0esteam_id_lobby\x18\x02 \x01(\x06\x12\x1d\n\x15steam_id_user_invited\x18\x03 \x01(\x06\"x\n\x1b\x43MsgClientMMSGetLobbyStatus\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x16\n\x0esteam_id_lobby\x18\x02 \x01(\x06\x12\x18\n\x10\x63laim_membership\x18\x03 \x01(\x08\x12\x17\n\x0f\x63laim_ownership\x18\x04 \x01(\x08\"\x8f\x01\n#CMsgClientMMSGetLobbyStatusResponse\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x16\n\x0esteam_id_lobby\x18\x02 \x01(\x06\x12@\n\x0clobby_status\x18\x03 \x01(\x0e\x32\x10.EMMSLobbyStatus:\x18k_EMMSLobbyStatusInvalid*\x90\x01\n\x0f\x45MMSLobbyStatus\x12\x1c\n\x18k_EMMSLobbyStatusInvalid\x10\x00\x12\x1b\n\x17k_EMMSLobbyStatusExists\x10\x01\x12!\n\x1dk_EMMSLobbyStatusDoesNotExist\x10\x02\x12\x1f\n\x1bk_EMMSLobbyStatusNotAMember\x10\x03\x42\x05H\x01\x90\x01\x00')
+  serialized_options=b'H\001\220\001\000',
+  create_key=_descriptor._internal_create_key,
+  serialized_pb=b'\n$steammessages_clientserver_mms.proto\x1a\x18steammessages_base.proto\"\x98\x01\n\'CMsgClientMMSSetRatelimitPolicyOnClient\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x1a\n\x12\x65nable_rate_limits\x18\x02 \x01(\x08\x12\x1b\n\x13seconds_per_message\x18\x03 \x01(\x05\x12$\n\x1cmilliseconds_per_data_update\x18\x04 \x01(\x05\"\xe8\x01\n\x18\x43MsgClientMMSCreateLobby\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x13\n\x0bmax_members\x18\x02 \x01(\x05\x12\x12\n\nlobby_type\x18\x03 \x01(\x05\x12\x13\n\x0blobby_flags\x18\x04 \x01(\x05\x12\x0f\n\x07\x63\x65ll_id\x18\x05 \x01(\r\x12\x1c\n\x14\x64\x65precated_public_ip\x18\x06 \x01(\r\x12\x10\n\x08metadata\x18\x07 \x01(\x0c\x12\x1a\n\x12persona_name_owner\x18\x08 \x01(\t\x12!\n\tpublic_ip\x18\t \x01(\x0b\x32\x0e.CMsgIPAddress\"^\n CMsgClientMMSCreateLobbyResponse\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x16\n\x0esteam_id_lobby\x18\x02 \x01(\x06\x12\x12\n\x07\x65result\x18\x03 \x01(\x05:\x01\x32\"V\n\x16\x43MsgClientMMSJoinLobby\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x16\n\x0esteam_id_lobby\x18\x02 \x01(\x06\x12\x14\n\x0cpersona_name\x18\x03 \x01(\t\"\xcf\x02\n\x1e\x43MsgClientMMSJoinLobbyResponse\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x16\n\x0esteam_id_lobby\x18\x02 \x01(\x06\x12 \n\x18\x63hat_room_enter_response\x18\x03 \x01(\x05\x12\x13\n\x0bmax_members\x18\x04 \x01(\x05\x12\x12\n\nlobby_type\x18\x05 \x01(\x05\x12\x13\n\x0blobby_flags\x18\x06 \x01(\x05\x12\x16\n\x0esteam_id_owner\x18\x07 \x01(\x06\x12\x10\n\x08metadata\x18\x08 \x01(\x0c\x12\x37\n\x07members\x18\t \x03(\x0b\x32&.CMsgClientMMSJoinLobbyResponse.Member\x1a\x42\n\x06Member\x12\x10\n\x08steam_id\x18\x01 \x01(\x06\x12\x14\n\x0cpersona_name\x18\x02 \x01(\t\x12\x10\n\x08metadata\x18\x03 \x01(\x0c\"A\n\x17\x43MsgClientMMSLeaveLobby\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x16\n\x0esteam_id_lobby\x18\x02 \x01(\x06\"]\n\x1f\x43MsgClientMMSLeaveLobbyResponse\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x16\n\x0esteam_id_lobby\x18\x02 \x01(\x06\x12\x12\n\x07\x65result\x18\x03 \x01(\x05:\x01\x32\"\xa0\x02\n\x19\x43MsgClientMMSGetLobbyList\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x1d\n\x15num_lobbies_requested\x18\x03 \x01(\x05\x12\x0f\n\x07\x63\x65ll_id\x18\x04 \x01(\r\x12\x1c\n\x14\x64\x65precated_public_ip\x18\x05 \x01(\r\x12\x32\n\x07\x66ilters\x18\x06 \x03(\x0b\x32!.CMsgClientMMSGetLobbyList.Filter\x12!\n\tpublic_ip\x18\x07 \x01(\x0b\x32\x0e.CMsgIPAddress\x1aN\n\x06\x46ilter\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t\x12\x13\n\x0b\x63omparision\x18\x03 \x01(\x05\x12\x13\n\x0b\x66ilter_type\x18\x04 \x01(\x05\"\xa5\x02\n!CMsgClientMMSGetLobbyListResponse\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x12\n\x07\x65result\x18\x03 \x01(\x05:\x01\x32\x12\x39\n\x07lobbies\x18\x04 \x03(\x0b\x32(.CMsgClientMMSGetLobbyListResponse.Lobby\x1a\xa0\x01\n\x05Lobby\x12\x10\n\x08steam_id\x18\x01 \x01(\x06\x12\x13\n\x0bmax_members\x18\x02 \x01(\x05\x12\x12\n\nlobby_type\x18\x03 \x01(\x05\x12\x13\n\x0blobby_flags\x18\x04 \x01(\x05\x12\x10\n\x08metadata\x18\x05 \x01(\x0c\x12\x13\n\x0bnum_members\x18\x06 \x01(\x05\x12\x10\n\x08\x64istance\x18\x07 \x01(\x02\x12\x0e\n\x06weight\x18\x08 \x01(\x03\"\xac\x01\n\x19\x43MsgClientMMSSetLobbyData\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x16\n\x0esteam_id_lobby\x18\x02 \x01(\x06\x12\x17\n\x0fsteam_id_member\x18\x03 \x01(\x06\x12\x13\n\x0bmax_members\x18\x04 \x01(\x05\x12\x12\n\nlobby_type\x18\x05 \x01(\x05\x12\x13\n\x0blobby_flags\x18\x06 \x01(\x05\x12\x10\n\x08metadata\x18\x07 \x01(\x0c\"_\n!CMsgClientMMSSetLobbyDataResponse\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x16\n\x0esteam_id_lobby\x18\x02 \x01(\x06\x12\x12\n\x07\x65result\x18\x03 \x01(\x05:\x01\x32\"C\n\x19\x43MsgClientMMSGetLobbyData\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x16\n\x0esteam_id_lobby\x18\x02 \x01(\x06\"\xed\x02\n\x16\x43MsgClientMMSLobbyData\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x16\n\x0esteam_id_lobby\x18\x02 \x01(\x06\x12\x13\n\x0bnum_members\x18\x03 \x01(\x05\x12\x13\n\x0bmax_members\x18\x04 \x01(\x05\x12\x12\n\nlobby_type\x18\x05 \x01(\x05\x12\x13\n\x0blobby_flags\x18\x06 \x01(\x05\x12\x16\n\x0esteam_id_owner\x18\x07 \x01(\x06\x12\x10\n\x08metadata\x18\x08 \x01(\x0c\x12/\n\x07members\x18\t \x03(\x0b\x32\x1e.CMsgClientMMSLobbyData.Member\x12\x14\n\x0clobby_cellid\x18\n \x01(\r\x12#\n\x1bowner_should_accept_changes\x18\x0b \x01(\x08\x1a\x42\n\x06Member\x12\x10\n\x08steam_id\x18\x01 \x01(\x06\x12\x14\n\x0cpersona_name\x18\x02 \x01(\t\x12\x10\n\x08metadata\x18\x03 \x01(\x0c\"w\n\x1d\x43MsgClientMMSSendLobbyChatMsg\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x16\n\x0esteam_id_lobby\x18\x02 \x01(\x06\x12\x17\n\x0fsteam_id_target\x18\x03 \x01(\x06\x12\x15\n\rlobby_message\x18\x04 \x01(\x0c\"s\n\x19\x43MsgClientMMSLobbyChatMsg\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x16\n\x0esteam_id_lobby\x18\x02 \x01(\x06\x12\x17\n\x0fsteam_id_sender\x18\x03 \x01(\x06\x12\x15\n\rlobby_message\x18\x04 \x01(\x0c\"`\n\x1a\x43MsgClientMMSSetLobbyOwner\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x16\n\x0esteam_id_lobby\x18\x02 \x01(\x06\x12\x1a\n\x12steam_id_new_owner\x18\x03 \x01(\x06\"`\n\"CMsgClientMMSSetLobbyOwnerResponse\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x16\n\x0esteam_id_lobby\x18\x02 \x01(\x06\x12\x12\n\x07\x65result\x18\x03 \x01(\x05:\x01\x32\"^\n\x1b\x43MsgClientMMSSetLobbyLinked\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x16\n\x0esteam_id_lobby\x18\x02 \x01(\x06\x12\x17\n\x0fsteam_id_lobby2\x18\x03 \x01(\x06\"\xcc\x01\n\x1f\x43MsgClientMMSSetLobbyGameServer\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x16\n\x0esteam_id_lobby\x18\x02 \x01(\x06\x12!\n\x19\x64\x65precated_game_server_ip\x18\x03 \x01(\r\x12\x18\n\x10game_server_port\x18\x04 \x01(\r\x12\x1c\n\x14game_server_steam_id\x18\x05 \x01(\x06\x12&\n\x0egame_server_ip\x18\x06 \x01(\x0b\x32\x0e.CMsgIPAddress\"\xcc\x01\n\x1f\x43MsgClientMMSLobbyGameServerSet\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x16\n\x0esteam_id_lobby\x18\x02 \x01(\x06\x12!\n\x19\x64\x65precated_game_server_ip\x18\x03 \x01(\r\x12\x18\n\x10game_server_port\x18\x04 \x01(\r\x12\x1c\n\x14game_server_steam_id\x18\x05 \x01(\x06\x12&\n\x0egame_server_ip\x18\x06 \x01(\x0b\x32\x0e.CMsgIPAddress\"s\n\x1c\x43MsgClientMMSUserJoinedLobby\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x16\n\x0esteam_id_lobby\x18\x02 \x01(\x06\x12\x15\n\rsteam_id_user\x18\x03 \x01(\x06\x12\x14\n\x0cpersona_name\x18\x04 \x01(\t\"q\n\x1a\x43MsgClientMMSUserLeftLobby\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x16\n\x0esteam_id_lobby\x18\x02 \x01(\x06\x12\x15\n\rsteam_id_user\x18\x03 \x01(\x06\x12\x14\n\x0cpersona_name\x18\x04 \x01(\t\"c\n\x1a\x43MsgClientMMSInviteToLobby\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x16\n\x0esteam_id_lobby\x18\x02 \x01(\x06\x12\x1d\n\x15steam_id_user_invited\x18\x03 \x01(\x06\"x\n\x1b\x43MsgClientMMSGetLobbyStatus\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x16\n\x0esteam_id_lobby\x18\x02 \x01(\x06\x12\x18\n\x10\x63laim_membership\x18\x03 \x01(\x08\x12\x17\n\x0f\x63laim_ownership\x18\x04 \x01(\x08\"\x8f\x01\n#CMsgClientMMSGetLobbyStatusResponse\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x16\n\x0esteam_id_lobby\x18\x02 \x01(\x06\x12@\n\x0clobby_status\x18\x03 \x01(\x0e\x32\x10.EMMSLobbyStatus:\x18k_EMMSLobbyStatusInvalid*\x90\x01\n\x0f\x45MMSLobbyStatus\x12\x1c\n\x18k_EMMSLobbyStatusInvalid\x10\x00\x12\x1b\n\x17k_EMMSLobbyStatusExists\x10\x01\x12!\n\x1dk_EMMSLobbyStatusDoesNotExist\x10\x02\x12\x1f\n\x1bk_EMMSLobbyStatusNotAMember\x10\x03\x42\x05H\x01\x90\x01\x00'
   ,
   dependencies=[steammessages__base__pb2.DESCRIPTOR,])
 
@@ -31,23 +30,28 @@ _EMMSLOBBYSTATUS = _descriptor.EnumDescriptor(
   full_name='EMMSLobbyStatus',
   filename=None,
   file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
   values=[
     _descriptor.EnumValueDescriptor(
       name='k_EMMSLobbyStatusInvalid', index=0, number=0,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMMSLobbyStatusExists', index=1, number=1,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMMSLobbyStatusDoesNotExist', index=2, number=2,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMMSLobbyStatusNotAMember', index=3, number=3,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
   ],
   containing_type=None,
   serialized_options=None,
@@ -70,6 +74,7 @@ _CMSGCLIENTMMSSETRATELIMITPOLICYONCLIENT = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CMsgClientMMSSetRatelimitPolicyOnClient.app_id', index=0,
@@ -77,28 +82,28 @@ _CMSGCLIENTMMSSETRATELIMITPOLICYONCLIENT = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='enable_rate_limits', full_name='CMsgClientMMSSetRatelimitPolicyOnClient.enable_rate_limits', index=1,
       number=2, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='seconds_per_message', full_name='CMsgClientMMSSetRatelimitPolicyOnClient.seconds_per_message', index=2,
       number=3, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='milliseconds_per_data_update', full_name='CMsgClientMMSSetRatelimitPolicyOnClient.milliseconds_per_data_update', index=3,
       number=4, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -122,6 +127,7 @@ _CMSGCLIENTMMSCREATELOBBY = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CMsgClientMMSCreateLobby.app_id', index=0,
@@ -129,63 +135,63 @@ _CMSGCLIENTMMSCREATELOBBY = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='max_members', full_name='CMsgClientMMSCreateLobby.max_members', index=1,
       number=2, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='lobby_type', full_name='CMsgClientMMSCreateLobby.lobby_type', index=2,
       number=3, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='lobby_flags', full_name='CMsgClientMMSCreateLobby.lobby_flags', index=3,
       number=4, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='cell_id', full_name='CMsgClientMMSCreateLobby.cell_id', index=4,
       number=5, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='deprecated_public_ip', full_name='CMsgClientMMSCreateLobby.deprecated_public_ip', index=5,
       number=6, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='metadata', full_name='CMsgClientMMSCreateLobby.metadata', index=6,
       number=7, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='persona_name_owner', full_name='CMsgClientMMSCreateLobby.persona_name_owner', index=7,
       number=8, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='public_ip', full_name='CMsgClientMMSCreateLobby.public_ip', index=8,
       number=9, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -209,6 +215,7 @@ _CMSGCLIENTMMSCREATELOBBYRESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CMsgClientMMSCreateLobbyResponse.app_id', index=0,
@@ -216,21 +223,21 @@ _CMSGCLIENTMMSCREATELOBBYRESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steam_id_lobby', full_name='CMsgClientMMSCreateLobbyResponse.steam_id_lobby', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='eresult', full_name='CMsgClientMMSCreateLobbyResponse.eresult', index=2,
       number=3, type=5, cpp_type=1, label=1,
       has_default_value=True, default_value=2,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -254,6 +261,7 @@ _CMSGCLIENTMMSJOINLOBBY = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CMsgClientMMSJoinLobby.app_id', index=0,
@@ -261,21 +269,21 @@ _CMSGCLIENTMMSJOINLOBBY = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steam_id_lobby', full_name='CMsgClientMMSJoinLobby.steam_id_lobby', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='persona_name', full_name='CMsgClientMMSJoinLobby.persona_name', index=2,
       number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -299,6 +307,7 @@ _CMSGCLIENTMMSJOINLOBBYRESPONSE_MEMBER = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steam_id', full_name='CMsgClientMMSJoinLobbyResponse.Member.steam_id', index=0,
@@ -306,21 +315,21 @@ _CMSGCLIENTMMSJOINLOBBYRESPONSE_MEMBER = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='persona_name', full_name='CMsgClientMMSJoinLobbyResponse.Member.persona_name', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='metadata', full_name='CMsgClientMMSJoinLobbyResponse.Member.metadata', index=2,
       number=3, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -343,6 +352,7 @@ _CMSGCLIENTMMSJOINLOBBYRESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CMsgClientMMSJoinLobbyResponse.app_id', index=0,
@@ -350,63 +360,63 @@ _CMSGCLIENTMMSJOINLOBBYRESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steam_id_lobby', full_name='CMsgClientMMSJoinLobbyResponse.steam_id_lobby', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='chat_room_enter_response', full_name='CMsgClientMMSJoinLobbyResponse.chat_room_enter_response', index=2,
       number=3, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='max_members', full_name='CMsgClientMMSJoinLobbyResponse.max_members', index=3,
       number=4, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='lobby_type', full_name='CMsgClientMMSJoinLobbyResponse.lobby_type', index=4,
       number=5, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='lobby_flags', full_name='CMsgClientMMSJoinLobbyResponse.lobby_flags', index=5,
       number=6, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steam_id_owner', full_name='CMsgClientMMSJoinLobbyResponse.steam_id_owner', index=6,
       number=7, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='metadata', full_name='CMsgClientMMSJoinLobbyResponse.metadata', index=7,
       number=8, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='members', full_name='CMsgClientMMSJoinLobbyResponse.members', index=8,
       number=9, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -430,6 +440,7 @@ _CMSGCLIENTMMSLEAVELOBBY = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CMsgClientMMSLeaveLobby.app_id', index=0,
@@ -437,14 +448,14 @@ _CMSGCLIENTMMSLEAVELOBBY = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steam_id_lobby', full_name='CMsgClientMMSLeaveLobby.steam_id_lobby', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -468,6 +479,7 @@ _CMSGCLIENTMMSLEAVELOBBYRESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CMsgClientMMSLeaveLobbyResponse.app_id', index=0,
@@ -475,21 +487,21 @@ _CMSGCLIENTMMSLEAVELOBBYRESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steam_id_lobby', full_name='CMsgClientMMSLeaveLobbyResponse.steam_id_lobby', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='eresult', full_name='CMsgClientMMSLeaveLobbyResponse.eresult', index=2,
       number=3, type=5, cpp_type=1, label=1,
       has_default_value=True, default_value=2,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -513,35 +525,36 @@ _CMSGCLIENTMMSGETLOBBYLIST_FILTER = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='key', full_name='CMsgClientMMSGetLobbyList.Filter.key', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='value', full_name='CMsgClientMMSGetLobbyList.Filter.value', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='comparision', full_name='CMsgClientMMSGetLobbyList.Filter.comparision', index=2,
       number=3, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='filter_type', full_name='CMsgClientMMSGetLobbyList.Filter.filter_type', index=3,
       number=4, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -564,6 +577,7 @@ _CMSGCLIENTMMSGETLOBBYLIST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CMsgClientMMSGetLobbyList.app_id', index=0,
@@ -571,42 +585,42 @@ _CMSGCLIENTMMSGETLOBBYLIST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='num_lobbies_requested', full_name='CMsgClientMMSGetLobbyList.num_lobbies_requested', index=1,
       number=3, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='cell_id', full_name='CMsgClientMMSGetLobbyList.cell_id', index=2,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='deprecated_public_ip', full_name='CMsgClientMMSGetLobbyList.deprecated_public_ip', index=3,
       number=5, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='filters', full_name='CMsgClientMMSGetLobbyList.filters', index=4,
       number=6, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='public_ip', full_name='CMsgClientMMSGetLobbyList.public_ip', index=5,
       number=7, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -630,6 +644,7 @@ _CMSGCLIENTMMSGETLOBBYLISTRESPONSE_LOBBY = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steam_id', full_name='CMsgClientMMSGetLobbyListResponse.Lobby.steam_id', index=0,
@@ -637,56 +652,56 @@ _CMSGCLIENTMMSGETLOBBYLISTRESPONSE_LOBBY = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='max_members', full_name='CMsgClientMMSGetLobbyListResponse.Lobby.max_members', index=1,
       number=2, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='lobby_type', full_name='CMsgClientMMSGetLobbyListResponse.Lobby.lobby_type', index=2,
       number=3, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='lobby_flags', full_name='CMsgClientMMSGetLobbyListResponse.Lobby.lobby_flags', index=3,
       number=4, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='metadata', full_name='CMsgClientMMSGetLobbyListResponse.Lobby.metadata', index=4,
       number=5, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='num_members', full_name='CMsgClientMMSGetLobbyListResponse.Lobby.num_members', index=5,
       number=6, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='distance', full_name='CMsgClientMMSGetLobbyListResponse.Lobby.distance', index=6,
       number=7, type=2, cpp_type=6, label=1,
       has_default_value=False, default_value=float(0),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='weight', full_name='CMsgClientMMSGetLobbyListResponse.Lobby.weight', index=7,
       number=8, type=3, cpp_type=2, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -709,6 +724,7 @@ _CMSGCLIENTMMSGETLOBBYLISTRESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CMsgClientMMSGetLobbyListResponse.app_id', index=0,
@@ -716,21 +732,21 @@ _CMSGCLIENTMMSGETLOBBYLISTRESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='eresult', full_name='CMsgClientMMSGetLobbyListResponse.eresult', index=1,
       number=3, type=5, cpp_type=1, label=1,
       has_default_value=True, default_value=2,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='lobbies', full_name='CMsgClientMMSGetLobbyListResponse.lobbies', index=2,
       number=4, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -754,6 +770,7 @@ _CMSGCLIENTMMSSETLOBBYDATA = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CMsgClientMMSSetLobbyData.app_id', index=0,
@@ -761,49 +778,49 @@ _CMSGCLIENTMMSSETLOBBYDATA = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steam_id_lobby', full_name='CMsgClientMMSSetLobbyData.steam_id_lobby', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steam_id_member', full_name='CMsgClientMMSSetLobbyData.steam_id_member', index=2,
       number=3, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='max_members', full_name='CMsgClientMMSSetLobbyData.max_members', index=3,
       number=4, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='lobby_type', full_name='CMsgClientMMSSetLobbyData.lobby_type', index=4,
       number=5, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='lobby_flags', full_name='CMsgClientMMSSetLobbyData.lobby_flags', index=5,
       number=6, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='metadata', full_name='CMsgClientMMSSetLobbyData.metadata', index=6,
       number=7, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -827,6 +844,7 @@ _CMSGCLIENTMMSSETLOBBYDATARESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CMsgClientMMSSetLobbyDataResponse.app_id', index=0,
@@ -834,21 +852,21 @@ _CMSGCLIENTMMSSETLOBBYDATARESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steam_id_lobby', full_name='CMsgClientMMSSetLobbyDataResponse.steam_id_lobby', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='eresult', full_name='CMsgClientMMSSetLobbyDataResponse.eresult', index=2,
       number=3, type=5, cpp_type=1, label=1,
       has_default_value=True, default_value=2,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -872,6 +890,7 @@ _CMSGCLIENTMMSGETLOBBYDATA = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CMsgClientMMSGetLobbyData.app_id', index=0,
@@ -879,14 +898,14 @@ _CMSGCLIENTMMSGETLOBBYDATA = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steam_id_lobby', full_name='CMsgClientMMSGetLobbyData.steam_id_lobby', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -910,6 +929,7 @@ _CMSGCLIENTMMSLOBBYDATA_MEMBER = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steam_id', full_name='CMsgClientMMSLobbyData.Member.steam_id', index=0,
@@ -917,21 +937,21 @@ _CMSGCLIENTMMSLOBBYDATA_MEMBER = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='persona_name', full_name='CMsgClientMMSLobbyData.Member.persona_name', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='metadata', full_name='CMsgClientMMSLobbyData.Member.metadata', index=2,
       number=3, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -954,6 +974,7 @@ _CMSGCLIENTMMSLOBBYDATA = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CMsgClientMMSLobbyData.app_id', index=0,
@@ -961,77 +982,77 @@ _CMSGCLIENTMMSLOBBYDATA = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steam_id_lobby', full_name='CMsgClientMMSLobbyData.steam_id_lobby', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='num_members', full_name='CMsgClientMMSLobbyData.num_members', index=2,
       number=3, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='max_members', full_name='CMsgClientMMSLobbyData.max_members', index=3,
       number=4, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='lobby_type', full_name='CMsgClientMMSLobbyData.lobby_type', index=4,
       number=5, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='lobby_flags', full_name='CMsgClientMMSLobbyData.lobby_flags', index=5,
       number=6, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steam_id_owner', full_name='CMsgClientMMSLobbyData.steam_id_owner', index=6,
       number=7, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='metadata', full_name='CMsgClientMMSLobbyData.metadata', index=7,
       number=8, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='members', full_name='CMsgClientMMSLobbyData.members', index=8,
       number=9, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='lobby_cellid', full_name='CMsgClientMMSLobbyData.lobby_cellid', index=9,
       number=10, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='owner_should_accept_changes', full_name='CMsgClientMMSLobbyData.owner_should_accept_changes', index=10,
       number=11, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1055,6 +1076,7 @@ _CMSGCLIENTMMSSENDLOBBYCHATMSG = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CMsgClientMMSSendLobbyChatMsg.app_id', index=0,
@@ -1062,28 +1084,28 @@ _CMSGCLIENTMMSSENDLOBBYCHATMSG = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steam_id_lobby', full_name='CMsgClientMMSSendLobbyChatMsg.steam_id_lobby', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steam_id_target', full_name='CMsgClientMMSSendLobbyChatMsg.steam_id_target', index=2,
       number=3, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='lobby_message', full_name='CMsgClientMMSSendLobbyChatMsg.lobby_message', index=3,
       number=4, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1107,6 +1129,7 @@ _CMSGCLIENTMMSLOBBYCHATMSG = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CMsgClientMMSLobbyChatMsg.app_id', index=0,
@@ -1114,28 +1137,28 @@ _CMSGCLIENTMMSLOBBYCHATMSG = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steam_id_lobby', full_name='CMsgClientMMSLobbyChatMsg.steam_id_lobby', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steam_id_sender', full_name='CMsgClientMMSLobbyChatMsg.steam_id_sender', index=2,
       number=3, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='lobby_message', full_name='CMsgClientMMSLobbyChatMsg.lobby_message', index=3,
       number=4, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1159,6 +1182,7 @@ _CMSGCLIENTMMSSETLOBBYOWNER = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CMsgClientMMSSetLobbyOwner.app_id', index=0,
@@ -1166,21 +1190,21 @@ _CMSGCLIENTMMSSETLOBBYOWNER = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steam_id_lobby', full_name='CMsgClientMMSSetLobbyOwner.steam_id_lobby', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steam_id_new_owner', full_name='CMsgClientMMSSetLobbyOwner.steam_id_new_owner', index=2,
       number=3, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1204,6 +1228,7 @@ _CMSGCLIENTMMSSETLOBBYOWNERRESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CMsgClientMMSSetLobbyOwnerResponse.app_id', index=0,
@@ -1211,21 +1236,21 @@ _CMSGCLIENTMMSSETLOBBYOWNERRESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steam_id_lobby', full_name='CMsgClientMMSSetLobbyOwnerResponse.steam_id_lobby', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='eresult', full_name='CMsgClientMMSSetLobbyOwnerResponse.eresult', index=2,
       number=3, type=5, cpp_type=1, label=1,
       has_default_value=True, default_value=2,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1249,6 +1274,7 @@ _CMSGCLIENTMMSSETLOBBYLINKED = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CMsgClientMMSSetLobbyLinked.app_id', index=0,
@@ -1256,21 +1282,21 @@ _CMSGCLIENTMMSSETLOBBYLINKED = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steam_id_lobby', full_name='CMsgClientMMSSetLobbyLinked.steam_id_lobby', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steam_id_lobby2', full_name='CMsgClientMMSSetLobbyLinked.steam_id_lobby2', index=2,
       number=3, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1294,6 +1320,7 @@ _CMSGCLIENTMMSSETLOBBYGAMESERVER = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CMsgClientMMSSetLobbyGameServer.app_id', index=0,
@@ -1301,42 +1328,42 @@ _CMSGCLIENTMMSSETLOBBYGAMESERVER = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steam_id_lobby', full_name='CMsgClientMMSSetLobbyGameServer.steam_id_lobby', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='deprecated_game_server_ip', full_name='CMsgClientMMSSetLobbyGameServer.deprecated_game_server_ip', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='game_server_port', full_name='CMsgClientMMSSetLobbyGameServer.game_server_port', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='game_server_steam_id', full_name='CMsgClientMMSSetLobbyGameServer.game_server_steam_id', index=4,
       number=5, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='game_server_ip', full_name='CMsgClientMMSSetLobbyGameServer.game_server_ip', index=5,
       number=6, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1360,6 +1387,7 @@ _CMSGCLIENTMMSLOBBYGAMESERVERSET = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CMsgClientMMSLobbyGameServerSet.app_id', index=0,
@@ -1367,42 +1395,42 @@ _CMSGCLIENTMMSLOBBYGAMESERVERSET = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steam_id_lobby', full_name='CMsgClientMMSLobbyGameServerSet.steam_id_lobby', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='deprecated_game_server_ip', full_name='CMsgClientMMSLobbyGameServerSet.deprecated_game_server_ip', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='game_server_port', full_name='CMsgClientMMSLobbyGameServerSet.game_server_port', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='game_server_steam_id', full_name='CMsgClientMMSLobbyGameServerSet.game_server_steam_id', index=4,
       number=5, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='game_server_ip', full_name='CMsgClientMMSLobbyGameServerSet.game_server_ip', index=5,
       number=6, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1426,6 +1454,7 @@ _CMSGCLIENTMMSUSERJOINEDLOBBY = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CMsgClientMMSUserJoinedLobby.app_id', index=0,
@@ -1433,28 +1462,28 @@ _CMSGCLIENTMMSUSERJOINEDLOBBY = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steam_id_lobby', full_name='CMsgClientMMSUserJoinedLobby.steam_id_lobby', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steam_id_user', full_name='CMsgClientMMSUserJoinedLobby.steam_id_user', index=2,
       number=3, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='persona_name', full_name='CMsgClientMMSUserJoinedLobby.persona_name', index=3,
       number=4, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1478,6 +1507,7 @@ _CMSGCLIENTMMSUSERLEFTLOBBY = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CMsgClientMMSUserLeftLobby.app_id', index=0,
@@ -1485,28 +1515,28 @@ _CMSGCLIENTMMSUSERLEFTLOBBY = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steam_id_lobby', full_name='CMsgClientMMSUserLeftLobby.steam_id_lobby', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steam_id_user', full_name='CMsgClientMMSUserLeftLobby.steam_id_user', index=2,
       number=3, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='persona_name', full_name='CMsgClientMMSUserLeftLobby.persona_name', index=3,
       number=4, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1530,6 +1560,7 @@ _CMSGCLIENTMMSINVITETOLOBBY = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CMsgClientMMSInviteToLobby.app_id', index=0,
@@ -1537,21 +1568,21 @@ _CMSGCLIENTMMSINVITETOLOBBY = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steam_id_lobby', full_name='CMsgClientMMSInviteToLobby.steam_id_lobby', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steam_id_user_invited', full_name='CMsgClientMMSInviteToLobby.steam_id_user_invited', index=2,
       number=3, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1575,6 +1606,7 @@ _CMSGCLIENTMMSGETLOBBYSTATUS = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CMsgClientMMSGetLobbyStatus.app_id', index=0,
@@ -1582,28 +1614,28 @@ _CMSGCLIENTMMSGETLOBBYSTATUS = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steam_id_lobby', full_name='CMsgClientMMSGetLobbyStatus.steam_id_lobby', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='claim_membership', full_name='CMsgClientMMSGetLobbyStatus.claim_membership', index=2,
       number=3, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='claim_ownership', full_name='CMsgClientMMSGetLobbyStatus.claim_ownership', index=3,
       number=4, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1627,6 +1659,7 @@ _CMSGCLIENTMMSGETLOBBYSTATUSRESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CMsgClientMMSGetLobbyStatusResponse.app_id', index=0,
@@ -1634,21 +1667,21 @@ _CMSGCLIENTMMSGETLOBBYSTATUSRESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steam_id_lobby', full_name='CMsgClientMMSGetLobbyStatusResponse.steam_id_lobby', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='lobby_status', full_name='CMsgClientMMSGetLobbyStatusResponse.lobby_status', index=2,
       number=3, type=14, cpp_type=8, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1706,211 +1739,211 @@ DESCRIPTOR.message_types_by_name['CMsgClientMMSGetLobbyStatusResponse'] = _CMSGC
 DESCRIPTOR.enum_types_by_name['EMMSLobbyStatus'] = _EMMSLOBBYSTATUS
 _sym_db.RegisterFileDescriptor(DESCRIPTOR)
 
-CMsgClientMMSSetRatelimitPolicyOnClient = _reflection.GeneratedProtocolMessageType('CMsgClientMMSSetRatelimitPolicyOnClient', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTMMSSETRATELIMITPOLICYONCLIENT,
-  __module__ = 'steammessages_clientserver_mms_pb2'
+CMsgClientMMSSetRatelimitPolicyOnClient = _reflection.GeneratedProtocolMessageType('CMsgClientMMSSetRatelimitPolicyOnClient', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTMMSSETRATELIMITPOLICYONCLIENT,
+  '__module__' : 'steammessages_clientserver_mms_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientMMSSetRatelimitPolicyOnClient)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientMMSSetRatelimitPolicyOnClient)
 
-CMsgClientMMSCreateLobby = _reflection.GeneratedProtocolMessageType('CMsgClientMMSCreateLobby', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTMMSCREATELOBBY,
-  __module__ = 'steammessages_clientserver_mms_pb2'
+CMsgClientMMSCreateLobby = _reflection.GeneratedProtocolMessageType('CMsgClientMMSCreateLobby', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTMMSCREATELOBBY,
+  '__module__' : 'steammessages_clientserver_mms_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientMMSCreateLobby)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientMMSCreateLobby)
 
-CMsgClientMMSCreateLobbyResponse = _reflection.GeneratedProtocolMessageType('CMsgClientMMSCreateLobbyResponse', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTMMSCREATELOBBYRESPONSE,
-  __module__ = 'steammessages_clientserver_mms_pb2'
+CMsgClientMMSCreateLobbyResponse = _reflection.GeneratedProtocolMessageType('CMsgClientMMSCreateLobbyResponse', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTMMSCREATELOBBYRESPONSE,
+  '__module__' : 'steammessages_clientserver_mms_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientMMSCreateLobbyResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientMMSCreateLobbyResponse)
 
-CMsgClientMMSJoinLobby = _reflection.GeneratedProtocolMessageType('CMsgClientMMSJoinLobby', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTMMSJOINLOBBY,
-  __module__ = 'steammessages_clientserver_mms_pb2'
+CMsgClientMMSJoinLobby = _reflection.GeneratedProtocolMessageType('CMsgClientMMSJoinLobby', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTMMSJOINLOBBY,
+  '__module__' : 'steammessages_clientserver_mms_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientMMSJoinLobby)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientMMSJoinLobby)
 
-CMsgClientMMSJoinLobbyResponse = _reflection.GeneratedProtocolMessageType('CMsgClientMMSJoinLobbyResponse', (_message.Message,), dict(
+CMsgClientMMSJoinLobbyResponse = _reflection.GeneratedProtocolMessageType('CMsgClientMMSJoinLobbyResponse', (_message.Message,), {
 
-  Member = _reflection.GeneratedProtocolMessageType('Member', (_message.Message,), dict(
-    DESCRIPTOR = _CMSGCLIENTMMSJOINLOBBYRESPONSE_MEMBER,
-    __module__ = 'steammessages_clientserver_mms_pb2'
+  'Member' : _reflection.GeneratedProtocolMessageType('Member', (_message.Message,), {
+    'DESCRIPTOR' : _CMSGCLIENTMMSJOINLOBBYRESPONSE_MEMBER,
+    '__module__' : 'steammessages_clientserver_mms_pb2'
     # @@protoc_insertion_point(class_scope:CMsgClientMMSJoinLobbyResponse.Member)
-    ))
+    })
   ,
-  DESCRIPTOR = _CMSGCLIENTMMSJOINLOBBYRESPONSE,
-  __module__ = 'steammessages_clientserver_mms_pb2'
+  'DESCRIPTOR' : _CMSGCLIENTMMSJOINLOBBYRESPONSE,
+  '__module__' : 'steammessages_clientserver_mms_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientMMSJoinLobbyResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientMMSJoinLobbyResponse)
 _sym_db.RegisterMessage(CMsgClientMMSJoinLobbyResponse.Member)
 
-CMsgClientMMSLeaveLobby = _reflection.GeneratedProtocolMessageType('CMsgClientMMSLeaveLobby', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTMMSLEAVELOBBY,
-  __module__ = 'steammessages_clientserver_mms_pb2'
+CMsgClientMMSLeaveLobby = _reflection.GeneratedProtocolMessageType('CMsgClientMMSLeaveLobby', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTMMSLEAVELOBBY,
+  '__module__' : 'steammessages_clientserver_mms_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientMMSLeaveLobby)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientMMSLeaveLobby)
 
-CMsgClientMMSLeaveLobbyResponse = _reflection.GeneratedProtocolMessageType('CMsgClientMMSLeaveLobbyResponse', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTMMSLEAVELOBBYRESPONSE,
-  __module__ = 'steammessages_clientserver_mms_pb2'
+CMsgClientMMSLeaveLobbyResponse = _reflection.GeneratedProtocolMessageType('CMsgClientMMSLeaveLobbyResponse', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTMMSLEAVELOBBYRESPONSE,
+  '__module__' : 'steammessages_clientserver_mms_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientMMSLeaveLobbyResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientMMSLeaveLobbyResponse)
 
-CMsgClientMMSGetLobbyList = _reflection.GeneratedProtocolMessageType('CMsgClientMMSGetLobbyList', (_message.Message,), dict(
+CMsgClientMMSGetLobbyList = _reflection.GeneratedProtocolMessageType('CMsgClientMMSGetLobbyList', (_message.Message,), {
 
-  Filter = _reflection.GeneratedProtocolMessageType('Filter', (_message.Message,), dict(
-    DESCRIPTOR = _CMSGCLIENTMMSGETLOBBYLIST_FILTER,
-    __module__ = 'steammessages_clientserver_mms_pb2'
+  'Filter' : _reflection.GeneratedProtocolMessageType('Filter', (_message.Message,), {
+    'DESCRIPTOR' : _CMSGCLIENTMMSGETLOBBYLIST_FILTER,
+    '__module__' : 'steammessages_clientserver_mms_pb2'
     # @@protoc_insertion_point(class_scope:CMsgClientMMSGetLobbyList.Filter)
-    ))
+    })
   ,
-  DESCRIPTOR = _CMSGCLIENTMMSGETLOBBYLIST,
-  __module__ = 'steammessages_clientserver_mms_pb2'
+  'DESCRIPTOR' : _CMSGCLIENTMMSGETLOBBYLIST,
+  '__module__' : 'steammessages_clientserver_mms_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientMMSGetLobbyList)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientMMSGetLobbyList)
 _sym_db.RegisterMessage(CMsgClientMMSGetLobbyList.Filter)
 
-CMsgClientMMSGetLobbyListResponse = _reflection.GeneratedProtocolMessageType('CMsgClientMMSGetLobbyListResponse', (_message.Message,), dict(
+CMsgClientMMSGetLobbyListResponse = _reflection.GeneratedProtocolMessageType('CMsgClientMMSGetLobbyListResponse', (_message.Message,), {
 
-  Lobby = _reflection.GeneratedProtocolMessageType('Lobby', (_message.Message,), dict(
-    DESCRIPTOR = _CMSGCLIENTMMSGETLOBBYLISTRESPONSE_LOBBY,
-    __module__ = 'steammessages_clientserver_mms_pb2'
+  'Lobby' : _reflection.GeneratedProtocolMessageType('Lobby', (_message.Message,), {
+    'DESCRIPTOR' : _CMSGCLIENTMMSGETLOBBYLISTRESPONSE_LOBBY,
+    '__module__' : 'steammessages_clientserver_mms_pb2'
     # @@protoc_insertion_point(class_scope:CMsgClientMMSGetLobbyListResponse.Lobby)
-    ))
+    })
   ,
-  DESCRIPTOR = _CMSGCLIENTMMSGETLOBBYLISTRESPONSE,
-  __module__ = 'steammessages_clientserver_mms_pb2'
+  'DESCRIPTOR' : _CMSGCLIENTMMSGETLOBBYLISTRESPONSE,
+  '__module__' : 'steammessages_clientserver_mms_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientMMSGetLobbyListResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientMMSGetLobbyListResponse)
 _sym_db.RegisterMessage(CMsgClientMMSGetLobbyListResponse.Lobby)
 
-CMsgClientMMSSetLobbyData = _reflection.GeneratedProtocolMessageType('CMsgClientMMSSetLobbyData', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTMMSSETLOBBYDATA,
-  __module__ = 'steammessages_clientserver_mms_pb2'
+CMsgClientMMSSetLobbyData = _reflection.GeneratedProtocolMessageType('CMsgClientMMSSetLobbyData', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTMMSSETLOBBYDATA,
+  '__module__' : 'steammessages_clientserver_mms_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientMMSSetLobbyData)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientMMSSetLobbyData)
 
-CMsgClientMMSSetLobbyDataResponse = _reflection.GeneratedProtocolMessageType('CMsgClientMMSSetLobbyDataResponse', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTMMSSETLOBBYDATARESPONSE,
-  __module__ = 'steammessages_clientserver_mms_pb2'
+CMsgClientMMSSetLobbyDataResponse = _reflection.GeneratedProtocolMessageType('CMsgClientMMSSetLobbyDataResponse', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTMMSSETLOBBYDATARESPONSE,
+  '__module__' : 'steammessages_clientserver_mms_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientMMSSetLobbyDataResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientMMSSetLobbyDataResponse)
 
-CMsgClientMMSGetLobbyData = _reflection.GeneratedProtocolMessageType('CMsgClientMMSGetLobbyData', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTMMSGETLOBBYDATA,
-  __module__ = 'steammessages_clientserver_mms_pb2'
+CMsgClientMMSGetLobbyData = _reflection.GeneratedProtocolMessageType('CMsgClientMMSGetLobbyData', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTMMSGETLOBBYDATA,
+  '__module__' : 'steammessages_clientserver_mms_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientMMSGetLobbyData)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientMMSGetLobbyData)
 
-CMsgClientMMSLobbyData = _reflection.GeneratedProtocolMessageType('CMsgClientMMSLobbyData', (_message.Message,), dict(
+CMsgClientMMSLobbyData = _reflection.GeneratedProtocolMessageType('CMsgClientMMSLobbyData', (_message.Message,), {
 
-  Member = _reflection.GeneratedProtocolMessageType('Member', (_message.Message,), dict(
-    DESCRIPTOR = _CMSGCLIENTMMSLOBBYDATA_MEMBER,
-    __module__ = 'steammessages_clientserver_mms_pb2'
+  'Member' : _reflection.GeneratedProtocolMessageType('Member', (_message.Message,), {
+    'DESCRIPTOR' : _CMSGCLIENTMMSLOBBYDATA_MEMBER,
+    '__module__' : 'steammessages_clientserver_mms_pb2'
     # @@protoc_insertion_point(class_scope:CMsgClientMMSLobbyData.Member)
-    ))
+    })
   ,
-  DESCRIPTOR = _CMSGCLIENTMMSLOBBYDATA,
-  __module__ = 'steammessages_clientserver_mms_pb2'
+  'DESCRIPTOR' : _CMSGCLIENTMMSLOBBYDATA,
+  '__module__' : 'steammessages_clientserver_mms_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientMMSLobbyData)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientMMSLobbyData)
 _sym_db.RegisterMessage(CMsgClientMMSLobbyData.Member)
 
-CMsgClientMMSSendLobbyChatMsg = _reflection.GeneratedProtocolMessageType('CMsgClientMMSSendLobbyChatMsg', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTMMSSENDLOBBYCHATMSG,
-  __module__ = 'steammessages_clientserver_mms_pb2'
+CMsgClientMMSSendLobbyChatMsg = _reflection.GeneratedProtocolMessageType('CMsgClientMMSSendLobbyChatMsg', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTMMSSENDLOBBYCHATMSG,
+  '__module__' : 'steammessages_clientserver_mms_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientMMSSendLobbyChatMsg)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientMMSSendLobbyChatMsg)
 
-CMsgClientMMSLobbyChatMsg = _reflection.GeneratedProtocolMessageType('CMsgClientMMSLobbyChatMsg', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTMMSLOBBYCHATMSG,
-  __module__ = 'steammessages_clientserver_mms_pb2'
+CMsgClientMMSLobbyChatMsg = _reflection.GeneratedProtocolMessageType('CMsgClientMMSLobbyChatMsg', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTMMSLOBBYCHATMSG,
+  '__module__' : 'steammessages_clientserver_mms_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientMMSLobbyChatMsg)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientMMSLobbyChatMsg)
 
-CMsgClientMMSSetLobbyOwner = _reflection.GeneratedProtocolMessageType('CMsgClientMMSSetLobbyOwner', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTMMSSETLOBBYOWNER,
-  __module__ = 'steammessages_clientserver_mms_pb2'
+CMsgClientMMSSetLobbyOwner = _reflection.GeneratedProtocolMessageType('CMsgClientMMSSetLobbyOwner', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTMMSSETLOBBYOWNER,
+  '__module__' : 'steammessages_clientserver_mms_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientMMSSetLobbyOwner)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientMMSSetLobbyOwner)
 
-CMsgClientMMSSetLobbyOwnerResponse = _reflection.GeneratedProtocolMessageType('CMsgClientMMSSetLobbyOwnerResponse', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTMMSSETLOBBYOWNERRESPONSE,
-  __module__ = 'steammessages_clientserver_mms_pb2'
+CMsgClientMMSSetLobbyOwnerResponse = _reflection.GeneratedProtocolMessageType('CMsgClientMMSSetLobbyOwnerResponse', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTMMSSETLOBBYOWNERRESPONSE,
+  '__module__' : 'steammessages_clientserver_mms_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientMMSSetLobbyOwnerResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientMMSSetLobbyOwnerResponse)
 
-CMsgClientMMSSetLobbyLinked = _reflection.GeneratedProtocolMessageType('CMsgClientMMSSetLobbyLinked', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTMMSSETLOBBYLINKED,
-  __module__ = 'steammessages_clientserver_mms_pb2'
+CMsgClientMMSSetLobbyLinked = _reflection.GeneratedProtocolMessageType('CMsgClientMMSSetLobbyLinked', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTMMSSETLOBBYLINKED,
+  '__module__' : 'steammessages_clientserver_mms_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientMMSSetLobbyLinked)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientMMSSetLobbyLinked)
 
-CMsgClientMMSSetLobbyGameServer = _reflection.GeneratedProtocolMessageType('CMsgClientMMSSetLobbyGameServer', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTMMSSETLOBBYGAMESERVER,
-  __module__ = 'steammessages_clientserver_mms_pb2'
+CMsgClientMMSSetLobbyGameServer = _reflection.GeneratedProtocolMessageType('CMsgClientMMSSetLobbyGameServer', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTMMSSETLOBBYGAMESERVER,
+  '__module__' : 'steammessages_clientserver_mms_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientMMSSetLobbyGameServer)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientMMSSetLobbyGameServer)
 
-CMsgClientMMSLobbyGameServerSet = _reflection.GeneratedProtocolMessageType('CMsgClientMMSLobbyGameServerSet', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTMMSLOBBYGAMESERVERSET,
-  __module__ = 'steammessages_clientserver_mms_pb2'
+CMsgClientMMSLobbyGameServerSet = _reflection.GeneratedProtocolMessageType('CMsgClientMMSLobbyGameServerSet', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTMMSLOBBYGAMESERVERSET,
+  '__module__' : 'steammessages_clientserver_mms_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientMMSLobbyGameServerSet)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientMMSLobbyGameServerSet)
 
-CMsgClientMMSUserJoinedLobby = _reflection.GeneratedProtocolMessageType('CMsgClientMMSUserJoinedLobby', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTMMSUSERJOINEDLOBBY,
-  __module__ = 'steammessages_clientserver_mms_pb2'
+CMsgClientMMSUserJoinedLobby = _reflection.GeneratedProtocolMessageType('CMsgClientMMSUserJoinedLobby', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTMMSUSERJOINEDLOBBY,
+  '__module__' : 'steammessages_clientserver_mms_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientMMSUserJoinedLobby)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientMMSUserJoinedLobby)
 
-CMsgClientMMSUserLeftLobby = _reflection.GeneratedProtocolMessageType('CMsgClientMMSUserLeftLobby', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTMMSUSERLEFTLOBBY,
-  __module__ = 'steammessages_clientserver_mms_pb2'
+CMsgClientMMSUserLeftLobby = _reflection.GeneratedProtocolMessageType('CMsgClientMMSUserLeftLobby', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTMMSUSERLEFTLOBBY,
+  '__module__' : 'steammessages_clientserver_mms_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientMMSUserLeftLobby)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientMMSUserLeftLobby)
 
-CMsgClientMMSInviteToLobby = _reflection.GeneratedProtocolMessageType('CMsgClientMMSInviteToLobby', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTMMSINVITETOLOBBY,
-  __module__ = 'steammessages_clientserver_mms_pb2'
+CMsgClientMMSInviteToLobby = _reflection.GeneratedProtocolMessageType('CMsgClientMMSInviteToLobby', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTMMSINVITETOLOBBY,
+  '__module__' : 'steammessages_clientserver_mms_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientMMSInviteToLobby)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientMMSInviteToLobby)
 
-CMsgClientMMSGetLobbyStatus = _reflection.GeneratedProtocolMessageType('CMsgClientMMSGetLobbyStatus', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTMMSGETLOBBYSTATUS,
-  __module__ = 'steammessages_clientserver_mms_pb2'
+CMsgClientMMSGetLobbyStatus = _reflection.GeneratedProtocolMessageType('CMsgClientMMSGetLobbyStatus', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTMMSGETLOBBYSTATUS,
+  '__module__' : 'steammessages_clientserver_mms_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientMMSGetLobbyStatus)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientMMSGetLobbyStatus)
 
-CMsgClientMMSGetLobbyStatusResponse = _reflection.GeneratedProtocolMessageType('CMsgClientMMSGetLobbyStatusResponse', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTMMSGETLOBBYSTATUSRESPONSE,
-  __module__ = 'steammessages_clientserver_mms_pb2'
+CMsgClientMMSGetLobbyStatusResponse = _reflection.GeneratedProtocolMessageType('CMsgClientMMSGetLobbyStatusResponse', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTMMSGETLOBBYSTATUSRESPONSE,
+  '__module__' : 'steammessages_clientserver_mms_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientMMSGetLobbyStatusResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientMMSGetLobbyStatusResponse)
 
 
diff --git a/steam/protobufs/steammessages_clientserver_pb2.py b/steam/protobufs/steammessages_clientserver_pb2.py
index 02277c1..df791d7 100644
--- a/steam/protobufs/steammessages_clientserver_pb2.py
+++ b/steam/protobufs/steammessages_clientserver_pb2.py
@@ -1,9 +1,7 @@
 # -*- coding: utf-8 -*-
 # Generated by the protocol buffer compiler.  DO NOT EDIT!
 # source: steammessages_clientserver.proto
-
-import sys
-_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1'))
+"""Generated protocol buffer code."""
 from google.protobuf import descriptor as _descriptor
 from google.protobuf import message as _message
 from google.protobuf import reflection as _reflection
@@ -21,8 +19,9 @@ DESCRIPTOR = _descriptor.FileDescriptor(
   name='steammessages_clientserver.proto',
   package='',
   syntax='proto2',
-  serialized_options=_b('H\001\220\001\000'),
-  serialized_pb=_b('\n steammessages_clientserver.proto\x1a\x18steammessages_base.proto\x1a\x1a\x65ncrypted_app_ticket.proto\"j\n\"CMsgClientRegisterAuthTicketWithCM\x12\x18\n\x10protocol_version\x18\x01 \x01(\r\x12\x0e\n\x06ticket\x18\x03 \x01(\x0c\x12\x1a\n\x12\x63lient_instance_id\x18\x04 \x01(\x04\"\xd1\x01\n\x1c\x43MsgClientTicketAuthComplete\x12\x10\n\x08steam_id\x18\x01 \x01(\x06\x12\x0f\n\x07game_id\x18\x02 \x01(\x06\x12\x0e\n\x06\x65state\x18\x03 \x01(\r\x12\x1e\n\x16\x65\x61uth_session_response\x18\x04 \x01(\r\x12\x19\n\x11\x44\x45PRECATED_ticket\x18\x05 \x01(\x0c\x12\x12\n\nticket_crc\x18\x06 \x01(\r\x12\x17\n\x0fticket_sequence\x18\x07 \x01(\r\x12\x16\n\x0eowner_steam_id\x18\x08 \x01(\x06\"\x80\x01\n\x10\x43MsgClientCMList\x12\x14\n\x0c\x63m_addresses\x18\x01 \x03(\r\x12\x10\n\x08\x63m_ports\x18\x02 \x03(\r\x12\x1e\n\x16\x63m_websocket_addresses\x18\x03 \x03(\t\x12$\n\x1cpercent_default_to_websocket\x18\x04 \x01(\r\"\xa3\x01\n\x1b\x43MsgClientP2PConnectionInfo\x12\x15\n\rsteam_id_dest\x18\x01 \x01(\x06\x12\x14\n\x0csteam_id_src\x18\x02 \x01(\x06\x12\x0e\n\x06\x61pp_id\x18\x03 \x01(\r\x12\x11\n\tcandidate\x18\x04 \x01(\x0c\x12 \n\x18legacy_connection_id_src\x18\x05 \x01(\x06\x12\x12\n\nrendezvous\x18\x06 \x01(\x0c\"\xc3\x01\n\x1f\x43MsgClientP2PConnectionFailInfo\x12\x15\n\rsteam_id_dest\x18\x01 \x01(\x06\x12\x14\n\x0csteam_id_src\x18\x02 \x01(\x06\x12\x0e\n\x06\x61pp_id\x18\x03 \x01(\r\x12\x1a\n\x12\x65p2p_session_error\x18\x04 \x01(\r\x12\x1a\n\x12\x63onnection_id_dest\x18\x05 \x01(\x06\x12\x14\n\x0c\x63lose_reason\x18\x07 \x01(\r\x12\x15\n\rclose_message\x18\x08 \x01(\t\"C\n\x1f\x43MsgClientNetworkingCertRequest\x12\x10\n\x08key_data\x18\x02 \x01(\x0c\x12\x0e\n\x06\x61pp_id\x18\x03 \x01(\r\"V\n\x1d\x43MsgClientNetworkingCertReply\x12\x0c\n\x04\x63\x65rt\x18\x04 \x01(\x0c\x12\x11\n\tca_key_id\x18\x05 \x01(\x06\x12\x14\n\x0c\x63\x61_signature\x18\x06 \x01(\x0c\"7\n%CMsgClientNetworkingMobileCertRequest\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\";\n#CMsgClientNetworkingMobileCertReply\x12\x14\n\x0c\x65ncoded_cert\x18\x01 \x01(\t\"1\n\x1f\x43MsgClientGetAppOwnershipTicket\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\"]\n\'CMsgClientGetAppOwnershipTicketResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\r:\x01\x32\x12\x0e\n\x06\x61pp_id\x18\x02 \x01(\r\x12\x0e\n\x06ticket\x18\x03 \x01(\x0c\"\'\n\x16\x43MsgClientSessionToken\x12\r\n\x05token\x18\x01 \x01(\x04\"M\n\x1b\x43MsgClientGameConnectTokens\x12\x1e\n\x12max_tokens_to_keep\x18\x01 \x01(\r:\x02\x31\x30\x12\x0e\n\x06tokens\x18\x02 \x03(\x0c\"\xb9\x06\n\x15\x43MsgClientGamesPlayed\x12\x37\n\x0cgames_played\x18\x01 \x03(\x0b\x32!.CMsgClientGamesPlayed.GamePlayed\x12\x16\n\x0e\x63lient_os_type\x18\x02 \x01(\r\x12\x1d\n\x15\x63loud_gaming_platform\x18\x03 \x01(\r\x1a\xaf\x05\n\nGamePlayed\x12\x13\n\x0bsteam_id_gs\x18\x01 \x01(\x04\x12\x0f\n\x07game_id\x18\x02 \x01(\x06\x12\"\n\x1a\x64\x65precated_game_ip_address\x18\x03 \x01(\r\x12\x11\n\tgame_port\x18\x04 \x01(\r\x12\x11\n\tis_secure\x18\x05 \x01(\x08\x12\r\n\x05token\x18\x06 \x01(\x0c\x12\x17\n\x0fgame_extra_info\x18\x07 \x01(\t\x12\x16\n\x0egame_data_blob\x18\x08 \x01(\x0c\x12\x12\n\nprocess_id\x18\t \x01(\r\x12\x1d\n\x15streaming_provider_id\x18\n \x01(\r\x12\x12\n\ngame_flags\x18\x0b \x01(\r\x12\x10\n\x08owner_id\x18\x0c \x01(\r\x12\x15\n\rvr_hmd_vendor\x18\r \x01(\t\x12\x14\n\x0cvr_hmd_model\x18\x0e \x01(\t\x12\x1d\n\x12launch_option_type\x18\x0f \x01(\r:\x01\x30\x12#\n\x17primary_controller_type\x18\x10 \x01(\x05:\x02-1\x12\'\n\x1fprimary_steam_controller_serial\x18\x11 \x01(\t\x12\'\n\x1ctotal_steam_controller_count\x18\x12 \x01(\r:\x01\x30\x12+\n total_non_steam_controller_count\x18\x13 \x01(\r:\x01\x30\x12&\n\x1b\x63ontroller_workshop_file_id\x18\x14 \x01(\x04:\x01\x30\x12\x18\n\rlaunch_source\x18\x15 \x01(\r:\x01\x30\x12\x16\n\x0evr_hmd_runtime\x18\x16 \x01(\r\x12\'\n\x0fgame_ip_address\x18\x17 \x01(\x0b\x32\x0e.CMsgIPAddress\x12%\n\x1a\x63ontroller_connection_type\x18\x18 \x01(\r:\x01\x30\"9\n\rCMsgGSApprove\x12\x10\n\x08steam_id\x18\x01 \x01(\x06\x12\x16\n\x0eowner_steam_id\x18\x02 \x01(\x06\"I\n\nCMsgGSDeny\x12\x10\n\x08steam_id\x18\x01 \x01(\x06\x12\x14\n\x0c\x65\x64\x65ny_reason\x18\x02 \x01(\x05\x12\x13\n\x0b\x64\x65ny_string\x18\x03 \x01(\t\"4\n\nCMsgGSKick\x12\x10\n\x08steam_id\x18\x01 \x01(\x06\x12\x14\n\x0c\x65\x64\x65ny_reason\x18\x02 \x01(\x05\"\xb6\x01\n\x12\x43MsgClientAuthList\x12\x13\n\x0btokens_left\x18\x01 \x01(\r\x12\x18\n\x10last_request_seq\x18\x02 \x01(\r\x12$\n\x1clast_request_seq_from_server\x18\x03 \x01(\r\x12 \n\x07tickets\x18\x04 \x03(\x0b\x32\x0f.CMsgAuthTicket\x12\x0f\n\x07\x61pp_ids\x18\x05 \x03(\r\x12\x18\n\x10message_sequence\x18\x06 \x01(\r\"V\n\x15\x43MsgClientAuthListAck\x12\x12\n\nticket_crc\x18\x01 \x03(\r\x12\x0f\n\x07\x61pp_ids\x18\x02 \x03(\r\x12\x18\n\x10message_sequence\x18\x03 \x01(\r\"\x8e\x04\n\x15\x43MsgClientLicenseList\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\x12\x30\n\x08licenses\x18\x02 \x03(\x0b\x32\x1e.CMsgClientLicenseList.License\x1a\xae\x03\n\x07License\x12\x12\n\npackage_id\x18\x01 \x01(\r\x12\x14\n\x0ctime_created\x18\x02 \x01(\x07\x12\x19\n\x11time_next_process\x18\x03 \x01(\x07\x12\x14\n\x0cminute_limit\x18\x04 \x01(\x05\x12\x14\n\x0cminutes_used\x18\x05 \x01(\x05\x12\x16\n\x0epayment_method\x18\x06 \x01(\r\x12\r\n\x05\x66lags\x18\x07 \x01(\r\x12\x1d\n\x15purchase_country_code\x18\x08 \x01(\t\x12\x14\n\x0clicense_type\x18\t \x01(\r\x12\x16\n\x0eterritory_code\x18\n \x01(\x05\x12\x15\n\rchange_number\x18\x0b \x01(\x05\x12\x10\n\x08owner_id\x18\x0c \x01(\r\x12\x16\n\x0einitial_period\x18\r \x01(\r\x12\x19\n\x11initial_time_unit\x18\x0e \x01(\r\x12\x16\n\x0erenewal_period\x18\x0f \x01(\r\x12\x19\n\x11renewal_time_unit\x18\x10 \x01(\r\x12\x14\n\x0c\x61\x63\x63\x65ss_token\x18\x11 \x01(\x04\x12\x19\n\x11master_package_id\x18\x12 \x01(\r\"\xaa\x01\n\x1a\x43MsgClientIsLimitedAccount\x12\x1b\n\x13\x62is_limited_account\x18\x01 \x01(\x08\x12\x1c\n\x14\x62is_community_banned\x18\x02 \x01(\x08\x12\x1a\n\x12\x62is_locked_account\x18\x03 \x01(\x08\x12\x35\n-bis_limited_account_allowed_to_invite_friends\x18\x04 \x01(\x08\"\xa7\x01\n\x1e\x43MsgClientRequestedClientStats\x12\x42\n\rstats_to_send\x18\x01 \x03(\x0b\x32+.CMsgClientRequestedClientStats.StatsToSend\x1a\x41\n\x0bStatsToSend\x12\x13\n\x0b\x63lient_stat\x18\x01 \x01(\r\x12\x1d\n\x15stat_aggregate_method\x18\x02 \x01(\r\"\xc0\x01\n\x0f\x43MsgClientStat2\x12\x30\n\x0bstat_detail\x18\x01 \x03(\x0b\x32\x1b.CMsgClientStat2.StatDetail\x1a{\n\nStatDetail\x12\x13\n\x0b\x63lient_stat\x18\x01 \x01(\r\x12\x10\n\x08ll_value\x18\x02 \x01(\x03\x12\x13\n\x0btime_of_day\x18\x03 \x01(\r\x12\x0f\n\x07\x63\x65ll_id\x18\x04 \x01(\r\x12\x10\n\x08\x64\x65pot_id\x18\x05 \x01(\r\x12\x0e\n\x06\x61pp_id\x18\x06 \x01(\r\"r\n\x16\x43MsgClientInviteToGame\x12\x15\n\rsteam_id_dest\x18\x01 \x01(\x06\x12\x14\n\x0csteam_id_src\x18\x02 \x01(\x06\x12\x16\n\x0e\x63onnect_string\x18\x03 \x01(\t\x12\x13\n\x0bremote_play\x18\x04 \x01(\t\"\xb9\x01\n\x14\x43MsgClientChatInvite\x12\x18\n\x10steam_id_invited\x18\x01 \x01(\x06\x12\x15\n\rsteam_id_chat\x18\x02 \x01(\x06\x12\x17\n\x0fsteam_id_patron\x18\x03 \x01(\x06\x12\x15\n\rchatroom_type\x18\x04 \x01(\x05\x12\x1c\n\x14steam_id_friend_chat\x18\x05 \x01(\x06\x12\x11\n\tchat_name\x18\x06 \x01(\t\x12\x0f\n\x07game_id\x18\x07 \x01(\x06\"\x8a\x08\n\x19\x43MsgClientConnectionStats\x12;\n\x0bstats_logon\x18\x01 \x01(\x0b\x32&.CMsgClientConnectionStats.Stats_Logon\x12;\n\x0bstats_vconn\x18\x02 \x01(\x0b\x32&.CMsgClientConnectionStats.Stats_VConn\x1a\xc7\x01\n\x0bStats_Logon\x12\x18\n\x10\x63onnect_attempts\x18\x01 \x01(\x05\x12\x19\n\x11\x63onnect_successes\x18\x02 \x01(\x05\x12\x18\n\x10\x63onnect_failures\x18\x03 \x01(\x05\x12\x1b\n\x13\x63onnections_dropped\x18\x04 \x01(\x05\x12\x17\n\x0fseconds_running\x18\x05 \x01(\r\x12\x1c\n\x14msec_tologonthistime\x18\x06 \x01(\r\x12\x15\n\rcount_bad_cms\x18\x07 \x01(\r\x1aq\n\tStats_UDP\x12\x11\n\tpkts_sent\x18\x01 \x01(\x04\x12\x12\n\nbytes_sent\x18\x02 \x01(\x04\x12\x11\n\tpkts_recv\x18\x03 \x01(\x04\x12\x16\n\x0epkts_processed\x18\x04 \x01(\x04\x12\x12\n\nbytes_recv\x18\x05 \x01(\x04\x1a\xb5\x04\n\x0bStats_VConn\x12\x17\n\x0f\x63onnections_udp\x18\x01 \x01(\r\x12\x17\n\x0f\x63onnections_tcp\x18\x02 \x01(\r\x12\x37\n\tstats_udp\x18\x03 \x01(\x0b\x32$.CMsgClientConnectionStats.Stats_UDP\x12\x16\n\x0epkts_abandoned\x18\x04 \x01(\x04\x12\x19\n\x11\x63onn_req_received\x18\x05 \x01(\x04\x12\x13\n\x0bpkts_resent\x18\x06 \x01(\x04\x12\x11\n\tmsgs_sent\x18\x07 \x01(\x04\x12\x18\n\x10msgs_sent_failed\x18\x08 \x01(\x04\x12\x11\n\tmsgs_recv\x18\t \x01(\x04\x12\x16\n\x0e\x64\x61tagrams_sent\x18\n \x01(\x04\x12\x16\n\x0e\x64\x61tagrams_recv\x18\x0b \x01(\x04\x12\x15\n\rbad_pkts_recv\x18\x0c \x01(\x04\x12\x1e\n\x16unknown_conn_pkts_recv\x18\r \x01(\x04\x12\x18\n\x10missed_pkts_recv\x18\x0e \x01(\x04\x12\x15\n\rdup_pkts_recv\x18\x0f \x01(\x04\x12!\n\x19\x66\x61iled_connect_challenges\x18\x10 \x01(\x04\x12\x1d\n\x15micro_sec_avg_latency\x18\x11 \x01(\r\x12\x1d\n\x15micro_sec_min_latency\x18\x12 \x01(\r\x12\x1d\n\x15micro_sec_max_latency\x18\x13 \x01(\r\x12\x1b\n\x13mem_pool_msg_in_use\x18\x14 \x01(\r\"\xd2\x01\n\x1a\x43MsgClientServersAvailable\x12R\n\x16server_types_available\x18\x01 \x03(\x0b\x32\x32.CMsgClientServersAvailable.Server_Types_Available\x12%\n\x1dserver_type_for_auth_services\x18\x02 \x01(\r\x1a\x39\n\x16Server_Types_Available\x12\x0e\n\x06server\x18\x01 \x01(\r\x12\x0f\n\x07\x63hanged\x18\x02 \x01(\x08\"?\n$CMsgClientReportOverlayDetourFailure\x12\x17\n\x0f\x66\x61ilure_strings\x18\x01 \x03(\t\"G\n#CMsgClientRequestEncryptedAppTicket\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x10\n\x08userdata\x18\x02 \x01(\x0c\"\x84\x01\n+CMsgClientRequestEncryptedAppTicketResponse\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x12\n\x07\x65result\x18\x02 \x01(\x05:\x01\x32\x12\x31\n\x14\x65ncrypted_app_ticket\x18\x03 \x01(\x0b\x32\x13.EncryptedAppTicket\"\xb5\x01\n\x1a\x43MsgClientWalletInfoUpdate\x12\x12\n\nhas_wallet\x18\x01 \x01(\x08\x12\x0f\n\x07\x62\x61lance\x18\x02 \x01(\x05\x12\x10\n\x08\x63urrency\x18\x03 \x01(\x05\x12\x17\n\x0f\x62\x61lance_delayed\x18\x04 \x01(\x05\x12\x17\n\tbalance64\x18\x05 \x01(\x03\x42\x04\xa0\xb6\x18\x01\x12\x1f\n\x11\x62\x61lance64_delayed\x18\x06 \x01(\x03\x42\x04\xa0\xb6\x18\x01\x12\r\n\x05realm\x18\x07 \x01(\x05\"3\n\x1b\x43MsgClientAMGetClanOfficers\x12\x14\n\x0csteamid_clan\x18\x01 \x01(\x06\"f\n#CMsgClientAMGetClanOfficersResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\x12\x14\n\x0csteamid_clan\x18\x02 \x01(\x06\x12\x15\n\rofficer_count\x18\x03 \x01(\x05\"\x90\x01\n!CMsgClientAMGetPersonaNameHistory\x12\x10\n\x08id_count\x18\x01 \x01(\x05\x12:\n\x03Ids\x18\x02 \x03(\x0b\x32-.CMsgClientAMGetPersonaNameHistory.IdInstance\x1a\x1d\n\nIdInstance\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\"\xc3\x02\n)CMsgClientAMGetPersonaNameHistoryResponse\x12O\n\tresponses\x18\x02 \x03(\x0b\x32<.CMsgClientAMGetPersonaNameHistoryResponse.NameTableInstance\x1a\xc4\x01\n\x11NameTableInstance\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\x12\x0f\n\x07steamid\x18\x02 \x01(\x06\x12X\n\x05names\x18\x03 \x03(\x0b\x32I.CMsgClientAMGetPersonaNameHistoryResponse.NameTableInstance.NameInstance\x1a\x30\n\x0cNameInstance\x12\x12\n\nname_since\x18\x01 \x01(\x07\x12\x0c\n\x04name\x18\x02 \x01(\t\"E\n\x1e\x43MsgClientDeregisterWithServer\x12\x13\n\x0b\x65servertype\x18\x01 \x01(\r\x12\x0e\n\x06\x61pp_id\x18\x02 \x01(\r\"\xab\x04\n\x13\x43MsgClientClanState\x12\x14\n\x0csteamid_clan\x18\x01 \x01(\x06\x12\x1a\n\x12\x63lan_account_flags\x18\x03 \x01(\r\x12\x30\n\tname_info\x18\x04 \x01(\x0b\x32\x1d.CMsgClientClanState.NameInfo\x12\x34\n\x0buser_counts\x18\x05 \x01(\x0b\x32\x1f.CMsgClientClanState.UserCounts\x12*\n\x06\x65vents\x18\x06 \x03(\x0b\x32\x1a.CMsgClientClanState.Event\x12\x31\n\rannouncements\x18\x07 \x03(\x0b\x32\x1a.CMsgClientClanState.Event\x12\x19\n\x11\x63hat_room_private\x18\x08 \x01(\x08\x1a\x31\n\x08NameInfo\x12\x11\n\tclan_name\x18\x01 \x01(\t\x12\x12\n\nsha_avatar\x18\x02 \x01(\x0c\x1ak\n\nUserCounts\x12\x0f\n\x07members\x18\x01 \x01(\r\x12\x0e\n\x06online\x18\x02 \x01(\r\x12\x10\n\x08\x63hatting\x18\x03 \x01(\r\x12\x0f\n\x07in_game\x18\x04 \x01(\r\x12\x19\n\x11\x63hat_room_members\x18\x05 \x01(\r\x1a`\n\x05\x45vent\x12\x0b\n\x03gid\x18\x01 \x01(\x06\x12\x12\n\nevent_time\x18\x02 \x01(\r\x12\x10\n\x08headline\x18\x03 \x01(\t\x12\x0f\n\x07game_id\x18\x04 \x01(\x06\x12\x13\n\x0bjust_posted\x18\x05 \x01(\x08\x42\x05H\x01\x90\x01\x00')
+  serialized_options=b'H\001\220\001\000',
+  create_key=_descriptor._internal_create_key,
+  serialized_pb=b'\n steammessages_clientserver.proto\x1a\x18steammessages_base.proto\x1a\x1a\x65ncrypted_app_ticket.proto\"j\n\"CMsgClientRegisterAuthTicketWithCM\x12\x18\n\x10protocol_version\x18\x01 \x01(\r\x12\x0e\n\x06ticket\x18\x03 \x01(\x0c\x12\x1a\n\x12\x63lient_instance_id\x18\x04 \x01(\x04\"\xd1\x01\n\x1c\x43MsgClientTicketAuthComplete\x12\x10\n\x08steam_id\x18\x01 \x01(\x06\x12\x0f\n\x07game_id\x18\x02 \x01(\x06\x12\x0e\n\x06\x65state\x18\x03 \x01(\r\x12\x1e\n\x16\x65\x61uth_session_response\x18\x04 \x01(\r\x12\x19\n\x11\x44\x45PRECATED_ticket\x18\x05 \x01(\x0c\x12\x12\n\nticket_crc\x18\x06 \x01(\r\x12\x17\n\x0fticket_sequence\x18\x07 \x01(\r\x12\x16\n\x0eowner_steam_id\x18\x08 \x01(\x06\"\x80\x01\n\x10\x43MsgClientCMList\x12\x14\n\x0c\x63m_addresses\x18\x01 \x03(\r\x12\x10\n\x08\x63m_ports\x18\x02 \x03(\r\x12\x1e\n\x16\x63m_websocket_addresses\x18\x03 \x03(\t\x12$\n\x1cpercent_default_to_websocket\x18\x04 \x01(\r\"\xa3\x01\n\x1b\x43MsgClientP2PConnectionInfo\x12\x15\n\rsteam_id_dest\x18\x01 \x01(\x06\x12\x14\n\x0csteam_id_src\x18\x02 \x01(\x06\x12\x0e\n\x06\x61pp_id\x18\x03 \x01(\r\x12\x11\n\tcandidate\x18\x04 \x01(\x0c\x12 \n\x18legacy_connection_id_src\x18\x05 \x01(\x06\x12\x12\n\nrendezvous\x18\x06 \x01(\x0c\"\xc3\x01\n\x1f\x43MsgClientP2PConnectionFailInfo\x12\x15\n\rsteam_id_dest\x18\x01 \x01(\x06\x12\x14\n\x0csteam_id_src\x18\x02 \x01(\x06\x12\x0e\n\x06\x61pp_id\x18\x03 \x01(\r\x12\x1a\n\x12\x65p2p_session_error\x18\x04 \x01(\r\x12\x1a\n\x12\x63onnection_id_dest\x18\x05 \x01(\x06\x12\x14\n\x0c\x63lose_reason\x18\x07 \x01(\r\x12\x15\n\rclose_message\x18\x08 \x01(\t\"C\n\x1f\x43MsgClientNetworkingCertRequest\x12\x10\n\x08key_data\x18\x02 \x01(\x0c\x12\x0e\n\x06\x61pp_id\x18\x03 \x01(\r\"V\n\x1d\x43MsgClientNetworkingCertReply\x12\x0c\n\x04\x63\x65rt\x18\x04 \x01(\x0c\x12\x11\n\tca_key_id\x18\x05 \x01(\x06\x12\x14\n\x0c\x63\x61_signature\x18\x06 \x01(\x0c\"7\n%CMsgClientNetworkingMobileCertRequest\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\";\n#CMsgClientNetworkingMobileCertReply\x12\x14\n\x0c\x65ncoded_cert\x18\x01 \x01(\t\"1\n\x1f\x43MsgClientGetAppOwnershipTicket\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\"]\n\'CMsgClientGetAppOwnershipTicketResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\r:\x01\x32\x12\x0e\n\x06\x61pp_id\x18\x02 \x01(\r\x12\x0e\n\x06ticket\x18\x03 \x01(\x0c\"\'\n\x16\x43MsgClientSessionToken\x12\r\n\x05token\x18\x01 \x01(\x04\"M\n\x1b\x43MsgClientGameConnectTokens\x12\x1e\n\x12max_tokens_to_keep\x18\x01 \x01(\r:\x02\x31\x30\x12\x0e\n\x06tokens\x18\x02 \x03(\x0c\"\x85\x08\n\x15\x43MsgClientGamesPlayed\x12\x37\n\x0cgames_played\x18\x01 \x03(\x0b\x32!.CMsgClientGamesPlayed.GamePlayed\x12\x16\n\x0e\x63lient_os_type\x18\x02 \x01(\r\x12\x1d\n\x15\x63loud_gaming_platform\x18\x03 \x01(\r\x12\x1f\n\x17recent_reauthentication\x18\x04 \x01(\x08\x1a\xda\x06\n\nGamePlayed\x12\x13\n\x0bsteam_id_gs\x18\x01 \x01(\x04\x12\x0f\n\x07game_id\x18\x02 \x01(\x06\x12\"\n\x1a\x64\x65precated_game_ip_address\x18\x03 \x01(\r\x12\x11\n\tgame_port\x18\x04 \x01(\r\x12\x11\n\tis_secure\x18\x05 \x01(\x08\x12\r\n\x05token\x18\x06 \x01(\x0c\x12\x17\n\x0fgame_extra_info\x18\x07 \x01(\t\x12\x16\n\x0egame_data_blob\x18\x08 \x01(\x0c\x12\x12\n\nprocess_id\x18\t \x01(\r\x12\x1d\n\x15streaming_provider_id\x18\n \x01(\r\x12\x12\n\ngame_flags\x18\x0b \x01(\r\x12\x10\n\x08owner_id\x18\x0c \x01(\r\x12\x15\n\rvr_hmd_vendor\x18\r \x01(\t\x12\x14\n\x0cvr_hmd_model\x18\x0e \x01(\t\x12\x1d\n\x12launch_option_type\x18\x0f \x01(\r:\x01\x30\x12#\n\x17primary_controller_type\x18\x10 \x01(\x05:\x02-1\x12\'\n\x1fprimary_steam_controller_serial\x18\x11 \x01(\t\x12\'\n\x1ctotal_steam_controller_count\x18\x12 \x01(\r:\x01\x30\x12+\n total_non_steam_controller_count\x18\x13 \x01(\r:\x01\x30\x12&\n\x1b\x63ontroller_workshop_file_id\x18\x14 \x01(\x04:\x01\x30\x12\x18\n\rlaunch_source\x18\x15 \x01(\r:\x01\x30\x12\x16\n\x0evr_hmd_runtime\x18\x16 \x01(\r\x12\'\n\x0fgame_ip_address\x18\x17 \x01(\x0b\x32\x0e.CMsgIPAddress\x12%\n\x1a\x63ontroller_connection_type\x18\x18 \x01(\r:\x01\x30\x12\x18\n\x10game_os_platform\x18\x19 \x01(\x05\x12\x15\n\rgame_build_id\x18\x1a \x01(\r\x12\x19\n\x0e\x63ompat_tool_id\x18\x1b \x01(\r:\x01\x30\x12\x17\n\x0f\x63ompat_tool_cmd\x18\x1c \x01(\t\x12\x1c\n\x14\x63ompat_tool_build_id\x18\x1d \x01(\r\x12\x11\n\tbeta_name\x18\x1e \x01(\t\x12\x13\n\x0b\x64lc_context\x18\x1f \x01(\r\"9\n\rCMsgGSApprove\x12\x10\n\x08steam_id\x18\x01 \x01(\x06\x12\x16\n\x0eowner_steam_id\x18\x02 \x01(\x06\"I\n\nCMsgGSDeny\x12\x10\n\x08steam_id\x18\x01 \x01(\x06\x12\x14\n\x0c\x65\x64\x65ny_reason\x18\x02 \x01(\x05\x12\x13\n\x0b\x64\x65ny_string\x18\x03 \x01(\t\"4\n\nCMsgGSKick\x12\x10\n\x08steam_id\x18\x01 \x01(\x06\x12\x14\n\x0c\x65\x64\x65ny_reason\x18\x02 \x01(\x05\"\xb6\x01\n\x12\x43MsgClientAuthList\x12\x13\n\x0btokens_left\x18\x01 \x01(\r\x12\x18\n\x10last_request_seq\x18\x02 \x01(\r\x12$\n\x1clast_request_seq_from_server\x18\x03 \x01(\r\x12 \n\x07tickets\x18\x04 \x03(\x0b\x32\x0f.CMsgAuthTicket\x12\x0f\n\x07\x61pp_ids\x18\x05 \x03(\r\x12\x18\n\x10message_sequence\x18\x06 \x01(\r\"V\n\x15\x43MsgClientAuthListAck\x12\x12\n\nticket_crc\x18\x01 \x03(\r\x12\x0f\n\x07\x61pp_ids\x18\x02 \x03(\r\x12\x18\n\x10message_sequence\x18\x03 \x01(\r\"\x8e\x04\n\x15\x43MsgClientLicenseList\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\x12\x30\n\x08licenses\x18\x02 \x03(\x0b\x32\x1e.CMsgClientLicenseList.License\x1a\xae\x03\n\x07License\x12\x12\n\npackage_id\x18\x01 \x01(\r\x12\x14\n\x0ctime_created\x18\x02 \x01(\x07\x12\x19\n\x11time_next_process\x18\x03 \x01(\x07\x12\x14\n\x0cminute_limit\x18\x04 \x01(\x05\x12\x14\n\x0cminutes_used\x18\x05 \x01(\x05\x12\x16\n\x0epayment_method\x18\x06 \x01(\r\x12\r\n\x05\x66lags\x18\x07 \x01(\r\x12\x1d\n\x15purchase_country_code\x18\x08 \x01(\t\x12\x14\n\x0clicense_type\x18\t \x01(\r\x12\x16\n\x0eterritory_code\x18\n \x01(\x05\x12\x15\n\rchange_number\x18\x0b \x01(\x05\x12\x10\n\x08owner_id\x18\x0c \x01(\r\x12\x16\n\x0einitial_period\x18\r \x01(\r\x12\x19\n\x11initial_time_unit\x18\x0e \x01(\r\x12\x16\n\x0erenewal_period\x18\x0f \x01(\r\x12\x19\n\x11renewal_time_unit\x18\x10 \x01(\r\x12\x14\n\x0c\x61\x63\x63\x65ss_token\x18\x11 \x01(\x04\x12\x19\n\x11master_package_id\x18\x12 \x01(\r\"\xaa\x01\n\x1a\x43MsgClientIsLimitedAccount\x12\x1b\n\x13\x62is_limited_account\x18\x01 \x01(\x08\x12\x1c\n\x14\x62is_community_banned\x18\x02 \x01(\x08\x12\x1a\n\x12\x62is_locked_account\x18\x03 \x01(\x08\x12\x35\n-bis_limited_account_allowed_to_invite_friends\x18\x04 \x01(\x08\"\xa7\x01\n\x1e\x43MsgClientRequestedClientStats\x12\x42\n\rstats_to_send\x18\x01 \x03(\x0b\x32+.CMsgClientRequestedClientStats.StatsToSend\x1a\x41\n\x0bStatsToSend\x12\x13\n\x0b\x63lient_stat\x18\x01 \x01(\r\x12\x1d\n\x15stat_aggregate_method\x18\x02 \x01(\r\"\xc0\x01\n\x0f\x43MsgClientStat2\x12\x30\n\x0bstat_detail\x18\x01 \x03(\x0b\x32\x1b.CMsgClientStat2.StatDetail\x1a{\n\nStatDetail\x12\x13\n\x0b\x63lient_stat\x18\x01 \x01(\r\x12\x10\n\x08ll_value\x18\x02 \x01(\x03\x12\x13\n\x0btime_of_day\x18\x03 \x01(\r\x12\x0f\n\x07\x63\x65ll_id\x18\x04 \x01(\r\x12\x10\n\x08\x64\x65pot_id\x18\x05 \x01(\r\x12\x0e\n\x06\x61pp_id\x18\x06 \x01(\r\"r\n\x16\x43MsgClientInviteToGame\x12\x15\n\rsteam_id_dest\x18\x01 \x01(\x06\x12\x14\n\x0csteam_id_src\x18\x02 \x01(\x06\x12\x16\n\x0e\x63onnect_string\x18\x03 \x01(\t\x12\x13\n\x0bremote_play\x18\x04 \x01(\t\"\xb9\x01\n\x14\x43MsgClientChatInvite\x12\x18\n\x10steam_id_invited\x18\x01 \x01(\x06\x12\x15\n\rsteam_id_chat\x18\x02 \x01(\x06\x12\x17\n\x0fsteam_id_patron\x18\x03 \x01(\x06\x12\x15\n\rchatroom_type\x18\x04 \x01(\x05\x12\x1c\n\x14steam_id_friend_chat\x18\x05 \x01(\x06\x12\x11\n\tchat_name\x18\x06 \x01(\t\x12\x0f\n\x07game_id\x18\x07 \x01(\x06\"\x96\t\n\x19\x43MsgClientConnectionStats\x12;\n\x0bstats_logon\x18\x01 \x01(\x0b\x32&.CMsgClientConnectionStats.Stats_Logon\x12;\n\x0bstats_vconn\x18\x02 \x01(\x0b\x32&.CMsgClientConnectionStats.Stats_VConn\x1a\xd3\x02\n\x0bStats_Logon\x12\x18\n\x10\x63onnect_attempts\x18\x01 \x01(\x05\x12\x19\n\x11\x63onnect_successes\x18\x02 \x01(\x05\x12\x18\n\x10\x63onnect_failures\x18\x03 \x01(\x05\x12\x1b\n\x13\x63onnections_dropped\x18\x04 \x01(\x05\x12\x17\n\x0fseconds_running\x18\x05 \x01(\r\x12\x1c\n\x14msec_tologonthistime\x18\x06 \x01(\r\x12\x15\n\rcount_bad_cms\x18\x07 \x01(\r\x12\x1b\n\x13no_udp_connectivity\x18\x08 \x01(\x08\x12\x1b\n\x13no_tcp_connectivity\x18\t \x01(\x08\x12%\n\x1dno_websocket_443_connectivity\x18\n \x01(\x08\x12)\n!no_websocket_non_443_connectivity\x18\x0b \x01(\x08\x1aq\n\tStats_UDP\x12\x11\n\tpkts_sent\x18\x01 \x01(\x04\x12\x12\n\nbytes_sent\x18\x02 \x01(\x04\x12\x11\n\tpkts_recv\x18\x03 \x01(\x04\x12\x16\n\x0epkts_processed\x18\x04 \x01(\x04\x12\x12\n\nbytes_recv\x18\x05 \x01(\x04\x1a\xb5\x04\n\x0bStats_VConn\x12\x17\n\x0f\x63onnections_udp\x18\x01 \x01(\r\x12\x17\n\x0f\x63onnections_tcp\x18\x02 \x01(\r\x12\x37\n\tstats_udp\x18\x03 \x01(\x0b\x32$.CMsgClientConnectionStats.Stats_UDP\x12\x16\n\x0epkts_abandoned\x18\x04 \x01(\x04\x12\x19\n\x11\x63onn_req_received\x18\x05 \x01(\x04\x12\x13\n\x0bpkts_resent\x18\x06 \x01(\x04\x12\x11\n\tmsgs_sent\x18\x07 \x01(\x04\x12\x18\n\x10msgs_sent_failed\x18\x08 \x01(\x04\x12\x11\n\tmsgs_recv\x18\t \x01(\x04\x12\x16\n\x0e\x64\x61tagrams_sent\x18\n \x01(\x04\x12\x16\n\x0e\x64\x61tagrams_recv\x18\x0b \x01(\x04\x12\x15\n\rbad_pkts_recv\x18\x0c \x01(\x04\x12\x1e\n\x16unknown_conn_pkts_recv\x18\r \x01(\x04\x12\x18\n\x10missed_pkts_recv\x18\x0e \x01(\x04\x12\x15\n\rdup_pkts_recv\x18\x0f \x01(\x04\x12!\n\x19\x66\x61iled_connect_challenges\x18\x10 \x01(\x04\x12\x1d\n\x15micro_sec_avg_latency\x18\x11 \x01(\r\x12\x1d\n\x15micro_sec_min_latency\x18\x12 \x01(\r\x12\x1d\n\x15micro_sec_max_latency\x18\x13 \x01(\r\x12\x1b\n\x13mem_pool_msg_in_use\x18\x14 \x01(\r\"\xd2\x01\n\x1a\x43MsgClientServersAvailable\x12R\n\x16server_types_available\x18\x01 \x03(\x0b\x32\x32.CMsgClientServersAvailable.Server_Types_Available\x12%\n\x1dserver_type_for_auth_services\x18\x02 \x01(\r\x1a\x39\n\x16Server_Types_Available\x12\x0e\n\x06server\x18\x01 \x01(\r\x12\x0f\n\x07\x63hanged\x18\x02 \x01(\x08\"?\n$CMsgClientReportOverlayDetourFailure\x12\x17\n\x0f\x66\x61ilure_strings\x18\x01 \x03(\t\"G\n#CMsgClientRequestEncryptedAppTicket\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x10\n\x08userdata\x18\x02 \x01(\x0c\"\x84\x01\n+CMsgClientRequestEncryptedAppTicketResponse\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x12\n\x07\x65result\x18\x02 \x01(\x05:\x01\x32\x12\x31\n\x14\x65ncrypted_app_ticket\x18\x03 \x01(\x0b\x32\x13.EncryptedAppTicket\"\xb5\x01\n\x1a\x43MsgClientWalletInfoUpdate\x12\x12\n\nhas_wallet\x18\x01 \x01(\x08\x12\x0f\n\x07\x62\x61lance\x18\x02 \x01(\x05\x12\x10\n\x08\x63urrency\x18\x03 \x01(\x05\x12\x17\n\x0f\x62\x61lance_delayed\x18\x04 \x01(\x05\x12\x17\n\tbalance64\x18\x05 \x01(\x03\x42\x04\xa0\xb6\x18\x01\x12\x1f\n\x11\x62\x61lance64_delayed\x18\x06 \x01(\x03\x42\x04\xa0\xb6\x18\x01\x12\r\n\x05realm\x18\x07 \x01(\x05\"3\n\x1b\x43MsgClientAMGetClanOfficers\x12\x14\n\x0csteamid_clan\x18\x01 \x01(\x06\"f\n#CMsgClientAMGetClanOfficersResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\x12\x14\n\x0csteamid_clan\x18\x02 \x01(\x06\x12\x15\n\rofficer_count\x18\x03 \x01(\x05\"\x90\x01\n!CMsgClientAMGetPersonaNameHistory\x12\x10\n\x08id_count\x18\x01 \x01(\x05\x12:\n\x03Ids\x18\x02 \x03(\x0b\x32-.CMsgClientAMGetPersonaNameHistory.IdInstance\x1a\x1d\n\nIdInstance\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\"\xc3\x02\n)CMsgClientAMGetPersonaNameHistoryResponse\x12O\n\tresponses\x18\x02 \x03(\x0b\x32<.CMsgClientAMGetPersonaNameHistoryResponse.NameTableInstance\x1a\xc4\x01\n\x11NameTableInstance\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\x12\x0f\n\x07steamid\x18\x02 \x01(\x06\x12X\n\x05names\x18\x03 \x03(\x0b\x32I.CMsgClientAMGetPersonaNameHistoryResponse.NameTableInstance.NameInstance\x1a\x30\n\x0cNameInstance\x12\x12\n\nname_since\x18\x01 \x01(\x07\x12\x0c\n\x04name\x18\x02 \x01(\t\"E\n\x1e\x43MsgClientDeregisterWithServer\x12\x13\n\x0b\x65servertype\x18\x01 \x01(\r\x12\x0e\n\x06\x61pp_id\x18\x02 \x01(\r\"\xab\x04\n\x13\x43MsgClientClanState\x12\x14\n\x0csteamid_clan\x18\x01 \x01(\x06\x12\x1a\n\x12\x63lan_account_flags\x18\x03 \x01(\r\x12\x30\n\tname_info\x18\x04 \x01(\x0b\x32\x1d.CMsgClientClanState.NameInfo\x12\x34\n\x0buser_counts\x18\x05 \x01(\x0b\x32\x1f.CMsgClientClanState.UserCounts\x12*\n\x06\x65vents\x18\x06 \x03(\x0b\x32\x1a.CMsgClientClanState.Event\x12\x31\n\rannouncements\x18\x07 \x03(\x0b\x32\x1a.CMsgClientClanState.Event\x12\x19\n\x11\x63hat_room_private\x18\x08 \x01(\x08\x1a\x31\n\x08NameInfo\x12\x11\n\tclan_name\x18\x01 \x01(\t\x12\x12\n\nsha_avatar\x18\x02 \x01(\x0c\x1ak\n\nUserCounts\x12\x0f\n\x07members\x18\x01 \x01(\r\x12\x0e\n\x06online\x18\x02 \x01(\r\x12\x10\n\x08\x63hatting\x18\x03 \x01(\r\x12\x0f\n\x07in_game\x18\x04 \x01(\r\x12\x19\n\x11\x63hat_room_members\x18\x05 \x01(\r\x1a`\n\x05\x45vent\x12\x0b\n\x03gid\x18\x01 \x01(\x06\x12\x12\n\nevent_time\x18\x02 \x01(\r\x12\x10\n\x08headline\x18\x03 \x01(\t\x12\x0f\n\x07game_id\x18\x04 \x01(\x06\x12\x13\n\x0bjust_posted\x18\x05 \x01(\x08\x42\x05H\x01\x90\x01\x00'
   ,
   dependencies=[steammessages__base__pb2.DESCRIPTOR,encrypted__app__ticket__pb2.DESCRIPTOR,])
 
@@ -35,6 +34,7 @@ _CMSGCLIENTREGISTERAUTHTICKETWITHCM = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='protocol_version', full_name='CMsgClientRegisterAuthTicketWithCM.protocol_version', index=0,
@@ -42,21 +42,21 @@ _CMSGCLIENTREGISTERAUTHTICKETWITHCM = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='ticket', full_name='CMsgClientRegisterAuthTicketWithCM.ticket', index=1,
       number=3, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='client_instance_id', full_name='CMsgClientRegisterAuthTicketWithCM.client_instance_id', index=2,
       number=4, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -80,6 +80,7 @@ _CMSGCLIENTTICKETAUTHCOMPLETE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steam_id', full_name='CMsgClientTicketAuthComplete.steam_id', index=0,
@@ -87,56 +88,56 @@ _CMSGCLIENTTICKETAUTHCOMPLETE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='game_id', full_name='CMsgClientTicketAuthComplete.game_id', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='estate', full_name='CMsgClientTicketAuthComplete.estate', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='eauth_session_response', full_name='CMsgClientTicketAuthComplete.eauth_session_response', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='DEPRECATED_ticket', full_name='CMsgClientTicketAuthComplete.DEPRECATED_ticket', index=4,
       number=5, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='ticket_crc', full_name='CMsgClientTicketAuthComplete.ticket_crc', index=5,
       number=6, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='ticket_sequence', full_name='CMsgClientTicketAuthComplete.ticket_sequence', index=6,
       number=7, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='owner_steam_id', full_name='CMsgClientTicketAuthComplete.owner_steam_id', index=7,
       number=8, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -160,6 +161,7 @@ _CMSGCLIENTCMLIST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='cm_addresses', full_name='CMsgClientCMList.cm_addresses', index=0,
@@ -167,28 +169,28 @@ _CMSGCLIENTCMLIST = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='cm_ports', full_name='CMsgClientCMList.cm_ports', index=1,
       number=2, type=13, cpp_type=3, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='cm_websocket_addresses', full_name='CMsgClientCMList.cm_websocket_addresses', index=2,
       number=3, type=9, cpp_type=9, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='percent_default_to_websocket', full_name='CMsgClientCMList.percent_default_to_websocket', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -212,6 +214,7 @@ _CMSGCLIENTP2PCONNECTIONINFO = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steam_id_dest', full_name='CMsgClientP2PConnectionInfo.steam_id_dest', index=0,
@@ -219,42 +222,42 @@ _CMSGCLIENTP2PCONNECTIONINFO = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steam_id_src', full_name='CMsgClientP2PConnectionInfo.steam_id_src', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CMsgClientP2PConnectionInfo.app_id', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='candidate', full_name='CMsgClientP2PConnectionInfo.candidate', index=3,
       number=4, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='legacy_connection_id_src', full_name='CMsgClientP2PConnectionInfo.legacy_connection_id_src', index=4,
       number=5, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='rendezvous', full_name='CMsgClientP2PConnectionInfo.rendezvous', index=5,
       number=6, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -278,6 +281,7 @@ _CMSGCLIENTP2PCONNECTIONFAILINFO = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steam_id_dest', full_name='CMsgClientP2PConnectionFailInfo.steam_id_dest', index=0,
@@ -285,49 +289,49 @@ _CMSGCLIENTP2PCONNECTIONFAILINFO = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steam_id_src', full_name='CMsgClientP2PConnectionFailInfo.steam_id_src', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CMsgClientP2PConnectionFailInfo.app_id', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='ep2p_session_error', full_name='CMsgClientP2PConnectionFailInfo.ep2p_session_error', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='connection_id_dest', full_name='CMsgClientP2PConnectionFailInfo.connection_id_dest', index=4,
       number=5, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='close_reason', full_name='CMsgClientP2PConnectionFailInfo.close_reason', index=5,
       number=7, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='close_message', full_name='CMsgClientP2PConnectionFailInfo.close_message', index=6,
       number=8, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -351,21 +355,22 @@ _CMSGCLIENTNETWORKINGCERTREQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='key_data', full_name='CMsgClientNetworkingCertRequest.key_data', index=0,
       number=2, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CMsgClientNetworkingCertRequest.app_id', index=1,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -389,28 +394,29 @@ _CMSGCLIENTNETWORKINGCERTREPLY = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='cert', full_name='CMsgClientNetworkingCertReply.cert', index=0,
       number=4, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='ca_key_id', full_name='CMsgClientNetworkingCertReply.ca_key_id', index=1,
       number=5, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='ca_signature', full_name='CMsgClientNetworkingCertReply.ca_signature', index=2,
       number=6, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -434,6 +440,7 @@ _CMSGCLIENTNETWORKINGMOBILECERTREQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CMsgClientNetworkingMobileCertRequest.app_id', index=0,
@@ -441,7 +448,7 @@ _CMSGCLIENTNETWORKINGMOBILECERTREQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -465,14 +472,15 @@ _CMSGCLIENTNETWORKINGMOBILECERTREPLY = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='encoded_cert', full_name='CMsgClientNetworkingMobileCertReply.encoded_cert', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -496,6 +504,7 @@ _CMSGCLIENTGETAPPOWNERSHIPTICKET = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CMsgClientGetAppOwnershipTicket.app_id', index=0,
@@ -503,7 +512,7 @@ _CMSGCLIENTGETAPPOWNERSHIPTICKET = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -527,6 +536,7 @@ _CMSGCLIENTGETAPPOWNERSHIPTICKETRESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='eresult', full_name='CMsgClientGetAppOwnershipTicketResponse.eresult', index=0,
@@ -534,21 +544,21 @@ _CMSGCLIENTGETAPPOWNERSHIPTICKETRESPONSE = _descriptor.Descriptor(
       has_default_value=True, default_value=2,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CMsgClientGetAppOwnershipTicketResponse.app_id', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='ticket', full_name='CMsgClientGetAppOwnershipTicketResponse.ticket', index=2,
       number=3, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -572,6 +582,7 @@ _CMSGCLIENTSESSIONTOKEN = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='token', full_name='CMsgClientSessionToken.token', index=0,
@@ -579,7 +590,7 @@ _CMSGCLIENTSESSIONTOKEN = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -603,6 +614,7 @@ _CMSGCLIENTGAMECONNECTTOKENS = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='max_tokens_to_keep', full_name='CMsgClientGameConnectTokens.max_tokens_to_keep', index=0,
@@ -610,14 +622,14 @@ _CMSGCLIENTGAMECONNECTTOKENS = _descriptor.Descriptor(
       has_default_value=True, default_value=10,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='tokens', full_name='CMsgClientGameConnectTokens.tokens', index=1,
       number=2, type=12, cpp_type=9, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -641,6 +653,7 @@ _CMSGCLIENTGAMESPLAYED_GAMEPLAYED = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steam_id_gs', full_name='CMsgClientGamesPlayed.GamePlayed.steam_id_gs', index=0,
@@ -648,168 +661,217 @@ _CMSGCLIENTGAMESPLAYED_GAMEPLAYED = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='game_id', full_name='CMsgClientGamesPlayed.GamePlayed.game_id', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='deprecated_game_ip_address', full_name='CMsgClientGamesPlayed.GamePlayed.deprecated_game_ip_address', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='game_port', full_name='CMsgClientGamesPlayed.GamePlayed.game_port', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='is_secure', full_name='CMsgClientGamesPlayed.GamePlayed.is_secure', index=4,
       number=5, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='token', full_name='CMsgClientGamesPlayed.GamePlayed.token', index=5,
       number=6, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='game_extra_info', full_name='CMsgClientGamesPlayed.GamePlayed.game_extra_info', index=6,
       number=7, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='game_data_blob', full_name='CMsgClientGamesPlayed.GamePlayed.game_data_blob', index=7,
       number=8, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='process_id', full_name='CMsgClientGamesPlayed.GamePlayed.process_id', index=8,
       number=9, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='streaming_provider_id', full_name='CMsgClientGamesPlayed.GamePlayed.streaming_provider_id', index=9,
       number=10, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='game_flags', full_name='CMsgClientGamesPlayed.GamePlayed.game_flags', index=10,
       number=11, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='owner_id', full_name='CMsgClientGamesPlayed.GamePlayed.owner_id', index=11,
       number=12, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='vr_hmd_vendor', full_name='CMsgClientGamesPlayed.GamePlayed.vr_hmd_vendor', index=12,
       number=13, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='vr_hmd_model', full_name='CMsgClientGamesPlayed.GamePlayed.vr_hmd_model', index=13,
       number=14, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='launch_option_type', full_name='CMsgClientGamesPlayed.GamePlayed.launch_option_type', index=14,
       number=15, type=13, cpp_type=3, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='primary_controller_type', full_name='CMsgClientGamesPlayed.GamePlayed.primary_controller_type', index=15,
       number=16, type=5, cpp_type=1, label=1,
       has_default_value=True, default_value=-1,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='primary_steam_controller_serial', full_name='CMsgClientGamesPlayed.GamePlayed.primary_steam_controller_serial', index=16,
       number=17, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='total_steam_controller_count', full_name='CMsgClientGamesPlayed.GamePlayed.total_steam_controller_count', index=17,
       number=18, type=13, cpp_type=3, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='total_non_steam_controller_count', full_name='CMsgClientGamesPlayed.GamePlayed.total_non_steam_controller_count', index=18,
       number=19, type=13, cpp_type=3, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='controller_workshop_file_id', full_name='CMsgClientGamesPlayed.GamePlayed.controller_workshop_file_id', index=19,
       number=20, type=4, cpp_type=4, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='launch_source', full_name='CMsgClientGamesPlayed.GamePlayed.launch_source', index=20,
       number=21, type=13, cpp_type=3, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='vr_hmd_runtime', full_name='CMsgClientGamesPlayed.GamePlayed.vr_hmd_runtime', index=21,
       number=22, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='game_ip_address', full_name='CMsgClientGamesPlayed.GamePlayed.game_ip_address', index=22,
       number=23, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='controller_connection_type', full_name='CMsgClientGamesPlayed.GamePlayed.controller_connection_type', index=23,
       number=24, type=13, cpp_type=3, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='game_os_platform', full_name='CMsgClientGamesPlayed.GamePlayed.game_os_platform', index=24,
+      number=25, type=5, cpp_type=1, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='game_build_id', full_name='CMsgClientGamesPlayed.GamePlayed.game_build_id', index=25,
+      number=26, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='compat_tool_id', full_name='CMsgClientGamesPlayed.GamePlayed.compat_tool_id', index=26,
+      number=27, type=13, cpp_type=3, label=1,
+      has_default_value=True, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='compat_tool_cmd', full_name='CMsgClientGamesPlayed.GamePlayed.compat_tool_cmd', index=27,
+      number=28, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='compat_tool_build_id', full_name='CMsgClientGamesPlayed.GamePlayed.compat_tool_build_id', index=28,
+      number=29, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='beta_name', full_name='CMsgClientGamesPlayed.GamePlayed.beta_name', index=29,
+      number=30, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='dlc_context', full_name='CMsgClientGamesPlayed.GamePlayed.dlc_context', index=30,
+      number=31, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -822,8 +884,8 @@ _CMSGCLIENTGAMESPLAYED_GAMEPLAYED = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1585,
-  serialized_end=2272,
+  serialized_start=1618,
+  serialized_end=2476,
 )
 
 _CMSGCLIENTGAMESPLAYED = _descriptor.Descriptor(
@@ -832,6 +894,7 @@ _CMSGCLIENTGAMESPLAYED = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='games_played', full_name='CMsgClientGamesPlayed.games_played', index=0,
@@ -839,21 +902,28 @@ _CMSGCLIENTGAMESPLAYED = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='client_os_type', full_name='CMsgClientGamesPlayed.client_os_type', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='cloud_gaming_platform', full_name='CMsgClientGamesPlayed.cloud_gaming_platform', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='recent_reauthentication', full_name='CMsgClientGamesPlayed.recent_reauthentication', index=3,
+      number=4, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -867,7 +937,7 @@ _CMSGCLIENTGAMESPLAYED = _descriptor.Descriptor(
   oneofs=[
   ],
   serialized_start=1447,
-  serialized_end=2272,
+  serialized_end=2476,
 )
 
 
@@ -877,6 +947,7 @@ _CMSGGSAPPROVE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steam_id', full_name='CMsgGSApprove.steam_id', index=0,
@@ -884,14 +955,14 @@ _CMSGGSAPPROVE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='owner_steam_id', full_name='CMsgGSApprove.owner_steam_id', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -904,8 +975,8 @@ _CMSGGSAPPROVE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=2274,
-  serialized_end=2331,
+  serialized_start=2478,
+  serialized_end=2535,
 )
 
 
@@ -915,6 +986,7 @@ _CMSGGSDENY = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steam_id', full_name='CMsgGSDeny.steam_id', index=0,
@@ -922,21 +994,21 @@ _CMSGGSDENY = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='edeny_reason', full_name='CMsgGSDeny.edeny_reason', index=1,
       number=2, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='deny_string', full_name='CMsgGSDeny.deny_string', index=2,
       number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -949,8 +1021,8 @@ _CMSGGSDENY = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=2333,
-  serialized_end=2406,
+  serialized_start=2537,
+  serialized_end=2610,
 )
 
 
@@ -960,6 +1032,7 @@ _CMSGGSKICK = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steam_id', full_name='CMsgGSKick.steam_id', index=0,
@@ -967,14 +1040,14 @@ _CMSGGSKICK = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='edeny_reason', full_name='CMsgGSKick.edeny_reason', index=1,
       number=2, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -987,8 +1060,8 @@ _CMSGGSKICK = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=2408,
-  serialized_end=2460,
+  serialized_start=2612,
+  serialized_end=2664,
 )
 
 
@@ -998,6 +1071,7 @@ _CMSGCLIENTAUTHLIST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='tokens_left', full_name='CMsgClientAuthList.tokens_left', index=0,
@@ -1005,42 +1079,42 @@ _CMSGCLIENTAUTHLIST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='last_request_seq', full_name='CMsgClientAuthList.last_request_seq', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='last_request_seq_from_server', full_name='CMsgClientAuthList.last_request_seq_from_server', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='tickets', full_name='CMsgClientAuthList.tickets', index=3,
       number=4, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='app_ids', full_name='CMsgClientAuthList.app_ids', index=4,
       number=5, type=13, cpp_type=3, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='message_sequence', full_name='CMsgClientAuthList.message_sequence', index=5,
       number=6, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1053,8 +1127,8 @@ _CMSGCLIENTAUTHLIST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=2463,
-  serialized_end=2645,
+  serialized_start=2667,
+  serialized_end=2849,
 )
 
 
@@ -1064,6 +1138,7 @@ _CMSGCLIENTAUTHLISTACK = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='ticket_crc', full_name='CMsgClientAuthListAck.ticket_crc', index=0,
@@ -1071,21 +1146,21 @@ _CMSGCLIENTAUTHLISTACK = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='app_ids', full_name='CMsgClientAuthListAck.app_ids', index=1,
       number=2, type=13, cpp_type=3, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='message_sequence', full_name='CMsgClientAuthListAck.message_sequence', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1098,8 +1173,8 @@ _CMSGCLIENTAUTHLISTACK = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=2647,
-  serialized_end=2733,
+  serialized_start=2851,
+  serialized_end=2937,
 )
 
 
@@ -1109,6 +1184,7 @@ _CMSGCLIENTLICENSELIST_LICENSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='package_id', full_name='CMsgClientLicenseList.License.package_id', index=0,
@@ -1116,126 +1192,126 @@ _CMSGCLIENTLICENSELIST_LICENSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='time_created', full_name='CMsgClientLicenseList.License.time_created', index=1,
       number=2, type=7, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='time_next_process', full_name='CMsgClientLicenseList.License.time_next_process', index=2,
       number=3, type=7, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='minute_limit', full_name='CMsgClientLicenseList.License.minute_limit', index=3,
       number=4, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='minutes_used', full_name='CMsgClientLicenseList.License.minutes_used', index=4,
       number=5, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='payment_method', full_name='CMsgClientLicenseList.License.payment_method', index=5,
       number=6, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='flags', full_name='CMsgClientLicenseList.License.flags', index=6,
       number=7, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='purchase_country_code', full_name='CMsgClientLicenseList.License.purchase_country_code', index=7,
       number=8, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='license_type', full_name='CMsgClientLicenseList.License.license_type', index=8,
       number=9, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='territory_code', full_name='CMsgClientLicenseList.License.territory_code', index=9,
       number=10, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='change_number', full_name='CMsgClientLicenseList.License.change_number', index=10,
       number=11, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='owner_id', full_name='CMsgClientLicenseList.License.owner_id', index=11,
       number=12, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='initial_period', full_name='CMsgClientLicenseList.License.initial_period', index=12,
       number=13, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='initial_time_unit', full_name='CMsgClientLicenseList.License.initial_time_unit', index=13,
       number=14, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='renewal_period', full_name='CMsgClientLicenseList.License.renewal_period', index=14,
       number=15, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='renewal_time_unit', full_name='CMsgClientLicenseList.License.renewal_time_unit', index=15,
       number=16, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='access_token', full_name='CMsgClientLicenseList.License.access_token', index=16,
       number=17, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='master_package_id', full_name='CMsgClientLicenseList.License.master_package_id', index=17,
       number=18, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1248,8 +1324,8 @@ _CMSGCLIENTLICENSELIST_LICENSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=2832,
-  serialized_end=3262,
+  serialized_start=3036,
+  serialized_end=3466,
 )
 
 _CMSGCLIENTLICENSELIST = _descriptor.Descriptor(
@@ -1258,6 +1334,7 @@ _CMSGCLIENTLICENSELIST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='eresult', full_name='CMsgClientLicenseList.eresult', index=0,
@@ -1265,14 +1342,14 @@ _CMSGCLIENTLICENSELIST = _descriptor.Descriptor(
       has_default_value=True, default_value=2,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='licenses', full_name='CMsgClientLicenseList.licenses', index=1,
       number=2, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1285,8 +1362,8 @@ _CMSGCLIENTLICENSELIST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=2736,
-  serialized_end=3262,
+  serialized_start=2940,
+  serialized_end=3466,
 )
 
 
@@ -1296,6 +1373,7 @@ _CMSGCLIENTISLIMITEDACCOUNT = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='bis_limited_account', full_name='CMsgClientIsLimitedAccount.bis_limited_account', index=0,
@@ -1303,28 +1381,28 @@ _CMSGCLIENTISLIMITEDACCOUNT = _descriptor.Descriptor(
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='bis_community_banned', full_name='CMsgClientIsLimitedAccount.bis_community_banned', index=1,
       number=2, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='bis_locked_account', full_name='CMsgClientIsLimitedAccount.bis_locked_account', index=2,
       number=3, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='bis_limited_account_allowed_to_invite_friends', full_name='CMsgClientIsLimitedAccount.bis_limited_account_allowed_to_invite_friends', index=3,
       number=4, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1337,8 +1415,8 @@ _CMSGCLIENTISLIMITEDACCOUNT = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=3265,
-  serialized_end=3435,
+  serialized_start=3469,
+  serialized_end=3639,
 )
 
 
@@ -1348,6 +1426,7 @@ _CMSGCLIENTREQUESTEDCLIENTSTATS_STATSTOSEND = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='client_stat', full_name='CMsgClientRequestedClientStats.StatsToSend.client_stat', index=0,
@@ -1355,14 +1434,14 @@ _CMSGCLIENTREQUESTEDCLIENTSTATS_STATSTOSEND = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='stat_aggregate_method', full_name='CMsgClientRequestedClientStats.StatsToSend.stat_aggregate_method', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1375,8 +1454,8 @@ _CMSGCLIENTREQUESTEDCLIENTSTATS_STATSTOSEND = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=3540,
-  serialized_end=3605,
+  serialized_start=3744,
+  serialized_end=3809,
 )
 
 _CMSGCLIENTREQUESTEDCLIENTSTATS = _descriptor.Descriptor(
@@ -1385,6 +1464,7 @@ _CMSGCLIENTREQUESTEDCLIENTSTATS = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='stats_to_send', full_name='CMsgClientRequestedClientStats.stats_to_send', index=0,
@@ -1392,7 +1472,7 @@ _CMSGCLIENTREQUESTEDCLIENTSTATS = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1405,8 +1485,8 @@ _CMSGCLIENTREQUESTEDCLIENTSTATS = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=3438,
-  serialized_end=3605,
+  serialized_start=3642,
+  serialized_end=3809,
 )
 
 
@@ -1416,6 +1496,7 @@ _CMSGCLIENTSTAT2_STATDETAIL = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='client_stat', full_name='CMsgClientStat2.StatDetail.client_stat', index=0,
@@ -1423,42 +1504,42 @@ _CMSGCLIENTSTAT2_STATDETAIL = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='ll_value', full_name='CMsgClientStat2.StatDetail.ll_value', index=1,
       number=2, type=3, cpp_type=2, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='time_of_day', full_name='CMsgClientStat2.StatDetail.time_of_day', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='cell_id', full_name='CMsgClientStat2.StatDetail.cell_id', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='depot_id', full_name='CMsgClientStat2.StatDetail.depot_id', index=4,
       number=5, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CMsgClientStat2.StatDetail.app_id', index=5,
       number=6, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1471,8 +1552,8 @@ _CMSGCLIENTSTAT2_STATDETAIL = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=3677,
-  serialized_end=3800,
+  serialized_start=3881,
+  serialized_end=4004,
 )
 
 _CMSGCLIENTSTAT2 = _descriptor.Descriptor(
@@ -1481,6 +1562,7 @@ _CMSGCLIENTSTAT2 = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='stat_detail', full_name='CMsgClientStat2.stat_detail', index=0,
@@ -1488,7 +1570,7 @@ _CMSGCLIENTSTAT2 = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1501,8 +1583,8 @@ _CMSGCLIENTSTAT2 = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=3608,
-  serialized_end=3800,
+  serialized_start=3812,
+  serialized_end=4004,
 )
 
 
@@ -1512,6 +1594,7 @@ _CMSGCLIENTINVITETOGAME = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steam_id_dest', full_name='CMsgClientInviteToGame.steam_id_dest', index=0,
@@ -1519,28 +1602,28 @@ _CMSGCLIENTINVITETOGAME = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steam_id_src', full_name='CMsgClientInviteToGame.steam_id_src', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='connect_string', full_name='CMsgClientInviteToGame.connect_string', index=2,
       number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='remote_play', full_name='CMsgClientInviteToGame.remote_play', index=3,
       number=4, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1553,8 +1636,8 @@ _CMSGCLIENTINVITETOGAME = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=3802,
-  serialized_end=3916,
+  serialized_start=4006,
+  serialized_end=4120,
 )
 
 
@@ -1564,6 +1647,7 @@ _CMSGCLIENTCHATINVITE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steam_id_invited', full_name='CMsgClientChatInvite.steam_id_invited', index=0,
@@ -1571,49 +1655,49 @@ _CMSGCLIENTCHATINVITE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steam_id_chat', full_name='CMsgClientChatInvite.steam_id_chat', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steam_id_patron', full_name='CMsgClientChatInvite.steam_id_patron', index=2,
       number=3, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='chatroom_type', full_name='CMsgClientChatInvite.chatroom_type', index=3,
       number=4, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steam_id_friend_chat', full_name='CMsgClientChatInvite.steam_id_friend_chat', index=4,
       number=5, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='chat_name', full_name='CMsgClientChatInvite.chat_name', index=5,
       number=6, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='game_id', full_name='CMsgClientChatInvite.game_id', index=6,
       number=7, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1626,8 +1710,8 @@ _CMSGCLIENTCHATINVITE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=3919,
-  serialized_end=4104,
+  serialized_start=4123,
+  serialized_end=4308,
 )
 
 
@@ -1637,6 +1721,7 @@ _CMSGCLIENTCONNECTIONSTATS_STATS_LOGON = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='connect_attempts', full_name='CMsgClientConnectionStats.Stats_Logon.connect_attempts', index=0,
@@ -1644,49 +1729,77 @@ _CMSGCLIENTCONNECTIONSTATS_STATS_LOGON = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='connect_successes', full_name='CMsgClientConnectionStats.Stats_Logon.connect_successes', index=1,
       number=2, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='connect_failures', full_name='CMsgClientConnectionStats.Stats_Logon.connect_failures', index=2,
       number=3, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='connections_dropped', full_name='CMsgClientConnectionStats.Stats_Logon.connections_dropped', index=3,
       number=4, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='seconds_running', full_name='CMsgClientConnectionStats.Stats_Logon.seconds_running', index=4,
       number=5, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='msec_tologonthistime', full_name='CMsgClientConnectionStats.Stats_Logon.msec_tologonthistime', index=5,
       number=6, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='count_bad_cms', full_name='CMsgClientConnectionStats.Stats_Logon.count_bad_cms', index=6,
       number=7, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='no_udp_connectivity', full_name='CMsgClientConnectionStats.Stats_Logon.no_udp_connectivity', index=7,
+      number=8, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='no_tcp_connectivity', full_name='CMsgClientConnectionStats.Stats_Logon.no_tcp_connectivity', index=8,
+      number=9, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='no_websocket_443_connectivity', full_name='CMsgClientConnectionStats.Stats_Logon.no_websocket_443_connectivity', index=9,
+      number=10, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='no_websocket_non_443_connectivity', full_name='CMsgClientConnectionStats.Stats_Logon.no_websocket_non_443_connectivity', index=10,
+      number=11, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1699,8 +1812,8 @@ _CMSGCLIENTCONNECTIONSTATS_STATS_LOGON = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=4259,
-  serialized_end=4458,
+  serialized_start=4463,
+  serialized_end=4802,
 )
 
 _CMSGCLIENTCONNECTIONSTATS_STATS_UDP = _descriptor.Descriptor(
@@ -1709,6 +1822,7 @@ _CMSGCLIENTCONNECTIONSTATS_STATS_UDP = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='pkts_sent', full_name='CMsgClientConnectionStats.Stats_UDP.pkts_sent', index=0,
@@ -1716,35 +1830,35 @@ _CMSGCLIENTCONNECTIONSTATS_STATS_UDP = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='bytes_sent', full_name='CMsgClientConnectionStats.Stats_UDP.bytes_sent', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='pkts_recv', full_name='CMsgClientConnectionStats.Stats_UDP.pkts_recv', index=2,
       number=3, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='pkts_processed', full_name='CMsgClientConnectionStats.Stats_UDP.pkts_processed', index=3,
       number=4, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='bytes_recv', full_name='CMsgClientConnectionStats.Stats_UDP.bytes_recv', index=4,
       number=5, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1757,8 +1871,8 @@ _CMSGCLIENTCONNECTIONSTATS_STATS_UDP = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=4460,
-  serialized_end=4573,
+  serialized_start=4804,
+  serialized_end=4917,
 )
 
 _CMSGCLIENTCONNECTIONSTATS_STATS_VCONN = _descriptor.Descriptor(
@@ -1767,6 +1881,7 @@ _CMSGCLIENTCONNECTIONSTATS_STATS_VCONN = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='connections_udp', full_name='CMsgClientConnectionStats.Stats_VConn.connections_udp', index=0,
@@ -1774,140 +1889,140 @@ _CMSGCLIENTCONNECTIONSTATS_STATS_VCONN = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='connections_tcp', full_name='CMsgClientConnectionStats.Stats_VConn.connections_tcp', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='stats_udp', full_name='CMsgClientConnectionStats.Stats_VConn.stats_udp', index=2,
       number=3, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='pkts_abandoned', full_name='CMsgClientConnectionStats.Stats_VConn.pkts_abandoned', index=3,
       number=4, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='conn_req_received', full_name='CMsgClientConnectionStats.Stats_VConn.conn_req_received', index=4,
       number=5, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='pkts_resent', full_name='CMsgClientConnectionStats.Stats_VConn.pkts_resent', index=5,
       number=6, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='msgs_sent', full_name='CMsgClientConnectionStats.Stats_VConn.msgs_sent', index=6,
       number=7, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='msgs_sent_failed', full_name='CMsgClientConnectionStats.Stats_VConn.msgs_sent_failed', index=7,
       number=8, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='msgs_recv', full_name='CMsgClientConnectionStats.Stats_VConn.msgs_recv', index=8,
       number=9, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='datagrams_sent', full_name='CMsgClientConnectionStats.Stats_VConn.datagrams_sent', index=9,
       number=10, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='datagrams_recv', full_name='CMsgClientConnectionStats.Stats_VConn.datagrams_recv', index=10,
       number=11, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='bad_pkts_recv', full_name='CMsgClientConnectionStats.Stats_VConn.bad_pkts_recv', index=11,
       number=12, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='unknown_conn_pkts_recv', full_name='CMsgClientConnectionStats.Stats_VConn.unknown_conn_pkts_recv', index=12,
       number=13, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='missed_pkts_recv', full_name='CMsgClientConnectionStats.Stats_VConn.missed_pkts_recv', index=13,
       number=14, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='dup_pkts_recv', full_name='CMsgClientConnectionStats.Stats_VConn.dup_pkts_recv', index=14,
       number=15, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='failed_connect_challenges', full_name='CMsgClientConnectionStats.Stats_VConn.failed_connect_challenges', index=15,
       number=16, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='micro_sec_avg_latency', full_name='CMsgClientConnectionStats.Stats_VConn.micro_sec_avg_latency', index=16,
       number=17, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='micro_sec_min_latency', full_name='CMsgClientConnectionStats.Stats_VConn.micro_sec_min_latency', index=17,
       number=18, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='micro_sec_max_latency', full_name='CMsgClientConnectionStats.Stats_VConn.micro_sec_max_latency', index=18,
       number=19, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='mem_pool_msg_in_use', full_name='CMsgClientConnectionStats.Stats_VConn.mem_pool_msg_in_use', index=19,
       number=20, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1920,8 +2035,8 @@ _CMSGCLIENTCONNECTIONSTATS_STATS_VCONN = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=4576,
-  serialized_end=5141,
+  serialized_start=4920,
+  serialized_end=5485,
 )
 
 _CMSGCLIENTCONNECTIONSTATS = _descriptor.Descriptor(
@@ -1930,6 +2045,7 @@ _CMSGCLIENTCONNECTIONSTATS = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='stats_logon', full_name='CMsgClientConnectionStats.stats_logon', index=0,
@@ -1937,14 +2053,14 @@ _CMSGCLIENTCONNECTIONSTATS = _descriptor.Descriptor(
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='stats_vconn', full_name='CMsgClientConnectionStats.stats_vconn', index=1,
       number=2, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1957,8 +2073,8 @@ _CMSGCLIENTCONNECTIONSTATS = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=4107,
-  serialized_end=5141,
+  serialized_start=4311,
+  serialized_end=5485,
 )
 
 
@@ -1968,6 +2084,7 @@ _CMSGCLIENTSERVERSAVAILABLE_SERVER_TYPES_AVAILABLE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='server', full_name='CMsgClientServersAvailable.Server_Types_Available.server', index=0,
@@ -1975,14 +2092,14 @@ _CMSGCLIENTSERVERSAVAILABLE_SERVER_TYPES_AVAILABLE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='changed', full_name='CMsgClientServersAvailable.Server_Types_Available.changed', index=1,
       number=2, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1995,8 +2112,8 @@ _CMSGCLIENTSERVERSAVAILABLE_SERVER_TYPES_AVAILABLE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=5297,
-  serialized_end=5354,
+  serialized_start=5641,
+  serialized_end=5698,
 )
 
 _CMSGCLIENTSERVERSAVAILABLE = _descriptor.Descriptor(
@@ -2005,6 +2122,7 @@ _CMSGCLIENTSERVERSAVAILABLE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='server_types_available', full_name='CMsgClientServersAvailable.server_types_available', index=0,
@@ -2012,14 +2130,14 @@ _CMSGCLIENTSERVERSAVAILABLE = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='server_type_for_auth_services', full_name='CMsgClientServersAvailable.server_type_for_auth_services', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2032,8 +2150,8 @@ _CMSGCLIENTSERVERSAVAILABLE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=5144,
-  serialized_end=5354,
+  serialized_start=5488,
+  serialized_end=5698,
 )
 
 
@@ -2043,6 +2161,7 @@ _CMSGCLIENTREPORTOVERLAYDETOURFAILURE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='failure_strings', full_name='CMsgClientReportOverlayDetourFailure.failure_strings', index=0,
@@ -2050,7 +2169,7 @@ _CMSGCLIENTREPORTOVERLAYDETOURFAILURE = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2063,8 +2182,8 @@ _CMSGCLIENTREPORTOVERLAYDETOURFAILURE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=5356,
-  serialized_end=5419,
+  serialized_start=5700,
+  serialized_end=5763,
 )
 
 
@@ -2074,6 +2193,7 @@ _CMSGCLIENTREQUESTENCRYPTEDAPPTICKET = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CMsgClientRequestEncryptedAppTicket.app_id', index=0,
@@ -2081,14 +2201,14 @@ _CMSGCLIENTREQUESTENCRYPTEDAPPTICKET = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='userdata', full_name='CMsgClientRequestEncryptedAppTicket.userdata', index=1,
       number=2, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2101,8 +2221,8 @@ _CMSGCLIENTREQUESTENCRYPTEDAPPTICKET = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=5421,
-  serialized_end=5492,
+  serialized_start=5765,
+  serialized_end=5836,
 )
 
 
@@ -2112,6 +2232,7 @@ _CMSGCLIENTREQUESTENCRYPTEDAPPTICKETRESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CMsgClientRequestEncryptedAppTicketResponse.app_id', index=0,
@@ -2119,21 +2240,21 @@ _CMSGCLIENTREQUESTENCRYPTEDAPPTICKETRESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='eresult', full_name='CMsgClientRequestEncryptedAppTicketResponse.eresult', index=1,
       number=2, type=5, cpp_type=1, label=1,
       has_default_value=True, default_value=2,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='encrypted_app_ticket', full_name='CMsgClientRequestEncryptedAppTicketResponse.encrypted_app_ticket', index=2,
       number=3, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2146,8 +2267,8 @@ _CMSGCLIENTREQUESTENCRYPTEDAPPTICKETRESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=5495,
-  serialized_end=5627,
+  serialized_start=5839,
+  serialized_end=5971,
 )
 
 
@@ -2157,6 +2278,7 @@ _CMSGCLIENTWALLETINFOUPDATE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='has_wallet', full_name='CMsgClientWalletInfoUpdate.has_wallet', index=0,
@@ -2164,49 +2286,49 @@ _CMSGCLIENTWALLETINFOUPDATE = _descriptor.Descriptor(
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='balance', full_name='CMsgClientWalletInfoUpdate.balance', index=1,
       number=2, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='currency', full_name='CMsgClientWalletInfoUpdate.currency', index=2,
       number=3, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='balance_delayed', full_name='CMsgClientWalletInfoUpdate.balance_delayed', index=3,
       number=4, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='balance64', full_name='CMsgClientWalletInfoUpdate.balance64', index=4,
       number=5, type=3, cpp_type=2, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\240\266\030\001'), file=DESCRIPTOR),
+      serialized_options=b'\240\266\030\001', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='balance64_delayed', full_name='CMsgClientWalletInfoUpdate.balance64_delayed', index=5,
       number=6, type=3, cpp_type=2, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\240\266\030\001'), file=DESCRIPTOR),
+      serialized_options=b'\240\266\030\001', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='realm', full_name='CMsgClientWalletInfoUpdate.realm', index=6,
       number=7, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2219,8 +2341,8 @@ _CMSGCLIENTWALLETINFOUPDATE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=5630,
-  serialized_end=5811,
+  serialized_start=5974,
+  serialized_end=6155,
 )
 
 
@@ -2230,6 +2352,7 @@ _CMSGCLIENTAMGETCLANOFFICERS = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid_clan', full_name='CMsgClientAMGetClanOfficers.steamid_clan', index=0,
@@ -2237,7 +2360,7 @@ _CMSGCLIENTAMGETCLANOFFICERS = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2250,8 +2373,8 @@ _CMSGCLIENTAMGETCLANOFFICERS = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=5813,
-  serialized_end=5864,
+  serialized_start=6157,
+  serialized_end=6208,
 )
 
 
@@ -2261,6 +2384,7 @@ _CMSGCLIENTAMGETCLANOFFICERSRESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='eresult', full_name='CMsgClientAMGetClanOfficersResponse.eresult', index=0,
@@ -2268,21 +2392,21 @@ _CMSGCLIENTAMGETCLANOFFICERSRESPONSE = _descriptor.Descriptor(
       has_default_value=True, default_value=2,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steamid_clan', full_name='CMsgClientAMGetClanOfficersResponse.steamid_clan', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='officer_count', full_name='CMsgClientAMGetClanOfficersResponse.officer_count', index=2,
       number=3, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2295,8 +2419,8 @@ _CMSGCLIENTAMGETCLANOFFICERSRESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=5866,
-  serialized_end=5968,
+  serialized_start=6210,
+  serialized_end=6312,
 )
 
 
@@ -2306,6 +2430,7 @@ _CMSGCLIENTAMGETPERSONANAMEHISTORY_IDINSTANCE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CMsgClientAMGetPersonaNameHistory.IdInstance.steamid', index=0,
@@ -2313,7 +2438,7 @@ _CMSGCLIENTAMGETPERSONANAMEHISTORY_IDINSTANCE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2326,8 +2451,8 @@ _CMSGCLIENTAMGETPERSONANAMEHISTORY_IDINSTANCE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=6086,
-  serialized_end=6115,
+  serialized_start=6430,
+  serialized_end=6459,
 )
 
 _CMSGCLIENTAMGETPERSONANAMEHISTORY = _descriptor.Descriptor(
@@ -2336,6 +2461,7 @@ _CMSGCLIENTAMGETPERSONANAMEHISTORY = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='id_count', full_name='CMsgClientAMGetPersonaNameHistory.id_count', index=0,
@@ -2343,14 +2469,14 @@ _CMSGCLIENTAMGETPERSONANAMEHISTORY = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='Ids', full_name='CMsgClientAMGetPersonaNameHistory.Ids', index=1,
       number=2, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2363,8 +2489,8 @@ _CMSGCLIENTAMGETPERSONANAMEHISTORY = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=5971,
-  serialized_end=6115,
+  serialized_start=6315,
+  serialized_end=6459,
 )
 
 
@@ -2374,6 +2500,7 @@ _CMSGCLIENTAMGETPERSONANAMEHISTORYRESPONSE_NAMETABLEINSTANCE_NAMEINSTANCE = _des
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='name_since', full_name='CMsgClientAMGetPersonaNameHistoryResponse.NameTableInstance.NameInstance.name_since', index=0,
@@ -2381,14 +2508,14 @@ _CMSGCLIENTAMGETPERSONANAMEHISTORYRESPONSE_NAMETABLEINSTANCE_NAMEINSTANCE = _des
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='name', full_name='CMsgClientAMGetPersonaNameHistoryResponse.NameTableInstance.NameInstance.name', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2401,8 +2528,8 @@ _CMSGCLIENTAMGETPERSONANAMEHISTORYRESPONSE_NAMETABLEINSTANCE_NAMEINSTANCE = _des
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=6393,
-  serialized_end=6441,
+  serialized_start=6737,
+  serialized_end=6785,
 )
 
 _CMSGCLIENTAMGETPERSONANAMEHISTORYRESPONSE_NAMETABLEINSTANCE = _descriptor.Descriptor(
@@ -2411,6 +2538,7 @@ _CMSGCLIENTAMGETPERSONANAMEHISTORYRESPONSE_NAMETABLEINSTANCE = _descriptor.Descr
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='eresult', full_name='CMsgClientAMGetPersonaNameHistoryResponse.NameTableInstance.eresult', index=0,
@@ -2418,21 +2546,21 @@ _CMSGCLIENTAMGETPERSONANAMEHISTORYRESPONSE_NAMETABLEINSTANCE = _descriptor.Descr
       has_default_value=True, default_value=2,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CMsgClientAMGetPersonaNameHistoryResponse.NameTableInstance.steamid', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='names', full_name='CMsgClientAMGetPersonaNameHistoryResponse.NameTableInstance.names', index=2,
       number=3, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2445,8 +2573,8 @@ _CMSGCLIENTAMGETPERSONANAMEHISTORYRESPONSE_NAMETABLEINSTANCE = _descriptor.Descr
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=6245,
-  serialized_end=6441,
+  serialized_start=6589,
+  serialized_end=6785,
 )
 
 _CMSGCLIENTAMGETPERSONANAMEHISTORYRESPONSE = _descriptor.Descriptor(
@@ -2455,6 +2583,7 @@ _CMSGCLIENTAMGETPERSONANAMEHISTORYRESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='responses', full_name='CMsgClientAMGetPersonaNameHistoryResponse.responses', index=0,
@@ -2462,7 +2591,7 @@ _CMSGCLIENTAMGETPERSONANAMEHISTORYRESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2475,8 +2604,8 @@ _CMSGCLIENTAMGETPERSONANAMEHISTORYRESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=6118,
-  serialized_end=6441,
+  serialized_start=6462,
+  serialized_end=6785,
 )
 
 
@@ -2486,6 +2615,7 @@ _CMSGCLIENTDEREGISTERWITHSERVER = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='eservertype', full_name='CMsgClientDeregisterWithServer.eservertype', index=0,
@@ -2493,14 +2623,14 @@ _CMSGCLIENTDEREGISTERWITHSERVER = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CMsgClientDeregisterWithServer.app_id', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2513,8 +2643,8 @@ _CMSGCLIENTDEREGISTERWITHSERVER = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=6443,
-  serialized_end=6512,
+  serialized_start=6787,
+  serialized_end=6856,
 )
 
 
@@ -2524,21 +2654,22 @@ _CMSGCLIENTCLANSTATE_NAMEINFO = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='clan_name', full_name='CMsgClientClanState.NameInfo.clan_name', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='sha_avatar', full_name='CMsgClientClanState.NameInfo.sha_avatar', index=1,
       number=2, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2551,8 +2682,8 @@ _CMSGCLIENTCLANSTATE_NAMEINFO = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=6814,
-  serialized_end=6863,
+  serialized_start=7158,
+  serialized_end=7207,
 )
 
 _CMSGCLIENTCLANSTATE_USERCOUNTS = _descriptor.Descriptor(
@@ -2561,6 +2692,7 @@ _CMSGCLIENTCLANSTATE_USERCOUNTS = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='members', full_name='CMsgClientClanState.UserCounts.members', index=0,
@@ -2568,35 +2700,35 @@ _CMSGCLIENTCLANSTATE_USERCOUNTS = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='online', full_name='CMsgClientClanState.UserCounts.online', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='chatting', full_name='CMsgClientClanState.UserCounts.chatting', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='in_game', full_name='CMsgClientClanState.UserCounts.in_game', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='chat_room_members', full_name='CMsgClientClanState.UserCounts.chat_room_members', index=4,
       number=5, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2609,8 +2741,8 @@ _CMSGCLIENTCLANSTATE_USERCOUNTS = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=6865,
-  serialized_end=6972,
+  serialized_start=7209,
+  serialized_end=7316,
 )
 
 _CMSGCLIENTCLANSTATE_EVENT = _descriptor.Descriptor(
@@ -2619,6 +2751,7 @@ _CMSGCLIENTCLANSTATE_EVENT = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='gid', full_name='CMsgClientClanState.Event.gid', index=0,
@@ -2626,35 +2759,35 @@ _CMSGCLIENTCLANSTATE_EVENT = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='event_time', full_name='CMsgClientClanState.Event.event_time', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='headline', full_name='CMsgClientClanState.Event.headline', index=2,
       number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='game_id', full_name='CMsgClientClanState.Event.game_id', index=3,
       number=4, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='just_posted', full_name='CMsgClientClanState.Event.just_posted', index=4,
       number=5, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2667,8 +2800,8 @@ _CMSGCLIENTCLANSTATE_EVENT = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=6974,
-  serialized_end=7070,
+  serialized_start=7318,
+  serialized_end=7414,
 )
 
 _CMSGCLIENTCLANSTATE = _descriptor.Descriptor(
@@ -2677,6 +2810,7 @@ _CMSGCLIENTCLANSTATE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid_clan', full_name='CMsgClientClanState.steamid_clan', index=0,
@@ -2684,49 +2818,49 @@ _CMSGCLIENTCLANSTATE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='clan_account_flags', full_name='CMsgClientClanState.clan_account_flags', index=1,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='name_info', full_name='CMsgClientClanState.name_info', index=2,
       number=4, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='user_counts', full_name='CMsgClientClanState.user_counts', index=3,
       number=5, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='events', full_name='CMsgClientClanState.events', index=4,
       number=6, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='announcements', full_name='CMsgClientClanState.announcements', index=5,
       number=7, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='chat_room_private', full_name='CMsgClientClanState.chat_room_private', index=6,
       number=8, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2739,8 +2873,8 @@ _CMSGCLIENTCLANSTATE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=6515,
-  serialized_end=7070,
+  serialized_start=6859,
+  serialized_end=7414,
 )
 
 _CMSGCLIENTGAMESPLAYED_GAMEPLAYED.fields_by_name['game_ip_address'].message_type = steammessages__base__pb2._CMSGIPADDRESS
@@ -2814,372 +2948,372 @@ DESCRIPTOR.message_types_by_name['CMsgClientDeregisterWithServer'] = _CMSGCLIENT
 DESCRIPTOR.message_types_by_name['CMsgClientClanState'] = _CMSGCLIENTCLANSTATE
 _sym_db.RegisterFileDescriptor(DESCRIPTOR)
 
-CMsgClientRegisterAuthTicketWithCM = _reflection.GeneratedProtocolMessageType('CMsgClientRegisterAuthTicketWithCM', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTREGISTERAUTHTICKETWITHCM,
-  __module__ = 'steammessages_clientserver_pb2'
+CMsgClientRegisterAuthTicketWithCM = _reflection.GeneratedProtocolMessageType('CMsgClientRegisterAuthTicketWithCM', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTREGISTERAUTHTICKETWITHCM,
+  '__module__' : 'steammessages_clientserver_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientRegisterAuthTicketWithCM)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientRegisterAuthTicketWithCM)
 
-CMsgClientTicketAuthComplete = _reflection.GeneratedProtocolMessageType('CMsgClientTicketAuthComplete', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTTICKETAUTHCOMPLETE,
-  __module__ = 'steammessages_clientserver_pb2'
+CMsgClientTicketAuthComplete = _reflection.GeneratedProtocolMessageType('CMsgClientTicketAuthComplete', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTTICKETAUTHCOMPLETE,
+  '__module__' : 'steammessages_clientserver_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientTicketAuthComplete)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientTicketAuthComplete)
 
-CMsgClientCMList = _reflection.GeneratedProtocolMessageType('CMsgClientCMList', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTCMLIST,
-  __module__ = 'steammessages_clientserver_pb2'
+CMsgClientCMList = _reflection.GeneratedProtocolMessageType('CMsgClientCMList', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTCMLIST,
+  '__module__' : 'steammessages_clientserver_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientCMList)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientCMList)
 
-CMsgClientP2PConnectionInfo = _reflection.GeneratedProtocolMessageType('CMsgClientP2PConnectionInfo', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTP2PCONNECTIONINFO,
-  __module__ = 'steammessages_clientserver_pb2'
+CMsgClientP2PConnectionInfo = _reflection.GeneratedProtocolMessageType('CMsgClientP2PConnectionInfo', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTP2PCONNECTIONINFO,
+  '__module__' : 'steammessages_clientserver_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientP2PConnectionInfo)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientP2PConnectionInfo)
 
-CMsgClientP2PConnectionFailInfo = _reflection.GeneratedProtocolMessageType('CMsgClientP2PConnectionFailInfo', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTP2PCONNECTIONFAILINFO,
-  __module__ = 'steammessages_clientserver_pb2'
+CMsgClientP2PConnectionFailInfo = _reflection.GeneratedProtocolMessageType('CMsgClientP2PConnectionFailInfo', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTP2PCONNECTIONFAILINFO,
+  '__module__' : 'steammessages_clientserver_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientP2PConnectionFailInfo)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientP2PConnectionFailInfo)
 
-CMsgClientNetworkingCertRequest = _reflection.GeneratedProtocolMessageType('CMsgClientNetworkingCertRequest', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTNETWORKINGCERTREQUEST,
-  __module__ = 'steammessages_clientserver_pb2'
+CMsgClientNetworkingCertRequest = _reflection.GeneratedProtocolMessageType('CMsgClientNetworkingCertRequest', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTNETWORKINGCERTREQUEST,
+  '__module__' : 'steammessages_clientserver_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientNetworkingCertRequest)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientNetworkingCertRequest)
 
-CMsgClientNetworkingCertReply = _reflection.GeneratedProtocolMessageType('CMsgClientNetworkingCertReply', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTNETWORKINGCERTREPLY,
-  __module__ = 'steammessages_clientserver_pb2'
+CMsgClientNetworkingCertReply = _reflection.GeneratedProtocolMessageType('CMsgClientNetworkingCertReply', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTNETWORKINGCERTREPLY,
+  '__module__' : 'steammessages_clientserver_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientNetworkingCertReply)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientNetworkingCertReply)
 
-CMsgClientNetworkingMobileCertRequest = _reflection.GeneratedProtocolMessageType('CMsgClientNetworkingMobileCertRequest', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTNETWORKINGMOBILECERTREQUEST,
-  __module__ = 'steammessages_clientserver_pb2'
+CMsgClientNetworkingMobileCertRequest = _reflection.GeneratedProtocolMessageType('CMsgClientNetworkingMobileCertRequest', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTNETWORKINGMOBILECERTREQUEST,
+  '__module__' : 'steammessages_clientserver_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientNetworkingMobileCertRequest)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientNetworkingMobileCertRequest)
 
-CMsgClientNetworkingMobileCertReply = _reflection.GeneratedProtocolMessageType('CMsgClientNetworkingMobileCertReply', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTNETWORKINGMOBILECERTREPLY,
-  __module__ = 'steammessages_clientserver_pb2'
+CMsgClientNetworkingMobileCertReply = _reflection.GeneratedProtocolMessageType('CMsgClientNetworkingMobileCertReply', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTNETWORKINGMOBILECERTREPLY,
+  '__module__' : 'steammessages_clientserver_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientNetworkingMobileCertReply)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientNetworkingMobileCertReply)
 
-CMsgClientGetAppOwnershipTicket = _reflection.GeneratedProtocolMessageType('CMsgClientGetAppOwnershipTicket', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTGETAPPOWNERSHIPTICKET,
-  __module__ = 'steammessages_clientserver_pb2'
+CMsgClientGetAppOwnershipTicket = _reflection.GeneratedProtocolMessageType('CMsgClientGetAppOwnershipTicket', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTGETAPPOWNERSHIPTICKET,
+  '__module__' : 'steammessages_clientserver_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientGetAppOwnershipTicket)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientGetAppOwnershipTicket)
 
-CMsgClientGetAppOwnershipTicketResponse = _reflection.GeneratedProtocolMessageType('CMsgClientGetAppOwnershipTicketResponse', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTGETAPPOWNERSHIPTICKETRESPONSE,
-  __module__ = 'steammessages_clientserver_pb2'
+CMsgClientGetAppOwnershipTicketResponse = _reflection.GeneratedProtocolMessageType('CMsgClientGetAppOwnershipTicketResponse', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTGETAPPOWNERSHIPTICKETRESPONSE,
+  '__module__' : 'steammessages_clientserver_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientGetAppOwnershipTicketResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientGetAppOwnershipTicketResponse)
 
-CMsgClientSessionToken = _reflection.GeneratedProtocolMessageType('CMsgClientSessionToken', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTSESSIONTOKEN,
-  __module__ = 'steammessages_clientserver_pb2'
+CMsgClientSessionToken = _reflection.GeneratedProtocolMessageType('CMsgClientSessionToken', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTSESSIONTOKEN,
+  '__module__' : 'steammessages_clientserver_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientSessionToken)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientSessionToken)
 
-CMsgClientGameConnectTokens = _reflection.GeneratedProtocolMessageType('CMsgClientGameConnectTokens', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTGAMECONNECTTOKENS,
-  __module__ = 'steammessages_clientserver_pb2'
+CMsgClientGameConnectTokens = _reflection.GeneratedProtocolMessageType('CMsgClientGameConnectTokens', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTGAMECONNECTTOKENS,
+  '__module__' : 'steammessages_clientserver_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientGameConnectTokens)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientGameConnectTokens)
 
-CMsgClientGamesPlayed = _reflection.GeneratedProtocolMessageType('CMsgClientGamesPlayed', (_message.Message,), dict(
+CMsgClientGamesPlayed = _reflection.GeneratedProtocolMessageType('CMsgClientGamesPlayed', (_message.Message,), {
 
-  GamePlayed = _reflection.GeneratedProtocolMessageType('GamePlayed', (_message.Message,), dict(
-    DESCRIPTOR = _CMSGCLIENTGAMESPLAYED_GAMEPLAYED,
-    __module__ = 'steammessages_clientserver_pb2'
+  'GamePlayed' : _reflection.GeneratedProtocolMessageType('GamePlayed', (_message.Message,), {
+    'DESCRIPTOR' : _CMSGCLIENTGAMESPLAYED_GAMEPLAYED,
+    '__module__' : 'steammessages_clientserver_pb2'
     # @@protoc_insertion_point(class_scope:CMsgClientGamesPlayed.GamePlayed)
-    ))
+    })
   ,
-  DESCRIPTOR = _CMSGCLIENTGAMESPLAYED,
-  __module__ = 'steammessages_clientserver_pb2'
+  'DESCRIPTOR' : _CMSGCLIENTGAMESPLAYED,
+  '__module__' : 'steammessages_clientserver_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientGamesPlayed)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientGamesPlayed)
 _sym_db.RegisterMessage(CMsgClientGamesPlayed.GamePlayed)
 
-CMsgGSApprove = _reflection.GeneratedProtocolMessageType('CMsgGSApprove', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGGSAPPROVE,
-  __module__ = 'steammessages_clientserver_pb2'
+CMsgGSApprove = _reflection.GeneratedProtocolMessageType('CMsgGSApprove', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGGSAPPROVE,
+  '__module__' : 'steammessages_clientserver_pb2'
   # @@protoc_insertion_point(class_scope:CMsgGSApprove)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgGSApprove)
 
-CMsgGSDeny = _reflection.GeneratedProtocolMessageType('CMsgGSDeny', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGGSDENY,
-  __module__ = 'steammessages_clientserver_pb2'
+CMsgGSDeny = _reflection.GeneratedProtocolMessageType('CMsgGSDeny', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGGSDENY,
+  '__module__' : 'steammessages_clientserver_pb2'
   # @@protoc_insertion_point(class_scope:CMsgGSDeny)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgGSDeny)
 
-CMsgGSKick = _reflection.GeneratedProtocolMessageType('CMsgGSKick', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGGSKICK,
-  __module__ = 'steammessages_clientserver_pb2'
+CMsgGSKick = _reflection.GeneratedProtocolMessageType('CMsgGSKick', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGGSKICK,
+  '__module__' : 'steammessages_clientserver_pb2'
   # @@protoc_insertion_point(class_scope:CMsgGSKick)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgGSKick)
 
-CMsgClientAuthList = _reflection.GeneratedProtocolMessageType('CMsgClientAuthList', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTAUTHLIST,
-  __module__ = 'steammessages_clientserver_pb2'
+CMsgClientAuthList = _reflection.GeneratedProtocolMessageType('CMsgClientAuthList', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTAUTHLIST,
+  '__module__' : 'steammessages_clientserver_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientAuthList)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientAuthList)
 
-CMsgClientAuthListAck = _reflection.GeneratedProtocolMessageType('CMsgClientAuthListAck', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTAUTHLISTACK,
-  __module__ = 'steammessages_clientserver_pb2'
+CMsgClientAuthListAck = _reflection.GeneratedProtocolMessageType('CMsgClientAuthListAck', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTAUTHLISTACK,
+  '__module__' : 'steammessages_clientserver_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientAuthListAck)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientAuthListAck)
 
-CMsgClientLicenseList = _reflection.GeneratedProtocolMessageType('CMsgClientLicenseList', (_message.Message,), dict(
+CMsgClientLicenseList = _reflection.GeneratedProtocolMessageType('CMsgClientLicenseList', (_message.Message,), {
 
-  License = _reflection.GeneratedProtocolMessageType('License', (_message.Message,), dict(
-    DESCRIPTOR = _CMSGCLIENTLICENSELIST_LICENSE,
-    __module__ = 'steammessages_clientserver_pb2'
+  'License' : _reflection.GeneratedProtocolMessageType('License', (_message.Message,), {
+    'DESCRIPTOR' : _CMSGCLIENTLICENSELIST_LICENSE,
+    '__module__' : 'steammessages_clientserver_pb2'
     # @@protoc_insertion_point(class_scope:CMsgClientLicenseList.License)
-    ))
+    })
   ,
-  DESCRIPTOR = _CMSGCLIENTLICENSELIST,
-  __module__ = 'steammessages_clientserver_pb2'
+  'DESCRIPTOR' : _CMSGCLIENTLICENSELIST,
+  '__module__' : 'steammessages_clientserver_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientLicenseList)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientLicenseList)
 _sym_db.RegisterMessage(CMsgClientLicenseList.License)
 
-CMsgClientIsLimitedAccount = _reflection.GeneratedProtocolMessageType('CMsgClientIsLimitedAccount', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTISLIMITEDACCOUNT,
-  __module__ = 'steammessages_clientserver_pb2'
+CMsgClientIsLimitedAccount = _reflection.GeneratedProtocolMessageType('CMsgClientIsLimitedAccount', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTISLIMITEDACCOUNT,
+  '__module__' : 'steammessages_clientserver_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientIsLimitedAccount)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientIsLimitedAccount)
 
-CMsgClientRequestedClientStats = _reflection.GeneratedProtocolMessageType('CMsgClientRequestedClientStats', (_message.Message,), dict(
+CMsgClientRequestedClientStats = _reflection.GeneratedProtocolMessageType('CMsgClientRequestedClientStats', (_message.Message,), {
 
-  StatsToSend = _reflection.GeneratedProtocolMessageType('StatsToSend', (_message.Message,), dict(
-    DESCRIPTOR = _CMSGCLIENTREQUESTEDCLIENTSTATS_STATSTOSEND,
-    __module__ = 'steammessages_clientserver_pb2'
+  'StatsToSend' : _reflection.GeneratedProtocolMessageType('StatsToSend', (_message.Message,), {
+    'DESCRIPTOR' : _CMSGCLIENTREQUESTEDCLIENTSTATS_STATSTOSEND,
+    '__module__' : 'steammessages_clientserver_pb2'
     # @@protoc_insertion_point(class_scope:CMsgClientRequestedClientStats.StatsToSend)
-    ))
+    })
   ,
-  DESCRIPTOR = _CMSGCLIENTREQUESTEDCLIENTSTATS,
-  __module__ = 'steammessages_clientserver_pb2'
+  'DESCRIPTOR' : _CMSGCLIENTREQUESTEDCLIENTSTATS,
+  '__module__' : 'steammessages_clientserver_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientRequestedClientStats)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientRequestedClientStats)
 _sym_db.RegisterMessage(CMsgClientRequestedClientStats.StatsToSend)
 
-CMsgClientStat2 = _reflection.GeneratedProtocolMessageType('CMsgClientStat2', (_message.Message,), dict(
+CMsgClientStat2 = _reflection.GeneratedProtocolMessageType('CMsgClientStat2', (_message.Message,), {
 
-  StatDetail = _reflection.GeneratedProtocolMessageType('StatDetail', (_message.Message,), dict(
-    DESCRIPTOR = _CMSGCLIENTSTAT2_STATDETAIL,
-    __module__ = 'steammessages_clientserver_pb2'
+  'StatDetail' : _reflection.GeneratedProtocolMessageType('StatDetail', (_message.Message,), {
+    'DESCRIPTOR' : _CMSGCLIENTSTAT2_STATDETAIL,
+    '__module__' : 'steammessages_clientserver_pb2'
     # @@protoc_insertion_point(class_scope:CMsgClientStat2.StatDetail)
-    ))
+    })
   ,
-  DESCRIPTOR = _CMSGCLIENTSTAT2,
-  __module__ = 'steammessages_clientserver_pb2'
+  'DESCRIPTOR' : _CMSGCLIENTSTAT2,
+  '__module__' : 'steammessages_clientserver_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientStat2)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientStat2)
 _sym_db.RegisterMessage(CMsgClientStat2.StatDetail)
 
-CMsgClientInviteToGame = _reflection.GeneratedProtocolMessageType('CMsgClientInviteToGame', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTINVITETOGAME,
-  __module__ = 'steammessages_clientserver_pb2'
+CMsgClientInviteToGame = _reflection.GeneratedProtocolMessageType('CMsgClientInviteToGame', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTINVITETOGAME,
+  '__module__' : 'steammessages_clientserver_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientInviteToGame)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientInviteToGame)
 
-CMsgClientChatInvite = _reflection.GeneratedProtocolMessageType('CMsgClientChatInvite', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTCHATINVITE,
-  __module__ = 'steammessages_clientserver_pb2'
+CMsgClientChatInvite = _reflection.GeneratedProtocolMessageType('CMsgClientChatInvite', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTCHATINVITE,
+  '__module__' : 'steammessages_clientserver_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientChatInvite)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientChatInvite)
 
-CMsgClientConnectionStats = _reflection.GeneratedProtocolMessageType('CMsgClientConnectionStats', (_message.Message,), dict(
+CMsgClientConnectionStats = _reflection.GeneratedProtocolMessageType('CMsgClientConnectionStats', (_message.Message,), {
 
-  Stats_Logon = _reflection.GeneratedProtocolMessageType('Stats_Logon', (_message.Message,), dict(
-    DESCRIPTOR = _CMSGCLIENTCONNECTIONSTATS_STATS_LOGON,
-    __module__ = 'steammessages_clientserver_pb2'
+  'Stats_Logon' : _reflection.GeneratedProtocolMessageType('Stats_Logon', (_message.Message,), {
+    'DESCRIPTOR' : _CMSGCLIENTCONNECTIONSTATS_STATS_LOGON,
+    '__module__' : 'steammessages_clientserver_pb2'
     # @@protoc_insertion_point(class_scope:CMsgClientConnectionStats.Stats_Logon)
-    ))
+    })
   ,
 
-  Stats_UDP = _reflection.GeneratedProtocolMessageType('Stats_UDP', (_message.Message,), dict(
-    DESCRIPTOR = _CMSGCLIENTCONNECTIONSTATS_STATS_UDP,
-    __module__ = 'steammessages_clientserver_pb2'
+  'Stats_UDP' : _reflection.GeneratedProtocolMessageType('Stats_UDP', (_message.Message,), {
+    'DESCRIPTOR' : _CMSGCLIENTCONNECTIONSTATS_STATS_UDP,
+    '__module__' : 'steammessages_clientserver_pb2'
     # @@protoc_insertion_point(class_scope:CMsgClientConnectionStats.Stats_UDP)
-    ))
+    })
   ,
 
-  Stats_VConn = _reflection.GeneratedProtocolMessageType('Stats_VConn', (_message.Message,), dict(
-    DESCRIPTOR = _CMSGCLIENTCONNECTIONSTATS_STATS_VCONN,
-    __module__ = 'steammessages_clientserver_pb2'
+  'Stats_VConn' : _reflection.GeneratedProtocolMessageType('Stats_VConn', (_message.Message,), {
+    'DESCRIPTOR' : _CMSGCLIENTCONNECTIONSTATS_STATS_VCONN,
+    '__module__' : 'steammessages_clientserver_pb2'
     # @@protoc_insertion_point(class_scope:CMsgClientConnectionStats.Stats_VConn)
-    ))
+    })
   ,
-  DESCRIPTOR = _CMSGCLIENTCONNECTIONSTATS,
-  __module__ = 'steammessages_clientserver_pb2'
+  'DESCRIPTOR' : _CMSGCLIENTCONNECTIONSTATS,
+  '__module__' : 'steammessages_clientserver_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientConnectionStats)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientConnectionStats)
 _sym_db.RegisterMessage(CMsgClientConnectionStats.Stats_Logon)
 _sym_db.RegisterMessage(CMsgClientConnectionStats.Stats_UDP)
 _sym_db.RegisterMessage(CMsgClientConnectionStats.Stats_VConn)
 
-CMsgClientServersAvailable = _reflection.GeneratedProtocolMessageType('CMsgClientServersAvailable', (_message.Message,), dict(
+CMsgClientServersAvailable = _reflection.GeneratedProtocolMessageType('CMsgClientServersAvailable', (_message.Message,), {
 
-  Server_Types_Available = _reflection.GeneratedProtocolMessageType('Server_Types_Available', (_message.Message,), dict(
-    DESCRIPTOR = _CMSGCLIENTSERVERSAVAILABLE_SERVER_TYPES_AVAILABLE,
-    __module__ = 'steammessages_clientserver_pb2'
+  'Server_Types_Available' : _reflection.GeneratedProtocolMessageType('Server_Types_Available', (_message.Message,), {
+    'DESCRIPTOR' : _CMSGCLIENTSERVERSAVAILABLE_SERVER_TYPES_AVAILABLE,
+    '__module__' : 'steammessages_clientserver_pb2'
     # @@protoc_insertion_point(class_scope:CMsgClientServersAvailable.Server_Types_Available)
-    ))
+    })
   ,
-  DESCRIPTOR = _CMSGCLIENTSERVERSAVAILABLE,
-  __module__ = 'steammessages_clientserver_pb2'
+  'DESCRIPTOR' : _CMSGCLIENTSERVERSAVAILABLE,
+  '__module__' : 'steammessages_clientserver_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientServersAvailable)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientServersAvailable)
 _sym_db.RegisterMessage(CMsgClientServersAvailable.Server_Types_Available)
 
-CMsgClientReportOverlayDetourFailure = _reflection.GeneratedProtocolMessageType('CMsgClientReportOverlayDetourFailure', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTREPORTOVERLAYDETOURFAILURE,
-  __module__ = 'steammessages_clientserver_pb2'
+CMsgClientReportOverlayDetourFailure = _reflection.GeneratedProtocolMessageType('CMsgClientReportOverlayDetourFailure', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTREPORTOVERLAYDETOURFAILURE,
+  '__module__' : 'steammessages_clientserver_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientReportOverlayDetourFailure)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientReportOverlayDetourFailure)
 
-CMsgClientRequestEncryptedAppTicket = _reflection.GeneratedProtocolMessageType('CMsgClientRequestEncryptedAppTicket', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTREQUESTENCRYPTEDAPPTICKET,
-  __module__ = 'steammessages_clientserver_pb2'
+CMsgClientRequestEncryptedAppTicket = _reflection.GeneratedProtocolMessageType('CMsgClientRequestEncryptedAppTicket', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTREQUESTENCRYPTEDAPPTICKET,
+  '__module__' : 'steammessages_clientserver_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientRequestEncryptedAppTicket)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientRequestEncryptedAppTicket)
 
-CMsgClientRequestEncryptedAppTicketResponse = _reflection.GeneratedProtocolMessageType('CMsgClientRequestEncryptedAppTicketResponse', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTREQUESTENCRYPTEDAPPTICKETRESPONSE,
-  __module__ = 'steammessages_clientserver_pb2'
+CMsgClientRequestEncryptedAppTicketResponse = _reflection.GeneratedProtocolMessageType('CMsgClientRequestEncryptedAppTicketResponse', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTREQUESTENCRYPTEDAPPTICKETRESPONSE,
+  '__module__' : 'steammessages_clientserver_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientRequestEncryptedAppTicketResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientRequestEncryptedAppTicketResponse)
 
-CMsgClientWalletInfoUpdate = _reflection.GeneratedProtocolMessageType('CMsgClientWalletInfoUpdate', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTWALLETINFOUPDATE,
-  __module__ = 'steammessages_clientserver_pb2'
+CMsgClientWalletInfoUpdate = _reflection.GeneratedProtocolMessageType('CMsgClientWalletInfoUpdate', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTWALLETINFOUPDATE,
+  '__module__' : 'steammessages_clientserver_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientWalletInfoUpdate)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientWalletInfoUpdate)
 
-CMsgClientAMGetClanOfficers = _reflection.GeneratedProtocolMessageType('CMsgClientAMGetClanOfficers', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTAMGETCLANOFFICERS,
-  __module__ = 'steammessages_clientserver_pb2'
+CMsgClientAMGetClanOfficers = _reflection.GeneratedProtocolMessageType('CMsgClientAMGetClanOfficers', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTAMGETCLANOFFICERS,
+  '__module__' : 'steammessages_clientserver_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientAMGetClanOfficers)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientAMGetClanOfficers)
 
-CMsgClientAMGetClanOfficersResponse = _reflection.GeneratedProtocolMessageType('CMsgClientAMGetClanOfficersResponse', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTAMGETCLANOFFICERSRESPONSE,
-  __module__ = 'steammessages_clientserver_pb2'
+CMsgClientAMGetClanOfficersResponse = _reflection.GeneratedProtocolMessageType('CMsgClientAMGetClanOfficersResponse', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTAMGETCLANOFFICERSRESPONSE,
+  '__module__' : 'steammessages_clientserver_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientAMGetClanOfficersResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientAMGetClanOfficersResponse)
 
-CMsgClientAMGetPersonaNameHistory = _reflection.GeneratedProtocolMessageType('CMsgClientAMGetPersonaNameHistory', (_message.Message,), dict(
+CMsgClientAMGetPersonaNameHistory = _reflection.GeneratedProtocolMessageType('CMsgClientAMGetPersonaNameHistory', (_message.Message,), {
 
-  IdInstance = _reflection.GeneratedProtocolMessageType('IdInstance', (_message.Message,), dict(
-    DESCRIPTOR = _CMSGCLIENTAMGETPERSONANAMEHISTORY_IDINSTANCE,
-    __module__ = 'steammessages_clientserver_pb2'
+  'IdInstance' : _reflection.GeneratedProtocolMessageType('IdInstance', (_message.Message,), {
+    'DESCRIPTOR' : _CMSGCLIENTAMGETPERSONANAMEHISTORY_IDINSTANCE,
+    '__module__' : 'steammessages_clientserver_pb2'
     # @@protoc_insertion_point(class_scope:CMsgClientAMGetPersonaNameHistory.IdInstance)
-    ))
+    })
   ,
-  DESCRIPTOR = _CMSGCLIENTAMGETPERSONANAMEHISTORY,
-  __module__ = 'steammessages_clientserver_pb2'
+  'DESCRIPTOR' : _CMSGCLIENTAMGETPERSONANAMEHISTORY,
+  '__module__' : 'steammessages_clientserver_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientAMGetPersonaNameHistory)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientAMGetPersonaNameHistory)
 _sym_db.RegisterMessage(CMsgClientAMGetPersonaNameHistory.IdInstance)
 
-CMsgClientAMGetPersonaNameHistoryResponse = _reflection.GeneratedProtocolMessageType('CMsgClientAMGetPersonaNameHistoryResponse', (_message.Message,), dict(
+CMsgClientAMGetPersonaNameHistoryResponse = _reflection.GeneratedProtocolMessageType('CMsgClientAMGetPersonaNameHistoryResponse', (_message.Message,), {
 
-  NameTableInstance = _reflection.GeneratedProtocolMessageType('NameTableInstance', (_message.Message,), dict(
+  'NameTableInstance' : _reflection.GeneratedProtocolMessageType('NameTableInstance', (_message.Message,), {
 
-    NameInstance = _reflection.GeneratedProtocolMessageType('NameInstance', (_message.Message,), dict(
-      DESCRIPTOR = _CMSGCLIENTAMGETPERSONANAMEHISTORYRESPONSE_NAMETABLEINSTANCE_NAMEINSTANCE,
-      __module__ = 'steammessages_clientserver_pb2'
+    'NameInstance' : _reflection.GeneratedProtocolMessageType('NameInstance', (_message.Message,), {
+      'DESCRIPTOR' : _CMSGCLIENTAMGETPERSONANAMEHISTORYRESPONSE_NAMETABLEINSTANCE_NAMEINSTANCE,
+      '__module__' : 'steammessages_clientserver_pb2'
       # @@protoc_insertion_point(class_scope:CMsgClientAMGetPersonaNameHistoryResponse.NameTableInstance.NameInstance)
-      ))
+      })
     ,
-    DESCRIPTOR = _CMSGCLIENTAMGETPERSONANAMEHISTORYRESPONSE_NAMETABLEINSTANCE,
-    __module__ = 'steammessages_clientserver_pb2'
+    'DESCRIPTOR' : _CMSGCLIENTAMGETPERSONANAMEHISTORYRESPONSE_NAMETABLEINSTANCE,
+    '__module__' : 'steammessages_clientserver_pb2'
     # @@protoc_insertion_point(class_scope:CMsgClientAMGetPersonaNameHistoryResponse.NameTableInstance)
-    ))
+    })
   ,
-  DESCRIPTOR = _CMSGCLIENTAMGETPERSONANAMEHISTORYRESPONSE,
-  __module__ = 'steammessages_clientserver_pb2'
+  'DESCRIPTOR' : _CMSGCLIENTAMGETPERSONANAMEHISTORYRESPONSE,
+  '__module__' : 'steammessages_clientserver_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientAMGetPersonaNameHistoryResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientAMGetPersonaNameHistoryResponse)
 _sym_db.RegisterMessage(CMsgClientAMGetPersonaNameHistoryResponse.NameTableInstance)
 _sym_db.RegisterMessage(CMsgClientAMGetPersonaNameHistoryResponse.NameTableInstance.NameInstance)
 
-CMsgClientDeregisterWithServer = _reflection.GeneratedProtocolMessageType('CMsgClientDeregisterWithServer', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTDEREGISTERWITHSERVER,
-  __module__ = 'steammessages_clientserver_pb2'
+CMsgClientDeregisterWithServer = _reflection.GeneratedProtocolMessageType('CMsgClientDeregisterWithServer', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTDEREGISTERWITHSERVER,
+  '__module__' : 'steammessages_clientserver_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientDeregisterWithServer)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientDeregisterWithServer)
 
-CMsgClientClanState = _reflection.GeneratedProtocolMessageType('CMsgClientClanState', (_message.Message,), dict(
+CMsgClientClanState = _reflection.GeneratedProtocolMessageType('CMsgClientClanState', (_message.Message,), {
 
-  NameInfo = _reflection.GeneratedProtocolMessageType('NameInfo', (_message.Message,), dict(
-    DESCRIPTOR = _CMSGCLIENTCLANSTATE_NAMEINFO,
-    __module__ = 'steammessages_clientserver_pb2'
+  'NameInfo' : _reflection.GeneratedProtocolMessageType('NameInfo', (_message.Message,), {
+    'DESCRIPTOR' : _CMSGCLIENTCLANSTATE_NAMEINFO,
+    '__module__' : 'steammessages_clientserver_pb2'
     # @@protoc_insertion_point(class_scope:CMsgClientClanState.NameInfo)
-    ))
+    })
   ,
 
-  UserCounts = _reflection.GeneratedProtocolMessageType('UserCounts', (_message.Message,), dict(
-    DESCRIPTOR = _CMSGCLIENTCLANSTATE_USERCOUNTS,
-    __module__ = 'steammessages_clientserver_pb2'
+  'UserCounts' : _reflection.GeneratedProtocolMessageType('UserCounts', (_message.Message,), {
+    'DESCRIPTOR' : _CMSGCLIENTCLANSTATE_USERCOUNTS,
+    '__module__' : 'steammessages_clientserver_pb2'
     # @@protoc_insertion_point(class_scope:CMsgClientClanState.UserCounts)
-    ))
+    })
   ,
 
-  Event = _reflection.GeneratedProtocolMessageType('Event', (_message.Message,), dict(
-    DESCRIPTOR = _CMSGCLIENTCLANSTATE_EVENT,
-    __module__ = 'steammessages_clientserver_pb2'
+  'Event' : _reflection.GeneratedProtocolMessageType('Event', (_message.Message,), {
+    'DESCRIPTOR' : _CMSGCLIENTCLANSTATE_EVENT,
+    '__module__' : 'steammessages_clientserver_pb2'
     # @@protoc_insertion_point(class_scope:CMsgClientClanState.Event)
-    ))
+    })
   ,
-  DESCRIPTOR = _CMSGCLIENTCLANSTATE,
-  __module__ = 'steammessages_clientserver_pb2'
+  'DESCRIPTOR' : _CMSGCLIENTCLANSTATE,
+  '__module__' : 'steammessages_clientserver_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientClanState)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientClanState)
 _sym_db.RegisterMessage(CMsgClientClanState.NameInfo)
 _sym_db.RegisterMessage(CMsgClientClanState.UserCounts)
diff --git a/steam/protobufs/steammessages_clientserver_ucm_pb2.py b/steam/protobufs/steammessages_clientserver_ucm_pb2.py
index be57605..62f8036 100644
--- a/steam/protobufs/steammessages_clientserver_ucm_pb2.py
+++ b/steam/protobufs/steammessages_clientserver_ucm_pb2.py
@@ -1,9 +1,7 @@
 # -*- coding: utf-8 -*-
 # Generated by the protocol buffer compiler.  DO NOT EDIT!
 # source: steammessages_clientserver_ucm.proto
-
-import sys
-_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1'))
+"""Generated protocol buffer code."""
 from google.protobuf import descriptor as _descriptor
 from google.protobuf import message as _message
 from google.protobuf import reflection as _reflection
@@ -20,8 +18,9 @@ DESCRIPTOR = _descriptor.FileDescriptor(
   name='steammessages_clientserver_ucm.proto',
   package='',
   syntax='proto2',
-  serialized_options=_b('H\001\220\001\000'),
-  serialized_pb=_b('\n$steammessages_clientserver_ucm.proto\x1a\x18steammessages_base.proto\"\x81\x03\n\x1a\x43MsgClientUCMAddScreenshot\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x10\n\x08\x66ilename\x18\x02 \x01(\t\x12\x11\n\tthumbname\x18\x03 \x01(\t\x12\x13\n\x0bvr_filename\x18\x0e \x01(\t\x12\x17\n\x0frtime32_created\x18\x04 \x01(\x07\x12\r\n\x05width\x18\x05 \x01(\r\x12\x0e\n\x06height\x18\x06 \x01(\r\x12\x13\n\x0bpermissions\x18\x07 \x01(\r\x12\x0f\n\x07\x63\x61ption\x18\x08 \x01(\t\x12\x15\n\rshortcut_name\x18\t \x01(\t\x12,\n\x03tag\x18\n \x03(\x0b\x32\x1f.CMsgClientUCMAddScreenshot.Tag\x12\x16\n\x0etagged_steamid\x18\x0b \x03(\x06\x12\x13\n\x0bspoiler_tag\x18\x0c \x01(\x08\x12\x1e\n\x16tagged_publishedfileid\x18\r \x03(\x04\x1a*\n\x03Tag\x12\x10\n\x08tag_name\x18\x01 \x01(\t\x12\x11\n\ttag_value\x18\x02 \x01(\t\"d\n\"CMsgClientUCMAddScreenshotResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\x12*\n\x0cscreenshotid\x18\x02 \x01(\x06:\x14\x31\x38\x34\x34\x36\x37\x34\x34\x30\x37\x33\x37\x30\x39\x35\x35\x31\x36\x31\x35\"K\n\x1d\x43MsgClientUCMDeleteScreenshot\x12*\n\x0cscreenshotid\x18\x01 \x01(\x06:\x14\x31\x38\x34\x34\x36\x37\x34\x34\x30\x37\x33\x37\x30\x39\x35\x35\x31\x36\x31\x35\";\n%CMsgClientUCMDeleteScreenshotResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\"\xd1\x02\n\x18\x43MsgClientUCMPublishFile\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x11\n\tfile_name\x18\x02 \x01(\t\x12\x19\n\x11preview_file_name\x18\x03 \x01(\t\x12\x17\n\x0f\x63onsumer_app_id\x18\x04 \x01(\r\x12\r\n\x05title\x18\x05 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x06 \x01(\t\x12\x0c\n\x04tags\x18\x08 \x03(\t\x12\x15\n\rworkshop_file\x18\t \x01(\x08\x12\x12\n\nvisibility\x18\n \x01(\x05\x12\x11\n\tfile_type\x18\x0b \x01(\r\x12\x0b\n\x03url\x18\x0c \x01(\t\x12\x16\n\x0evideo_provider\x18\r \x01(\r\x12\x1a\n\x12video_account_name\x18\x0e \x01(\t\x12\x18\n\x10video_identifier\x18\x0f \x01(\t\x12\x13\n\x0bin_progress\x18\x10 \x01(\x08\"\xa1\x01\n CMsgClientUCMPublishFileResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\x12/\n\x11published_file_id\x18\x02 \x01(\x06:\x14\x31\x38\x34\x34\x36\x37\x34\x34\x30\x37\x33\x37\x30\x39\x35\x35\x31\x36\x31\x35\x12\x38\n)needs_workshop_legal_agreement_acceptance\x18\x03 \x01(\x08:\x05\x66\x61lse\"\xb7\x07\n CMsgClientUCMUpdatePublishedFile\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x19\n\x11published_file_id\x18\x02 \x01(\x06\x12\x11\n\tfile_name\x18\x03 \x01(\t\x12\x19\n\x11preview_file_name\x18\x04 \x01(\t\x12\r\n\x05title\x18\x05 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x06 \x01(\t\x12\x0c\n\x04tags\x18\x07 \x03(\t\x12\x12\n\nvisibility\x18\x08 \x01(\x05\x12\x13\n\x0bupdate_file\x18\t \x01(\x08\x12\x1b\n\x13update_preview_file\x18\n \x01(\x08\x12\x14\n\x0cupdate_title\x18\x0b \x01(\x08\x12\x1a\n\x12update_description\x18\x0c \x01(\x08\x12\x13\n\x0bupdate_tags\x18\r \x01(\x08\x12\x19\n\x11update_visibility\x18\x0e \x01(\x08\x12\x1a\n\x12\x63hange_description\x18\x0f \x01(\t\x12\x12\n\nupdate_url\x18\x10 \x01(\x08\x12\x0b\n\x03url\x18\x11 \x01(\t\x12\x1f\n\x17update_content_manifest\x18\x12 \x01(\x08\x12\x18\n\x10\x63ontent_manifest\x18\x13 \x01(\x06\x12\x10\n\x08metadata\x18\x14 \x01(\t\x12\x17\n\x0fupdate_metadata\x18\x15 \x01(\x08\x12\x13\n\x08language\x18\x16 \x01(\x05:\x01\x30\x12\x16\n\x0eremoved_kvtags\x18\x17 \x03(\t\x12=\n\x06kvtags\x18\x18 \x03(\x0b\x32-.CMsgClientUCMUpdatePublishedFile.KeyValueTag\x12\x45\n\x08previews\x18\x19 \x03(\x0b\x32\x33.CMsgClientUCMUpdatePublishedFile.AdditionalPreview\x12\x1a\n\x12previews_to_remove\x18\x1a \x03(\x05\x12\x19\n\x11\x63lear_in_progress\x18\x1b \x01(\x08\x12\x19\n\x11remove_all_kvtags\x18\x1c \x01(\x08\x1a)\n\x0bKeyValueTag\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t\x1a\x8c\x01\n\x11\x41\x64\x64itionalPreview\x12\x1a\n\x12original_file_name\x18\x01 \x01(\t\x12\x1a\n\x12internal_file_name\x18\x02 \x01(\t\x12\x0f\n\x07videoid\x18\x03 \x01(\t\x12\x14\n\x0cpreview_type\x18\x04 \x01(\r\x12\x18\n\x0cupdate_index\x18\x05 \x01(\x05:\x02-1\"x\n(CMsgClientUCMUpdatePublishedFileResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\x12\x38\n)needs_workshop_legal_agreement_acceptance\x18\x02 \x01(\x08:\x05\x66\x61lse\"M\n CMsgClientUCMDeletePublishedFile\x12\x19\n\x11published_file_id\x18\x01 \x01(\x06\x12\x0e\n\x06\x61pp_id\x18\x02 \x01(\r\">\n(CMsgClientUCMDeletePublishedFileResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\"\x8c\x01\n4CMsgClientUCMEnumerateUserSubscribedFilesWithUpdates\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x13\n\x0bstart_index\x18\x02 \x01(\r\x12\x12\n\nstart_time\x18\x03 \x01(\x07\x12\x1b\n\x10\x64\x65sired_revision\x18\x04 \x01(\r:\x01\x30\"\x91\x03\n<CMsgClientUCMEnumerateUserSubscribedFilesWithUpdatesResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\x12g\n\x10subscribed_files\x18\x02 \x03(\x0b\x32M.CMsgClientUCMEnumerateUserSubscribedFilesWithUpdatesResponse.PublishedFileId\x12\x15\n\rtotal_results\x18\x03 \x01(\r\x1a\xbc\x01\n\x0fPublishedFileId\x12\x19\n\x11published_file_id\x18\x01 \x01(\x06\x12\x1d\n\x12rtime32_subscribed\x18\x02 \x01(\x07:\x01\x30\x12\r\n\x05\x61ppid\x18\x03 \x01(\r\x12\x15\n\rfile_hcontent\x18\x04 \x01(\x06\x12\x11\n\tfile_size\x18\x05 \x01(\r\x12\x1c\n\x14rtime32_last_updated\x18\x06 \x01(\x07\x12\x18\n\x10is_depot_content\x18\x07 \x01(\x08\"\xb5\x01\n!CMsgClientUCMPublishedFileUpdated\x12\x19\n\x11published_file_id\x18\x01 \x01(\x06\x12\x0e\n\x06\x61pp_id\x18\x02 \x01(\r\x12\x14\n\x0ctime_updated\x18\x03 \x01(\r\x12\x10\n\x08hcontent\x18\x04 \x01(\x06\x12\x11\n\tfile_size\x18\x05 \x01(\x07\x12\x18\n\x10is_depot_content\x18\x06 \x01(\x08\x12\x10\n\x08revision\x18\x07 \x01(\r\"k\n$CMsgClientWorkshopItemChangesRequest\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x19\n\x11last_time_updated\x18\x02 \x01(\r\x12\x18\n\x10num_items_needed\x18\x03 \x01(\r\"\xfb\x01\n%CMsgClientWorkshopItemChangesResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\x12\x13\n\x0bupdate_time\x18\x02 \x01(\r\x12O\n\x0eworkshop_items\x18\x05 \x03(\x0b\x32\x37.CMsgClientWorkshopItemChangesResponse.WorkshopItemInfo\x1aX\n\x10WorkshopItemInfo\x12\x19\n\x11published_file_id\x18\x01 \x01(\x06\x12\x14\n\x0ctime_updated\x18\x02 \x01(\r\x12\x13\n\x0bmanifest_id\x18\x03 \x01(\x06\"d\n\'CMsgClientUCMSetUserPublishedFileAction\x12\x19\n\x11published_file_id\x18\x01 \x01(\x06\x12\x0e\n\x06\x61pp_id\x18\x02 \x01(\r\x12\x0e\n\x06\x61\x63tion\x18\x03 \x01(\x05\"E\n/CMsgClientUCMSetUserPublishedFileActionResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\"g\n0CMsgClientUCMEnumeratePublishedFilesByUserAction\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x13\n\x0bstart_index\x18\x02 \x01(\r\x12\x0e\n\x06\x61\x63tion\x18\x03 \x01(\x05\"\x94\x02\n8CMsgClientUCMEnumeratePublishedFilesByUserActionResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\x12\x62\n\x0fpublished_files\x18\x02 \x03(\x0b\x32I.CMsgClientUCMEnumeratePublishedFilesByUserActionResponse.PublishedFileId\x12\x15\n\rtotal_results\x18\x03 \x01(\r\x1aI\n\x0fPublishedFileId\x12\x19\n\x11published_file_id\x18\x01 \x01(\x06\x12\x1b\n\x10rtime_time_stamp\x18\x02 \x01(\x07:\x01\x30\"\x1e\n\x1c\x43MsgClientScreenshotsChangedB\x05H\x01\x90\x01\x00')
+  serialized_options=b'H\001\220\001\000',
+  create_key=_descriptor._internal_create_key,
+  serialized_pb=b'\n$steammessages_clientserver_ucm.proto\x1a\x18steammessages_base.proto\"\x81\x03\n\x1a\x43MsgClientUCMAddScreenshot\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x10\n\x08\x66ilename\x18\x02 \x01(\t\x12\x11\n\tthumbname\x18\x03 \x01(\t\x12\x13\n\x0bvr_filename\x18\x0e \x01(\t\x12\x17\n\x0frtime32_created\x18\x04 \x01(\x07\x12\r\n\x05width\x18\x05 \x01(\r\x12\x0e\n\x06height\x18\x06 \x01(\r\x12\x13\n\x0bpermissions\x18\x07 \x01(\r\x12\x0f\n\x07\x63\x61ption\x18\x08 \x01(\t\x12\x15\n\rshortcut_name\x18\t \x01(\t\x12,\n\x03tag\x18\n \x03(\x0b\x32\x1f.CMsgClientUCMAddScreenshot.Tag\x12\x16\n\x0etagged_steamid\x18\x0b \x03(\x06\x12\x13\n\x0bspoiler_tag\x18\x0c \x01(\x08\x12\x1e\n\x16tagged_publishedfileid\x18\r \x03(\x04\x1a*\n\x03Tag\x12\x10\n\x08tag_name\x18\x01 \x01(\t\x12\x11\n\ttag_value\x18\x02 \x01(\t\"d\n\"CMsgClientUCMAddScreenshotResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\x12*\n\x0cscreenshotid\x18\x02 \x01(\x06:\x14\x31\x38\x34\x34\x36\x37\x34\x34\x30\x37\x33\x37\x30\x39\x35\x35\x31\x36\x31\x35\"K\n\x1d\x43MsgClientUCMDeleteScreenshot\x12*\n\x0cscreenshotid\x18\x01 \x01(\x06:\x14\x31\x38\x34\x34\x36\x37\x34\x34\x30\x37\x33\x37\x30\x39\x35\x35\x31\x36\x31\x35\";\n%CMsgClientUCMDeleteScreenshotResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\"\xd1\x02\n\x18\x43MsgClientUCMPublishFile\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x11\n\tfile_name\x18\x02 \x01(\t\x12\x19\n\x11preview_file_name\x18\x03 \x01(\t\x12\x17\n\x0f\x63onsumer_app_id\x18\x04 \x01(\r\x12\r\n\x05title\x18\x05 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x06 \x01(\t\x12\x0c\n\x04tags\x18\x08 \x03(\t\x12\x15\n\rworkshop_file\x18\t \x01(\x08\x12\x12\n\nvisibility\x18\n \x01(\x05\x12\x11\n\tfile_type\x18\x0b \x01(\r\x12\x0b\n\x03url\x18\x0c \x01(\t\x12\x16\n\x0evideo_provider\x18\r \x01(\r\x12\x1a\n\x12video_account_name\x18\x0e \x01(\t\x12\x18\n\x10video_identifier\x18\x0f \x01(\t\x12\x13\n\x0bin_progress\x18\x10 \x01(\x08\"\xa1\x01\n CMsgClientUCMPublishFileResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\x12/\n\x11published_file_id\x18\x02 \x01(\x06:\x14\x31\x38\x34\x34\x36\x37\x34\x34\x30\x37\x33\x37\x30\x39\x35\x35\x31\x36\x31\x35\x12\x38\n)needs_workshop_legal_agreement_acceptance\x18\x03 \x01(\x08:\x05\x66\x61lse\"\xb7\x07\n CMsgClientUCMUpdatePublishedFile\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x19\n\x11published_file_id\x18\x02 \x01(\x06\x12\x11\n\tfile_name\x18\x03 \x01(\t\x12\x19\n\x11preview_file_name\x18\x04 \x01(\t\x12\r\n\x05title\x18\x05 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x06 \x01(\t\x12\x0c\n\x04tags\x18\x07 \x03(\t\x12\x12\n\nvisibility\x18\x08 \x01(\x05\x12\x13\n\x0bupdate_file\x18\t \x01(\x08\x12\x1b\n\x13update_preview_file\x18\n \x01(\x08\x12\x14\n\x0cupdate_title\x18\x0b \x01(\x08\x12\x1a\n\x12update_description\x18\x0c \x01(\x08\x12\x13\n\x0bupdate_tags\x18\r \x01(\x08\x12\x19\n\x11update_visibility\x18\x0e \x01(\x08\x12\x1a\n\x12\x63hange_description\x18\x0f \x01(\t\x12\x12\n\nupdate_url\x18\x10 \x01(\x08\x12\x0b\n\x03url\x18\x11 \x01(\t\x12\x1f\n\x17update_content_manifest\x18\x12 \x01(\x08\x12\x18\n\x10\x63ontent_manifest\x18\x13 \x01(\x06\x12\x10\n\x08metadata\x18\x14 \x01(\t\x12\x17\n\x0fupdate_metadata\x18\x15 \x01(\x08\x12\x13\n\x08language\x18\x16 \x01(\x05:\x01\x30\x12\x16\n\x0eremoved_kvtags\x18\x17 \x03(\t\x12=\n\x06kvtags\x18\x18 \x03(\x0b\x32-.CMsgClientUCMUpdatePublishedFile.KeyValueTag\x12\x45\n\x08previews\x18\x19 \x03(\x0b\x32\x33.CMsgClientUCMUpdatePublishedFile.AdditionalPreview\x12\x1a\n\x12previews_to_remove\x18\x1a \x03(\x05\x12\x19\n\x11\x63lear_in_progress\x18\x1b \x01(\x08\x12\x19\n\x11remove_all_kvtags\x18\x1c \x01(\x08\x1a)\n\x0bKeyValueTag\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t\x1a\x8c\x01\n\x11\x41\x64\x64itionalPreview\x12\x1a\n\x12original_file_name\x18\x01 \x01(\t\x12\x1a\n\x12internal_file_name\x18\x02 \x01(\t\x12\x0f\n\x07videoid\x18\x03 \x01(\t\x12\x14\n\x0cpreview_type\x18\x04 \x01(\r\x12\x18\n\x0cupdate_index\x18\x05 \x01(\x05:\x02-1\"x\n(CMsgClientUCMUpdatePublishedFileResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\x12\x38\n)needs_workshop_legal_agreement_acceptance\x18\x02 \x01(\x08:\x05\x66\x61lse\"M\n CMsgClientUCMDeletePublishedFile\x12\x19\n\x11published_file_id\x18\x01 \x01(\x06\x12\x0e\n\x06\x61pp_id\x18\x02 \x01(\r\">\n(CMsgClientUCMDeletePublishedFileResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\"\x8c\x01\n4CMsgClientUCMEnumerateUserSubscribedFilesWithUpdates\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x13\n\x0bstart_index\x18\x02 \x01(\r\x12\x12\n\nstart_time\x18\x03 \x01(\x07\x12\x1b\n\x10\x64\x65sired_revision\x18\x04 \x01(\r:\x01\x30\"\x91\x03\n<CMsgClientUCMEnumerateUserSubscribedFilesWithUpdatesResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\x12g\n\x10subscribed_files\x18\x02 \x03(\x0b\x32M.CMsgClientUCMEnumerateUserSubscribedFilesWithUpdatesResponse.PublishedFileId\x12\x15\n\rtotal_results\x18\x03 \x01(\r\x1a\xbc\x01\n\x0fPublishedFileId\x12\x19\n\x11published_file_id\x18\x01 \x01(\x06\x12\x1d\n\x12rtime32_subscribed\x18\x02 \x01(\x07:\x01\x30\x12\r\n\x05\x61ppid\x18\x03 \x01(\r\x12\x15\n\rfile_hcontent\x18\x04 \x01(\x06\x12\x11\n\tfile_size\x18\x05 \x01(\r\x12\x1c\n\x14rtime32_last_updated\x18\x06 \x01(\x07\x12\x18\n\x10is_depot_content\x18\x07 \x01(\x08\"\xb5\x01\n!CMsgClientUCMPublishedFileUpdated\x12\x19\n\x11published_file_id\x18\x01 \x01(\x06\x12\x0e\n\x06\x61pp_id\x18\x02 \x01(\r\x12\x14\n\x0ctime_updated\x18\x03 \x01(\r\x12\x10\n\x08hcontent\x18\x04 \x01(\x06\x12\x11\n\tfile_size\x18\x05 \x01(\x07\x12\x18\n\x10is_depot_content\x18\x06 \x01(\x08\x12\x10\n\x08revision\x18\x07 \x01(\r\"k\n$CMsgClientWorkshopItemChangesRequest\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x19\n\x11last_time_updated\x18\x02 \x01(\r\x12\x18\n\x10num_items_needed\x18\x03 \x01(\r\"\xfb\x01\n%CMsgClientWorkshopItemChangesResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\x12\x13\n\x0bupdate_time\x18\x02 \x01(\r\x12O\n\x0eworkshop_items\x18\x05 \x03(\x0b\x32\x37.CMsgClientWorkshopItemChangesResponse.WorkshopItemInfo\x1aX\n\x10WorkshopItemInfo\x12\x19\n\x11published_file_id\x18\x01 \x01(\x06\x12\x14\n\x0ctime_updated\x18\x02 \x01(\r\x12\x13\n\x0bmanifest_id\x18\x03 \x01(\x06\"d\n\'CMsgClientUCMSetUserPublishedFileAction\x12\x19\n\x11published_file_id\x18\x01 \x01(\x06\x12\x0e\n\x06\x61pp_id\x18\x02 \x01(\r\x12\x0e\n\x06\x61\x63tion\x18\x03 \x01(\x05\"E\n/CMsgClientUCMSetUserPublishedFileActionResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\"g\n0CMsgClientUCMEnumeratePublishedFilesByUserAction\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x13\n\x0bstart_index\x18\x02 \x01(\r\x12\x0e\n\x06\x61\x63tion\x18\x03 \x01(\x05\"\x94\x02\n8CMsgClientUCMEnumeratePublishedFilesByUserActionResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\x12\x62\n\x0fpublished_files\x18\x02 \x03(\x0b\x32I.CMsgClientUCMEnumeratePublishedFilesByUserActionResponse.PublishedFileId\x12\x15\n\rtotal_results\x18\x03 \x01(\r\x1aI\n\x0fPublishedFileId\x12\x19\n\x11published_file_id\x18\x01 \x01(\x06\x12\x1b\n\x10rtime_time_stamp\x18\x02 \x01(\x07:\x01\x30\"\x1e\n\x1c\x43MsgClientScreenshotsChangedB\x05H\x01\x90\x01\x00'
   ,
   dependencies=[steammessages__base__pb2.DESCRIPTOR,])
 
@@ -34,21 +33,22 @@ _CMSGCLIENTUCMADDSCREENSHOT_TAG = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='tag_name', full_name='CMsgClientUCMAddScreenshot.Tag.tag_name', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='tag_value', full_name='CMsgClientUCMAddScreenshot.Tag.tag_value', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -71,6 +71,7 @@ _CMSGCLIENTUCMADDSCREENSHOT = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CMsgClientUCMAddScreenshot.appid', index=0,
@@ -78,98 +79,98 @@ _CMSGCLIENTUCMADDSCREENSHOT = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='filename', full_name='CMsgClientUCMAddScreenshot.filename', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='thumbname', full_name='CMsgClientUCMAddScreenshot.thumbname', index=2,
       number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='vr_filename', full_name='CMsgClientUCMAddScreenshot.vr_filename', index=3,
       number=14, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='rtime32_created', full_name='CMsgClientUCMAddScreenshot.rtime32_created', index=4,
       number=4, type=7, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='width', full_name='CMsgClientUCMAddScreenshot.width', index=5,
       number=5, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='height', full_name='CMsgClientUCMAddScreenshot.height', index=6,
       number=6, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='permissions', full_name='CMsgClientUCMAddScreenshot.permissions', index=7,
       number=7, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='caption', full_name='CMsgClientUCMAddScreenshot.caption', index=8,
       number=8, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='shortcut_name', full_name='CMsgClientUCMAddScreenshot.shortcut_name', index=9,
       number=9, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='tag', full_name='CMsgClientUCMAddScreenshot.tag', index=10,
       number=10, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='tagged_steamid', full_name='CMsgClientUCMAddScreenshot.tagged_steamid', index=11,
       number=11, type=6, cpp_type=4, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='spoiler_tag', full_name='CMsgClientUCMAddScreenshot.spoiler_tag', index=12,
       number=12, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='tagged_publishedfileid', full_name='CMsgClientUCMAddScreenshot.tagged_publishedfileid', index=13,
       number=13, type=4, cpp_type=4, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -193,6 +194,7 @@ _CMSGCLIENTUCMADDSCREENSHOTRESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='eresult', full_name='CMsgClientUCMAddScreenshotResponse.eresult', index=0,
@@ -200,14 +202,14 @@ _CMSGCLIENTUCMADDSCREENSHOTRESPONSE = _descriptor.Descriptor(
       has_default_value=True, default_value=2,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='screenshotid', full_name='CMsgClientUCMAddScreenshotResponse.screenshotid', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=True, default_value=18446744073709551615,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -231,6 +233,7 @@ _CMSGCLIENTUCMDELETESCREENSHOT = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='screenshotid', full_name='CMsgClientUCMDeleteScreenshot.screenshotid', index=0,
@@ -238,7 +241,7 @@ _CMSGCLIENTUCMDELETESCREENSHOT = _descriptor.Descriptor(
       has_default_value=True, default_value=18446744073709551615,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -262,6 +265,7 @@ _CMSGCLIENTUCMDELETESCREENSHOTRESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='eresult', full_name='CMsgClientUCMDeleteScreenshotResponse.eresult', index=0,
@@ -269,7 +273,7 @@ _CMSGCLIENTUCMDELETESCREENSHOTRESPONSE = _descriptor.Descriptor(
       has_default_value=True, default_value=2,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -293,6 +297,7 @@ _CMSGCLIENTUCMPUBLISHFILE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CMsgClientUCMPublishFile.app_id', index=0,
@@ -300,105 +305,105 @@ _CMSGCLIENTUCMPUBLISHFILE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='file_name', full_name='CMsgClientUCMPublishFile.file_name', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='preview_file_name', full_name='CMsgClientUCMPublishFile.preview_file_name', index=2,
       number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='consumer_app_id', full_name='CMsgClientUCMPublishFile.consumer_app_id', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='title', full_name='CMsgClientUCMPublishFile.title', index=4,
       number=5, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='description', full_name='CMsgClientUCMPublishFile.description', index=5,
       number=6, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='tags', full_name='CMsgClientUCMPublishFile.tags', index=6,
       number=8, type=9, cpp_type=9, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='workshop_file', full_name='CMsgClientUCMPublishFile.workshop_file', index=7,
       number=9, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='visibility', full_name='CMsgClientUCMPublishFile.visibility', index=8,
       number=10, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='file_type', full_name='CMsgClientUCMPublishFile.file_type', index=9,
       number=11, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='url', full_name='CMsgClientUCMPublishFile.url', index=10,
       number=12, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='video_provider', full_name='CMsgClientUCMPublishFile.video_provider', index=11,
       number=13, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='video_account_name', full_name='CMsgClientUCMPublishFile.video_account_name', index=12,
       number=14, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='video_identifier', full_name='CMsgClientUCMPublishFile.video_identifier', index=13,
       number=15, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='in_progress', full_name='CMsgClientUCMPublishFile.in_progress', index=14,
       number=16, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -422,6 +427,7 @@ _CMSGCLIENTUCMPUBLISHFILERESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='eresult', full_name='CMsgClientUCMPublishFileResponse.eresult', index=0,
@@ -429,21 +435,21 @@ _CMSGCLIENTUCMPUBLISHFILERESPONSE = _descriptor.Descriptor(
       has_default_value=True, default_value=2,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='published_file_id', full_name='CMsgClientUCMPublishFileResponse.published_file_id', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=True, default_value=18446744073709551615,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='needs_workshop_legal_agreement_acceptance', full_name='CMsgClientUCMPublishFileResponse.needs_workshop_legal_agreement_acceptance', index=2,
       number=3, type=8, cpp_type=7, label=1,
       has_default_value=True, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -467,21 +473,22 @@ _CMSGCLIENTUCMUPDATEPUBLISHEDFILE_KEYVALUETAG = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='key', full_name='CMsgClientUCMUpdatePublishedFile.KeyValueTag.key', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='value', full_name='CMsgClientUCMUpdatePublishedFile.KeyValueTag.value', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -504,42 +511,43 @@ _CMSGCLIENTUCMUPDATEPUBLISHEDFILE_ADDITIONALPREVIEW = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='original_file_name', full_name='CMsgClientUCMUpdatePublishedFile.AdditionalPreview.original_file_name', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='internal_file_name', full_name='CMsgClientUCMUpdatePublishedFile.AdditionalPreview.internal_file_name', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='videoid', full_name='CMsgClientUCMUpdatePublishedFile.AdditionalPreview.videoid', index=2,
       number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='preview_type', full_name='CMsgClientUCMUpdatePublishedFile.AdditionalPreview.preview_type', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='update_index', full_name='CMsgClientUCMUpdatePublishedFile.AdditionalPreview.update_index', index=4,
       number=5, type=5, cpp_type=1, label=1,
       has_default_value=True, default_value=-1,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -562,6 +570,7 @@ _CMSGCLIENTUCMUPDATEPUBLISHEDFILE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CMsgClientUCMUpdatePublishedFile.app_id', index=0,
@@ -569,196 +578,196 @@ _CMSGCLIENTUCMUPDATEPUBLISHEDFILE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='published_file_id', full_name='CMsgClientUCMUpdatePublishedFile.published_file_id', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='file_name', full_name='CMsgClientUCMUpdatePublishedFile.file_name', index=2,
       number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='preview_file_name', full_name='CMsgClientUCMUpdatePublishedFile.preview_file_name', index=3,
       number=4, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='title', full_name='CMsgClientUCMUpdatePublishedFile.title', index=4,
       number=5, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='description', full_name='CMsgClientUCMUpdatePublishedFile.description', index=5,
       number=6, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='tags', full_name='CMsgClientUCMUpdatePublishedFile.tags', index=6,
       number=7, type=9, cpp_type=9, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='visibility', full_name='CMsgClientUCMUpdatePublishedFile.visibility', index=7,
       number=8, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='update_file', full_name='CMsgClientUCMUpdatePublishedFile.update_file', index=8,
       number=9, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='update_preview_file', full_name='CMsgClientUCMUpdatePublishedFile.update_preview_file', index=9,
       number=10, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='update_title', full_name='CMsgClientUCMUpdatePublishedFile.update_title', index=10,
       number=11, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='update_description', full_name='CMsgClientUCMUpdatePublishedFile.update_description', index=11,
       number=12, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='update_tags', full_name='CMsgClientUCMUpdatePublishedFile.update_tags', index=12,
       number=13, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='update_visibility', full_name='CMsgClientUCMUpdatePublishedFile.update_visibility', index=13,
       number=14, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='change_description', full_name='CMsgClientUCMUpdatePublishedFile.change_description', index=14,
       number=15, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='update_url', full_name='CMsgClientUCMUpdatePublishedFile.update_url', index=15,
       number=16, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='url', full_name='CMsgClientUCMUpdatePublishedFile.url', index=16,
       number=17, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='update_content_manifest', full_name='CMsgClientUCMUpdatePublishedFile.update_content_manifest', index=17,
       number=18, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='content_manifest', full_name='CMsgClientUCMUpdatePublishedFile.content_manifest', index=18,
       number=19, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='metadata', full_name='CMsgClientUCMUpdatePublishedFile.metadata', index=19,
       number=20, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='update_metadata', full_name='CMsgClientUCMUpdatePublishedFile.update_metadata', index=20,
       number=21, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='language', full_name='CMsgClientUCMUpdatePublishedFile.language', index=21,
       number=22, type=5, cpp_type=1, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='removed_kvtags', full_name='CMsgClientUCMUpdatePublishedFile.removed_kvtags', index=22,
       number=23, type=9, cpp_type=9, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='kvtags', full_name='CMsgClientUCMUpdatePublishedFile.kvtags', index=23,
       number=24, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='previews', full_name='CMsgClientUCMUpdatePublishedFile.previews', index=24,
       number=25, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='previews_to_remove', full_name='CMsgClientUCMUpdatePublishedFile.previews_to_remove', index=25,
       number=26, type=5, cpp_type=1, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='clear_in_progress', full_name='CMsgClientUCMUpdatePublishedFile.clear_in_progress', index=26,
       number=27, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='remove_all_kvtags', full_name='CMsgClientUCMUpdatePublishedFile.remove_all_kvtags', index=27,
       number=28, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -782,6 +791,7 @@ _CMSGCLIENTUCMUPDATEPUBLISHEDFILERESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='eresult', full_name='CMsgClientUCMUpdatePublishedFileResponse.eresult', index=0,
@@ -789,14 +799,14 @@ _CMSGCLIENTUCMUPDATEPUBLISHEDFILERESPONSE = _descriptor.Descriptor(
       has_default_value=True, default_value=2,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='needs_workshop_legal_agreement_acceptance', full_name='CMsgClientUCMUpdatePublishedFileResponse.needs_workshop_legal_agreement_acceptance', index=1,
       number=2, type=8, cpp_type=7, label=1,
       has_default_value=True, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -820,6 +830,7 @@ _CMSGCLIENTUCMDELETEPUBLISHEDFILE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='published_file_id', full_name='CMsgClientUCMDeletePublishedFile.published_file_id', index=0,
@@ -827,14 +838,14 @@ _CMSGCLIENTUCMDELETEPUBLISHEDFILE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CMsgClientUCMDeletePublishedFile.app_id', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -858,6 +869,7 @@ _CMSGCLIENTUCMDELETEPUBLISHEDFILERESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='eresult', full_name='CMsgClientUCMDeletePublishedFileResponse.eresult', index=0,
@@ -865,7 +877,7 @@ _CMSGCLIENTUCMDELETEPUBLISHEDFILERESPONSE = _descriptor.Descriptor(
       has_default_value=True, default_value=2,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -889,6 +901,7 @@ _CMSGCLIENTUCMENUMERATEUSERSUBSCRIBEDFILESWITHUPDATES = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CMsgClientUCMEnumerateUserSubscribedFilesWithUpdates.app_id', index=0,
@@ -896,28 +909,28 @@ _CMSGCLIENTUCMENUMERATEUSERSUBSCRIBEDFILESWITHUPDATES = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='start_index', full_name='CMsgClientUCMEnumerateUserSubscribedFilesWithUpdates.start_index', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='start_time', full_name='CMsgClientUCMEnumerateUserSubscribedFilesWithUpdates.start_time', index=2,
       number=3, type=7, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='desired_revision', full_name='CMsgClientUCMEnumerateUserSubscribedFilesWithUpdates.desired_revision', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -941,6 +954,7 @@ _CMSGCLIENTUCMENUMERATEUSERSUBSCRIBEDFILESWITHUPDATESRESPONSE_PUBLISHEDFILEID =
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='published_file_id', full_name='CMsgClientUCMEnumerateUserSubscribedFilesWithUpdatesResponse.PublishedFileId.published_file_id', index=0,
@@ -948,49 +962,49 @@ _CMSGCLIENTUCMENUMERATEUSERSUBSCRIBEDFILESWITHUPDATESRESPONSE_PUBLISHEDFILEID =
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='rtime32_subscribed', full_name='CMsgClientUCMEnumerateUserSubscribedFilesWithUpdatesResponse.PublishedFileId.rtime32_subscribed', index=1,
       number=2, type=7, cpp_type=3, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='appid', full_name='CMsgClientUCMEnumerateUserSubscribedFilesWithUpdatesResponse.PublishedFileId.appid', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='file_hcontent', full_name='CMsgClientUCMEnumerateUserSubscribedFilesWithUpdatesResponse.PublishedFileId.file_hcontent', index=3,
       number=4, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='file_size', full_name='CMsgClientUCMEnumerateUserSubscribedFilesWithUpdatesResponse.PublishedFileId.file_size', index=4,
       number=5, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='rtime32_last_updated', full_name='CMsgClientUCMEnumerateUserSubscribedFilesWithUpdatesResponse.PublishedFileId.rtime32_last_updated', index=5,
       number=6, type=7, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='is_depot_content', full_name='CMsgClientUCMEnumerateUserSubscribedFilesWithUpdatesResponse.PublishedFileId.is_depot_content', index=6,
       number=7, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1013,6 +1027,7 @@ _CMSGCLIENTUCMENUMERATEUSERSUBSCRIBEDFILESWITHUPDATESRESPONSE = _descriptor.Desc
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='eresult', full_name='CMsgClientUCMEnumerateUserSubscribedFilesWithUpdatesResponse.eresult', index=0,
@@ -1020,21 +1035,21 @@ _CMSGCLIENTUCMENUMERATEUSERSUBSCRIBEDFILESWITHUPDATESRESPONSE = _descriptor.Desc
       has_default_value=True, default_value=2,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='subscribed_files', full_name='CMsgClientUCMEnumerateUserSubscribedFilesWithUpdatesResponse.subscribed_files', index=1,
       number=2, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='total_results', full_name='CMsgClientUCMEnumerateUserSubscribedFilesWithUpdatesResponse.total_results', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1058,6 +1073,7 @@ _CMSGCLIENTUCMPUBLISHEDFILEUPDATED = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='published_file_id', full_name='CMsgClientUCMPublishedFileUpdated.published_file_id', index=0,
@@ -1065,49 +1081,49 @@ _CMSGCLIENTUCMPUBLISHEDFILEUPDATED = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CMsgClientUCMPublishedFileUpdated.app_id', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='time_updated', full_name='CMsgClientUCMPublishedFileUpdated.time_updated', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='hcontent', full_name='CMsgClientUCMPublishedFileUpdated.hcontent', index=3,
       number=4, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='file_size', full_name='CMsgClientUCMPublishedFileUpdated.file_size', index=4,
       number=5, type=7, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='is_depot_content', full_name='CMsgClientUCMPublishedFileUpdated.is_depot_content', index=5,
       number=6, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='revision', full_name='CMsgClientUCMPublishedFileUpdated.revision', index=6,
       number=7, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1131,6 +1147,7 @@ _CMSGCLIENTWORKSHOPITEMCHANGESREQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CMsgClientWorkshopItemChangesRequest.app_id', index=0,
@@ -1138,21 +1155,21 @@ _CMSGCLIENTWORKSHOPITEMCHANGESREQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='last_time_updated', full_name='CMsgClientWorkshopItemChangesRequest.last_time_updated', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='num_items_needed', full_name='CMsgClientWorkshopItemChangesRequest.num_items_needed', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1176,6 +1193,7 @@ _CMSGCLIENTWORKSHOPITEMCHANGESRESPONSE_WORKSHOPITEMINFO = _descriptor.Descriptor
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='published_file_id', full_name='CMsgClientWorkshopItemChangesResponse.WorkshopItemInfo.published_file_id', index=0,
@@ -1183,21 +1201,21 @@ _CMSGCLIENTWORKSHOPITEMCHANGESRESPONSE_WORKSHOPITEMINFO = _descriptor.Descriptor
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='time_updated', full_name='CMsgClientWorkshopItemChangesResponse.WorkshopItemInfo.time_updated', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='manifest_id', full_name='CMsgClientWorkshopItemChangesResponse.WorkshopItemInfo.manifest_id', index=2,
       number=3, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1220,6 +1238,7 @@ _CMSGCLIENTWORKSHOPITEMCHANGESRESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='eresult', full_name='CMsgClientWorkshopItemChangesResponse.eresult', index=0,
@@ -1227,21 +1246,21 @@ _CMSGCLIENTWORKSHOPITEMCHANGESRESPONSE = _descriptor.Descriptor(
       has_default_value=True, default_value=2,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='update_time', full_name='CMsgClientWorkshopItemChangesResponse.update_time', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='workshop_items', full_name='CMsgClientWorkshopItemChangesResponse.workshop_items', index=2,
       number=5, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1265,6 +1284,7 @@ _CMSGCLIENTUCMSETUSERPUBLISHEDFILEACTION = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='published_file_id', full_name='CMsgClientUCMSetUserPublishedFileAction.published_file_id', index=0,
@@ -1272,21 +1292,21 @@ _CMSGCLIENTUCMSETUSERPUBLISHEDFILEACTION = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CMsgClientUCMSetUserPublishedFileAction.app_id', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='action', full_name='CMsgClientUCMSetUserPublishedFileAction.action', index=2,
       number=3, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1310,6 +1330,7 @@ _CMSGCLIENTUCMSETUSERPUBLISHEDFILEACTIONRESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='eresult', full_name='CMsgClientUCMSetUserPublishedFileActionResponse.eresult', index=0,
@@ -1317,7 +1338,7 @@ _CMSGCLIENTUCMSETUSERPUBLISHEDFILEACTIONRESPONSE = _descriptor.Descriptor(
       has_default_value=True, default_value=2,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1341,6 +1362,7 @@ _CMSGCLIENTUCMENUMERATEPUBLISHEDFILESBYUSERACTION = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CMsgClientUCMEnumeratePublishedFilesByUserAction.app_id', index=0,
@@ -1348,21 +1370,21 @@ _CMSGCLIENTUCMENUMERATEPUBLISHEDFILESBYUSERACTION = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='start_index', full_name='CMsgClientUCMEnumeratePublishedFilesByUserAction.start_index', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='action', full_name='CMsgClientUCMEnumeratePublishedFilesByUserAction.action', index=2,
       number=3, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1386,6 +1408,7 @@ _CMSGCLIENTUCMENUMERATEPUBLISHEDFILESBYUSERACTIONRESPONSE_PUBLISHEDFILEID = _des
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='published_file_id', full_name='CMsgClientUCMEnumeratePublishedFilesByUserActionResponse.PublishedFileId.published_file_id', index=0,
@@ -1393,14 +1416,14 @@ _CMSGCLIENTUCMENUMERATEPUBLISHEDFILESBYUSERACTIONRESPONSE_PUBLISHEDFILEID = _des
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='rtime_time_stamp', full_name='CMsgClientUCMEnumeratePublishedFilesByUserActionResponse.PublishedFileId.rtime_time_stamp', index=1,
       number=2, type=7, cpp_type=3, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1423,6 +1446,7 @@ _CMSGCLIENTUCMENUMERATEPUBLISHEDFILESBYUSERACTIONRESPONSE = _descriptor.Descript
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='eresult', full_name='CMsgClientUCMEnumeratePublishedFilesByUserActionResponse.eresult', index=0,
@@ -1430,21 +1454,21 @@ _CMSGCLIENTUCMENUMERATEPUBLISHEDFILESBYUSERACTIONRESPONSE = _descriptor.Descript
       has_default_value=True, default_value=2,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='published_files', full_name='CMsgClientUCMEnumeratePublishedFilesByUserActionResponse.published_files', index=1,
       number=2, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='total_results', full_name='CMsgClientUCMEnumeratePublishedFilesByUserActionResponse.total_results', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1468,6 +1492,7 @@ _CMSGCLIENTSCREENSHOTSCHANGED = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -1519,192 +1544,192 @@ DESCRIPTOR.message_types_by_name['CMsgClientUCMEnumeratePublishedFilesByUserActi
 DESCRIPTOR.message_types_by_name['CMsgClientScreenshotsChanged'] = _CMSGCLIENTSCREENSHOTSCHANGED
 _sym_db.RegisterFileDescriptor(DESCRIPTOR)
 
-CMsgClientUCMAddScreenshot = _reflection.GeneratedProtocolMessageType('CMsgClientUCMAddScreenshot', (_message.Message,), dict(
+CMsgClientUCMAddScreenshot = _reflection.GeneratedProtocolMessageType('CMsgClientUCMAddScreenshot', (_message.Message,), {
 
-  Tag = _reflection.GeneratedProtocolMessageType('Tag', (_message.Message,), dict(
-    DESCRIPTOR = _CMSGCLIENTUCMADDSCREENSHOT_TAG,
-    __module__ = 'steammessages_clientserver_ucm_pb2'
+  'Tag' : _reflection.GeneratedProtocolMessageType('Tag', (_message.Message,), {
+    'DESCRIPTOR' : _CMSGCLIENTUCMADDSCREENSHOT_TAG,
+    '__module__' : 'steammessages_clientserver_ucm_pb2'
     # @@protoc_insertion_point(class_scope:CMsgClientUCMAddScreenshot.Tag)
-    ))
+    })
   ,
-  DESCRIPTOR = _CMSGCLIENTUCMADDSCREENSHOT,
-  __module__ = 'steammessages_clientserver_ucm_pb2'
+  'DESCRIPTOR' : _CMSGCLIENTUCMADDSCREENSHOT,
+  '__module__' : 'steammessages_clientserver_ucm_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientUCMAddScreenshot)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientUCMAddScreenshot)
 _sym_db.RegisterMessage(CMsgClientUCMAddScreenshot.Tag)
 
-CMsgClientUCMAddScreenshotResponse = _reflection.GeneratedProtocolMessageType('CMsgClientUCMAddScreenshotResponse', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTUCMADDSCREENSHOTRESPONSE,
-  __module__ = 'steammessages_clientserver_ucm_pb2'
+CMsgClientUCMAddScreenshotResponse = _reflection.GeneratedProtocolMessageType('CMsgClientUCMAddScreenshotResponse', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTUCMADDSCREENSHOTRESPONSE,
+  '__module__' : 'steammessages_clientserver_ucm_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientUCMAddScreenshotResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientUCMAddScreenshotResponse)
 
-CMsgClientUCMDeleteScreenshot = _reflection.GeneratedProtocolMessageType('CMsgClientUCMDeleteScreenshot', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTUCMDELETESCREENSHOT,
-  __module__ = 'steammessages_clientserver_ucm_pb2'
+CMsgClientUCMDeleteScreenshot = _reflection.GeneratedProtocolMessageType('CMsgClientUCMDeleteScreenshot', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTUCMDELETESCREENSHOT,
+  '__module__' : 'steammessages_clientserver_ucm_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientUCMDeleteScreenshot)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientUCMDeleteScreenshot)
 
-CMsgClientUCMDeleteScreenshotResponse = _reflection.GeneratedProtocolMessageType('CMsgClientUCMDeleteScreenshotResponse', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTUCMDELETESCREENSHOTRESPONSE,
-  __module__ = 'steammessages_clientserver_ucm_pb2'
+CMsgClientUCMDeleteScreenshotResponse = _reflection.GeneratedProtocolMessageType('CMsgClientUCMDeleteScreenshotResponse', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTUCMDELETESCREENSHOTRESPONSE,
+  '__module__' : 'steammessages_clientserver_ucm_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientUCMDeleteScreenshotResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientUCMDeleteScreenshotResponse)
 
-CMsgClientUCMPublishFile = _reflection.GeneratedProtocolMessageType('CMsgClientUCMPublishFile', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTUCMPUBLISHFILE,
-  __module__ = 'steammessages_clientserver_ucm_pb2'
+CMsgClientUCMPublishFile = _reflection.GeneratedProtocolMessageType('CMsgClientUCMPublishFile', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTUCMPUBLISHFILE,
+  '__module__' : 'steammessages_clientserver_ucm_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientUCMPublishFile)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientUCMPublishFile)
 
-CMsgClientUCMPublishFileResponse = _reflection.GeneratedProtocolMessageType('CMsgClientUCMPublishFileResponse', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTUCMPUBLISHFILERESPONSE,
-  __module__ = 'steammessages_clientserver_ucm_pb2'
+CMsgClientUCMPublishFileResponse = _reflection.GeneratedProtocolMessageType('CMsgClientUCMPublishFileResponse', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTUCMPUBLISHFILERESPONSE,
+  '__module__' : 'steammessages_clientserver_ucm_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientUCMPublishFileResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientUCMPublishFileResponse)
 
-CMsgClientUCMUpdatePublishedFile = _reflection.GeneratedProtocolMessageType('CMsgClientUCMUpdatePublishedFile', (_message.Message,), dict(
+CMsgClientUCMUpdatePublishedFile = _reflection.GeneratedProtocolMessageType('CMsgClientUCMUpdatePublishedFile', (_message.Message,), {
 
-  KeyValueTag = _reflection.GeneratedProtocolMessageType('KeyValueTag', (_message.Message,), dict(
-    DESCRIPTOR = _CMSGCLIENTUCMUPDATEPUBLISHEDFILE_KEYVALUETAG,
-    __module__ = 'steammessages_clientserver_ucm_pb2'
+  'KeyValueTag' : _reflection.GeneratedProtocolMessageType('KeyValueTag', (_message.Message,), {
+    'DESCRIPTOR' : _CMSGCLIENTUCMUPDATEPUBLISHEDFILE_KEYVALUETAG,
+    '__module__' : 'steammessages_clientserver_ucm_pb2'
     # @@protoc_insertion_point(class_scope:CMsgClientUCMUpdatePublishedFile.KeyValueTag)
-    ))
+    })
   ,
 
-  AdditionalPreview = _reflection.GeneratedProtocolMessageType('AdditionalPreview', (_message.Message,), dict(
-    DESCRIPTOR = _CMSGCLIENTUCMUPDATEPUBLISHEDFILE_ADDITIONALPREVIEW,
-    __module__ = 'steammessages_clientserver_ucm_pb2'
+  'AdditionalPreview' : _reflection.GeneratedProtocolMessageType('AdditionalPreview', (_message.Message,), {
+    'DESCRIPTOR' : _CMSGCLIENTUCMUPDATEPUBLISHEDFILE_ADDITIONALPREVIEW,
+    '__module__' : 'steammessages_clientserver_ucm_pb2'
     # @@protoc_insertion_point(class_scope:CMsgClientUCMUpdatePublishedFile.AdditionalPreview)
-    ))
+    })
   ,
-  DESCRIPTOR = _CMSGCLIENTUCMUPDATEPUBLISHEDFILE,
-  __module__ = 'steammessages_clientserver_ucm_pb2'
+  'DESCRIPTOR' : _CMSGCLIENTUCMUPDATEPUBLISHEDFILE,
+  '__module__' : 'steammessages_clientserver_ucm_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientUCMUpdatePublishedFile)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientUCMUpdatePublishedFile)
 _sym_db.RegisterMessage(CMsgClientUCMUpdatePublishedFile.KeyValueTag)
 _sym_db.RegisterMessage(CMsgClientUCMUpdatePublishedFile.AdditionalPreview)
 
-CMsgClientUCMUpdatePublishedFileResponse = _reflection.GeneratedProtocolMessageType('CMsgClientUCMUpdatePublishedFileResponse', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTUCMUPDATEPUBLISHEDFILERESPONSE,
-  __module__ = 'steammessages_clientserver_ucm_pb2'
+CMsgClientUCMUpdatePublishedFileResponse = _reflection.GeneratedProtocolMessageType('CMsgClientUCMUpdatePublishedFileResponse', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTUCMUPDATEPUBLISHEDFILERESPONSE,
+  '__module__' : 'steammessages_clientserver_ucm_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientUCMUpdatePublishedFileResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientUCMUpdatePublishedFileResponse)
 
-CMsgClientUCMDeletePublishedFile = _reflection.GeneratedProtocolMessageType('CMsgClientUCMDeletePublishedFile', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTUCMDELETEPUBLISHEDFILE,
-  __module__ = 'steammessages_clientserver_ucm_pb2'
+CMsgClientUCMDeletePublishedFile = _reflection.GeneratedProtocolMessageType('CMsgClientUCMDeletePublishedFile', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTUCMDELETEPUBLISHEDFILE,
+  '__module__' : 'steammessages_clientserver_ucm_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientUCMDeletePublishedFile)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientUCMDeletePublishedFile)
 
-CMsgClientUCMDeletePublishedFileResponse = _reflection.GeneratedProtocolMessageType('CMsgClientUCMDeletePublishedFileResponse', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTUCMDELETEPUBLISHEDFILERESPONSE,
-  __module__ = 'steammessages_clientserver_ucm_pb2'
+CMsgClientUCMDeletePublishedFileResponse = _reflection.GeneratedProtocolMessageType('CMsgClientUCMDeletePublishedFileResponse', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTUCMDELETEPUBLISHEDFILERESPONSE,
+  '__module__' : 'steammessages_clientserver_ucm_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientUCMDeletePublishedFileResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientUCMDeletePublishedFileResponse)
 
-CMsgClientUCMEnumerateUserSubscribedFilesWithUpdates = _reflection.GeneratedProtocolMessageType('CMsgClientUCMEnumerateUserSubscribedFilesWithUpdates', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTUCMENUMERATEUSERSUBSCRIBEDFILESWITHUPDATES,
-  __module__ = 'steammessages_clientserver_ucm_pb2'
+CMsgClientUCMEnumerateUserSubscribedFilesWithUpdates = _reflection.GeneratedProtocolMessageType('CMsgClientUCMEnumerateUserSubscribedFilesWithUpdates', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTUCMENUMERATEUSERSUBSCRIBEDFILESWITHUPDATES,
+  '__module__' : 'steammessages_clientserver_ucm_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientUCMEnumerateUserSubscribedFilesWithUpdates)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientUCMEnumerateUserSubscribedFilesWithUpdates)
 
-CMsgClientUCMEnumerateUserSubscribedFilesWithUpdatesResponse = _reflection.GeneratedProtocolMessageType('CMsgClientUCMEnumerateUserSubscribedFilesWithUpdatesResponse', (_message.Message,), dict(
+CMsgClientUCMEnumerateUserSubscribedFilesWithUpdatesResponse = _reflection.GeneratedProtocolMessageType('CMsgClientUCMEnumerateUserSubscribedFilesWithUpdatesResponse', (_message.Message,), {
 
-  PublishedFileId = _reflection.GeneratedProtocolMessageType('PublishedFileId', (_message.Message,), dict(
-    DESCRIPTOR = _CMSGCLIENTUCMENUMERATEUSERSUBSCRIBEDFILESWITHUPDATESRESPONSE_PUBLISHEDFILEID,
-    __module__ = 'steammessages_clientserver_ucm_pb2'
+  'PublishedFileId' : _reflection.GeneratedProtocolMessageType('PublishedFileId', (_message.Message,), {
+    'DESCRIPTOR' : _CMSGCLIENTUCMENUMERATEUSERSUBSCRIBEDFILESWITHUPDATESRESPONSE_PUBLISHEDFILEID,
+    '__module__' : 'steammessages_clientserver_ucm_pb2'
     # @@protoc_insertion_point(class_scope:CMsgClientUCMEnumerateUserSubscribedFilesWithUpdatesResponse.PublishedFileId)
-    ))
+    })
   ,
-  DESCRIPTOR = _CMSGCLIENTUCMENUMERATEUSERSUBSCRIBEDFILESWITHUPDATESRESPONSE,
-  __module__ = 'steammessages_clientserver_ucm_pb2'
+  'DESCRIPTOR' : _CMSGCLIENTUCMENUMERATEUSERSUBSCRIBEDFILESWITHUPDATESRESPONSE,
+  '__module__' : 'steammessages_clientserver_ucm_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientUCMEnumerateUserSubscribedFilesWithUpdatesResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientUCMEnumerateUserSubscribedFilesWithUpdatesResponse)
 _sym_db.RegisterMessage(CMsgClientUCMEnumerateUserSubscribedFilesWithUpdatesResponse.PublishedFileId)
 
-CMsgClientUCMPublishedFileUpdated = _reflection.GeneratedProtocolMessageType('CMsgClientUCMPublishedFileUpdated', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTUCMPUBLISHEDFILEUPDATED,
-  __module__ = 'steammessages_clientserver_ucm_pb2'
+CMsgClientUCMPublishedFileUpdated = _reflection.GeneratedProtocolMessageType('CMsgClientUCMPublishedFileUpdated', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTUCMPUBLISHEDFILEUPDATED,
+  '__module__' : 'steammessages_clientserver_ucm_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientUCMPublishedFileUpdated)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientUCMPublishedFileUpdated)
 
-CMsgClientWorkshopItemChangesRequest = _reflection.GeneratedProtocolMessageType('CMsgClientWorkshopItemChangesRequest', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTWORKSHOPITEMCHANGESREQUEST,
-  __module__ = 'steammessages_clientserver_ucm_pb2'
+CMsgClientWorkshopItemChangesRequest = _reflection.GeneratedProtocolMessageType('CMsgClientWorkshopItemChangesRequest', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTWORKSHOPITEMCHANGESREQUEST,
+  '__module__' : 'steammessages_clientserver_ucm_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientWorkshopItemChangesRequest)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientWorkshopItemChangesRequest)
 
-CMsgClientWorkshopItemChangesResponse = _reflection.GeneratedProtocolMessageType('CMsgClientWorkshopItemChangesResponse', (_message.Message,), dict(
+CMsgClientWorkshopItemChangesResponse = _reflection.GeneratedProtocolMessageType('CMsgClientWorkshopItemChangesResponse', (_message.Message,), {
 
-  WorkshopItemInfo = _reflection.GeneratedProtocolMessageType('WorkshopItemInfo', (_message.Message,), dict(
-    DESCRIPTOR = _CMSGCLIENTWORKSHOPITEMCHANGESRESPONSE_WORKSHOPITEMINFO,
-    __module__ = 'steammessages_clientserver_ucm_pb2'
+  'WorkshopItemInfo' : _reflection.GeneratedProtocolMessageType('WorkshopItemInfo', (_message.Message,), {
+    'DESCRIPTOR' : _CMSGCLIENTWORKSHOPITEMCHANGESRESPONSE_WORKSHOPITEMINFO,
+    '__module__' : 'steammessages_clientserver_ucm_pb2'
     # @@protoc_insertion_point(class_scope:CMsgClientWorkshopItemChangesResponse.WorkshopItemInfo)
-    ))
+    })
   ,
-  DESCRIPTOR = _CMSGCLIENTWORKSHOPITEMCHANGESRESPONSE,
-  __module__ = 'steammessages_clientserver_ucm_pb2'
+  'DESCRIPTOR' : _CMSGCLIENTWORKSHOPITEMCHANGESRESPONSE,
+  '__module__' : 'steammessages_clientserver_ucm_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientWorkshopItemChangesResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientWorkshopItemChangesResponse)
 _sym_db.RegisterMessage(CMsgClientWorkshopItemChangesResponse.WorkshopItemInfo)
 
-CMsgClientUCMSetUserPublishedFileAction = _reflection.GeneratedProtocolMessageType('CMsgClientUCMSetUserPublishedFileAction', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTUCMSETUSERPUBLISHEDFILEACTION,
-  __module__ = 'steammessages_clientserver_ucm_pb2'
+CMsgClientUCMSetUserPublishedFileAction = _reflection.GeneratedProtocolMessageType('CMsgClientUCMSetUserPublishedFileAction', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTUCMSETUSERPUBLISHEDFILEACTION,
+  '__module__' : 'steammessages_clientserver_ucm_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientUCMSetUserPublishedFileAction)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientUCMSetUserPublishedFileAction)
 
-CMsgClientUCMSetUserPublishedFileActionResponse = _reflection.GeneratedProtocolMessageType('CMsgClientUCMSetUserPublishedFileActionResponse', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTUCMSETUSERPUBLISHEDFILEACTIONRESPONSE,
-  __module__ = 'steammessages_clientserver_ucm_pb2'
+CMsgClientUCMSetUserPublishedFileActionResponse = _reflection.GeneratedProtocolMessageType('CMsgClientUCMSetUserPublishedFileActionResponse', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTUCMSETUSERPUBLISHEDFILEACTIONRESPONSE,
+  '__module__' : 'steammessages_clientserver_ucm_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientUCMSetUserPublishedFileActionResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientUCMSetUserPublishedFileActionResponse)
 
-CMsgClientUCMEnumeratePublishedFilesByUserAction = _reflection.GeneratedProtocolMessageType('CMsgClientUCMEnumeratePublishedFilesByUserAction', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTUCMENUMERATEPUBLISHEDFILESBYUSERACTION,
-  __module__ = 'steammessages_clientserver_ucm_pb2'
+CMsgClientUCMEnumeratePublishedFilesByUserAction = _reflection.GeneratedProtocolMessageType('CMsgClientUCMEnumeratePublishedFilesByUserAction', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTUCMENUMERATEPUBLISHEDFILESBYUSERACTION,
+  '__module__' : 'steammessages_clientserver_ucm_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientUCMEnumeratePublishedFilesByUserAction)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientUCMEnumeratePublishedFilesByUserAction)
 
-CMsgClientUCMEnumeratePublishedFilesByUserActionResponse = _reflection.GeneratedProtocolMessageType('CMsgClientUCMEnumeratePublishedFilesByUserActionResponse', (_message.Message,), dict(
+CMsgClientUCMEnumeratePublishedFilesByUserActionResponse = _reflection.GeneratedProtocolMessageType('CMsgClientUCMEnumeratePublishedFilesByUserActionResponse', (_message.Message,), {
 
-  PublishedFileId = _reflection.GeneratedProtocolMessageType('PublishedFileId', (_message.Message,), dict(
-    DESCRIPTOR = _CMSGCLIENTUCMENUMERATEPUBLISHEDFILESBYUSERACTIONRESPONSE_PUBLISHEDFILEID,
-    __module__ = 'steammessages_clientserver_ucm_pb2'
+  'PublishedFileId' : _reflection.GeneratedProtocolMessageType('PublishedFileId', (_message.Message,), {
+    'DESCRIPTOR' : _CMSGCLIENTUCMENUMERATEPUBLISHEDFILESBYUSERACTIONRESPONSE_PUBLISHEDFILEID,
+    '__module__' : 'steammessages_clientserver_ucm_pb2'
     # @@protoc_insertion_point(class_scope:CMsgClientUCMEnumeratePublishedFilesByUserActionResponse.PublishedFileId)
-    ))
+    })
   ,
-  DESCRIPTOR = _CMSGCLIENTUCMENUMERATEPUBLISHEDFILESBYUSERACTIONRESPONSE,
-  __module__ = 'steammessages_clientserver_ucm_pb2'
+  'DESCRIPTOR' : _CMSGCLIENTUCMENUMERATEPUBLISHEDFILESBYUSERACTIONRESPONSE,
+  '__module__' : 'steammessages_clientserver_ucm_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientUCMEnumeratePublishedFilesByUserActionResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientUCMEnumeratePublishedFilesByUserActionResponse)
 _sym_db.RegisterMessage(CMsgClientUCMEnumeratePublishedFilesByUserActionResponse.PublishedFileId)
 
-CMsgClientScreenshotsChanged = _reflection.GeneratedProtocolMessageType('CMsgClientScreenshotsChanged', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTSCREENSHOTSCHANGED,
-  __module__ = 'steammessages_clientserver_ucm_pb2'
+CMsgClientScreenshotsChanged = _reflection.GeneratedProtocolMessageType('CMsgClientScreenshotsChanged', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTSCREENSHOTSCHANGED,
+  '__module__' : 'steammessages_clientserver_ucm_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientScreenshotsChanged)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientScreenshotsChanged)
 
 
diff --git a/steam/protobufs/steammessages_clientserver_uds_pb2.py b/steam/protobufs/steammessages_clientserver_uds_pb2.py
index 37398d9..7348b00 100644
--- a/steam/protobufs/steammessages_clientserver_uds_pb2.py
+++ b/steam/protobufs/steammessages_clientserver_uds_pb2.py
@@ -1,9 +1,7 @@
 # -*- coding: utf-8 -*-
 # Generated by the protocol buffer compiler.  DO NOT EDIT!
 # source: steammessages_clientserver_uds.proto
-
-import sys
-_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1'))
+"""Generated protocol buffer code."""
 from google.protobuf import descriptor as _descriptor
 from google.protobuf import message as _message
 from google.protobuf import reflection as _reflection
@@ -20,8 +18,9 @@ DESCRIPTOR = _descriptor.FileDescriptor(
   name='steammessages_clientserver_uds.proto',
   package='',
   syntax='proto2',
-  serialized_options=_b('H\001\220\001\000'),
-  serialized_pb=_b('\n$steammessages_clientserver_uds.proto\x1a\x18steammessages_base.proto\"G\n\x1e\x43MsgClientUDSP2PSessionStarted\x12\x16\n\x0esteamid_remote\x18\x01 \x01(\x06\x12\r\n\x05\x61ppid\x18\x02 \x01(\x05\"\x81\x02\n\x1c\x43MsgClientUDSP2PSessionEnded\x12\x16\n\x0esteamid_remote\x18\x01 \x01(\x06\x12\r\n\x05\x61ppid\x18\x02 \x01(\x05\x12\x1a\n\x12session_length_sec\x18\x03 \x01(\x05\x12\x15\n\rsession_error\x18\x04 \x01(\x05\x12\x0f\n\x07nattype\x18\x05 \x01(\x05\x12\x12\n\nbytes_recv\x18\x06 \x01(\x05\x12\x12\n\nbytes_sent\x18\x07 \x01(\x05\x12\x18\n\x10\x62ytes_sent_relay\x18\x08 \x01(\x05\x12\x18\n\x10\x62ytes_recv_relay\x18\t \x01(\x05\x12\x1a\n\x12time_to_connect_ms\x18\n \x01(\x05\"\x1c\n\x1a\x43MsgClientGetClientDetails\"\xbf\x02\n\"CMsgClientGetClientDetailsResponse\x12\x17\n\x0fpackage_version\x18\x01 \x01(\r\x12\x18\n\x10protocol_version\x18\x08 \x01(\r\x12\n\n\x02os\x18\x02 \x01(\t\x12\x14\n\x0cmachine_name\x18\x03 \x01(\t\x12\x11\n\tip_public\x18\x04 \x01(\t\x12\x12\n\nip_private\x18\x05 \x01(\t\x12\x17\n\x0f\x62ytes_available\x18\x07 \x01(\x04\x12?\n\rgames_running\x18\x06 \x03(\x0b\x32(.CMsgClientGetClientDetailsResponse.Game\x1a\x43\n\x04Game\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x12\n\nextra_info\x18\x02 \x01(\t\x12\x18\n\x10time_running_sec\x18\x03 \x01(\r\"\x88\x01\n\x1a\x43MsgClientGetClientAppList\x12\r\n\x05media\x18\x01 \x01(\x08\x12\r\n\x05tools\x18\x02 \x01(\x08\x12\r\n\x05games\x18\x03 \x01(\x08\x12\x16\n\x0eonly_installed\x18\x04 \x01(\x08\x12\x15\n\ronly_changing\x18\x05 \x01(\x08\x12\x0e\n\x06\x63omics\x18\x06 \x01(\x08\"\x91\x04\n\"CMsgClientGetClientAppListResponse\x12\x35\n\x04\x61pps\x18\x01 \x03(\x0b\x32\'.CMsgClientGetClientAppListResponse.App\x12\x17\n\x0f\x62ytes_available\x18\x02 \x01(\x04\x1a\x9a\x03\n\x03\x41pp\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x10\n\x08\x63\x61tegory\x18\x02 \x01(\t\x12\x10\n\x08\x61pp_type\x18\n \x01(\t\x12\x10\n\x08\x66\x61vorite\x18\x03 \x01(\x08\x12\x11\n\tinstalled\x18\x04 \x01(\x08\x12\x13\n\x0b\x61uto_update\x18\x05 \x01(\x08\x12\x18\n\x10\x62ytes_downloaded\x18\x06 \x01(\x04\x12\x14\n\x0c\x62ytes_needed\x18\x07 \x01(\x04\x12\x1b\n\x13\x62ytes_download_rate\x18\x08 \x01(\r\x12\x17\n\x0f\x64ownload_paused\x18\x0b \x01(\x08\x12\x17\n\x0fnum_downloading\x18\x0c \x01(\r\x12\x12\n\nnum_paused\x18\r \x01(\r\x12\x10\n\x08\x63hanging\x18\x0e \x01(\x08\x12\x1d\n\x15\x61vailable_on_platform\x18\x0f \x01(\x08\x12\x39\n\x04\x64lcs\x18\t \x03(\x0b\x32+.CMsgClientGetClientAppListResponse.App.DLC\x1a\'\n\x03\x44LC\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x11\n\tinstalled\x18\x02 \x01(\x08\"+\n\x1a\x43MsgClientInstallClientApp\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\"4\n\"CMsgClientInstallClientAppResponse\x12\x0e\n\x06result\x18\x01 \x01(\r\"-\n\x1c\x43MsgClientUninstallClientApp\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\"6\n$CMsgClientUninstallClientAppResponse\x12\x0e\n\x06result\x18\x01 \x01(\r\"B\n!CMsgClientSetClientAppUpdateState\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x0e\n\x06update\x18\x02 \x01(\x08\";\n)CMsgClientSetClientAppUpdateStateResponse\x12\x0e\n\x06result\x18\x01 \x01(\rB\x05H\x01\x90\x01\x00')
+  serialized_options=b'H\001\220\001\000',
+  create_key=_descriptor._internal_create_key,
+  serialized_pb=b'\n$steammessages_clientserver_uds.proto\x1a\x18steammessages_base.proto\"G\n\x1e\x43MsgClientUDSP2PSessionStarted\x12\x16\n\x0esteamid_remote\x18\x01 \x01(\x06\x12\r\n\x05\x61ppid\x18\x02 \x01(\x05\"\x81\x02\n\x1c\x43MsgClientUDSP2PSessionEnded\x12\x16\n\x0esteamid_remote\x18\x01 \x01(\x06\x12\r\n\x05\x61ppid\x18\x02 \x01(\x05\x12\x1a\n\x12session_length_sec\x18\x03 \x01(\x05\x12\x15\n\rsession_error\x18\x04 \x01(\x05\x12\x0f\n\x07nattype\x18\x05 \x01(\x05\x12\x12\n\nbytes_recv\x18\x06 \x01(\x05\x12\x12\n\nbytes_sent\x18\x07 \x01(\x05\x12\x18\n\x10\x62ytes_sent_relay\x18\x08 \x01(\x05\x12\x18\n\x10\x62ytes_recv_relay\x18\t \x01(\x05\x12\x1a\n\x12time_to_connect_ms\x18\n \x01(\x05\"\x1c\n\x1a\x43MsgClientGetClientDetails\"\xdb\x02\n\"CMsgClientGetClientDetailsResponse\x12\x17\n\x0fpackage_version\x18\x01 \x01(\r\x12\n\n\x02os\x18\x02 \x01(\t\x12\x14\n\x0cmachine_name\x18\x03 \x01(\t\x12\x11\n\tip_public\x18\x04 \x01(\t\x12\x12\n\nip_private\x18\x05 \x01(\t\x12?\n\rgames_running\x18\x06 \x03(\x0b\x32(.CMsgClientGetClientDetailsResponse.Game\x12\x17\n\x0f\x62ytes_available\x18\x07 \x01(\x04\x12\x18\n\x10protocol_version\x18\x08 \x01(\r\x12\x1a\n\x12\x63lientcomm_version\x18\t \x01(\r\x1a\x43\n\x04Game\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x12\n\nextra_info\x18\x02 \x01(\t\x12\x18\n\x10time_running_sec\x18\x03 \x01(\r\"\xa5\x01\n\x1a\x43MsgClientGetClientAppList\x12\r\n\x05media\x18\x01 \x01(\x08\x12\r\n\x05tools\x18\x02 \x01(\x08\x12\r\n\x05games\x18\x03 \x01(\x08\x12\x16\n\x0eonly_installed\x18\x04 \x01(\x08\x12\x15\n\ronly_changing\x18\x05 \x01(\x08\x12\x0e\n\x06\x63omics\x18\x06 \x01(\x08\x12\x1b\n\x13include_client_info\x18\x07 \x01(\x08\"\xb4\x06\n\"CMsgClientGetClientAppListResponse\x12\x35\n\x04\x61pps\x18\x01 \x03(\x0b\x32\'.CMsgClientGetClientAppListResponse.App\x12\x17\n\x0f\x62ytes_available\x18\x02 \x01(\x04\x12\x38\n\x0b\x63lient_info\x18\x03 \x01(\x0b\x32#.CMsgClientGetClientDetailsResponse\x1a\x83\x05\n\x03\x41pp\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x10\n\x08\x63\x61tegory\x18\x02 \x01(\t\x12\x10\n\x08\x61pp_type\x18\n \x01(\t\x12\x10\n\x08\x66\x61vorite\x18\x03 \x01(\x08\x12\x11\n\tinstalled\x18\x04 \x01(\x08\x12\x13\n\x0b\x61uto_update\x18\x05 \x01(\x08\x12\x18\n\x10\x62ytes_downloaded\x18\x06 \x01(\x04\x12\x19\n\x11\x62ytes_to_download\x18\x07 \x01(\x04\x12\x1b\n\x13\x62ytes_download_rate\x18\x08 \x01(\r\x12\x39\n\x04\x64lcs\x18\t \x03(\x0b\x32+.CMsgClientGetClientAppListResponse.App.DLC\x12\x17\n\x0f\x64ownload_paused\x18\x0b \x01(\x08\x12\x17\n\x0fnum_downloading\x18\x0c \x01(\r\x12\x12\n\nnum_paused\x18\r \x01(\r\x12\x10\n\x08\x63hanging\x18\x0e \x01(\x08\x12\x1d\n\x15\x61vailable_on_platform\x18\x0f \x01(\x08\x12\x14\n\x0c\x62ytes_staged\x18\x10 \x01(\x04\x12\x16\n\x0e\x62ytes_to_stage\x18\x11 \x01(\x04\x12\x16\n\x0e\x62ytes_required\x18\x12 \x01(\x04\x12\x16\n\x0esource_buildid\x18\x13 \x01(\r\x12\x16\n\x0etarget_buildid\x18\x14 \x01(\r\x12#\n\x1b\x65stimated_seconds_remaining\x18\x15 \x01(\r\x12\x16\n\x0equeue_position\x18\x16 \x01(\x05\x12\x14\n\x0cuninstalling\x18\x17 \x01(\x08\x12\x19\n\x11rt_time_scheduled\x18\x18 \x01(\r\x1a\'\n\x03\x44LC\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x11\n\tinstalled\x18\x02 \x01(\x08\"+\n\x1a\x43MsgClientInstallClientApp\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\"4\n\"CMsgClientInstallClientAppResponse\x12\x0e\n\x06result\x18\x01 \x01(\r\"-\n\x1c\x43MsgClientUninstallClientApp\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\"6\n$CMsgClientUninstallClientAppResponse\x12\x0e\n\x06result\x18\x01 \x01(\r\"B\n!CMsgClientSetClientAppUpdateState\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x0e\n\x06update\x18\x02 \x01(\x08\";\n)CMsgClientSetClientAppUpdateStateResponse\x12\x0e\n\x06result\x18\x01 \x01(\r\"4\n\"CMsgClientEnableOrDisableDownloads\x12\x0e\n\x06\x65nable\x18\x01 \x01(\x08\"<\n*CMsgClientEnableOrDisableDownloadsResponse\x12\x0e\n\x06result\x18\x01 \x01(\rB\x05H\x01\x90\x01\x00'
   ,
   dependencies=[steammessages__base__pb2.DESCRIPTOR,])
 
@@ -34,6 +33,7 @@ _CMSGCLIENTUDSP2PSESSIONSTARTED = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid_remote', full_name='CMsgClientUDSP2PSessionStarted.steamid_remote', index=0,
@@ -41,14 +41,14 @@ _CMSGCLIENTUDSP2PSESSIONSTARTED = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='appid', full_name='CMsgClientUDSP2PSessionStarted.appid', index=1,
       number=2, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -72,6 +72,7 @@ _CMSGCLIENTUDSP2PSESSIONENDED = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid_remote', full_name='CMsgClientUDSP2PSessionEnded.steamid_remote', index=0,
@@ -79,70 +80,70 @@ _CMSGCLIENTUDSP2PSESSIONENDED = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='appid', full_name='CMsgClientUDSP2PSessionEnded.appid', index=1,
       number=2, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='session_length_sec', full_name='CMsgClientUDSP2PSessionEnded.session_length_sec', index=2,
       number=3, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='session_error', full_name='CMsgClientUDSP2PSessionEnded.session_error', index=3,
       number=4, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='nattype', full_name='CMsgClientUDSP2PSessionEnded.nattype', index=4,
       number=5, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='bytes_recv', full_name='CMsgClientUDSP2PSessionEnded.bytes_recv', index=5,
       number=6, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='bytes_sent', full_name='CMsgClientUDSP2PSessionEnded.bytes_sent', index=6,
       number=7, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='bytes_sent_relay', full_name='CMsgClientUDSP2PSessionEnded.bytes_sent_relay', index=7,
       number=8, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='bytes_recv_relay', full_name='CMsgClientUDSP2PSessionEnded.bytes_recv_relay', index=8,
       number=9, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='time_to_connect_ms', full_name='CMsgClientUDSP2PSessionEnded.time_to_connect_ms', index=9,
       number=10, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -166,6 +167,7 @@ _CMSGCLIENTGETCLIENTDETAILS = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -190,6 +192,7 @@ _CMSGCLIENTGETCLIENTDETAILSRESPONSE_GAME = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CMsgClientGetClientDetailsResponse.Game.appid', index=0,
@@ -197,21 +200,21 @@ _CMSGCLIENTGETCLIENTDETAILSRESPONSE_GAME = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='extra_info', full_name='CMsgClientGetClientDetailsResponse.Game.extra_info', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='time_running_sec', full_name='CMsgClientGetClientDetailsResponse.Game.time_running_sec', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -224,8 +227,8 @@ _CMSGCLIENTGETCLIENTDETAILSRESPONSE_GAME = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=682,
-  serialized_end=749,
+  serialized_start=710,
+  serialized_end=777,
 )
 
 _CMSGCLIENTGETCLIENTDETAILSRESPONSE = _descriptor.Descriptor(
@@ -234,6 +237,7 @@ _CMSGCLIENTGETCLIENTDETAILSRESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='package_version', full_name='CMsgClientGetClientDetailsResponse.package_version', index=0,
@@ -241,56 +245,63 @@ _CMSGCLIENTGETCLIENTDETAILSRESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='protocol_version', full_name='CMsgClientGetClientDetailsResponse.protocol_version', index=1,
-      number=8, type=13, cpp_type=3, label=1,
-      has_default_value=False, default_value=0,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
-      name='os', full_name='CMsgClientGetClientDetailsResponse.os', index=2,
+      name='os', full_name='CMsgClientGetClientDetailsResponse.os', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
-      name='machine_name', full_name='CMsgClientGetClientDetailsResponse.machine_name', index=3,
+      name='machine_name', full_name='CMsgClientGetClientDetailsResponse.machine_name', index=2,
       number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
-      name='ip_public', full_name='CMsgClientGetClientDetailsResponse.ip_public', index=4,
+      name='ip_public', full_name='CMsgClientGetClientDetailsResponse.ip_public', index=3,
       number=4, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
-      name='ip_private', full_name='CMsgClientGetClientDetailsResponse.ip_private', index=5,
+      name='ip_private', full_name='CMsgClientGetClientDetailsResponse.ip_private', index=4,
       number=5, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='games_running', full_name='CMsgClientGetClientDetailsResponse.games_running', index=5,
+      number=6, type=11, cpp_type=10, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='bytes_available', full_name='CMsgClientGetClientDetailsResponse.bytes_available', index=6,
       number=7, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
-      name='games_running', full_name='CMsgClientGetClientDetailsResponse.games_running', index=7,
-      number=6, type=11, cpp_type=10, label=3,
-      has_default_value=False, default_value=[],
+      name='protocol_version', full_name='CMsgClientGetClientDetailsResponse.protocol_version', index=7,
+      number=8, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='clientcomm_version', full_name='CMsgClientGetClientDetailsResponse.clientcomm_version', index=8,
+      number=9, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -304,7 +315,7 @@ _CMSGCLIENTGETCLIENTDETAILSRESPONSE = _descriptor.Descriptor(
   oneofs=[
   ],
   serialized_start=430,
-  serialized_end=749,
+  serialized_end=777,
 )
 
 
@@ -314,6 +325,7 @@ _CMSGCLIENTGETCLIENTAPPLIST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='media', full_name='CMsgClientGetClientAppList.media', index=0,
@@ -321,42 +333,49 @@ _CMSGCLIENTGETCLIENTAPPLIST = _descriptor.Descriptor(
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='tools', full_name='CMsgClientGetClientAppList.tools', index=1,
       number=2, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='games', full_name='CMsgClientGetClientAppList.games', index=2,
       number=3, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='only_installed', full_name='CMsgClientGetClientAppList.only_installed', index=3,
       number=4, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='only_changing', full_name='CMsgClientGetClientAppList.only_changing', index=4,
       number=5, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='comics', full_name='CMsgClientGetClientAppList.comics', index=5,
       number=6, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='include_client_info', full_name='CMsgClientGetClientAppList.include_client_info', index=6,
+      number=7, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -369,8 +388,8 @@ _CMSGCLIENTGETCLIENTAPPLIST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=752,
-  serialized_end=888,
+  serialized_start=780,
+  serialized_end=945,
 )
 
 
@@ -380,6 +399,7 @@ _CMSGCLIENTGETCLIENTAPPLISTRESPONSE_APP_DLC = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CMsgClientGetClientAppListResponse.App.DLC.appid', index=0,
@@ -387,14 +407,14 @@ _CMSGCLIENTGETCLIENTAPPLISTRESPONSE_APP_DLC = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='installed', full_name='CMsgClientGetClientAppListResponse.App.DLC.installed', index=1,
       number=2, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -407,8 +427,8 @@ _CMSGCLIENTGETCLIENTAPPLISTRESPONSE_APP_DLC = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1381,
-  serialized_end=1420,
+  serialized_start=1729,
+  serialized_end=1768,
 )
 
 _CMSGCLIENTGETCLIENTAPPLISTRESPONSE_APP = _descriptor.Descriptor(
@@ -417,6 +437,7 @@ _CMSGCLIENTGETCLIENTAPPLISTRESPONSE_APP = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CMsgClientGetClientAppListResponse.App.appid', index=0,
@@ -424,105 +445,168 @@ _CMSGCLIENTGETCLIENTAPPLISTRESPONSE_APP = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='category', full_name='CMsgClientGetClientAppListResponse.App.category', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='app_type', full_name='CMsgClientGetClientAppListResponse.App.app_type', index=2,
       number=10, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='favorite', full_name='CMsgClientGetClientAppListResponse.App.favorite', index=3,
       number=3, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='installed', full_name='CMsgClientGetClientAppListResponse.App.installed', index=4,
       number=4, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='auto_update', full_name='CMsgClientGetClientAppListResponse.App.auto_update', index=5,
       number=5, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='bytes_downloaded', full_name='CMsgClientGetClientAppListResponse.App.bytes_downloaded', index=6,
       number=6, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
-      name='bytes_needed', full_name='CMsgClientGetClientAppListResponse.App.bytes_needed', index=7,
+      name='bytes_to_download', full_name='CMsgClientGetClientAppListResponse.App.bytes_to_download', index=7,
       number=7, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='bytes_download_rate', full_name='CMsgClientGetClientAppListResponse.App.bytes_download_rate', index=8,
       number=8, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
-      name='download_paused', full_name='CMsgClientGetClientAppListResponse.App.download_paused', index=9,
+      name='dlcs', full_name='CMsgClientGetClientAppListResponse.App.dlcs', index=9,
+      number=9, type=11, cpp_type=10, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='download_paused', full_name='CMsgClientGetClientAppListResponse.App.download_paused', index=10,
       number=11, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
-      name='num_downloading', full_name='CMsgClientGetClientAppListResponse.App.num_downloading', index=10,
+      name='num_downloading', full_name='CMsgClientGetClientAppListResponse.App.num_downloading', index=11,
       number=12, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
-      name='num_paused', full_name='CMsgClientGetClientAppListResponse.App.num_paused', index=11,
+      name='num_paused', full_name='CMsgClientGetClientAppListResponse.App.num_paused', index=12,
       number=13, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
-      name='changing', full_name='CMsgClientGetClientAppListResponse.App.changing', index=12,
+      name='changing', full_name='CMsgClientGetClientAppListResponse.App.changing', index=13,
       number=14, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
-      name='available_on_platform', full_name='CMsgClientGetClientAppListResponse.App.available_on_platform', index=13,
+      name='available_on_platform', full_name='CMsgClientGetClientAppListResponse.App.available_on_platform', index=14,
       number=15, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
-      name='dlcs', full_name='CMsgClientGetClientAppListResponse.App.dlcs', index=14,
-      number=9, type=11, cpp_type=10, label=3,
-      has_default_value=False, default_value=[],
+      name='bytes_staged', full_name='CMsgClientGetClientAppListResponse.App.bytes_staged', index=15,
+      number=16, type=4, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='bytes_to_stage', full_name='CMsgClientGetClientAppListResponse.App.bytes_to_stage', index=16,
+      number=17, type=4, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='bytes_required', full_name='CMsgClientGetClientAppListResponse.App.bytes_required', index=17,
+      number=18, type=4, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='source_buildid', full_name='CMsgClientGetClientAppListResponse.App.source_buildid', index=18,
+      number=19, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='target_buildid', full_name='CMsgClientGetClientAppListResponse.App.target_buildid', index=19,
+      number=20, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='estimated_seconds_remaining', full_name='CMsgClientGetClientAppListResponse.App.estimated_seconds_remaining', index=20,
+      number=21, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='queue_position', full_name='CMsgClientGetClientAppListResponse.App.queue_position', index=21,
+      number=22, type=5, cpp_type=1, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='uninstalling', full_name='CMsgClientGetClientAppListResponse.App.uninstalling', index=22,
+      number=23, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='rt_time_scheduled', full_name='CMsgClientGetClientAppListResponse.App.rt_time_scheduled', index=23,
+      number=24, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -535,8 +619,8 @@ _CMSGCLIENTGETCLIENTAPPLISTRESPONSE_APP = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1010,
-  serialized_end=1420,
+  serialized_start=1125,
+  serialized_end=1768,
 )
 
 _CMSGCLIENTGETCLIENTAPPLISTRESPONSE = _descriptor.Descriptor(
@@ -545,6 +629,7 @@ _CMSGCLIENTGETCLIENTAPPLISTRESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='apps', full_name='CMsgClientGetClientAppListResponse.apps', index=0,
@@ -552,14 +637,21 @@ _CMSGCLIENTGETCLIENTAPPLISTRESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='bytes_available', full_name='CMsgClientGetClientAppListResponse.bytes_available', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='client_info', full_name='CMsgClientGetClientAppListResponse.client_info', index=2,
+      number=3, type=11, cpp_type=10, label=1,
+      has_default_value=False, default_value=None,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -572,8 +664,8 @@ _CMSGCLIENTGETCLIENTAPPLISTRESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=891,
-  serialized_end=1420,
+  serialized_start=948,
+  serialized_end=1768,
 )
 
 
@@ -583,6 +675,7 @@ _CMSGCLIENTINSTALLCLIENTAPP = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CMsgClientInstallClientApp.appid', index=0,
@@ -590,7 +683,7 @@ _CMSGCLIENTINSTALLCLIENTAPP = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -603,8 +696,8 @@ _CMSGCLIENTINSTALLCLIENTAPP = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1422,
-  serialized_end=1465,
+  serialized_start=1770,
+  serialized_end=1813,
 )
 
 
@@ -614,6 +707,7 @@ _CMSGCLIENTINSTALLCLIENTAPPRESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='result', full_name='CMsgClientInstallClientAppResponse.result', index=0,
@@ -621,7 +715,7 @@ _CMSGCLIENTINSTALLCLIENTAPPRESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -634,8 +728,8 @@ _CMSGCLIENTINSTALLCLIENTAPPRESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1467,
-  serialized_end=1519,
+  serialized_start=1815,
+  serialized_end=1867,
 )
 
 
@@ -645,6 +739,7 @@ _CMSGCLIENTUNINSTALLCLIENTAPP = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CMsgClientUninstallClientApp.appid', index=0,
@@ -652,7 +747,7 @@ _CMSGCLIENTUNINSTALLCLIENTAPP = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -665,8 +760,8 @@ _CMSGCLIENTUNINSTALLCLIENTAPP = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1521,
-  serialized_end=1566,
+  serialized_start=1869,
+  serialized_end=1914,
 )
 
 
@@ -676,6 +771,7 @@ _CMSGCLIENTUNINSTALLCLIENTAPPRESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='result', full_name='CMsgClientUninstallClientAppResponse.result', index=0,
@@ -683,7 +779,7 @@ _CMSGCLIENTUNINSTALLCLIENTAPPRESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -696,8 +792,8 @@ _CMSGCLIENTUNINSTALLCLIENTAPPRESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1568,
-  serialized_end=1622,
+  serialized_start=1916,
+  serialized_end=1970,
 )
 
 
@@ -707,6 +803,7 @@ _CMSGCLIENTSETCLIENTAPPUPDATESTATE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CMsgClientSetClientAppUpdateState.appid', index=0,
@@ -714,14 +811,14 @@ _CMSGCLIENTSETCLIENTAPPUPDATESTATE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='update', full_name='CMsgClientSetClientAppUpdateState.update', index=1,
       number=2, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -734,8 +831,8 @@ _CMSGCLIENTSETCLIENTAPPUPDATESTATE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1624,
-  serialized_end=1690,
+  serialized_start=1972,
+  serialized_end=2038,
 )
 
 
@@ -745,6 +842,7 @@ _CMSGCLIENTSETCLIENTAPPUPDATESTATERESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='result', full_name='CMsgClientSetClientAppUpdateStateResponse.result', index=0,
@@ -752,7 +850,71 @@ _CMSGCLIENTSETCLIENTAPPUPDATESTATERESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=2040,
+  serialized_end=2099,
+)
+
+
+_CMSGCLIENTENABLEORDISABLEDOWNLOADS = _descriptor.Descriptor(
+  name='CMsgClientEnableOrDisableDownloads',
+  full_name='CMsgClientEnableOrDisableDownloads',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='enable', full_name='CMsgClientEnableOrDisableDownloads.enable', index=0,
+      number=1, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=2101,
+  serialized_end=2153,
+)
+
+
+_CMSGCLIENTENABLEORDISABLEDOWNLOADSRESPONSE = _descriptor.Descriptor(
+  name='CMsgClientEnableOrDisableDownloadsResponse',
+  full_name='CMsgClientEnableOrDisableDownloadsResponse',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='result', full_name='CMsgClientEnableOrDisableDownloadsResponse.result', index=0,
+      number=1, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -765,8 +927,8 @@ _CMSGCLIENTSETCLIENTAPPUPDATESTATERESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1692,
-  serialized_end=1751,
+  serialized_start=2155,
+  serialized_end=2215,
 )
 
 _CMSGCLIENTGETCLIENTDETAILSRESPONSE_GAME.containing_type = _CMSGCLIENTGETCLIENTDETAILSRESPONSE
@@ -775,6 +937,7 @@ _CMSGCLIENTGETCLIENTAPPLISTRESPONSE_APP_DLC.containing_type = _CMSGCLIENTGETCLIE
 _CMSGCLIENTGETCLIENTAPPLISTRESPONSE_APP.fields_by_name['dlcs'].message_type = _CMSGCLIENTGETCLIENTAPPLISTRESPONSE_APP_DLC
 _CMSGCLIENTGETCLIENTAPPLISTRESPONSE_APP.containing_type = _CMSGCLIENTGETCLIENTAPPLISTRESPONSE
 _CMSGCLIENTGETCLIENTAPPLISTRESPONSE.fields_by_name['apps'].message_type = _CMSGCLIENTGETCLIENTAPPLISTRESPONSE_APP
+_CMSGCLIENTGETCLIENTAPPLISTRESPONSE.fields_by_name['client_info'].message_type = _CMSGCLIENTGETCLIENTDETAILSRESPONSE
 DESCRIPTOR.message_types_by_name['CMsgClientUDSP2PSessionStarted'] = _CMSGCLIENTUDSP2PSESSIONSTARTED
 DESCRIPTOR.message_types_by_name['CMsgClientUDSP2PSessionEnded'] = _CMSGCLIENTUDSP2PSESSIONENDED
 DESCRIPTOR.message_types_by_name['CMsgClientGetClientDetails'] = _CMSGCLIENTGETCLIENTDETAILS
@@ -787,116 +950,132 @@ DESCRIPTOR.message_types_by_name['CMsgClientUninstallClientApp'] = _CMSGCLIENTUN
 DESCRIPTOR.message_types_by_name['CMsgClientUninstallClientAppResponse'] = _CMSGCLIENTUNINSTALLCLIENTAPPRESPONSE
 DESCRIPTOR.message_types_by_name['CMsgClientSetClientAppUpdateState'] = _CMSGCLIENTSETCLIENTAPPUPDATESTATE
 DESCRIPTOR.message_types_by_name['CMsgClientSetClientAppUpdateStateResponse'] = _CMSGCLIENTSETCLIENTAPPUPDATESTATERESPONSE
+DESCRIPTOR.message_types_by_name['CMsgClientEnableOrDisableDownloads'] = _CMSGCLIENTENABLEORDISABLEDOWNLOADS
+DESCRIPTOR.message_types_by_name['CMsgClientEnableOrDisableDownloadsResponse'] = _CMSGCLIENTENABLEORDISABLEDOWNLOADSRESPONSE
 _sym_db.RegisterFileDescriptor(DESCRIPTOR)
 
-CMsgClientUDSP2PSessionStarted = _reflection.GeneratedProtocolMessageType('CMsgClientUDSP2PSessionStarted', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTUDSP2PSESSIONSTARTED,
-  __module__ = 'steammessages_clientserver_uds_pb2'
+CMsgClientUDSP2PSessionStarted = _reflection.GeneratedProtocolMessageType('CMsgClientUDSP2PSessionStarted', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTUDSP2PSESSIONSTARTED,
+  '__module__' : 'steammessages_clientserver_uds_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientUDSP2PSessionStarted)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientUDSP2PSessionStarted)
 
-CMsgClientUDSP2PSessionEnded = _reflection.GeneratedProtocolMessageType('CMsgClientUDSP2PSessionEnded', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTUDSP2PSESSIONENDED,
-  __module__ = 'steammessages_clientserver_uds_pb2'
+CMsgClientUDSP2PSessionEnded = _reflection.GeneratedProtocolMessageType('CMsgClientUDSP2PSessionEnded', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTUDSP2PSESSIONENDED,
+  '__module__' : 'steammessages_clientserver_uds_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientUDSP2PSessionEnded)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientUDSP2PSessionEnded)
 
-CMsgClientGetClientDetails = _reflection.GeneratedProtocolMessageType('CMsgClientGetClientDetails', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTGETCLIENTDETAILS,
-  __module__ = 'steammessages_clientserver_uds_pb2'
+CMsgClientGetClientDetails = _reflection.GeneratedProtocolMessageType('CMsgClientGetClientDetails', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTGETCLIENTDETAILS,
+  '__module__' : 'steammessages_clientserver_uds_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientGetClientDetails)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientGetClientDetails)
 
-CMsgClientGetClientDetailsResponse = _reflection.GeneratedProtocolMessageType('CMsgClientGetClientDetailsResponse', (_message.Message,), dict(
+CMsgClientGetClientDetailsResponse = _reflection.GeneratedProtocolMessageType('CMsgClientGetClientDetailsResponse', (_message.Message,), {
 
-  Game = _reflection.GeneratedProtocolMessageType('Game', (_message.Message,), dict(
-    DESCRIPTOR = _CMSGCLIENTGETCLIENTDETAILSRESPONSE_GAME,
-    __module__ = 'steammessages_clientserver_uds_pb2'
+  'Game' : _reflection.GeneratedProtocolMessageType('Game', (_message.Message,), {
+    'DESCRIPTOR' : _CMSGCLIENTGETCLIENTDETAILSRESPONSE_GAME,
+    '__module__' : 'steammessages_clientserver_uds_pb2'
     # @@protoc_insertion_point(class_scope:CMsgClientGetClientDetailsResponse.Game)
-    ))
+    })
   ,
-  DESCRIPTOR = _CMSGCLIENTGETCLIENTDETAILSRESPONSE,
-  __module__ = 'steammessages_clientserver_uds_pb2'
+  'DESCRIPTOR' : _CMSGCLIENTGETCLIENTDETAILSRESPONSE,
+  '__module__' : 'steammessages_clientserver_uds_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientGetClientDetailsResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientGetClientDetailsResponse)
 _sym_db.RegisterMessage(CMsgClientGetClientDetailsResponse.Game)
 
-CMsgClientGetClientAppList = _reflection.GeneratedProtocolMessageType('CMsgClientGetClientAppList', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTGETCLIENTAPPLIST,
-  __module__ = 'steammessages_clientserver_uds_pb2'
+CMsgClientGetClientAppList = _reflection.GeneratedProtocolMessageType('CMsgClientGetClientAppList', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTGETCLIENTAPPLIST,
+  '__module__' : 'steammessages_clientserver_uds_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientGetClientAppList)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientGetClientAppList)
 
-CMsgClientGetClientAppListResponse = _reflection.GeneratedProtocolMessageType('CMsgClientGetClientAppListResponse', (_message.Message,), dict(
+CMsgClientGetClientAppListResponse = _reflection.GeneratedProtocolMessageType('CMsgClientGetClientAppListResponse', (_message.Message,), {
 
-  App = _reflection.GeneratedProtocolMessageType('App', (_message.Message,), dict(
+  'App' : _reflection.GeneratedProtocolMessageType('App', (_message.Message,), {
 
-    DLC = _reflection.GeneratedProtocolMessageType('DLC', (_message.Message,), dict(
-      DESCRIPTOR = _CMSGCLIENTGETCLIENTAPPLISTRESPONSE_APP_DLC,
-      __module__ = 'steammessages_clientserver_uds_pb2'
+    'DLC' : _reflection.GeneratedProtocolMessageType('DLC', (_message.Message,), {
+      'DESCRIPTOR' : _CMSGCLIENTGETCLIENTAPPLISTRESPONSE_APP_DLC,
+      '__module__' : 'steammessages_clientserver_uds_pb2'
       # @@protoc_insertion_point(class_scope:CMsgClientGetClientAppListResponse.App.DLC)
-      ))
+      })
     ,
-    DESCRIPTOR = _CMSGCLIENTGETCLIENTAPPLISTRESPONSE_APP,
-    __module__ = 'steammessages_clientserver_uds_pb2'
+    'DESCRIPTOR' : _CMSGCLIENTGETCLIENTAPPLISTRESPONSE_APP,
+    '__module__' : 'steammessages_clientserver_uds_pb2'
     # @@protoc_insertion_point(class_scope:CMsgClientGetClientAppListResponse.App)
-    ))
+    })
   ,
-  DESCRIPTOR = _CMSGCLIENTGETCLIENTAPPLISTRESPONSE,
-  __module__ = 'steammessages_clientserver_uds_pb2'
+  'DESCRIPTOR' : _CMSGCLIENTGETCLIENTAPPLISTRESPONSE,
+  '__module__' : 'steammessages_clientserver_uds_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientGetClientAppListResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientGetClientAppListResponse)
 _sym_db.RegisterMessage(CMsgClientGetClientAppListResponse.App)
 _sym_db.RegisterMessage(CMsgClientGetClientAppListResponse.App.DLC)
 
-CMsgClientInstallClientApp = _reflection.GeneratedProtocolMessageType('CMsgClientInstallClientApp', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTINSTALLCLIENTAPP,
-  __module__ = 'steammessages_clientserver_uds_pb2'
+CMsgClientInstallClientApp = _reflection.GeneratedProtocolMessageType('CMsgClientInstallClientApp', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTINSTALLCLIENTAPP,
+  '__module__' : 'steammessages_clientserver_uds_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientInstallClientApp)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientInstallClientApp)
 
-CMsgClientInstallClientAppResponse = _reflection.GeneratedProtocolMessageType('CMsgClientInstallClientAppResponse', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTINSTALLCLIENTAPPRESPONSE,
-  __module__ = 'steammessages_clientserver_uds_pb2'
+CMsgClientInstallClientAppResponse = _reflection.GeneratedProtocolMessageType('CMsgClientInstallClientAppResponse', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTINSTALLCLIENTAPPRESPONSE,
+  '__module__' : 'steammessages_clientserver_uds_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientInstallClientAppResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientInstallClientAppResponse)
 
-CMsgClientUninstallClientApp = _reflection.GeneratedProtocolMessageType('CMsgClientUninstallClientApp', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTUNINSTALLCLIENTAPP,
-  __module__ = 'steammessages_clientserver_uds_pb2'
+CMsgClientUninstallClientApp = _reflection.GeneratedProtocolMessageType('CMsgClientUninstallClientApp', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTUNINSTALLCLIENTAPP,
+  '__module__' : 'steammessages_clientserver_uds_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientUninstallClientApp)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientUninstallClientApp)
 
-CMsgClientUninstallClientAppResponse = _reflection.GeneratedProtocolMessageType('CMsgClientUninstallClientAppResponse', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTUNINSTALLCLIENTAPPRESPONSE,
-  __module__ = 'steammessages_clientserver_uds_pb2'
+CMsgClientUninstallClientAppResponse = _reflection.GeneratedProtocolMessageType('CMsgClientUninstallClientAppResponse', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTUNINSTALLCLIENTAPPRESPONSE,
+  '__module__' : 'steammessages_clientserver_uds_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientUninstallClientAppResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientUninstallClientAppResponse)
 
-CMsgClientSetClientAppUpdateState = _reflection.GeneratedProtocolMessageType('CMsgClientSetClientAppUpdateState', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTSETCLIENTAPPUPDATESTATE,
-  __module__ = 'steammessages_clientserver_uds_pb2'
+CMsgClientSetClientAppUpdateState = _reflection.GeneratedProtocolMessageType('CMsgClientSetClientAppUpdateState', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTSETCLIENTAPPUPDATESTATE,
+  '__module__' : 'steammessages_clientserver_uds_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientSetClientAppUpdateState)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientSetClientAppUpdateState)
 
-CMsgClientSetClientAppUpdateStateResponse = _reflection.GeneratedProtocolMessageType('CMsgClientSetClientAppUpdateStateResponse', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTSETCLIENTAPPUPDATESTATERESPONSE,
-  __module__ = 'steammessages_clientserver_uds_pb2'
+CMsgClientSetClientAppUpdateStateResponse = _reflection.GeneratedProtocolMessageType('CMsgClientSetClientAppUpdateStateResponse', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTSETCLIENTAPPUPDATESTATERESPONSE,
+  '__module__' : 'steammessages_clientserver_uds_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientSetClientAppUpdateStateResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientSetClientAppUpdateStateResponse)
 
+CMsgClientEnableOrDisableDownloads = _reflection.GeneratedProtocolMessageType('CMsgClientEnableOrDisableDownloads', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTENABLEORDISABLEDOWNLOADS,
+  '__module__' : 'steammessages_clientserver_uds_pb2'
+  # @@protoc_insertion_point(class_scope:CMsgClientEnableOrDisableDownloads)
+  })
+_sym_db.RegisterMessage(CMsgClientEnableOrDisableDownloads)
+
+CMsgClientEnableOrDisableDownloadsResponse = _reflection.GeneratedProtocolMessageType('CMsgClientEnableOrDisableDownloadsResponse', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTENABLEORDISABLEDOWNLOADSRESPONSE,
+  '__module__' : 'steammessages_clientserver_uds_pb2'
+  # @@protoc_insertion_point(class_scope:CMsgClientEnableOrDisableDownloadsResponse)
+  })
+_sym_db.RegisterMessage(CMsgClientEnableOrDisableDownloadsResponse)
+
 
 DESCRIPTOR._options = None
 # @@protoc_insertion_point(module_scope)
diff --git a/steam/protobufs/steammessages_clientserver_ufs_pb2.py b/steam/protobufs/steammessages_clientserver_ufs_pb2.py
index aff1966..1ec4f14 100644
--- a/steam/protobufs/steammessages_clientserver_ufs_pb2.py
+++ b/steam/protobufs/steammessages_clientserver_ufs_pb2.py
@@ -1,9 +1,7 @@
 # -*- coding: utf-8 -*-
 # Generated by the protocol buffer compiler.  DO NOT EDIT!
 # source: steammessages_clientserver_ufs.proto
-
-import sys
-_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1'))
+"""Generated protocol buffer code."""
 from google.protobuf import descriptor as _descriptor
 from google.protobuf import message as _message
 from google.protobuf import reflection as _reflection
@@ -20,8 +18,9 @@ DESCRIPTOR = _descriptor.FileDescriptor(
   name='steammessages_clientserver_ufs.proto',
   package='',
   syntax='proto2',
-  serialized_options=_b('H\001\220\001\000'),
-  serialized_pb=_b('\n$steammessages_clientserver_ufs.proto\x1a\x18steammessages_base.proto\"\x86\x02\n\x1e\x43MsgClientUFSUploadFileRequest\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x11\n\tfile_size\x18\x02 \x01(\r\x12\x15\n\rraw_file_size\x18\x03 \x01(\r\x12\x10\n\x08sha_file\x18\x04 \x01(\x0c\x12\x12\n\ntime_stamp\x18\x05 \x01(\x04\x12\x11\n\tfile_name\x18\x06 \x01(\t\x12$\n\x1cplatforms_to_sync_deprecated\x18\x07 \x01(\r\x12%\n\x11platforms_to_sync\x18\x08 \x01(\r:\n4294967295\x12\x0f\n\x07\x63\x65ll_id\x18\t \x01(\r\x12\x13\n\x0b\x63\x61n_encrypt\x18\n \x01(\x08\"\xbb\x01\n\x1f\x43MsgClientUFSUploadFileResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\x12\x10\n\x08sha_file\x18\x02 \x01(\x0c\x12\x10\n\x08use_http\x18\x03 \x01(\x08\x12\x11\n\thttp_host\x18\x04 \x01(\t\x12\x10\n\x08http_url\x18\x05 \x01(\t\x12\x12\n\nkv_headers\x18\x06 \x01(\x0c\x12\x11\n\tuse_https\x18\x07 \x01(\x08\x12\x14\n\x0c\x65ncrypt_file\x18\x08 \x01(\x08\"\xae\x01\n\x19\x43MsgClientUFSUploadCommit\x12.\n\x05\x66iles\x18\x01 \x03(\x0b\x32\x1f.CMsgClientUFSUploadCommit.File\x1a\x61\n\x04\x46ile\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\x12\x0e\n\x06\x61pp_id\x18\x02 \x01(\r\x12\x10\n\x08sha_file\x18\x03 \x01(\x0c\x12\x10\n\x08\x63ub_file\x18\x04 \x01(\r\x12\x11\n\tfile_name\x18\x05 \x01(\t\"\x99\x01\n!CMsgClientUFSUploadCommitResponse\x12\x36\n\x05\x66iles\x18\x01 \x03(\x0b\x32\'.CMsgClientUFSUploadCommitResponse.File\x1a<\n\x04\x46ile\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\x12\x0e\n\x06\x61pp_id\x18\x02 \x01(\r\x12\x10\n\x08sha_file\x18\x03 \x01(\x0c\"L\n\x16\x43MsgClientUFSFileChunk\x12\x10\n\x08sha_file\x18\x01 \x01(\x0c\x12\x12\n\nfile_start\x18\x02 \x01(\r\x12\x0c\n\x04\x64\x61ta\x18\x03 \x01(\x0c\" \n\x1e\x43MsgClientUFSTransferHeartbeat\"G\n\x1f\x43MsgClientUFSUploadFileFinished\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\x12\x10\n\x08sha_file\x18\x02 \x01(\x0c\"_\n\x1e\x43MsgClientUFSDeleteFileRequest\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x11\n\tfile_name\x18\x02 \x01(\t\x12\x1a\n\x12is_explicit_delete\x18\x03 \x01(\x08\"H\n\x1f\x43MsgClientUFSDeleteFileResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\x12\x11\n\tfile_name\x18\x02 \x01(\t\"S\n\x1e\x43MsgClientUFSGetFileListForApp\x12\x15\n\rapps_to_query\x18\x01 \x03(\r\x12\x1a\n\x12send_path_prefixes\x18\x02 \x01(\x08\"\xc1\x02\n&CMsgClientUFSGetFileListForAppResponse\x12;\n\x05\x66iles\x18\x01 \x03(\x0b\x32,.CMsgClientUFSGetFileListForAppResponse.File\x12\x15\n\rpath_prefixes\x18\x02 \x03(\t\x1a\xb8\x01\n\x04\x46ile\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x11\n\tfile_name\x18\x02 \x01(\t\x12\x10\n\x08sha_file\x18\x03 \x01(\x0c\x12\x12\n\ntime_stamp\x18\x04 \x01(\x04\x12\x15\n\rraw_file_size\x18\x05 \x01(\r\x12\x1a\n\x12is_explicit_delete\x18\x06 \x01(\x08\x12\x19\n\x11platforms_to_sync\x18\x07 \x01(\r\x12\x19\n\x11path_prefix_index\x18\x08 \x01(\r:\x08\x80\xb5\x18\x08\x88\xb5\x18\x10\"Z\n\x1c\x43MsgClientUFSDownloadRequest\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x11\n\tfile_name\x18\x02 \x01(\t\x12\x17\n\x0f\x63\x61n_handle_http\x18\x03 \x01(\x08\"\xa0\x02\n\x1d\x43MsgClientUFSDownloadResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\x12\x0e\n\x06\x61pp_id\x18\x02 \x01(\r\x12\x11\n\tfile_size\x18\x03 \x01(\r\x12\x15\n\rraw_file_size\x18\x04 \x01(\r\x12\x10\n\x08sha_file\x18\x05 \x01(\x0c\x12\x12\n\ntime_stamp\x18\x06 \x01(\x04\x12\x1a\n\x12is_explicit_delete\x18\x07 \x01(\x08\x12\x10\n\x08use_http\x18\x08 \x01(\x08\x12\x11\n\thttp_host\x18\t \x01(\t\x12\x10\n\x08http_url\x18\n \x01(\t\x12\x12\n\nkv_headers\x18\x0b \x01(\x0c\x12\x11\n\tuse_https\x18\x0c \x01(\x08\x12\x11\n\tencrypted\x18\r \x01(\x08\"]\n\x19\x43MsgClientUFSLoginRequest\x12\x18\n\x10protocol_version\x18\x01 \x01(\r\x12\x18\n\x10\x61m_session_token\x18\x02 \x01(\x04\x12\x0c\n\x04\x61pps\x18\x03 \x03(\r\"0\n\x1a\x43MsgClientUFSLoginResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\"D\n\x1a\x43MsgClientUFSGetUGCDetails\x12&\n\x08hcontent\x18\x01 \x01(\x06:\x14\x31\x38\x34\x34\x36\x37\x34\x34\x30\x37\x33\x37\x30\x39\x35\x35\x31\x36\x31\x35\"\xe5\x01\n\"CMsgClientUFSGetUGCDetailsResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\x12\x0b\n\x03url\x18\x02 \x01(\t\x12\x0e\n\x06\x61pp_id\x18\x03 \x01(\r\x12\x10\n\x08\x66ilename\x18\x04 \x01(\t\x12\x17\n\x0fsteamid_creator\x18\x05 \x01(\x06\x12\x11\n\tfile_size\x18\x06 \x01(\r\x12\x1c\n\x14\x63ompressed_file_size\x18\x07 \x01(\r\x12\x17\n\x0frangecheck_host\x18\x08 \x01(\t\x12\x19\n\x11\x66ile_encoded_sha1\x18\t \x01(\t\"C\n\x1e\x43MsgClientUFSGetSingleFileInfo\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x11\n\tfile_name\x18\x02 \x01(\t\"\xb8\x01\n&CMsgClientUFSGetSingleFileInfoResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\x12\x0e\n\x06\x61pp_id\x18\x02 \x01(\r\x12\x11\n\tfile_name\x18\x03 \x01(\t\x12\x10\n\x08sha_file\x18\x04 \x01(\x0c\x12\x12\n\ntime_stamp\x18\x05 \x01(\x04\x12\x15\n\rraw_file_size\x18\x06 \x01(\r\x12\x1a\n\x12is_explicit_delete\x18\x07 \x01(\x08\";\n\x16\x43MsgClientUFSShareFile\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x11\n\tfile_name\x18\x02 \x01(\t\"\\\n\x1e\x43MsgClientUFSShareFileResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\x12&\n\x08hcontent\x18\x02 \x01(\x06:\x14\x31\x38\x34\x34\x36\x37\x34\x34\x30\x37\x33\x37\x30\x39\x35\x35\x31\x36\x31\x35\x42\x05H\x01\x90\x01\x00')
+  serialized_options=b'H\001\220\001\000',
+  create_key=_descriptor._internal_create_key,
+  serialized_pb=b'\n$steammessages_clientserver_ufs.proto\x1a\x18steammessages_base.proto\"\x86\x02\n\x1e\x43MsgClientUFSUploadFileRequest\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x11\n\tfile_size\x18\x02 \x01(\r\x12\x15\n\rraw_file_size\x18\x03 \x01(\r\x12\x10\n\x08sha_file\x18\x04 \x01(\x0c\x12\x12\n\ntime_stamp\x18\x05 \x01(\x04\x12\x11\n\tfile_name\x18\x06 \x01(\t\x12$\n\x1cplatforms_to_sync_deprecated\x18\x07 \x01(\r\x12%\n\x11platforms_to_sync\x18\x08 \x01(\r:\n4294967295\x12\x0f\n\x07\x63\x65ll_id\x18\t \x01(\r\x12\x13\n\x0b\x63\x61n_encrypt\x18\n \x01(\x08\"\xbb\x01\n\x1f\x43MsgClientUFSUploadFileResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\x12\x10\n\x08sha_file\x18\x02 \x01(\x0c\x12\x10\n\x08use_http\x18\x03 \x01(\x08\x12\x11\n\thttp_host\x18\x04 \x01(\t\x12\x10\n\x08http_url\x18\x05 \x01(\t\x12\x12\n\nkv_headers\x18\x06 \x01(\x0c\x12\x11\n\tuse_https\x18\x07 \x01(\x08\x12\x14\n\x0c\x65ncrypt_file\x18\x08 \x01(\x08\"\xae\x01\n\x19\x43MsgClientUFSUploadCommit\x12.\n\x05\x66iles\x18\x01 \x03(\x0b\x32\x1f.CMsgClientUFSUploadCommit.File\x1a\x61\n\x04\x46ile\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\x12\x0e\n\x06\x61pp_id\x18\x02 \x01(\r\x12\x10\n\x08sha_file\x18\x03 \x01(\x0c\x12\x10\n\x08\x63ub_file\x18\x04 \x01(\r\x12\x11\n\tfile_name\x18\x05 \x01(\t\"\x99\x01\n!CMsgClientUFSUploadCommitResponse\x12\x36\n\x05\x66iles\x18\x01 \x03(\x0b\x32\'.CMsgClientUFSUploadCommitResponse.File\x1a<\n\x04\x46ile\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\x12\x0e\n\x06\x61pp_id\x18\x02 \x01(\r\x12\x10\n\x08sha_file\x18\x03 \x01(\x0c\"L\n\x16\x43MsgClientUFSFileChunk\x12\x10\n\x08sha_file\x18\x01 \x01(\x0c\x12\x12\n\nfile_start\x18\x02 \x01(\r\x12\x0c\n\x04\x64\x61ta\x18\x03 \x01(\x0c\" \n\x1e\x43MsgClientUFSTransferHeartbeat\"G\n\x1f\x43MsgClientUFSUploadFileFinished\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\x12\x10\n\x08sha_file\x18\x02 \x01(\x0c\"_\n\x1e\x43MsgClientUFSDeleteFileRequest\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x11\n\tfile_name\x18\x02 \x01(\t\x12\x1a\n\x12is_explicit_delete\x18\x03 \x01(\x08\"H\n\x1f\x43MsgClientUFSDeleteFileResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\x12\x11\n\tfile_name\x18\x02 \x01(\t\"S\n\x1e\x43MsgClientUFSGetFileListForApp\x12\x15\n\rapps_to_query\x18\x01 \x03(\r\x12\x1a\n\x12send_path_prefixes\x18\x02 \x01(\x08\"\xc1\x02\n&CMsgClientUFSGetFileListForAppResponse\x12;\n\x05\x66iles\x18\x01 \x03(\x0b\x32,.CMsgClientUFSGetFileListForAppResponse.File\x12\x15\n\rpath_prefixes\x18\x02 \x03(\t\x1a\xb8\x01\n\x04\x46ile\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x11\n\tfile_name\x18\x02 \x01(\t\x12\x10\n\x08sha_file\x18\x03 \x01(\x0c\x12\x12\n\ntime_stamp\x18\x04 \x01(\x04\x12\x15\n\rraw_file_size\x18\x05 \x01(\r\x12\x1a\n\x12is_explicit_delete\x18\x06 \x01(\x08\x12\x19\n\x11platforms_to_sync\x18\x07 \x01(\r\x12\x19\n\x11path_prefix_index\x18\x08 \x01(\r:\x08\x80\xb5\x18\x08\x88\xb5\x18\x10\"Z\n\x1c\x43MsgClientUFSDownloadRequest\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x11\n\tfile_name\x18\x02 \x01(\t\x12\x17\n\x0f\x63\x61n_handle_http\x18\x03 \x01(\x08\"\xa0\x02\n\x1d\x43MsgClientUFSDownloadResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\x12\x0e\n\x06\x61pp_id\x18\x02 \x01(\r\x12\x11\n\tfile_size\x18\x03 \x01(\r\x12\x15\n\rraw_file_size\x18\x04 \x01(\r\x12\x10\n\x08sha_file\x18\x05 \x01(\x0c\x12\x12\n\ntime_stamp\x18\x06 \x01(\x04\x12\x1a\n\x12is_explicit_delete\x18\x07 \x01(\x08\x12\x10\n\x08use_http\x18\x08 \x01(\x08\x12\x11\n\thttp_host\x18\t \x01(\t\x12\x10\n\x08http_url\x18\n \x01(\t\x12\x12\n\nkv_headers\x18\x0b \x01(\x0c\x12\x11\n\tuse_https\x18\x0c \x01(\x08\x12\x11\n\tencrypted\x18\r \x01(\x08\"]\n\x19\x43MsgClientUFSLoginRequest\x12\x18\n\x10protocol_version\x18\x01 \x01(\r\x12\x18\n\x10\x61m_session_token\x18\x02 \x01(\x04\x12\x0c\n\x04\x61pps\x18\x03 \x03(\r\"0\n\x1a\x43MsgClientUFSLoginResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\"D\n\x1a\x43MsgClientUFSGetUGCDetails\x12&\n\x08hcontent\x18\x01 \x01(\x06:\x14\x31\x38\x34\x34\x36\x37\x34\x34\x30\x37\x33\x37\x30\x39\x35\x35\x31\x36\x31\x35\"\xe5\x01\n\"CMsgClientUFSGetUGCDetailsResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\x12\x0b\n\x03url\x18\x02 \x01(\t\x12\x0e\n\x06\x61pp_id\x18\x03 \x01(\r\x12\x10\n\x08\x66ilename\x18\x04 \x01(\t\x12\x17\n\x0fsteamid_creator\x18\x05 \x01(\x06\x12\x11\n\tfile_size\x18\x06 \x01(\r\x12\x1c\n\x14\x63ompressed_file_size\x18\x07 \x01(\r\x12\x17\n\x0frangecheck_host\x18\x08 \x01(\t\x12\x19\n\x11\x66ile_encoded_sha1\x18\t \x01(\t\"C\n\x1e\x43MsgClientUFSGetSingleFileInfo\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x11\n\tfile_name\x18\x02 \x01(\t\"\xb8\x01\n&CMsgClientUFSGetSingleFileInfoResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\x12\x0e\n\x06\x61pp_id\x18\x02 \x01(\r\x12\x11\n\tfile_name\x18\x03 \x01(\t\x12\x10\n\x08sha_file\x18\x04 \x01(\x0c\x12\x12\n\ntime_stamp\x18\x05 \x01(\x04\x12\x15\n\rraw_file_size\x18\x06 \x01(\r\x12\x1a\n\x12is_explicit_delete\x18\x07 \x01(\x08\";\n\x16\x43MsgClientUFSShareFile\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x11\n\tfile_name\x18\x02 \x01(\t\"\\\n\x1e\x43MsgClientUFSShareFileResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\x12&\n\x08hcontent\x18\x02 \x01(\x06:\x14\x31\x38\x34\x34\x36\x37\x34\x34\x30\x37\x33\x37\x30\x39\x35\x35\x31\x36\x31\x35\x42\x05H\x01\x90\x01\x00'
   ,
   dependencies=[steammessages__base__pb2.DESCRIPTOR,])
 
@@ -34,6 +33,7 @@ _CMSGCLIENTUFSUPLOADFILEREQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CMsgClientUFSUploadFileRequest.app_id', index=0,
@@ -41,70 +41,70 @@ _CMSGCLIENTUFSUPLOADFILEREQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='file_size', full_name='CMsgClientUFSUploadFileRequest.file_size', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='raw_file_size', full_name='CMsgClientUFSUploadFileRequest.raw_file_size', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='sha_file', full_name='CMsgClientUFSUploadFileRequest.sha_file', index=3,
       number=4, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='time_stamp', full_name='CMsgClientUFSUploadFileRequest.time_stamp', index=4,
       number=5, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='file_name', full_name='CMsgClientUFSUploadFileRequest.file_name', index=5,
       number=6, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='platforms_to_sync_deprecated', full_name='CMsgClientUFSUploadFileRequest.platforms_to_sync_deprecated', index=6,
       number=7, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='platforms_to_sync', full_name='CMsgClientUFSUploadFileRequest.platforms_to_sync', index=7,
       number=8, type=13, cpp_type=3, label=1,
       has_default_value=True, default_value=4294967295,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='cell_id', full_name='CMsgClientUFSUploadFileRequest.cell_id', index=8,
       number=9, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='can_encrypt', full_name='CMsgClientUFSUploadFileRequest.can_encrypt', index=9,
       number=10, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -128,6 +128,7 @@ _CMSGCLIENTUFSUPLOADFILERESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='eresult', full_name='CMsgClientUFSUploadFileResponse.eresult', index=0,
@@ -135,56 +136,56 @@ _CMSGCLIENTUFSUPLOADFILERESPONSE = _descriptor.Descriptor(
       has_default_value=True, default_value=2,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='sha_file', full_name='CMsgClientUFSUploadFileResponse.sha_file', index=1,
       number=2, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='use_http', full_name='CMsgClientUFSUploadFileResponse.use_http', index=2,
       number=3, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='http_host', full_name='CMsgClientUFSUploadFileResponse.http_host', index=3,
       number=4, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='http_url', full_name='CMsgClientUFSUploadFileResponse.http_url', index=4,
       number=5, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='kv_headers', full_name='CMsgClientUFSUploadFileResponse.kv_headers', index=5,
       number=6, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='use_https', full_name='CMsgClientUFSUploadFileResponse.use_https', index=6,
       number=7, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='encrypt_file', full_name='CMsgClientUFSUploadFileResponse.encrypt_file', index=7,
       number=8, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -208,6 +209,7 @@ _CMSGCLIENTUFSUPLOADCOMMIT_FILE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='eresult', full_name='CMsgClientUFSUploadCommit.File.eresult', index=0,
@@ -215,35 +217,35 @@ _CMSGCLIENTUFSUPLOADCOMMIT_FILE = _descriptor.Descriptor(
       has_default_value=True, default_value=2,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CMsgClientUFSUploadCommit.File.app_id', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='sha_file', full_name='CMsgClientUFSUploadCommit.File.sha_file', index=2,
       number=3, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='cub_file', full_name='CMsgClientUFSUploadCommit.File.cub_file', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='file_name', full_name='CMsgClientUFSUploadCommit.File.file_name', index=4,
       number=5, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -266,6 +268,7 @@ _CMSGCLIENTUFSUPLOADCOMMIT = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='files', full_name='CMsgClientUFSUploadCommit.files', index=0,
@@ -273,7 +276,7 @@ _CMSGCLIENTUFSUPLOADCOMMIT = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -297,6 +300,7 @@ _CMSGCLIENTUFSUPLOADCOMMITRESPONSE_FILE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='eresult', full_name='CMsgClientUFSUploadCommitResponse.File.eresult', index=0,
@@ -304,21 +308,21 @@ _CMSGCLIENTUFSUPLOADCOMMITRESPONSE_FILE = _descriptor.Descriptor(
       has_default_value=True, default_value=2,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CMsgClientUFSUploadCommitResponse.File.app_id', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='sha_file', full_name='CMsgClientUFSUploadCommitResponse.File.sha_file', index=2,
       number=3, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -341,6 +345,7 @@ _CMSGCLIENTUFSUPLOADCOMMITRESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='files', full_name='CMsgClientUFSUploadCommitResponse.files', index=0,
@@ -348,7 +353,7 @@ _CMSGCLIENTUFSUPLOADCOMMITRESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -372,28 +377,29 @@ _CMSGCLIENTUFSFILECHUNK = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='sha_file', full_name='CMsgClientUFSFileChunk.sha_file', index=0,
       number=1, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='file_start', full_name='CMsgClientUFSFileChunk.file_start', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='data', full_name='CMsgClientUFSFileChunk.data', index=2,
       number=3, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -417,6 +423,7 @@ _CMSGCLIENTUFSTRANSFERHEARTBEAT = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -441,6 +448,7 @@ _CMSGCLIENTUFSUPLOADFILEFINISHED = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='eresult', full_name='CMsgClientUFSUploadFileFinished.eresult', index=0,
@@ -448,14 +456,14 @@ _CMSGCLIENTUFSUPLOADFILEFINISHED = _descriptor.Descriptor(
       has_default_value=True, default_value=2,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='sha_file', full_name='CMsgClientUFSUploadFileFinished.sha_file', index=1,
       number=2, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -479,6 +487,7 @@ _CMSGCLIENTUFSDELETEFILEREQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CMsgClientUFSDeleteFileRequest.app_id', index=0,
@@ -486,21 +495,21 @@ _CMSGCLIENTUFSDELETEFILEREQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='file_name', full_name='CMsgClientUFSDeleteFileRequest.file_name', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='is_explicit_delete', full_name='CMsgClientUFSDeleteFileRequest.is_explicit_delete', index=2,
       number=3, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -524,6 +533,7 @@ _CMSGCLIENTUFSDELETEFILERESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='eresult', full_name='CMsgClientUFSDeleteFileResponse.eresult', index=0,
@@ -531,14 +541,14 @@ _CMSGCLIENTUFSDELETEFILERESPONSE = _descriptor.Descriptor(
       has_default_value=True, default_value=2,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='file_name', full_name='CMsgClientUFSDeleteFileResponse.file_name', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -562,6 +572,7 @@ _CMSGCLIENTUFSGETFILELISTFORAPP = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='apps_to_query', full_name='CMsgClientUFSGetFileListForApp.apps_to_query', index=0,
@@ -569,14 +580,14 @@ _CMSGCLIENTUFSGETFILELISTFORAPP = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='send_path_prefixes', full_name='CMsgClientUFSGetFileListForApp.send_path_prefixes', index=1,
       number=2, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -600,6 +611,7 @@ _CMSGCLIENTUFSGETFILELISTFORAPPRESPONSE_FILE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CMsgClientUFSGetFileListForAppResponse.File.app_id', index=0,
@@ -607,56 +619,56 @@ _CMSGCLIENTUFSGETFILELISTFORAPPRESPONSE_FILE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='file_name', full_name='CMsgClientUFSGetFileListForAppResponse.File.file_name', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='sha_file', full_name='CMsgClientUFSGetFileListForAppResponse.File.sha_file', index=2,
       number=3, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='time_stamp', full_name='CMsgClientUFSGetFileListForAppResponse.File.time_stamp', index=3,
       number=4, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='raw_file_size', full_name='CMsgClientUFSGetFileListForAppResponse.File.raw_file_size', index=4,
       number=5, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='is_explicit_delete', full_name='CMsgClientUFSGetFileListForAppResponse.File.is_explicit_delete', index=5,
       number=6, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='platforms_to_sync', full_name='CMsgClientUFSGetFileListForAppResponse.File.platforms_to_sync', index=6,
       number=7, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='path_prefix_index', full_name='CMsgClientUFSGetFileListForAppResponse.File.path_prefix_index', index=7,
       number=8, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -679,6 +691,7 @@ _CMSGCLIENTUFSGETFILELISTFORAPPRESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='files', full_name='CMsgClientUFSGetFileListForAppResponse.files', index=0,
@@ -686,21 +699,21 @@ _CMSGCLIENTUFSGETFILELISTFORAPPRESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='path_prefixes', full_name='CMsgClientUFSGetFileListForAppResponse.path_prefixes', index=1,
       number=2, type=9, cpp_type=9, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
   nested_types=[_CMSGCLIENTUFSGETFILELISTFORAPPRESPONSE_FILE, ],
   enum_types=[
   ],
-  serialized_options=_b('\200\265\030\010\210\265\030\020'),
+  serialized_options=b'\200\265\030\010\210\265\030\020',
   is_extendable=False,
   syntax='proto2',
   extension_ranges=[],
@@ -717,6 +730,7 @@ _CMSGCLIENTUFSDOWNLOADREQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CMsgClientUFSDownloadRequest.app_id', index=0,
@@ -724,21 +738,21 @@ _CMSGCLIENTUFSDOWNLOADREQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='file_name', full_name='CMsgClientUFSDownloadRequest.file_name', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='can_handle_http', full_name='CMsgClientUFSDownloadRequest.can_handle_http', index=2,
       number=3, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -762,6 +776,7 @@ _CMSGCLIENTUFSDOWNLOADRESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='eresult', full_name='CMsgClientUFSDownloadResponse.eresult', index=0,
@@ -769,91 +784,91 @@ _CMSGCLIENTUFSDOWNLOADRESPONSE = _descriptor.Descriptor(
       has_default_value=True, default_value=2,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CMsgClientUFSDownloadResponse.app_id', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='file_size', full_name='CMsgClientUFSDownloadResponse.file_size', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='raw_file_size', full_name='CMsgClientUFSDownloadResponse.raw_file_size', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='sha_file', full_name='CMsgClientUFSDownloadResponse.sha_file', index=4,
       number=5, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='time_stamp', full_name='CMsgClientUFSDownloadResponse.time_stamp', index=5,
       number=6, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='is_explicit_delete', full_name='CMsgClientUFSDownloadResponse.is_explicit_delete', index=6,
       number=7, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='use_http', full_name='CMsgClientUFSDownloadResponse.use_http', index=7,
       number=8, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='http_host', full_name='CMsgClientUFSDownloadResponse.http_host', index=8,
       number=9, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='http_url', full_name='CMsgClientUFSDownloadResponse.http_url', index=9,
       number=10, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='kv_headers', full_name='CMsgClientUFSDownloadResponse.kv_headers', index=10,
       number=11, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='use_https', full_name='CMsgClientUFSDownloadResponse.use_https', index=11,
       number=12, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='encrypted', full_name='CMsgClientUFSDownloadResponse.encrypted', index=12,
       number=13, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -877,6 +892,7 @@ _CMSGCLIENTUFSLOGINREQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='protocol_version', full_name='CMsgClientUFSLoginRequest.protocol_version', index=0,
@@ -884,21 +900,21 @@ _CMSGCLIENTUFSLOGINREQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='am_session_token', full_name='CMsgClientUFSLoginRequest.am_session_token', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='apps', full_name='CMsgClientUFSLoginRequest.apps', index=2,
       number=3, type=13, cpp_type=3, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -922,6 +938,7 @@ _CMSGCLIENTUFSLOGINRESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='eresult', full_name='CMsgClientUFSLoginResponse.eresult', index=0,
@@ -929,7 +946,7 @@ _CMSGCLIENTUFSLOGINRESPONSE = _descriptor.Descriptor(
       has_default_value=True, default_value=2,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -953,6 +970,7 @@ _CMSGCLIENTUFSGETUGCDETAILS = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='hcontent', full_name='CMsgClientUFSGetUGCDetails.hcontent', index=0,
@@ -960,7 +978,7 @@ _CMSGCLIENTUFSGETUGCDETAILS = _descriptor.Descriptor(
       has_default_value=True, default_value=18446744073709551615,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -984,6 +1002,7 @@ _CMSGCLIENTUFSGETUGCDETAILSRESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='eresult', full_name='CMsgClientUFSGetUGCDetailsResponse.eresult', index=0,
@@ -991,63 +1010,63 @@ _CMSGCLIENTUFSGETUGCDETAILSRESPONSE = _descriptor.Descriptor(
       has_default_value=True, default_value=2,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='url', full_name='CMsgClientUFSGetUGCDetailsResponse.url', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CMsgClientUFSGetUGCDetailsResponse.app_id', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='filename', full_name='CMsgClientUFSGetUGCDetailsResponse.filename', index=3,
       number=4, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steamid_creator', full_name='CMsgClientUFSGetUGCDetailsResponse.steamid_creator', index=4,
       number=5, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='file_size', full_name='CMsgClientUFSGetUGCDetailsResponse.file_size', index=5,
       number=6, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='compressed_file_size', full_name='CMsgClientUFSGetUGCDetailsResponse.compressed_file_size', index=6,
       number=7, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='rangecheck_host', full_name='CMsgClientUFSGetUGCDetailsResponse.rangecheck_host', index=7,
       number=8, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='file_encoded_sha1', full_name='CMsgClientUFSGetUGCDetailsResponse.file_encoded_sha1', index=8,
       number=9, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1071,6 +1090,7 @@ _CMSGCLIENTUFSGETSINGLEFILEINFO = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CMsgClientUFSGetSingleFileInfo.app_id', index=0,
@@ -1078,14 +1098,14 @@ _CMSGCLIENTUFSGETSINGLEFILEINFO = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='file_name', full_name='CMsgClientUFSGetSingleFileInfo.file_name', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1109,6 +1129,7 @@ _CMSGCLIENTUFSGETSINGLEFILEINFORESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='eresult', full_name='CMsgClientUFSGetSingleFileInfoResponse.eresult', index=0,
@@ -1116,49 +1137,49 @@ _CMSGCLIENTUFSGETSINGLEFILEINFORESPONSE = _descriptor.Descriptor(
       has_default_value=True, default_value=2,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CMsgClientUFSGetSingleFileInfoResponse.app_id', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='file_name', full_name='CMsgClientUFSGetSingleFileInfoResponse.file_name', index=2,
       number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='sha_file', full_name='CMsgClientUFSGetSingleFileInfoResponse.sha_file', index=3,
       number=4, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='time_stamp', full_name='CMsgClientUFSGetSingleFileInfoResponse.time_stamp', index=4,
       number=5, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='raw_file_size', full_name='CMsgClientUFSGetSingleFileInfoResponse.raw_file_size', index=5,
       number=6, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='is_explicit_delete', full_name='CMsgClientUFSGetSingleFileInfoResponse.is_explicit_delete', index=6,
       number=7, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1182,6 +1203,7 @@ _CMSGCLIENTUFSSHAREFILE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CMsgClientUFSShareFile.app_id', index=0,
@@ -1189,14 +1211,14 @@ _CMSGCLIENTUFSSHAREFILE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='file_name', full_name='CMsgClientUFSShareFile.file_name', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1220,6 +1242,7 @@ _CMSGCLIENTUFSSHAREFILERESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='eresult', full_name='CMsgClientUFSShareFileResponse.eresult', index=0,
@@ -1227,14 +1250,14 @@ _CMSGCLIENTUFSSHAREFILERESPONSE = _descriptor.Descriptor(
       has_default_value=True, default_value=2,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='hcontent', full_name='CMsgClientUFSShareFileResponse.hcontent', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=True, default_value=18446744073709551615,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1280,175 +1303,175 @@ DESCRIPTOR.message_types_by_name['CMsgClientUFSShareFile'] = _CMSGCLIENTUFSSHARE
 DESCRIPTOR.message_types_by_name['CMsgClientUFSShareFileResponse'] = _CMSGCLIENTUFSSHAREFILERESPONSE
 _sym_db.RegisterFileDescriptor(DESCRIPTOR)
 
-CMsgClientUFSUploadFileRequest = _reflection.GeneratedProtocolMessageType('CMsgClientUFSUploadFileRequest', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTUFSUPLOADFILEREQUEST,
-  __module__ = 'steammessages_clientserver_ufs_pb2'
+CMsgClientUFSUploadFileRequest = _reflection.GeneratedProtocolMessageType('CMsgClientUFSUploadFileRequest', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTUFSUPLOADFILEREQUEST,
+  '__module__' : 'steammessages_clientserver_ufs_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientUFSUploadFileRequest)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientUFSUploadFileRequest)
 
-CMsgClientUFSUploadFileResponse = _reflection.GeneratedProtocolMessageType('CMsgClientUFSUploadFileResponse', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTUFSUPLOADFILERESPONSE,
-  __module__ = 'steammessages_clientserver_ufs_pb2'
+CMsgClientUFSUploadFileResponse = _reflection.GeneratedProtocolMessageType('CMsgClientUFSUploadFileResponse', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTUFSUPLOADFILERESPONSE,
+  '__module__' : 'steammessages_clientserver_ufs_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientUFSUploadFileResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientUFSUploadFileResponse)
 
-CMsgClientUFSUploadCommit = _reflection.GeneratedProtocolMessageType('CMsgClientUFSUploadCommit', (_message.Message,), dict(
+CMsgClientUFSUploadCommit = _reflection.GeneratedProtocolMessageType('CMsgClientUFSUploadCommit', (_message.Message,), {
 
-  File = _reflection.GeneratedProtocolMessageType('File', (_message.Message,), dict(
-    DESCRIPTOR = _CMSGCLIENTUFSUPLOADCOMMIT_FILE,
-    __module__ = 'steammessages_clientserver_ufs_pb2'
+  'File' : _reflection.GeneratedProtocolMessageType('File', (_message.Message,), {
+    'DESCRIPTOR' : _CMSGCLIENTUFSUPLOADCOMMIT_FILE,
+    '__module__' : 'steammessages_clientserver_ufs_pb2'
     # @@protoc_insertion_point(class_scope:CMsgClientUFSUploadCommit.File)
-    ))
+    })
   ,
-  DESCRIPTOR = _CMSGCLIENTUFSUPLOADCOMMIT,
-  __module__ = 'steammessages_clientserver_ufs_pb2'
+  'DESCRIPTOR' : _CMSGCLIENTUFSUPLOADCOMMIT,
+  '__module__' : 'steammessages_clientserver_ufs_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientUFSUploadCommit)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientUFSUploadCommit)
 _sym_db.RegisterMessage(CMsgClientUFSUploadCommit.File)
 
-CMsgClientUFSUploadCommitResponse = _reflection.GeneratedProtocolMessageType('CMsgClientUFSUploadCommitResponse', (_message.Message,), dict(
+CMsgClientUFSUploadCommitResponse = _reflection.GeneratedProtocolMessageType('CMsgClientUFSUploadCommitResponse', (_message.Message,), {
 
-  File = _reflection.GeneratedProtocolMessageType('File', (_message.Message,), dict(
-    DESCRIPTOR = _CMSGCLIENTUFSUPLOADCOMMITRESPONSE_FILE,
-    __module__ = 'steammessages_clientserver_ufs_pb2'
+  'File' : _reflection.GeneratedProtocolMessageType('File', (_message.Message,), {
+    'DESCRIPTOR' : _CMSGCLIENTUFSUPLOADCOMMITRESPONSE_FILE,
+    '__module__' : 'steammessages_clientserver_ufs_pb2'
     # @@protoc_insertion_point(class_scope:CMsgClientUFSUploadCommitResponse.File)
-    ))
+    })
   ,
-  DESCRIPTOR = _CMSGCLIENTUFSUPLOADCOMMITRESPONSE,
-  __module__ = 'steammessages_clientserver_ufs_pb2'
+  'DESCRIPTOR' : _CMSGCLIENTUFSUPLOADCOMMITRESPONSE,
+  '__module__' : 'steammessages_clientserver_ufs_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientUFSUploadCommitResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientUFSUploadCommitResponse)
 _sym_db.RegisterMessage(CMsgClientUFSUploadCommitResponse.File)
 
-CMsgClientUFSFileChunk = _reflection.GeneratedProtocolMessageType('CMsgClientUFSFileChunk', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTUFSFILECHUNK,
-  __module__ = 'steammessages_clientserver_ufs_pb2'
+CMsgClientUFSFileChunk = _reflection.GeneratedProtocolMessageType('CMsgClientUFSFileChunk', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTUFSFILECHUNK,
+  '__module__' : 'steammessages_clientserver_ufs_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientUFSFileChunk)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientUFSFileChunk)
 
-CMsgClientUFSTransferHeartbeat = _reflection.GeneratedProtocolMessageType('CMsgClientUFSTransferHeartbeat', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTUFSTRANSFERHEARTBEAT,
-  __module__ = 'steammessages_clientserver_ufs_pb2'
+CMsgClientUFSTransferHeartbeat = _reflection.GeneratedProtocolMessageType('CMsgClientUFSTransferHeartbeat', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTUFSTRANSFERHEARTBEAT,
+  '__module__' : 'steammessages_clientserver_ufs_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientUFSTransferHeartbeat)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientUFSTransferHeartbeat)
 
-CMsgClientUFSUploadFileFinished = _reflection.GeneratedProtocolMessageType('CMsgClientUFSUploadFileFinished', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTUFSUPLOADFILEFINISHED,
-  __module__ = 'steammessages_clientserver_ufs_pb2'
+CMsgClientUFSUploadFileFinished = _reflection.GeneratedProtocolMessageType('CMsgClientUFSUploadFileFinished', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTUFSUPLOADFILEFINISHED,
+  '__module__' : 'steammessages_clientserver_ufs_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientUFSUploadFileFinished)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientUFSUploadFileFinished)
 
-CMsgClientUFSDeleteFileRequest = _reflection.GeneratedProtocolMessageType('CMsgClientUFSDeleteFileRequest', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTUFSDELETEFILEREQUEST,
-  __module__ = 'steammessages_clientserver_ufs_pb2'
+CMsgClientUFSDeleteFileRequest = _reflection.GeneratedProtocolMessageType('CMsgClientUFSDeleteFileRequest', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTUFSDELETEFILEREQUEST,
+  '__module__' : 'steammessages_clientserver_ufs_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientUFSDeleteFileRequest)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientUFSDeleteFileRequest)
 
-CMsgClientUFSDeleteFileResponse = _reflection.GeneratedProtocolMessageType('CMsgClientUFSDeleteFileResponse', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTUFSDELETEFILERESPONSE,
-  __module__ = 'steammessages_clientserver_ufs_pb2'
+CMsgClientUFSDeleteFileResponse = _reflection.GeneratedProtocolMessageType('CMsgClientUFSDeleteFileResponse', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTUFSDELETEFILERESPONSE,
+  '__module__' : 'steammessages_clientserver_ufs_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientUFSDeleteFileResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientUFSDeleteFileResponse)
 
-CMsgClientUFSGetFileListForApp = _reflection.GeneratedProtocolMessageType('CMsgClientUFSGetFileListForApp', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTUFSGETFILELISTFORAPP,
-  __module__ = 'steammessages_clientserver_ufs_pb2'
+CMsgClientUFSGetFileListForApp = _reflection.GeneratedProtocolMessageType('CMsgClientUFSGetFileListForApp', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTUFSGETFILELISTFORAPP,
+  '__module__' : 'steammessages_clientserver_ufs_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientUFSGetFileListForApp)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientUFSGetFileListForApp)
 
-CMsgClientUFSGetFileListForAppResponse = _reflection.GeneratedProtocolMessageType('CMsgClientUFSGetFileListForAppResponse', (_message.Message,), dict(
+CMsgClientUFSGetFileListForAppResponse = _reflection.GeneratedProtocolMessageType('CMsgClientUFSGetFileListForAppResponse', (_message.Message,), {
 
-  File = _reflection.GeneratedProtocolMessageType('File', (_message.Message,), dict(
-    DESCRIPTOR = _CMSGCLIENTUFSGETFILELISTFORAPPRESPONSE_FILE,
-    __module__ = 'steammessages_clientserver_ufs_pb2'
+  'File' : _reflection.GeneratedProtocolMessageType('File', (_message.Message,), {
+    'DESCRIPTOR' : _CMSGCLIENTUFSGETFILELISTFORAPPRESPONSE_FILE,
+    '__module__' : 'steammessages_clientserver_ufs_pb2'
     # @@protoc_insertion_point(class_scope:CMsgClientUFSGetFileListForAppResponse.File)
-    ))
+    })
   ,
-  DESCRIPTOR = _CMSGCLIENTUFSGETFILELISTFORAPPRESPONSE,
-  __module__ = 'steammessages_clientserver_ufs_pb2'
+  'DESCRIPTOR' : _CMSGCLIENTUFSGETFILELISTFORAPPRESPONSE,
+  '__module__' : 'steammessages_clientserver_ufs_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientUFSGetFileListForAppResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientUFSGetFileListForAppResponse)
 _sym_db.RegisterMessage(CMsgClientUFSGetFileListForAppResponse.File)
 
-CMsgClientUFSDownloadRequest = _reflection.GeneratedProtocolMessageType('CMsgClientUFSDownloadRequest', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTUFSDOWNLOADREQUEST,
-  __module__ = 'steammessages_clientserver_ufs_pb2'
+CMsgClientUFSDownloadRequest = _reflection.GeneratedProtocolMessageType('CMsgClientUFSDownloadRequest', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTUFSDOWNLOADREQUEST,
+  '__module__' : 'steammessages_clientserver_ufs_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientUFSDownloadRequest)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientUFSDownloadRequest)
 
-CMsgClientUFSDownloadResponse = _reflection.GeneratedProtocolMessageType('CMsgClientUFSDownloadResponse', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTUFSDOWNLOADRESPONSE,
-  __module__ = 'steammessages_clientserver_ufs_pb2'
+CMsgClientUFSDownloadResponse = _reflection.GeneratedProtocolMessageType('CMsgClientUFSDownloadResponse', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTUFSDOWNLOADRESPONSE,
+  '__module__' : 'steammessages_clientserver_ufs_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientUFSDownloadResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientUFSDownloadResponse)
 
-CMsgClientUFSLoginRequest = _reflection.GeneratedProtocolMessageType('CMsgClientUFSLoginRequest', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTUFSLOGINREQUEST,
-  __module__ = 'steammessages_clientserver_ufs_pb2'
+CMsgClientUFSLoginRequest = _reflection.GeneratedProtocolMessageType('CMsgClientUFSLoginRequest', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTUFSLOGINREQUEST,
+  '__module__' : 'steammessages_clientserver_ufs_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientUFSLoginRequest)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientUFSLoginRequest)
 
-CMsgClientUFSLoginResponse = _reflection.GeneratedProtocolMessageType('CMsgClientUFSLoginResponse', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTUFSLOGINRESPONSE,
-  __module__ = 'steammessages_clientserver_ufs_pb2'
+CMsgClientUFSLoginResponse = _reflection.GeneratedProtocolMessageType('CMsgClientUFSLoginResponse', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTUFSLOGINRESPONSE,
+  '__module__' : 'steammessages_clientserver_ufs_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientUFSLoginResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientUFSLoginResponse)
 
-CMsgClientUFSGetUGCDetails = _reflection.GeneratedProtocolMessageType('CMsgClientUFSGetUGCDetails', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTUFSGETUGCDETAILS,
-  __module__ = 'steammessages_clientserver_ufs_pb2'
+CMsgClientUFSGetUGCDetails = _reflection.GeneratedProtocolMessageType('CMsgClientUFSGetUGCDetails', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTUFSGETUGCDETAILS,
+  '__module__' : 'steammessages_clientserver_ufs_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientUFSGetUGCDetails)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientUFSGetUGCDetails)
 
-CMsgClientUFSGetUGCDetailsResponse = _reflection.GeneratedProtocolMessageType('CMsgClientUFSGetUGCDetailsResponse', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTUFSGETUGCDETAILSRESPONSE,
-  __module__ = 'steammessages_clientserver_ufs_pb2'
+CMsgClientUFSGetUGCDetailsResponse = _reflection.GeneratedProtocolMessageType('CMsgClientUFSGetUGCDetailsResponse', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTUFSGETUGCDETAILSRESPONSE,
+  '__module__' : 'steammessages_clientserver_ufs_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientUFSGetUGCDetailsResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientUFSGetUGCDetailsResponse)
 
-CMsgClientUFSGetSingleFileInfo = _reflection.GeneratedProtocolMessageType('CMsgClientUFSGetSingleFileInfo', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTUFSGETSINGLEFILEINFO,
-  __module__ = 'steammessages_clientserver_ufs_pb2'
+CMsgClientUFSGetSingleFileInfo = _reflection.GeneratedProtocolMessageType('CMsgClientUFSGetSingleFileInfo', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTUFSGETSINGLEFILEINFO,
+  '__module__' : 'steammessages_clientserver_ufs_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientUFSGetSingleFileInfo)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientUFSGetSingleFileInfo)
 
-CMsgClientUFSGetSingleFileInfoResponse = _reflection.GeneratedProtocolMessageType('CMsgClientUFSGetSingleFileInfoResponse', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTUFSGETSINGLEFILEINFORESPONSE,
-  __module__ = 'steammessages_clientserver_ufs_pb2'
+CMsgClientUFSGetSingleFileInfoResponse = _reflection.GeneratedProtocolMessageType('CMsgClientUFSGetSingleFileInfoResponse', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTUFSGETSINGLEFILEINFORESPONSE,
+  '__module__' : 'steammessages_clientserver_ufs_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientUFSGetSingleFileInfoResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientUFSGetSingleFileInfoResponse)
 
-CMsgClientUFSShareFile = _reflection.GeneratedProtocolMessageType('CMsgClientUFSShareFile', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTUFSSHAREFILE,
-  __module__ = 'steammessages_clientserver_ufs_pb2'
+CMsgClientUFSShareFile = _reflection.GeneratedProtocolMessageType('CMsgClientUFSShareFile', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTUFSSHAREFILE,
+  '__module__' : 'steammessages_clientserver_ufs_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientUFSShareFile)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientUFSShareFile)
 
-CMsgClientUFSShareFileResponse = _reflection.GeneratedProtocolMessageType('CMsgClientUFSShareFileResponse', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTUFSSHAREFILERESPONSE,
-  __module__ = 'steammessages_clientserver_ufs_pb2'
+CMsgClientUFSShareFileResponse = _reflection.GeneratedProtocolMessageType('CMsgClientUFSShareFileResponse', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTUFSSHAREFILERESPONSE,
+  '__module__' : 'steammessages_clientserver_ufs_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientUFSShareFileResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientUFSShareFileResponse)
 
 
diff --git a/steam/protobufs/steammessages_clientserver_userstats_pb2.py b/steam/protobufs/steammessages_clientserver_userstats_pb2.py
index 7ae9dd0..f8390e1 100644
--- a/steam/protobufs/steammessages_clientserver_userstats_pb2.py
+++ b/steam/protobufs/steammessages_clientserver_userstats_pb2.py
@@ -1,9 +1,7 @@
 # -*- coding: utf-8 -*-
 # Generated by the protocol buffer compiler.  DO NOT EDIT!
 # source: steammessages_clientserver_userstats.proto
-
-import sys
-_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1'))
+"""Generated protocol buffer code."""
 from google.protobuf import descriptor as _descriptor
 from google.protobuf import message as _message
 from google.protobuf import reflection as _reflection
@@ -20,8 +18,9 @@ DESCRIPTOR = _descriptor.FileDescriptor(
   name='steammessages_clientserver_userstats.proto',
   package='',
   syntax='proto2',
-  serialized_options=_b('H\001\220\001\000'),
-  serialized_pb=_b('\n*steammessages_clientserver_userstats.proto\x1a\x18steammessages_base.proto\"u\n\x16\x43MsgClientGetUserStats\x12\x0f\n\x07game_id\x18\x01 \x01(\x06\x12\x11\n\tcrc_stats\x18\x02 \x01(\r\x12\x1c\n\x14schema_local_version\x18\x03 \x01(\x05\x12\x19\n\x11steam_id_for_user\x18\x04 \x01(\x06\"\xdf\x02\n\x1e\x43MsgClientGetUserStatsResponse\x12\x0f\n\x07game_id\x18\x01 \x01(\x06\x12\x12\n\x07\x65result\x18\x02 \x01(\x05:\x01\x32\x12\x11\n\tcrc_stats\x18\x03 \x01(\r\x12\x0e\n\x06schema\x18\x04 \x01(\x0c\x12\x34\n\x05stats\x18\x05 \x03(\x0b\x32%.CMsgClientGetUserStatsResponse.Stats\x12N\n\x12\x61\x63hievement_blocks\x18\x06 \x03(\x0b\x32\x32.CMsgClientGetUserStatsResponse.Achievement_Blocks\x1a,\n\x05Stats\x12\x0f\n\x07stat_id\x18\x01 \x01(\r\x12\x12\n\nstat_value\x18\x02 \x01(\r\x1a\x41\n\x12\x41\x63hievement_Blocks\x12\x16\n\x0e\x61\x63hievement_id\x18\x01 \x01(\r\x12\x13\n\x0bunlock_time\x18\x02 \x03(\x07\"\x9a\x02\n CMsgClientStoreUserStatsResponse\x12\x0f\n\x07game_id\x18\x01 \x01(\x06\x12\x12\n\x07\x65result\x18\x02 \x01(\x05:\x01\x32\x12\x11\n\tcrc_stats\x18\x03 \x01(\r\x12Z\n\x17stats_failed_validation\x18\x04 \x03(\x0b\x32\x39.CMsgClientStoreUserStatsResponse.Stats_Failed_Validation\x12\x19\n\x11stats_out_of_date\x18\x05 \x01(\x08\x1aG\n\x17Stats_Failed_Validation\x12\x0f\n\x07stat_id\x18\x01 \x01(\r\x12\x1b\n\x13reverted_stat_value\x18\x02 \x01(\r\"\xe8\x01\n\x19\x43MsgClientStoreUserStats2\x12\x0f\n\x07game_id\x18\x01 \x01(\x06\x12\x17\n\x0fsettor_steam_id\x18\x02 \x01(\x06\x12\x17\n\x0fsettee_steam_id\x18\x03 \x01(\x06\x12\x11\n\tcrc_stats\x18\x04 \x01(\r\x12\x16\n\x0e\x65xplicit_reset\x18\x05 \x01(\x08\x12/\n\x05stats\x18\x06 \x03(\x0b\x32 .CMsgClientStoreUserStats2.Stats\x1a,\n\x05Stats\x12\x0f\n\x07stat_id\x18\x01 \x01(\r\x12\x12\n\nstat_value\x18\x02 \x01(\r\"\xc2\x01\n\x16\x43MsgClientStatsUpdated\x12\x10\n\x08steam_id\x18\x01 \x01(\x06\x12\x0f\n\x07game_id\x18\x02 \x01(\x06\x12\x11\n\tcrc_stats\x18\x03 \x01(\r\x12<\n\rupdated_stats\x18\x04 \x03(\x0b\x32%.CMsgClientStatsUpdated.Updated_Stats\x1a\x34\n\rUpdated_Stats\x12\x0f\n\x07stat_id\x18\x01 \x01(\r\x12\x12\n\nstat_value\x18\x02 \x01(\r\"\xbc\x01\n\x18\x43MsgClientStoreUserStats\x12\x0f\n\x07game_id\x18\x01 \x01(\x06\x12\x16\n\x0e\x65xplicit_reset\x18\x02 \x01(\x08\x12@\n\x0estats_to_store\x18\x03 \x03(\x0b\x32(.CMsgClientStoreUserStats.Stats_To_Store\x1a\x35\n\x0eStats_To_Store\x12\x0f\n\x07stat_id\x18\x01 \x01(\r\x12\x12\n\nstat_value\x18\x02 \x01(\rB\x05H\x01\x90\x01\x00')
+  serialized_options=b'H\001\220\001\000',
+  create_key=_descriptor._internal_create_key,
+  serialized_pb=b'\n*steammessages_clientserver_userstats.proto\x1a\x18steammessages_base.proto\"u\n\x16\x43MsgClientGetUserStats\x12\x0f\n\x07game_id\x18\x01 \x01(\x06\x12\x11\n\tcrc_stats\x18\x02 \x01(\r\x12\x1c\n\x14schema_local_version\x18\x03 \x01(\x05\x12\x19\n\x11steam_id_for_user\x18\x04 \x01(\x06\"\xdf\x02\n\x1e\x43MsgClientGetUserStatsResponse\x12\x0f\n\x07game_id\x18\x01 \x01(\x06\x12\x12\n\x07\x65result\x18\x02 \x01(\x05:\x01\x32\x12\x11\n\tcrc_stats\x18\x03 \x01(\r\x12\x0e\n\x06schema\x18\x04 \x01(\x0c\x12\x34\n\x05stats\x18\x05 \x03(\x0b\x32%.CMsgClientGetUserStatsResponse.Stats\x12N\n\x12\x61\x63hievement_blocks\x18\x06 \x03(\x0b\x32\x32.CMsgClientGetUserStatsResponse.Achievement_Blocks\x1a,\n\x05Stats\x12\x0f\n\x07stat_id\x18\x01 \x01(\r\x12\x12\n\nstat_value\x18\x02 \x01(\r\x1a\x41\n\x12\x41\x63hievement_Blocks\x12\x16\n\x0e\x61\x63hievement_id\x18\x01 \x01(\r\x12\x13\n\x0bunlock_time\x18\x02 \x03(\x07\"\x9a\x02\n CMsgClientStoreUserStatsResponse\x12\x0f\n\x07game_id\x18\x01 \x01(\x06\x12\x12\n\x07\x65result\x18\x02 \x01(\x05:\x01\x32\x12\x11\n\tcrc_stats\x18\x03 \x01(\r\x12Z\n\x17stats_failed_validation\x18\x04 \x03(\x0b\x32\x39.CMsgClientStoreUserStatsResponse.Stats_Failed_Validation\x12\x19\n\x11stats_out_of_date\x18\x05 \x01(\x08\x1aG\n\x17Stats_Failed_Validation\x12\x0f\n\x07stat_id\x18\x01 \x01(\r\x12\x1b\n\x13reverted_stat_value\x18\x02 \x01(\r\"\xe8\x01\n\x19\x43MsgClientStoreUserStats2\x12\x0f\n\x07game_id\x18\x01 \x01(\x06\x12\x17\n\x0fsettor_steam_id\x18\x02 \x01(\x06\x12\x17\n\x0fsettee_steam_id\x18\x03 \x01(\x06\x12\x11\n\tcrc_stats\x18\x04 \x01(\r\x12\x16\n\x0e\x65xplicit_reset\x18\x05 \x01(\x08\x12/\n\x05stats\x18\x06 \x03(\x0b\x32 .CMsgClientStoreUserStats2.Stats\x1a,\n\x05Stats\x12\x0f\n\x07stat_id\x18\x01 \x01(\r\x12\x12\n\nstat_value\x18\x02 \x01(\r\"\xc2\x01\n\x16\x43MsgClientStatsUpdated\x12\x10\n\x08steam_id\x18\x01 \x01(\x06\x12\x0f\n\x07game_id\x18\x02 \x01(\x06\x12\x11\n\tcrc_stats\x18\x03 \x01(\r\x12<\n\rupdated_stats\x18\x04 \x03(\x0b\x32%.CMsgClientStatsUpdated.Updated_Stats\x1a\x34\n\rUpdated_Stats\x12\x0f\n\x07stat_id\x18\x01 \x01(\r\x12\x12\n\nstat_value\x18\x02 \x01(\r\"\xbc\x01\n\x18\x43MsgClientStoreUserStats\x12\x0f\n\x07game_id\x18\x01 \x01(\x06\x12\x16\n\x0e\x65xplicit_reset\x18\x02 \x01(\x08\x12@\n\x0estats_to_store\x18\x03 \x03(\x0b\x32(.CMsgClientStoreUserStats.Stats_To_Store\x1a\x35\n\x0eStats_To_Store\x12\x0f\n\x07stat_id\x18\x01 \x01(\r\x12\x12\n\nstat_value\x18\x02 \x01(\rB\x05H\x01\x90\x01\x00'
   ,
   dependencies=[steammessages__base__pb2.DESCRIPTOR,])
 
@@ -34,6 +33,7 @@ _CMSGCLIENTGETUSERSTATS = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='game_id', full_name='CMsgClientGetUserStats.game_id', index=0,
@@ -41,28 +41,28 @@ _CMSGCLIENTGETUSERSTATS = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='crc_stats', full_name='CMsgClientGetUserStats.crc_stats', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='schema_local_version', full_name='CMsgClientGetUserStats.schema_local_version', index=2,
       number=3, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steam_id_for_user', full_name='CMsgClientGetUserStats.steam_id_for_user', index=3,
       number=4, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -86,6 +86,7 @@ _CMSGCLIENTGETUSERSTATSRESPONSE_STATS = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='stat_id', full_name='CMsgClientGetUserStatsResponse.Stats.stat_id', index=0,
@@ -93,14 +94,14 @@ _CMSGCLIENTGETUSERSTATSRESPONSE_STATS = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='stat_value', full_name='CMsgClientGetUserStatsResponse.Stats.stat_value', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -123,6 +124,7 @@ _CMSGCLIENTGETUSERSTATSRESPONSE_ACHIEVEMENT_BLOCKS = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='achievement_id', full_name='CMsgClientGetUserStatsResponse.Achievement_Blocks.achievement_id', index=0,
@@ -130,14 +132,14 @@ _CMSGCLIENTGETUSERSTATSRESPONSE_ACHIEVEMENT_BLOCKS = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='unlock_time', full_name='CMsgClientGetUserStatsResponse.Achievement_Blocks.unlock_time', index=1,
       number=2, type=7, cpp_type=3, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -160,6 +162,7 @@ _CMSGCLIENTGETUSERSTATSRESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='game_id', full_name='CMsgClientGetUserStatsResponse.game_id', index=0,
@@ -167,42 +170,42 @@ _CMSGCLIENTGETUSERSTATSRESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='eresult', full_name='CMsgClientGetUserStatsResponse.eresult', index=1,
       number=2, type=5, cpp_type=1, label=1,
       has_default_value=True, default_value=2,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='crc_stats', full_name='CMsgClientGetUserStatsResponse.crc_stats', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='schema', full_name='CMsgClientGetUserStatsResponse.schema', index=3,
       number=4, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='stats', full_name='CMsgClientGetUserStatsResponse.stats', index=4,
       number=5, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='achievement_blocks', full_name='CMsgClientGetUserStatsResponse.achievement_blocks', index=5,
       number=6, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -226,6 +229,7 @@ _CMSGCLIENTSTOREUSERSTATSRESPONSE_STATS_FAILED_VALIDATION = _descriptor.Descript
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='stat_id', full_name='CMsgClientStoreUserStatsResponse.Stats_Failed_Validation.stat_id', index=0,
@@ -233,14 +237,14 @@ _CMSGCLIENTSTOREUSERSTATSRESPONSE_STATS_FAILED_VALIDATION = _descriptor.Descript
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='reverted_stat_value', full_name='CMsgClientStoreUserStatsResponse.Stats_Failed_Validation.reverted_stat_value', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -263,6 +267,7 @@ _CMSGCLIENTSTOREUSERSTATSRESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='game_id', full_name='CMsgClientStoreUserStatsResponse.game_id', index=0,
@@ -270,35 +275,35 @@ _CMSGCLIENTSTOREUSERSTATSRESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='eresult', full_name='CMsgClientStoreUserStatsResponse.eresult', index=1,
       number=2, type=5, cpp_type=1, label=1,
       has_default_value=True, default_value=2,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='crc_stats', full_name='CMsgClientStoreUserStatsResponse.crc_stats', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='stats_failed_validation', full_name='CMsgClientStoreUserStatsResponse.stats_failed_validation', index=3,
       number=4, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='stats_out_of_date', full_name='CMsgClientStoreUserStatsResponse.stats_out_of_date', index=4,
       number=5, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -322,6 +327,7 @@ _CMSGCLIENTSTOREUSERSTATS2_STATS = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='stat_id', full_name='CMsgClientStoreUserStats2.Stats.stat_id', index=0,
@@ -329,14 +335,14 @@ _CMSGCLIENTSTOREUSERSTATS2_STATS = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='stat_value', full_name='CMsgClientStoreUserStats2.Stats.stat_value', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -359,6 +365,7 @@ _CMSGCLIENTSTOREUSERSTATS2 = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='game_id', full_name='CMsgClientStoreUserStats2.game_id', index=0,
@@ -366,42 +373,42 @@ _CMSGCLIENTSTOREUSERSTATS2 = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='settor_steam_id', full_name='CMsgClientStoreUserStats2.settor_steam_id', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='settee_steam_id', full_name='CMsgClientStoreUserStats2.settee_steam_id', index=2,
       number=3, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='crc_stats', full_name='CMsgClientStoreUserStats2.crc_stats', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='explicit_reset', full_name='CMsgClientStoreUserStats2.explicit_reset', index=4,
       number=5, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='stats', full_name='CMsgClientStoreUserStats2.stats', index=5,
       number=6, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -425,6 +432,7 @@ _CMSGCLIENTSTATSUPDATED_UPDATED_STATS = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='stat_id', full_name='CMsgClientStatsUpdated.Updated_Stats.stat_id', index=0,
@@ -432,14 +440,14 @@ _CMSGCLIENTSTATSUPDATED_UPDATED_STATS = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='stat_value', full_name='CMsgClientStatsUpdated.Updated_Stats.stat_value', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -462,6 +470,7 @@ _CMSGCLIENTSTATSUPDATED = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steam_id', full_name='CMsgClientStatsUpdated.steam_id', index=0,
@@ -469,28 +478,28 @@ _CMSGCLIENTSTATSUPDATED = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='game_id', full_name='CMsgClientStatsUpdated.game_id', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='crc_stats', full_name='CMsgClientStatsUpdated.crc_stats', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='updated_stats', full_name='CMsgClientStatsUpdated.updated_stats', index=3,
       number=4, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -514,6 +523,7 @@ _CMSGCLIENTSTOREUSERSTATS_STATS_TO_STORE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='stat_id', full_name='CMsgClientStoreUserStats.Stats_To_Store.stat_id', index=0,
@@ -521,14 +531,14 @@ _CMSGCLIENTSTOREUSERSTATS_STATS_TO_STORE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='stat_value', full_name='CMsgClientStoreUserStats.Stats_To_Store.stat_value', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -551,6 +561,7 @@ _CMSGCLIENTSTOREUSERSTATS = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='game_id', full_name='CMsgClientStoreUserStats.game_id', index=0,
@@ -558,21 +569,21 @@ _CMSGCLIENTSTOREUSERSTATS = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='explicit_reset', full_name='CMsgClientStoreUserStats.explicit_reset', index=1,
       number=2, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='stats_to_store', full_name='CMsgClientStoreUserStats.stats_to_store', index=2,
       number=3, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -609,93 +620,93 @@ DESCRIPTOR.message_types_by_name['CMsgClientStatsUpdated'] = _CMSGCLIENTSTATSUPD
 DESCRIPTOR.message_types_by_name['CMsgClientStoreUserStats'] = _CMSGCLIENTSTOREUSERSTATS
 _sym_db.RegisterFileDescriptor(DESCRIPTOR)
 
-CMsgClientGetUserStats = _reflection.GeneratedProtocolMessageType('CMsgClientGetUserStats', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTGETUSERSTATS,
-  __module__ = 'steammessages_clientserver_userstats_pb2'
+CMsgClientGetUserStats = _reflection.GeneratedProtocolMessageType('CMsgClientGetUserStats', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTGETUSERSTATS,
+  '__module__' : 'steammessages_clientserver_userstats_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientGetUserStats)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientGetUserStats)
 
-CMsgClientGetUserStatsResponse = _reflection.GeneratedProtocolMessageType('CMsgClientGetUserStatsResponse', (_message.Message,), dict(
+CMsgClientGetUserStatsResponse = _reflection.GeneratedProtocolMessageType('CMsgClientGetUserStatsResponse', (_message.Message,), {
 
-  Stats = _reflection.GeneratedProtocolMessageType('Stats', (_message.Message,), dict(
-    DESCRIPTOR = _CMSGCLIENTGETUSERSTATSRESPONSE_STATS,
-    __module__ = 'steammessages_clientserver_userstats_pb2'
+  'Stats' : _reflection.GeneratedProtocolMessageType('Stats', (_message.Message,), {
+    'DESCRIPTOR' : _CMSGCLIENTGETUSERSTATSRESPONSE_STATS,
+    '__module__' : 'steammessages_clientserver_userstats_pb2'
     # @@protoc_insertion_point(class_scope:CMsgClientGetUserStatsResponse.Stats)
-    ))
+    })
   ,
 
-  Achievement_Blocks = _reflection.GeneratedProtocolMessageType('Achievement_Blocks', (_message.Message,), dict(
-    DESCRIPTOR = _CMSGCLIENTGETUSERSTATSRESPONSE_ACHIEVEMENT_BLOCKS,
-    __module__ = 'steammessages_clientserver_userstats_pb2'
+  'Achievement_Blocks' : _reflection.GeneratedProtocolMessageType('Achievement_Blocks', (_message.Message,), {
+    'DESCRIPTOR' : _CMSGCLIENTGETUSERSTATSRESPONSE_ACHIEVEMENT_BLOCKS,
+    '__module__' : 'steammessages_clientserver_userstats_pb2'
     # @@protoc_insertion_point(class_scope:CMsgClientGetUserStatsResponse.Achievement_Blocks)
-    ))
+    })
   ,
-  DESCRIPTOR = _CMSGCLIENTGETUSERSTATSRESPONSE,
-  __module__ = 'steammessages_clientserver_userstats_pb2'
+  'DESCRIPTOR' : _CMSGCLIENTGETUSERSTATSRESPONSE,
+  '__module__' : 'steammessages_clientserver_userstats_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientGetUserStatsResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientGetUserStatsResponse)
 _sym_db.RegisterMessage(CMsgClientGetUserStatsResponse.Stats)
 _sym_db.RegisterMessage(CMsgClientGetUserStatsResponse.Achievement_Blocks)
 
-CMsgClientStoreUserStatsResponse = _reflection.GeneratedProtocolMessageType('CMsgClientStoreUserStatsResponse', (_message.Message,), dict(
+CMsgClientStoreUserStatsResponse = _reflection.GeneratedProtocolMessageType('CMsgClientStoreUserStatsResponse', (_message.Message,), {
 
-  Stats_Failed_Validation = _reflection.GeneratedProtocolMessageType('Stats_Failed_Validation', (_message.Message,), dict(
-    DESCRIPTOR = _CMSGCLIENTSTOREUSERSTATSRESPONSE_STATS_FAILED_VALIDATION,
-    __module__ = 'steammessages_clientserver_userstats_pb2'
+  'Stats_Failed_Validation' : _reflection.GeneratedProtocolMessageType('Stats_Failed_Validation', (_message.Message,), {
+    'DESCRIPTOR' : _CMSGCLIENTSTOREUSERSTATSRESPONSE_STATS_FAILED_VALIDATION,
+    '__module__' : 'steammessages_clientserver_userstats_pb2'
     # @@protoc_insertion_point(class_scope:CMsgClientStoreUserStatsResponse.Stats_Failed_Validation)
-    ))
+    })
   ,
-  DESCRIPTOR = _CMSGCLIENTSTOREUSERSTATSRESPONSE,
-  __module__ = 'steammessages_clientserver_userstats_pb2'
+  'DESCRIPTOR' : _CMSGCLIENTSTOREUSERSTATSRESPONSE,
+  '__module__' : 'steammessages_clientserver_userstats_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientStoreUserStatsResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientStoreUserStatsResponse)
 _sym_db.RegisterMessage(CMsgClientStoreUserStatsResponse.Stats_Failed_Validation)
 
-CMsgClientStoreUserStats2 = _reflection.GeneratedProtocolMessageType('CMsgClientStoreUserStats2', (_message.Message,), dict(
+CMsgClientStoreUserStats2 = _reflection.GeneratedProtocolMessageType('CMsgClientStoreUserStats2', (_message.Message,), {
 
-  Stats = _reflection.GeneratedProtocolMessageType('Stats', (_message.Message,), dict(
-    DESCRIPTOR = _CMSGCLIENTSTOREUSERSTATS2_STATS,
-    __module__ = 'steammessages_clientserver_userstats_pb2'
+  'Stats' : _reflection.GeneratedProtocolMessageType('Stats', (_message.Message,), {
+    'DESCRIPTOR' : _CMSGCLIENTSTOREUSERSTATS2_STATS,
+    '__module__' : 'steammessages_clientserver_userstats_pb2'
     # @@protoc_insertion_point(class_scope:CMsgClientStoreUserStats2.Stats)
-    ))
+    })
   ,
-  DESCRIPTOR = _CMSGCLIENTSTOREUSERSTATS2,
-  __module__ = 'steammessages_clientserver_userstats_pb2'
+  'DESCRIPTOR' : _CMSGCLIENTSTOREUSERSTATS2,
+  '__module__' : 'steammessages_clientserver_userstats_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientStoreUserStats2)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientStoreUserStats2)
 _sym_db.RegisterMessage(CMsgClientStoreUserStats2.Stats)
 
-CMsgClientStatsUpdated = _reflection.GeneratedProtocolMessageType('CMsgClientStatsUpdated', (_message.Message,), dict(
+CMsgClientStatsUpdated = _reflection.GeneratedProtocolMessageType('CMsgClientStatsUpdated', (_message.Message,), {
 
-  Updated_Stats = _reflection.GeneratedProtocolMessageType('Updated_Stats', (_message.Message,), dict(
-    DESCRIPTOR = _CMSGCLIENTSTATSUPDATED_UPDATED_STATS,
-    __module__ = 'steammessages_clientserver_userstats_pb2'
+  'Updated_Stats' : _reflection.GeneratedProtocolMessageType('Updated_Stats', (_message.Message,), {
+    'DESCRIPTOR' : _CMSGCLIENTSTATSUPDATED_UPDATED_STATS,
+    '__module__' : 'steammessages_clientserver_userstats_pb2'
     # @@protoc_insertion_point(class_scope:CMsgClientStatsUpdated.Updated_Stats)
-    ))
+    })
   ,
-  DESCRIPTOR = _CMSGCLIENTSTATSUPDATED,
-  __module__ = 'steammessages_clientserver_userstats_pb2'
+  'DESCRIPTOR' : _CMSGCLIENTSTATSUPDATED,
+  '__module__' : 'steammessages_clientserver_userstats_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientStatsUpdated)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientStatsUpdated)
 _sym_db.RegisterMessage(CMsgClientStatsUpdated.Updated_Stats)
 
-CMsgClientStoreUserStats = _reflection.GeneratedProtocolMessageType('CMsgClientStoreUserStats', (_message.Message,), dict(
+CMsgClientStoreUserStats = _reflection.GeneratedProtocolMessageType('CMsgClientStoreUserStats', (_message.Message,), {
 
-  Stats_To_Store = _reflection.GeneratedProtocolMessageType('Stats_To_Store', (_message.Message,), dict(
-    DESCRIPTOR = _CMSGCLIENTSTOREUSERSTATS_STATS_TO_STORE,
-    __module__ = 'steammessages_clientserver_userstats_pb2'
+  'Stats_To_Store' : _reflection.GeneratedProtocolMessageType('Stats_To_Store', (_message.Message,), {
+    'DESCRIPTOR' : _CMSGCLIENTSTOREUSERSTATS_STATS_TO_STORE,
+    '__module__' : 'steammessages_clientserver_userstats_pb2'
     # @@protoc_insertion_point(class_scope:CMsgClientStoreUserStats.Stats_To_Store)
-    ))
+    })
   ,
-  DESCRIPTOR = _CMSGCLIENTSTOREUSERSTATS,
-  __module__ = 'steammessages_clientserver_userstats_pb2'
+  'DESCRIPTOR' : _CMSGCLIENTSTOREUSERSTATS,
+  '__module__' : 'steammessages_clientserver_userstats_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientStoreUserStats)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientStoreUserStats)
 _sym_db.RegisterMessage(CMsgClientStoreUserStats.Stats_To_Store)
 
diff --git a/steam/protobufs/steammessages_cloud_pb2.py b/steam/protobufs/steammessages_cloud_pb2.py
index 0ffb292..9586d99 100644
--- a/steam/protobufs/steammessages_cloud_pb2.py
+++ b/steam/protobufs/steammessages_cloud_pb2.py
@@ -1,9 +1,7 @@
 # -*- coding: utf-8 -*-
 # Generated by the protocol buffer compiler.  DO NOT EDIT!
 # source: steammessages_cloud.proto
-
-import sys
-_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1'))
+"""Generated protocol buffer code."""
 from google.protobuf import descriptor as _descriptor
 from google.protobuf import message as _message
 from google.protobuf import reflection as _reflection
@@ -15,6 +13,7 @@ from google.protobuf import service_reflection
 _sym_db = _symbol_database.Default()
 
 
+import steam.protobufs.steammessages_base_pb2 as steammessages__base__pb2
 import steam.protobufs.steammessages_unified_base_pb2 as steammessages__unified__base__pb2
 import steam.protobufs.enums_pb2 as enums__pb2
 import steam.protobufs.steammessages_client_objects_pb2 as steammessages__client__objects__pb2
@@ -24,20 +23,93 @@ DESCRIPTOR = _descriptor.FileDescriptor(
   name='steammessages_cloud.proto',
   package='',
   syntax='proto2',
-  serialized_options=_b('\220\001\001'),
-  serialized_pb=_b('\n\x19steammessages_cloud.proto\x1a steammessages_unified_base.proto\x1a\x0b\x65nums.proto\x1a\"steammessages_client_objects.proto\"d\n\"CCloud_GetUploadServerInfo_Request\x12>\n\x05\x61ppid\x18\x01 \x01(\rB/\x82\xb5\x18+App ID to which a file will be uploaded to.\"9\n#CCloud_GetUploadServerInfo_Response\x12\x12\n\nserver_url\x18\x01 \x01(\t\"\x8d\x07\n\x1e\x43\x43loud_BeginHTTPUpload_Request\x12?\n\x05\x61ppid\x18\x01 \x01(\rB0\x82\xb5\x18,App ID for which the file is being uploaded.\x12\x33\n\tfile_size\x18\x02 \x01(\rB \x82\xb5\x18\x1cOriginal file size in bytes.\x12=\n\x08\x66ilename\x18\x03 \x01(\tB+\x82\xb5\x18\'Name of the file to store in the cloud.\x12V\n\x08\x66ile_sha\x18\x04 \x01(\tBD\x82\xb5\x18@Hex string (40 digits) representing the SHA1 digest of the file.\x12\\\n\tis_public\x18\x05 \x01(\x08\x42I\x82\xb5\x18\x45True if the file should be marked public on the UFS, false otherwise.\x12\x97\x01\n\x11platforms_to_sync\x18\x06 \x03(\tB|\x82\xb5\x18xArray of string specifying which platforms to sync; value values: all, Windows, MacOS, linux, Switch, iPhoneOS, Android.\x12r\n\x15request_headers_names\x18\x07 \x03(\tBS\x82\xb5\x18ONames for headers you\'ll want to set on your upload request. May be left blank.\x12\x96\x01\n\x16request_headers_values\x18\x08 \x03(\tBv\x82\xb5\x18rValues for headers you\'ll want to set on your upload request. The number of names must equal the number of values.\x12Y\n\x0fupload_batch_id\x18\t \x01(\x04\x42@\x82\xb5\x18<ID of this batch returned by prior BeginAppUploadBatch call.\"\x98\x04\n\x1f\x43\x43loud_BeginHTTPUpload_Response\x12/\n\x05ugcid\x18\x01 \x01(\x06\x42 \x82\xb5\x18\x1cUGC ID of the uploaded file.\x12\x30\n\ttimestamp\x18\x02 \x01(\x07\x42\x1d\x82\xb5\x18\x19Server timestamp of file.\x12X\n\x08url_host\x18\x03 \x01(\tBF\x82\xb5\x18\x42Host name of server to which file should be uploaded via HTTP PUT.\x12O\n\x08url_path\x18\x04 \x01(\tB=\x82\xb5\x18\x39Relative path on server to which file should be uploaded.\x12>\n\tuse_https\x18\x05 \x01(\x08\x42+\x82\xb5\x18\'If true, use https, otherwise use http.\x12{\n\x0frequest_headers\x18\x06 \x03(\x0b\x32,.CCloud_BeginHTTPUpload_Response.HTTPHeadersB4\x82\xb5\x18\x30Name-value pairs to be sent in HTTP PUT request.\x1a*\n\x0bHTTPHeaders\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t\"\xad\x04\n\x1f\x43\x43loud_CommitHTTPUpload_Request\x12\xa4\x01\n\x12transfer_succeeded\x18\x01 \x01(\x08\x42\x87\x01\x82\xb5\x18\x82\x01True if the HTTP PUT to the upload URL succeeded (URL provided in response to Cloud.BeginHTTPUpload), false if a failure occurred.\x12x\n\x05\x61ppid\x18\x02 \x01(\rBi\x82\xb5\x18\x65\x41pp ID for which the file is being uploaded. Must match the app ID provided to Cloud.BeginHTTPUpload.\x12\x95\x01\n\x08\x66ile_sha\x18\x03 \x01(\tB\x82\x01\x82\xb5\x18~Hex string (40 digits) representing the SHA1 digest of the file. Must match the SHA1 digest provided to Cloud.BeginHTTPUpload.\x12Q\n\x08\x66ilename\x18\x04 \x01(\tB?\x82\xb5\x18;Filename as specified in the Cloud.BeginHTTPUpload request.\"}\n CCloud_CommitHTTPUpload_Response\x12Y\n\x0e\x66ile_committed\x18\x01 \x01(\x08\x42\x41\x82\xb5\x18=True if the file was successfully committed, false otherwise.\"\xb5\x02\n\x1d\x43\x43loud_BeginUGCUpload_Request\x12.\n\x05\x61ppid\x18\x01 \x01(\rB\x1f\x82\xb5\x18\x1b\x41pp ID this UGC belongs to.\x12*\n\tfile_size\x18\x02 \x01(\rB\x17\x82\xb5\x18\x13\x46ile size in bytes.\x12\'\n\x08\x66ilename\x18\x03 \x01(\tB\x15\x82\xb5\x18\x11Name of the file.\x12V\n\x08\x66ile_sha\x18\x04 \x01(\tBD\x82\xb5\x18@Hex string (40 digits) representing the SHA1 digest of the file.\x12\x37\n\x0c\x63ontent_type\x18\x05 \x01(\tB!\x82\xb5\x18\x1dMIME content type of the file\"\xa0\x05\n\x1e\x43\x43loud_BeginUGCUpload_Response\x12\x87\x01\n\x0estorage_system\x18\x01 \x01(\x0e\x32\x1c.EPublishedFileStorageSystem:$k_EPublishedFileStorageSystemInvalidB+\x82\xb5\x18\'UGC Storage system chosen for this file\x12/\n\x05ugcid\x18\x02 \x01(\x06\x42 \x82\xb5\x18\x1cUGC ID of the uploaded file.\x12\x30\n\ttimestamp\x18\x03 \x01(\x07\x42\x1d\x82\xb5\x18\x19Server timestamp of file.\x12X\n\x08url_host\x18\x04 \x01(\tBF\x82\xb5\x18\x42Host name of server to which file should be uploaded via HTTP PUT.\x12O\n\x08url_path\x18\x05 \x01(\tB=\x82\xb5\x18\x39Relative path on server to which file should be uploaded.\x12>\n\tuse_https\x18\x06 \x01(\x08\x42+\x82\xb5\x18\'If true, use https, otherwise use http.\x12z\n\x0frequest_headers\x18\x07 \x03(\x0b\x32+.CCloud_BeginUGCUpload_Response.HTTPHeadersB4\x82\xb5\x18\x30Name-value pairs to be sent in HTTP PUT request.\x1a*\n\x0bHTTPHeaders\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t\"\xf0\x02\n\x1e\x43\x43loud_CommitUGCUpload_Request\x12\xa3\x01\n\x12transfer_succeeded\x18\x01 \x01(\x08\x42\x86\x01\x82\xb5\x18\x81\x01True if the HTTP PUT to the upload URL succeeded (URL provided in response to Cloud.BeginUGCUpload), false if a failure occurred.\x12w\n\x05\x61ppid\x18\x02 \x01(\rBh\x82\xb5\x18\x64\x41pp ID for which the file is being uploaded. Must match the app ID provided to Cloud.BeginUGCUpload.\x12/\n\x05ugcid\x18\x03 \x01(\x06\x42 \x82\xb5\x18\x1cUGC ID of the uploaded file.\"|\n\x1f\x43\x43loud_CommitUGCUpload_Response\x12Y\n\x0e\x66ile_committed\x18\x01 \x01(\x08\x42\x41\x82\xb5\x18=True if the file was successfully committed, false otherwise.\"\x8c\x01\n\x1d\x43\x43loud_GetFileDetails_Request\x12;\n\x05ugcid\x18\x01 \x01(\x04\x42,\x82\xb5\x18(ID of the Cloud file to get details for.\x12.\n\x05\x61ppid\x18\x02 \x01(\rB\x1f\x82\xb5\x18\x1b\x41pp ID the file belongs to.\"\x8e\x03\n\x0f\x43\x43loud_UserFile\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\r\n\x05ugcid\x18\x02 \x01(\x04\x12\x10\n\x08\x66ilename\x18\x03 \x01(\t\x12\x11\n\ttimestamp\x18\x04 \x01(\x04\x12\x11\n\tfile_size\x18\x05 \x01(\r\x12\x0b\n\x03url\x18\x06 \x01(\t\x12\x17\n\x0fsteamid_creator\x18\x07 \x01(\x06\x12\r\n\x05\x66lags\x18\x08 \x01(\r\x12\x97\x01\n\x11platforms_to_sync\x18\t \x03(\tB|\x82\xb5\x18xArray of string specifying which platforms to sync; value values: all, Windows, MacOS, linux, Switch, iPhoneOS, Android.\x12V\n\x08\x66ile_sha\x18\n \x01(\tBD\x82\xb5\x18@Hex string (40 digits) representing the SHA1 digest of the file.\"C\n\x1e\x43\x43loud_GetFileDetails_Response\x12!\n\x07\x64\x65tails\x18\x01 \x01(\x0b\x32\x10.CCloud_UserFile\"\xe9\x03\n!CCloud_EnumerateUserFiles_Request\x12\x34\n\x05\x61ppid\x18\x01 \x01(\rB%\x82\xb5\x18!App ID to enumerate the files of.\x12\x9b\x01\n\x10\x65xtended_details\x18\x02 \x01(\x08\x42\x80\x01\x82\xb5\x18|(Optional) Get extended details back on the files found. Defaults to only returned the app Id and UGC Id of the files found.\x12|\n\x05\x63ount\x18\x03 \x01(\rBm\x82\xb5\x18i(Optional) Maximum number of results to return on this call. Defaults to a maximum of 500 files returned.\x12r\n\x0bstart_index\x18\x04 \x01(\rB]\x82\xb5\x18Y(Optional) Starting index to begin enumeration at. Defaults to the beginning of the list.\"Z\n\"CCloud_EnumerateUserFiles_Response\x12\x1f\n\x05\x66iles\x18\x01 \x03(\x0b\x32\x10.CCloud_UserFile\x12\x13\n\x0btotal_files\x18\x02 \x01(\r\"\xb4\x01\n\x15\x43\x43loud_Delete_Request\x12\x10\n\x08\x66ilename\x18\x01 \x01(\t\x12.\n\x05\x61ppid\x18\x02 \x01(\rB\x1f\x82\xb5\x18\x1b\x41pp ID the file belongs to.\x12Y\n\x0fupload_batch_id\x18\x03 \x01(\x04\x42@\x82\xb5\x18<ID of this batch returned by prior BeginAppUploadBatch call.\"\x18\n\x16\x43\x43loud_Delete_Response\"\'\n%CCloud_GetClientEncryptionKey_Request\"n\n&CCloud_GetClientEncryptionKey_Response\x12\'\n\x03key\x18\x01 \x01(\x0c\x42\x1a\x82\xb5\x18\x16\x41\x45S-256 encryption key\x12\x1b\n\x03\x63rc\x18\x02 \x01(\x05\x42\x0e\x82\xb5\x18\nCRC of key\"\xaa\x01\n\x1d\x43\x43loud_CDNReport_Notification\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12\x0b\n\x03url\x18\x02 \x01(\t\x12\x0f\n\x07success\x18\x03 \x01(\x08\x12\x18\n\x10http_status_code\x18\x04 \x01(\r\x12\x16\n\x0e\x65xpected_bytes\x18\x05 \x01(\x04\x12\x16\n\x0ereceived_bytes\x18\x06 \x01(\x04\x12\x10\n\x08\x64uration\x18\x07 \x01(\r\"\x9a\x02\n1CCloud_ExternalStorageTransferReport_Notification\x12\x0c\n\x04host\x18\x01 \x01(\t\x12\x0c\n\x04path\x18\x02 \x01(\t\x12\x11\n\tis_upload\x18\x03 \x01(\x08\x12\x0f\n\x07success\x18\x04 \x01(\x08\x12\x18\n\x10http_status_code\x18\x05 \x01(\r\x12\x16\n\x0e\x62ytes_expected\x18\x06 \x01(\x04\x12\x14\n\x0c\x62ytes_actual\x18\x07 \x01(\x04\x12\x13\n\x0b\x64uration_ms\x18\x08 \x01(\r\x12\x0e\n\x06\x63\x65llid\x18\t \x01(\r\x12\x0f\n\x07proxied\x18\n \x01(\x08\x12\x12\n\nipv6_local\x18\x0b \x01(\x08\x12\x13\n\x0bipv6_remote\x18\x0c \x01(\x08\"\xd7\x02\n\"CCloud_BeginAppUploadBatch_Request\x12\x30\n\x05\x61ppid\x18\x01 \x01(\rB!\x82\xb5\x18\x1d\x41pp ID for this batch is for.\x12\x44\n\x0cmachine_name\x18\x02 \x01(\tB.\x82\xb5\x18*Client machine name (may be user\'s alias).\x12G\n\x0f\x66iles_to_upload\x18\x03 \x03(\tB.\x82\xb5\x18*Filenames of files to upload in this batch\x12G\n\x0f\x66iles_to_delete\x18\x04 \x03(\tB.\x82\xb5\x18*Filenames of files to delete in this batch\x12\'\n\tclient_id\x18\x05 \x01(\x04\x42\x14\x82\xb5\x18\x10\x43lient ID number\"\x84\x01\n#CCloud_BeginAppUploadBatch_Response\x12\'\n\x08\x62\x61tch_id\x18\x01 \x01(\x04\x42\x15\x82\xb5\x18\x11ID of this batch.\x12\x34\n\x11\x61pp_change_number\x18\x04 \x01(\x04\x42\x19\x82\xb5\x18\x15New App Change Number\"\xb9\x01\n*CCloud_CompleteAppUploadBatch_Notification\x12\x30\n\x05\x61ppid\x18\x01 \x01(\rB!\x82\xb5\x18\x1d\x41pp ID for this batch is for.\x12\'\n\x08\x62\x61tch_id\x18\x02 \x01(\x04\x42\x15\x82\xb5\x18\x11ID of this batch.\x12\x30\n\rbatch_eresult\x18\x03 \x01(\rB\x19\x82\xb5\x18\x15result of this batch.\"\xb4\x01\n%CCloud_CompleteAppUploadBatch_Request\x12\x30\n\x05\x61ppid\x18\x01 \x01(\rB!\x82\xb5\x18\x1d\x41pp ID for this batch is for.\x12\'\n\x08\x62\x61tch_id\x18\x02 \x01(\x04\x42\x15\x82\xb5\x18\x11ID of this batch.\x12\x30\n\rbatch_eresult\x18\x03 \x01(\rB\x19\x82\xb5\x18\x15result of this batch.\"(\n&CCloud_CompleteAppUploadBatch_Response\"\x92\x06\n$CCloud_ClientBeginFileUpload_Request\x12?\n\x05\x61ppid\x18\x01 \x01(\rB0\x82\xb5\x18,App ID for which the file is being uploaded.\x12\x44\n\tfile_size\x18\x02 \x01(\rB1\x82\xb5\x18-file size as transmitted and stored in Cloud.\x12N\n\rraw_file_size\x18\x03 \x01(\rB7\x82\xb5\x18\x33\x66ile size before any compression and/or encryption.\x12(\n\x08\x66ile_sha\x18\x04 \x01(\x0c\x42\x16\x82\xb5\x18\x12SHA-1 of raw file.\x12*\n\ntime_stamp\x18\x05 \x01(\x04\x42\x16\x82\xb5\x18\x12Timestamp of file.\x12=\n\x08\x66ilename\x18\x06 \x01(\tB+\x82\xb5\x18\'Name of the file to store in the cloud.\x12%\n\x11platforms_to_sync\x18\x07 \x01(\r:\n4294967295\x12\x46\n\x07\x63\x65ll_id\x18\t \x01(\rB5\x82\xb5\x18\x31\x43lient\'s cell ID so we can pick storage location.\x12Q\n\x0b\x63\x61n_encrypt\x18\n \x01(\x08\x42<\x82\xb5\x18\x38if true, client can encrypt the file before uploading it\x12\x66\n\x0eis_shared_file\x18\x0b \x01(\x08\x42N\x82\xb5\x18Jif true, this is going to be UGC or a screenshot or some other shared file\x12$\n\x10\x64\x65precated_realm\x18\x0c \x01(\rB\n\x82\xb5\x18\x06unused\x12.\n\x0fupload_batch_id\x18\r \x01(\x04\x42\x15\x82\xb5\x18\x11ID of this batch.\"\xf1\x06\n!ClientCloudFileUploadBlockDetails\x12X\n\x08url_host\x18\x01 \x01(\tBF\x82\xb5\x18\x42Host name of server to which file should be uploaded via HTTP PUT.\x12O\n\x08url_path\x18\x02 \x01(\tB=\x82\xb5\x18\x39Relative path on server to which file should be uploaded.\x12>\n\tuse_https\x18\x03 \x01(\x08\x42+\x82\xb5\x18\'If true, use https, otherwise use http.\x12;\n\x0bhttp_method\x18\x04 \x01(\x05\x42&\x82\xb5\x18\"EHTTPMethod to use for this block.\x12}\n\x0frequest_headers\x18\x05 \x03(\x0b\x32..ClientCloudFileUploadBlockDetails.HTTPHeadersB4\x82\xb5\x18\x30Name-value pairs to be sent in HTTP PUT request.\x12\x38\n\x0c\x62lock_offset\x18\x06 \x01(\x04\x42\"\x82\xb5\x18\x1eoffset of file block to upload\x12m\n\x0c\x62lock_length\x18\x07 \x01(\rBW\x82\xb5\x18Slength of file block to upload - if zero, no part of the file is part of this block\x12_\n\x12\x65xplicit_body_data\x18\x08 \x01(\x0c\x42\x43\x82\xb5\x18?explicit body data to use, instead of file data, for this block\x12o\n\x0fmay_parallelize\x18\t \x01(\x08\x42V\x82\xb5\x18Rif true, this request may be done in parallel with other similarly-marked requests\x1a*\n\x0bHTTPHeaders\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t\"\xed\x01\n%CCloud_ClientBeginFileUpload_Response\x12[\n\x0c\x65ncrypt_file\x18\x01 \x01(\x08\x42\x45\x82\xb5\x18\x41If true, the file should be encrypted by the client before upload\x12g\n\x0e\x62lock_requests\x18\x02 \x03(\x0b\x32\".ClientCloudFileUploadBlockDetailsB+\x82\xb5\x18\'HTTP requests to make to perform upload\"\xc9\x03\n%CCloud_ClientCommitFileUpload_Request\x12\x61\n\x12transfer_succeeded\x18\x01 \x01(\x08\x42\x45\x82\xb5\x18\x41True if all block uploads succeeded, false if any of them failed.\x12x\n\x05\x61ppid\x18\x02 \x01(\rBi\x82\xb5\x18\x65\x41pp ID for which the file is being uploaded. Must match the app ID provided to Cloud.BeginFileUpload.\x12p\n\x08\x66ile_sha\x18\x03 \x01(\x0c\x42^\x82\xb5\x18ZSHA1 digest of the raw file. Must match the SHA1 digest provided to Cloud.BeginFileUpload.\x12Q\n\x08\x66ilename\x18\x04 \x01(\tB?\x82\xb5\x18;Filename as specified in the Cloud.BeginFileUpload request.\"\x83\x01\n&CCloud_ClientCommitFileUpload_Response\x12Y\n\x0e\x66ile_committed\x18\x01 \x01(\x08\x42\x41\x82\xb5\x18=True if the file was successfully committed, false otherwise.\"\xa0\x01\n!CCloud_ClientFileDownload_Request\x12.\n\x05\x61ppid\x18\x01 \x01(\rB\x1f\x82\xb5\x18\x1b\x41pp ID the file is part of.\x12+\n\x08\x66ilename\x18\x02 \x01(\tB\x19\x82\xb5\x18\x15\x46ilename of the file.\x12\x1e\n\x05realm\x18\x03 \x01(\rB\x0f\x82\xb5\x18\x0bSteam Realm\"\xfe\x05\n\"CCloud_ClientFileDownload_Response\x12\x32\n\x05\x61ppid\x18\x01 \x01(\rB#\x82\xb5\x18\x1f\x41pplication the file belongs to\x12G\n\tfile_size\x18\x02 \x01(\rB4\x82\xb5\x18\x30\x66ile size as transmitted and stored in the Cloud\x12G\n\rraw_file_size\x18\x03 \x01(\rB0\x82\xb5\x18,file size when decompressed and/or decrypted\x12!\n\x08sha_file\x18\x04 \x01(\x0c\x42\x0f\x82\xb5\x18\x0bSHA of file\x12)\n\ntime_stamp\x18\x05 \x01(\x04\x42\x15\x82\xb5\x18\x11Timestamp of file\x12J\n\x12is_explicit_delete\x18\x06 \x01(\x08\x42.\x82\xb5\x18*True if this is an explicitly deleted file\x12/\n\x08url_host\x18\x07 \x01(\tB\x1d\x82\xb5\x18\x19Host to GET the file from\x12O\n\x08url_path\x18\x08 \x01(\tB=\x82\xb5\x18\x39Path on that host to use, including URL parameters if any\x12\x37\n\tuse_https\x18\t \x01(\x08\x42$\x82\xb5\x18 If set, use HTTPS, else use HTTP\x12~\n\x0frequest_headers\x18\n \x03(\x0b\x32/.CCloud_ClientFileDownload_Response.HTTPHeadersB4\x82\xb5\x18\x30Name-value pairs to be sent in HTTP GET request.\x12\x11\n\tencrypted\x18\x0b \x01(\x08\x1a*\n\x0bHTTPHeaders\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t\"\x93\x02\n\x1f\x43\x43loud_ClientDeleteFile_Request\x12>\n\x05\x61ppid\x18\x01 \x01(\rB/\x82\xb5\x18+App ID for which the file is being deleted.\x12\'\n\x08\x66ilename\x18\x02 \x01(\tB\x15\x82\xb5\x18\x11\x46ilename of file.\x12W\n\x12is_explicit_delete\x18\x03 \x01(\x08\x42;\x82\xb5\x18\x37If true, this is a \'delete\'; if false, it is a \'forget\'\x12.\n\x0fupload_batch_id\x18\x04 \x01(\x04\x42\x15\x82\xb5\x18\x11ID of this batch.\"\"\n CCloud_ClientDeleteFile_Response\"\xe0\x01\n,CCloud_ClientConflictResolution_Notification\x12>\n\x05\x61ppid\x18\x01 \x01(\rB/\x82\xb5\x18+App ID for which the conflict was resolved.\x12p\n\x11\x63hose_local_files\x18\x02 \x01(\x08\x42U\x82\xb5\x18QDid the user choose to keep the files local to the machine they are on right now?\"\"\n CCloud_EnumerateUserApps_Request\"\x98\x01\n!CCloud_EnumerateUserApps_Response\x12\x35\n\x04\x61pps\x18\x01 \x03(\x0b\x32\'.CCloud_EnumerateUserApps_Response.Apps\x1a<\n\x04\x41pps\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x12\n\ntotalcount\x18\x02 \x01(\x05\x12\x11\n\ttotalsize\x18\x03 \x01(\x03\"\xa5\x01\n#CCloud_GetAppFileChangelist_Request\x12\x19\n\x05\x61ppid\x18\x01 \x01(\rB\n\x82\xb5\x18\x06\x41pp ID\x12\x63\n\x14synced_change_number\x18\x02 \x01(\x04\x42\x45\x82\xb5\x18\x41\x43hange Number to which local machine was last successfully synced\"\x9b\x04\n\x12\x43\x43loud_AppFileInfo\x12+\n\tfile_name\x18\x01 \x01(\tB\x18\x82\xb5\x18\x14unqualified filename\x12!\n\x08sha_file\x18\x02 \x01(\x0c\x42\x0f\x82\xb5\x18\x0bSHA of file\x12=\n\ntime_stamp\x18\x03 \x01(\x04\x42)\x82\xb5\x18%server timestamp of last modification\x12+\n\rraw_file_size\x18\x04 \x01(\rB\x14\x82\xb5\x18\x10size of raw file\x12~\n\rpersist_state\x18\x05 \x01(\x0e\x32\x1a.ECloudStoragePersistState:$k_ECloudStoragePersistStatePersistedB%\x82\xb5\x18!current persist state of the file\x12:\n\x11platforms_to_sync\x18\x06 \x01(\rB\x1f\x82\xb5\x18\x1b\x45RemoteStoragePlatform bits\x12G\n\x11path_prefix_index\x18\x07 \x01(\rB,\x82\xb5\x18(index into string table of path prefixes\x12\x44\n\x12machine_name_index\x18\x08 \x01(\rB(\x82\xb5\x18$what machine last modified this file\"\xd6\x03\n$CCloud_GetAppFileChangelist_Response\x12\x42\n\x15\x63urrent_change_number\x18\x01 \x01(\x04\x42#\x82\xb5\x18\x1f\x43hange Number current on server\x12\x89\x01\n\x05\x66iles\x18\x02 \x03(\x0b\x32\x13.CCloud_AppFileInfoBe\x82\xb5\x18\x61List of files; may be the full list of extant/deleted files, or just a delta from the client list\x12j\n\ris_only_delta\x18\x03 \x01(\x08\x42S\x82\xb5\x18OIf true, \'files\' omits any files that have not changed since client\'s change ID\x12\x38\n\rpath_prefixes\x18\x04 \x03(\tB!\x82\xb5\x18\x1dstring table of path prefixes\x12\x38\n\rmachine_names\x18\x05 \x03(\tB!\x82\xb5\x18\x1dstring table of machine names\"x\n CCloud_AppSessionSuspend_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x11\n\tclient_id\x18\x02 \x01(\x04\x12\x14\n\x0cmachine_name\x18\x03 \x01(\t\x12\x1c\n\x14\x63loud_sync_completed\x18\x04 \x01(\x08\"#\n!CCloud_AppSessionSuspend_Response\"C\n\x1f\x43\x43loud_AppSessionResume_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x11\n\tclient_id\x18\x02 \x01(\x04\"\"\n CCloud_AppSessionResume_Response\"{\n\x1e\x43\x43loud_AppLaunchIntent_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x11\n\tclient_id\x18\x02 \x01(\x04\x12\x14\n\x0cmachine_name\x18\x03 \x01(\t\x12!\n\x19ignore_pending_operations\x18\x04 \x01(\x08\"\x9a\x01\n\x1f\x43\x43loud_AppLaunchIntent_Response\x12w\n\x19pending_remote_operations\x18\x01 \x03(\x0b\x32\x1e.CCloud_PendingRemoteOperationB4\x82\xb5\x18\x30pending remote operations you should be aware of\"b\n#CCloud_AppExitSyncDone_Notification\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x11\n\tclient_id\x18\x02 \x01(\x04\x12\x19\n\x11uploads_completed\x18\x03 \x01(\x08\"\x9d\x01\n\'CCloud_AppCloudStateChange_Notification\x12<\n\x05\x61ppid\x18\x01 \x01(\rB-\x82\xb5\x18)App which has had a change in cloud state\x12\x34\n\x11\x61pp_change_number\x18\x02 \x01(\x04\x42\x19\x82\xb5\x18\x15New App Change Number2\xd7\x1f\n\x05\x43loud\x12\x9c\x01\n\x13GetUploadServerInfo\x12#.CCloud_GetUploadServerInfo_Request\x1a$.CCloud_GetUploadServerInfo_Response\":\x82\xb5\x18\x36Returns the URL of the proper cloud server for a user.\x12\xa8\x02\n\x0f\x42\x65ginHTTPUpload\x12\x1f.CCloud_BeginHTTPUpload_Request\x1a .CCloud_BeginHTTPUpload_Response\"\xd1\x01\x82\xb5\x18\xcc\x01\x42\x65gins the process of uploading a file to Steam external storage services. File should be uploaded via HTTP PUT to the returned URL, after which the upload must be finalized by a call to CommitHTTPUpload.\x12\xad\x01\n\x10\x43ommitHTTPUpload\x12 .CCloud_CommitHTTPUpload_Request\x1a!.CCloud_CommitHTTPUpload_Response\"T\x82\xb5\x18PCommits a file upload initiated by BeginHTTPUpload and transferred via HTTP PUT.\x12\xa5\x02\n\x0e\x42\x65ginUGCUpload\x12\x1e.CCloud_BeginUGCUpload_Request\x1a\x1f.CCloud_BeginUGCUpload_Response\"\xd1\x01\x82\xb5\x18\xcc\x01\x42\x65gins the process of uploading a file to Steam external storage services. File should be uploaded via HTTP PUT to the returned URL, after which the upload must be finalized by a call to CommitHTTPUpload.\x12\xa9\x01\n\x0f\x43ommitUGCUpload\x12\x1f.CCloud_CommitUGCUpload_Request\x1a .CCloud_CommitUGCUpload_Response\"S\x82\xb5\x18OCommits a file upload initiated by BeginUGCUpload and transferred via HTTP PUT.\x12w\n\x0eGetFileDetails\x12\x1e.CCloud_GetFileDetails_Request\x1a\x1f.CCloud_GetFileDetails_Response\"$\x82\xb5\x18 Returns details on a Cloud file.\x12\xba\x01\n\x12\x45numerateUserFiles\x12\".CCloud_EnumerateUserFiles_Request\x1a#.CCloud_EnumerateUserFiles_Response\"[\x82\xb5\x18WEnumerates Cloud files for a user of a given app ID. Returns up to 500 files at a time.\x12\x64\n\x06\x44\x65lete\x12\x16.CCloud_Delete_Request\x1a\x17.CCloud_Delete_Response\")\x82\xb5\x18%Deletes a file from the user\'s cloud.\x12\x99\x01\n\x16GetClientEncryptionKey\x12&.CCloud_GetClientEncryptionKey_Request\x1a\'.CCloud_GetClientEncryptionKey_Response\".\x82\xb5\x18*Gets the user\'s Cloud file encryption key.\x12\x63\n\tCDNReport\x12\x1e.CCloud_CDNReport_Notification\x1a\x0b.NoResponse\")\x82\xb5\x18%Reports the result of a CDN transfer.\x12\x9f\x01\n\x1d\x45xternalStorageTransferReport\x12\x32.CCloud_ExternalStorageTransferReport_Notification\x1a\x0b.NoResponse\"=\x82\xb5\x18\x39Reports the result of an external Cloud storage transfer.\x12\xab\x01\n\x13\x42\x65ginAppUploadBatch\x12#.CCloud_BeginAppUploadBatch_Request\x1a$.CCloud_BeginAppUploadBatch_Response\"I\x82\xb5\x18\x45Indicate a batch of files that will be uploaded / deleted for an app.\x12\xa3\x01\n\x16\x43ompleteAppUploadBatch\x12+.CCloud_CompleteAppUploadBatch_Notification\x1a\x0b.NoResponse\"O\x82\xb5\x18KIndicate that the batch is complete or being stopped for some other reason.\x12\xc2\x01\n\x1e\x43ompleteAppUploadBatchBlocking\x12&.CCloud_CompleteAppUploadBatch_Request\x1a\'.CCloud_CompleteAppUploadBatch_Response\"O\x82\xb5\x18KIndicate that the batch is complete or being stopped for some other reason.\x12\x88\x01\n\x15\x43lientBeginFileUpload\x12%.CCloud_ClientBeginFileUpload_Request\x1a&.CCloud_ClientBeginFileUpload_Response\" \x82\xb5\x18\x1cInitiate an upload to Cloud.\x12\x9a\x01\n\x16\x43lientCommitFileUpload\x12&.CCloud_ClientCommitFileUpload_Request\x1a\'.CCloud_ClientCommitFileUpload_Response\"/\x82\xb5\x18+Commit the file upload or indicate failure.\x12|\n\x12\x43lientFileDownload\x12\".CCloud_ClientFileDownload_Request\x1a#.CCloud_ClientFileDownload_Response\"\x1d\x82\xb5\x18\x19Initiate a file download.\x12u\n\x10\x43lientDeleteFile\x12 .CCloud_ClientDeleteFile_Request\x1a!.CCloud_ClientDeleteFile_Response\"\x1c\x82\xb5\x18\x18\x44\x65lete or forget a file.\x12\x8e\x01\n\x18\x43lientConflictResolution\x12-.CCloud_ClientConflictResolution_Notification\x1a\x0b.NoResponse\"6\x82\xb5\x18\x32User has picked a resolution for a Cloud conflict.\x12\x8f\x01\n\x11\x45numerateUserApps\x12!.CCloud_EnumerateUserApps_Request\x1a\".CCloud_EnumerateUserApps_Response\"3\x82\xb5\x18/Enumerates apps stroing cloud files for a user.\x12\xb4\x01\n\x14GetAppFileChangelist\x12$.CCloud_GetAppFileChangelist_Request\x1a%.CCloud_GetAppFileChangelist_Response\"O\x82\xb5\x18KGet a list of Cloud file changes for an app given a starting Change Number.\x12\x81\x01\n\x11SuspendAppSession\x12!.CCloud_AppSessionSuspend_Request\x1a\".CCloud_AppSessionSuspend_Response\"%\x82\xb5\x18!An app session is being suspended\x12|\n\x10ResumeAppSession\x12 .CCloud_AppSessionResume_Request\x1a!.CCloud_AppSessionResume_Response\"#\x82\xb5\x18\x1f\x41n app session is being resumed\x12\x7f\n\x15SignalAppLaunchIntent\x12\x1f.CCloud_AppLaunchIntent_Request\x1a .CCloud_AppLaunchIntent_Response\"#\x82\xb5\x18\x1f\x43lient intends to launch an app\x12\x82\x01\n\x15SignalAppExitSyncDone\x12$.CCloud_AppExitSyncDone_Notification\x1a\x0b.NoResponse\"6\x82\xb5\x18\x32\x43lient is done trying to sync after a game session\x1a)\x82\xb5\x18%A service for Steam Cloud operations.2\xc1\x01\n\x0b\x43loudClient\x12}\n\x14NotifyAppStateChange\x12(.CCloud_AppCloudStateChange_Notification\x1a\x0b.NoResponse\".\x82\xb5\x18*Cloud state for the given app has changed.\x1a\x33\x82\xb5\x18+Client notifications for Steam cloud events\xc0\xb5\x18\x02\x42\x03\x90\x01\x01')
+  serialized_options=b'\220\001\001',
+  create_key=_descriptor._internal_create_key,
+  serialized_pb=b'\n\x19steammessages_cloud.proto\x1a\x18steammessages_base.proto\x1a steammessages_unified_base.proto\x1a\x0b\x65nums.proto\x1a\"steammessages_client_objects.proto\"=\n(CCloud_ClientLogUploadCheck_Notification\x12\x11\n\tclient_id\x18\x01 \x01(\x04\"T\n+CCloud_ClientLogUploadComplete_Notification\x12\x11\n\tclient_id\x18\x01 \x01(\x04\x12\x12\n\nrequest_id\x18\x02 \x01(\x04\"d\n\"CCloud_GetUploadServerInfo_Request\x12>\n\x05\x61ppid\x18\x01 \x01(\rB/\x82\xb5\x18+App ID to which a file will be uploaded to.\"9\n#CCloud_GetUploadServerInfo_Response\x12\x12\n\nserver_url\x18\x01 \x01(\t\"\x8d\x07\n\x1e\x43\x43loud_BeginHTTPUpload_Request\x12?\n\x05\x61ppid\x18\x01 \x01(\rB0\x82\xb5\x18,App ID for which the file is being uploaded.\x12\x33\n\tfile_size\x18\x02 \x01(\rB \x82\xb5\x18\x1cOriginal file size in bytes.\x12=\n\x08\x66ilename\x18\x03 \x01(\tB+\x82\xb5\x18\'Name of the file to store in the cloud.\x12V\n\x08\x66ile_sha\x18\x04 \x01(\tBD\x82\xb5\x18@Hex string (40 digits) representing the SHA1 digest of the file.\x12\\\n\tis_public\x18\x05 \x01(\x08\x42I\x82\xb5\x18\x45True if the file should be marked public on the UFS, false otherwise.\x12\x97\x01\n\x11platforms_to_sync\x18\x06 \x03(\tB|\x82\xb5\x18xArray of string specifying which platforms to sync; value values: all, Windows, MacOS, linux, Switch, iPhoneOS, Android.\x12r\n\x15request_headers_names\x18\x07 \x03(\tBS\x82\xb5\x18ONames for headers you\'ll want to set on your upload request. May be left blank.\x12\x96\x01\n\x16request_headers_values\x18\x08 \x03(\tBv\x82\xb5\x18rValues for headers you\'ll want to set on your upload request. The number of names must equal the number of values.\x12Y\n\x0fupload_batch_id\x18\t \x01(\x04\x42@\x82\xb5\x18<ID of this batch returned by prior BeginAppUploadBatch call.\"\x98\x04\n\x1f\x43\x43loud_BeginHTTPUpload_Response\x12/\n\x05ugcid\x18\x01 \x01(\x06\x42 \x82\xb5\x18\x1cUGC ID of the uploaded file.\x12\x30\n\ttimestamp\x18\x02 \x01(\x07\x42\x1d\x82\xb5\x18\x19Server timestamp of file.\x12X\n\x08url_host\x18\x03 \x01(\tBF\x82\xb5\x18\x42Host name of server to which file should be uploaded via HTTP PUT.\x12O\n\x08url_path\x18\x04 \x01(\tB=\x82\xb5\x18\x39Relative path on server to which file should be uploaded.\x12>\n\tuse_https\x18\x05 \x01(\x08\x42+\x82\xb5\x18\'If true, use https, otherwise use http.\x12{\n\x0frequest_headers\x18\x06 \x03(\x0b\x32,.CCloud_BeginHTTPUpload_Response.HTTPHeadersB4\x82\xb5\x18\x30Name-value pairs to be sent in HTTP PUT request.\x1a*\n\x0bHTTPHeaders\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t\"\xad\x04\n\x1f\x43\x43loud_CommitHTTPUpload_Request\x12\xa4\x01\n\x12transfer_succeeded\x18\x01 \x01(\x08\x42\x87\x01\x82\xb5\x18\x82\x01True if the HTTP PUT to the upload URL succeeded (URL provided in response to Cloud.BeginHTTPUpload), false if a failure occurred.\x12x\n\x05\x61ppid\x18\x02 \x01(\rBi\x82\xb5\x18\x65\x41pp ID for which the file is being uploaded. Must match the app ID provided to Cloud.BeginHTTPUpload.\x12\x95\x01\n\x08\x66ile_sha\x18\x03 \x01(\tB\x82\x01\x82\xb5\x18~Hex string (40 digits) representing the SHA1 digest of the file. Must match the SHA1 digest provided to Cloud.BeginHTTPUpload.\x12Q\n\x08\x66ilename\x18\x04 \x01(\tB?\x82\xb5\x18;Filename as specified in the Cloud.BeginHTTPUpload request.\"}\n CCloud_CommitHTTPUpload_Response\x12Y\n\x0e\x66ile_committed\x18\x01 \x01(\x08\x42\x41\x82\xb5\x18=True if the file was successfully committed, false otherwise.\"\xb5\x02\n\x1d\x43\x43loud_BeginUGCUpload_Request\x12.\n\x05\x61ppid\x18\x01 \x01(\rB\x1f\x82\xb5\x18\x1b\x41pp ID this UGC belongs to.\x12*\n\tfile_size\x18\x02 \x01(\rB\x17\x82\xb5\x18\x13\x46ile size in bytes.\x12\'\n\x08\x66ilename\x18\x03 \x01(\tB\x15\x82\xb5\x18\x11Name of the file.\x12V\n\x08\x66ile_sha\x18\x04 \x01(\tBD\x82\xb5\x18@Hex string (40 digits) representing the SHA1 digest of the file.\x12\x37\n\x0c\x63ontent_type\x18\x05 \x01(\tB!\x82\xb5\x18\x1dMIME content type of the file\"\xa0\x05\n\x1e\x43\x43loud_BeginUGCUpload_Response\x12\x87\x01\n\x0estorage_system\x18\x01 \x01(\x0e\x32\x1c.EPublishedFileStorageSystem:$k_EPublishedFileStorageSystemInvalidB+\x82\xb5\x18\'UGC Storage system chosen for this file\x12/\n\x05ugcid\x18\x02 \x01(\x06\x42 \x82\xb5\x18\x1cUGC ID of the uploaded file.\x12\x30\n\ttimestamp\x18\x03 \x01(\x07\x42\x1d\x82\xb5\x18\x19Server timestamp of file.\x12X\n\x08url_host\x18\x04 \x01(\tBF\x82\xb5\x18\x42Host name of server to which file should be uploaded via HTTP PUT.\x12O\n\x08url_path\x18\x05 \x01(\tB=\x82\xb5\x18\x39Relative path on server to which file should be uploaded.\x12>\n\tuse_https\x18\x06 \x01(\x08\x42+\x82\xb5\x18\'If true, use https, otherwise use http.\x12z\n\x0frequest_headers\x18\x07 \x03(\x0b\x32+.CCloud_BeginUGCUpload_Response.HTTPHeadersB4\x82\xb5\x18\x30Name-value pairs to be sent in HTTP PUT request.\x1a*\n\x0bHTTPHeaders\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t\"\xf0\x02\n\x1e\x43\x43loud_CommitUGCUpload_Request\x12\xa3\x01\n\x12transfer_succeeded\x18\x01 \x01(\x08\x42\x86\x01\x82\xb5\x18\x81\x01True if the HTTP PUT to the upload URL succeeded (URL provided in response to Cloud.BeginUGCUpload), false if a failure occurred.\x12w\n\x05\x61ppid\x18\x02 \x01(\rBh\x82\xb5\x18\x64\x41pp ID for which the file is being uploaded. Must match the app ID provided to Cloud.BeginUGCUpload.\x12/\n\x05ugcid\x18\x03 \x01(\x06\x42 \x82\xb5\x18\x1cUGC ID of the uploaded file.\"|\n\x1f\x43\x43loud_CommitUGCUpload_Response\x12Y\n\x0e\x66ile_committed\x18\x01 \x01(\x08\x42\x41\x82\xb5\x18=True if the file was successfully committed, false otherwise.\"\x8c\x01\n\x1d\x43\x43loud_GetFileDetails_Request\x12;\n\x05ugcid\x18\x01 \x01(\x04\x42,\x82\xb5\x18(ID of the Cloud file to get details for.\x12.\n\x05\x61ppid\x18\x02 \x01(\rB\x1f\x82\xb5\x18\x1b\x41pp ID the file belongs to.\"\x8e\x03\n\x0f\x43\x43loud_UserFile\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\r\n\x05ugcid\x18\x02 \x01(\x04\x12\x10\n\x08\x66ilename\x18\x03 \x01(\t\x12\x11\n\ttimestamp\x18\x04 \x01(\x04\x12\x11\n\tfile_size\x18\x05 \x01(\r\x12\x0b\n\x03url\x18\x06 \x01(\t\x12\x17\n\x0fsteamid_creator\x18\x07 \x01(\x06\x12\r\n\x05\x66lags\x18\x08 \x01(\r\x12\x97\x01\n\x11platforms_to_sync\x18\t \x03(\tB|\x82\xb5\x18xArray of string specifying which platforms to sync; value values: all, Windows, MacOS, linux, Switch, iPhoneOS, Android.\x12V\n\x08\x66ile_sha\x18\n \x01(\tBD\x82\xb5\x18@Hex string (40 digits) representing the SHA1 digest of the file.\"C\n\x1e\x43\x43loud_GetFileDetails_Response\x12!\n\x07\x64\x65tails\x18\x01 \x01(\x0b\x32\x10.CCloud_UserFile\"\xe9\x03\n!CCloud_EnumerateUserFiles_Request\x12\x34\n\x05\x61ppid\x18\x01 \x01(\rB%\x82\xb5\x18!App ID to enumerate the files of.\x12\x9b\x01\n\x10\x65xtended_details\x18\x02 \x01(\x08\x42\x80\x01\x82\xb5\x18|(Optional) Get extended details back on the files found. Defaults to only returned the app Id and UGC Id of the files found.\x12|\n\x05\x63ount\x18\x03 \x01(\rBm\x82\xb5\x18i(Optional) Maximum number of results to return on this call. Defaults to a maximum of 500 files returned.\x12r\n\x0bstart_index\x18\x04 \x01(\rB]\x82\xb5\x18Y(Optional) Starting index to begin enumeration at. Defaults to the beginning of the list.\"Z\n\"CCloud_EnumerateUserFiles_Response\x12\x1f\n\x05\x66iles\x18\x01 \x03(\x0b\x32\x10.CCloud_UserFile\x12\x13\n\x0btotal_files\x18\x02 \x01(\r\"\xb4\x01\n\x15\x43\x43loud_Delete_Request\x12\x10\n\x08\x66ilename\x18\x01 \x01(\t\x12.\n\x05\x61ppid\x18\x02 \x01(\rB\x1f\x82\xb5\x18\x1b\x41pp ID the file belongs to.\x12Y\n\x0fupload_batch_id\x18\x03 \x01(\x04\x42@\x82\xb5\x18<ID of this batch returned by prior BeginAppUploadBatch call.\"\x18\n\x16\x43\x43loud_Delete_Response\"\'\n%CCloud_GetClientEncryptionKey_Request\"n\n&CCloud_GetClientEncryptionKey_Response\x12\'\n\x03key\x18\x01 \x01(\x0c\x42\x1a\x82\xb5\x18\x16\x41\x45S-256 encryption key\x12\x1b\n\x03\x63rc\x18\x02 \x01(\x05\x42\x0e\x82\xb5\x18\nCRC of key\"\xaa\x01\n\x1d\x43\x43loud_CDNReport_Notification\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12\x0b\n\x03url\x18\x02 \x01(\t\x12\x0f\n\x07success\x18\x03 \x01(\x08\x12\x18\n\x10http_status_code\x18\x04 \x01(\r\x12\x16\n\x0e\x65xpected_bytes\x18\x05 \x01(\x04\x12\x16\n\x0ereceived_bytes\x18\x06 \x01(\x04\x12\x10\n\x08\x64uration\x18\x07 \x01(\r\"\x90\x03\n1CCloud_ExternalStorageTransferReport_Notification\x12\x0c\n\x04host\x18\x01 \x01(\t\x12\x0c\n\x04path\x18\x02 \x01(\t\x12\x11\n\tis_upload\x18\x03 \x01(\x08\x12\x0f\n\x07success\x18\x04 \x01(\x08\x12\x18\n\x10http_status_code\x18\x05 \x01(\r\x12\x16\n\x0e\x62ytes_expected\x18\x06 \x01(\x04\x12\x14\n\x0c\x62ytes_actual\x18\x07 \x01(\x04\x12\x13\n\x0b\x64uration_ms\x18\x08 \x01(\r\x12\x0e\n\x06\x63\x65llid\x18\t \x01(\r\x12\x0f\n\x07proxied\x18\n \x01(\x08\x12\x12\n\nipv6_local\x18\x0b \x01(\x08\x12\x13\n\x0bipv6_remote\x18\x0c \x01(\x08\x12\x1a\n\x12time_to_connect_ms\x18\r \x01(\r\x12\x1b\n\x13time_to_send_req_ms\x18\x0e \x01(\r\x12\x1d\n\x15time_to_first_byte_ms\x18\x0f \x01(\r\x12\x1c\n\x14time_to_last_byte_ms\x18\x10 \x01(\r\"\xaa\x03\n\"CCloud_BeginAppUploadBatch_Request\x12\x30\n\x05\x61ppid\x18\x01 \x01(\rB!\x82\xb5\x18\x1d\x41pp ID for this batch is for.\x12\x44\n\x0cmachine_name\x18\x02 \x01(\tB.\x82\xb5\x18*Client machine name (may be user\'s alias).\x12G\n\x0f\x66iles_to_upload\x18\x03 \x03(\tB.\x82\xb5\x18*Filenames of files to upload in this batch\x12G\n\x0f\x66iles_to_delete\x18\x04 \x03(\tB.\x82\xb5\x18*Filenames of files to delete in this batch\x12\'\n\tclient_id\x18\x05 \x01(\x04\x42\x14\x82\xb5\x18\x10\x43lient ID number\x12Q\n\x0c\x61pp_build_id\x18\x06 \x01(\x04\x42;\x82\xb5\x18\x37\x43urrent local build of the app which made these changes\"\x84\x01\n#CCloud_BeginAppUploadBatch_Response\x12\'\n\x08\x62\x61tch_id\x18\x01 \x01(\x04\x42\x15\x82\xb5\x18\x11ID of this batch.\x12\x34\n\x11\x61pp_change_number\x18\x04 \x01(\x04\x42\x19\x82\xb5\x18\x15New App Change Number\"\xb9\x01\n*CCloud_CompleteAppUploadBatch_Notification\x12\x30\n\x05\x61ppid\x18\x01 \x01(\rB!\x82\xb5\x18\x1d\x41pp ID for this batch is for.\x12\'\n\x08\x62\x61tch_id\x18\x02 \x01(\x04\x42\x15\x82\xb5\x18\x11ID of this batch.\x12\x30\n\rbatch_eresult\x18\x03 \x01(\rB\x19\x82\xb5\x18\x15result of this batch.\"\xb4\x01\n%CCloud_CompleteAppUploadBatch_Request\x12\x30\n\x05\x61ppid\x18\x01 \x01(\rB!\x82\xb5\x18\x1d\x41pp ID for this batch is for.\x12\'\n\x08\x62\x61tch_id\x18\x02 \x01(\x04\x42\x15\x82\xb5\x18\x11ID of this batch.\x12\x30\n\rbatch_eresult\x18\x03 \x01(\rB\x19\x82\xb5\x18\x15result of this batch.\"(\n&CCloud_CompleteAppUploadBatch_Response\"\x92\x06\n$CCloud_ClientBeginFileUpload_Request\x12?\n\x05\x61ppid\x18\x01 \x01(\rB0\x82\xb5\x18,App ID for which the file is being uploaded.\x12\x44\n\tfile_size\x18\x02 \x01(\rB1\x82\xb5\x18-file size as transmitted and stored in Cloud.\x12N\n\rraw_file_size\x18\x03 \x01(\rB7\x82\xb5\x18\x33\x66ile size before any compression and/or encryption.\x12(\n\x08\x66ile_sha\x18\x04 \x01(\x0c\x42\x16\x82\xb5\x18\x12SHA-1 of raw file.\x12*\n\ntime_stamp\x18\x05 \x01(\x04\x42\x16\x82\xb5\x18\x12Timestamp of file.\x12=\n\x08\x66ilename\x18\x06 \x01(\tB+\x82\xb5\x18\'Name of the file to store in the cloud.\x12%\n\x11platforms_to_sync\x18\x07 \x01(\r:\n4294967295\x12\x46\n\x07\x63\x65ll_id\x18\t \x01(\rB5\x82\xb5\x18\x31\x43lient\'s cell ID so we can pick storage location.\x12Q\n\x0b\x63\x61n_encrypt\x18\n \x01(\x08\x42<\x82\xb5\x18\x38if true, client can encrypt the file before uploading it\x12\x66\n\x0eis_shared_file\x18\x0b \x01(\x08\x42N\x82\xb5\x18Jif true, this is going to be UGC or a screenshot or some other shared file\x12$\n\x10\x64\x65precated_realm\x18\x0c \x01(\rB\n\x82\xb5\x18\x06unused\x12.\n\x0fupload_batch_id\x18\r \x01(\x04\x42\x15\x82\xb5\x18\x11ID of this batch.\"\xf1\x06\n!ClientCloudFileUploadBlockDetails\x12X\n\x08url_host\x18\x01 \x01(\tBF\x82\xb5\x18\x42Host name of server to which file should be uploaded via HTTP PUT.\x12O\n\x08url_path\x18\x02 \x01(\tB=\x82\xb5\x18\x39Relative path on server to which file should be uploaded.\x12>\n\tuse_https\x18\x03 \x01(\x08\x42+\x82\xb5\x18\'If true, use https, otherwise use http.\x12;\n\x0bhttp_method\x18\x04 \x01(\x05\x42&\x82\xb5\x18\"EHTTPMethod to use for this block.\x12}\n\x0frequest_headers\x18\x05 \x03(\x0b\x32..ClientCloudFileUploadBlockDetails.HTTPHeadersB4\x82\xb5\x18\x30Name-value pairs to be sent in HTTP PUT request.\x12\x38\n\x0c\x62lock_offset\x18\x06 \x01(\x04\x42\"\x82\xb5\x18\x1eoffset of file block to upload\x12m\n\x0c\x62lock_length\x18\x07 \x01(\rBW\x82\xb5\x18Slength of file block to upload - if zero, no part of the file is part of this block\x12_\n\x12\x65xplicit_body_data\x18\x08 \x01(\x0c\x42\x43\x82\xb5\x18?explicit body data to use, instead of file data, for this block\x12o\n\x0fmay_parallelize\x18\t \x01(\x08\x42V\x82\xb5\x18Rif true, this request may be done in parallel with other similarly-marked requests\x1a*\n\x0bHTTPHeaders\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t\"\xed\x01\n%CCloud_ClientBeginFileUpload_Response\x12[\n\x0c\x65ncrypt_file\x18\x01 \x01(\x08\x42\x45\x82\xb5\x18\x41If true, the file should be encrypted by the client before upload\x12g\n\x0e\x62lock_requests\x18\x02 \x03(\x0b\x32\".ClientCloudFileUploadBlockDetailsB+\x82\xb5\x18\'HTTP requests to make to perform upload\"\xc9\x03\n%CCloud_ClientCommitFileUpload_Request\x12\x61\n\x12transfer_succeeded\x18\x01 \x01(\x08\x42\x45\x82\xb5\x18\x41True if all block uploads succeeded, false if any of them failed.\x12x\n\x05\x61ppid\x18\x02 \x01(\rBi\x82\xb5\x18\x65\x41pp ID for which the file is being uploaded. Must match the app ID provided to Cloud.BeginFileUpload.\x12p\n\x08\x66ile_sha\x18\x03 \x01(\x0c\x42^\x82\xb5\x18ZSHA1 digest of the raw file. Must match the SHA1 digest provided to Cloud.BeginFileUpload.\x12Q\n\x08\x66ilename\x18\x04 \x01(\tB?\x82\xb5\x18;Filename as specified in the Cloud.BeginFileUpload request.\"\x83\x01\n&CCloud_ClientCommitFileUpload_Response\x12Y\n\x0e\x66ile_committed\x18\x01 \x01(\x08\x42\x41\x82\xb5\x18=True if the file was successfully committed, false otherwise.\"\xa0\x01\n!CCloud_ClientFileDownload_Request\x12.\n\x05\x61ppid\x18\x01 \x01(\rB\x1f\x82\xb5\x18\x1b\x41pp ID the file is part of.\x12+\n\x08\x66ilename\x18\x02 \x01(\tB\x19\x82\xb5\x18\x15\x46ilename of the file.\x12\x1e\n\x05realm\x18\x03 \x01(\rB\x0f\x82\xb5\x18\x0bSteam Realm\"\xfe\x05\n\"CCloud_ClientFileDownload_Response\x12\x32\n\x05\x61ppid\x18\x01 \x01(\rB#\x82\xb5\x18\x1f\x41pplication the file belongs to\x12G\n\tfile_size\x18\x02 \x01(\rB4\x82\xb5\x18\x30\x66ile size as transmitted and stored in the Cloud\x12G\n\rraw_file_size\x18\x03 \x01(\rB0\x82\xb5\x18,file size when decompressed and/or decrypted\x12!\n\x08sha_file\x18\x04 \x01(\x0c\x42\x0f\x82\xb5\x18\x0bSHA of file\x12)\n\ntime_stamp\x18\x05 \x01(\x04\x42\x15\x82\xb5\x18\x11Timestamp of file\x12J\n\x12is_explicit_delete\x18\x06 \x01(\x08\x42.\x82\xb5\x18*True if this is an explicitly deleted file\x12/\n\x08url_host\x18\x07 \x01(\tB\x1d\x82\xb5\x18\x19Host to GET the file from\x12O\n\x08url_path\x18\x08 \x01(\tB=\x82\xb5\x18\x39Path on that host to use, including URL parameters if any\x12\x37\n\tuse_https\x18\t \x01(\x08\x42$\x82\xb5\x18 If set, use HTTPS, else use HTTP\x12~\n\x0frequest_headers\x18\n \x03(\x0b\x32/.CCloud_ClientFileDownload_Response.HTTPHeadersB4\x82\xb5\x18\x30Name-value pairs to be sent in HTTP GET request.\x12\x11\n\tencrypted\x18\x0b \x01(\x08\x1a*\n\x0bHTTPHeaders\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t\"\x93\x02\n\x1f\x43\x43loud_ClientDeleteFile_Request\x12>\n\x05\x61ppid\x18\x01 \x01(\rB/\x82\xb5\x18+App ID for which the file is being deleted.\x12\'\n\x08\x66ilename\x18\x02 \x01(\tB\x15\x82\xb5\x18\x11\x46ilename of file.\x12W\n\x12is_explicit_delete\x18\x03 \x01(\x08\x42;\x82\xb5\x18\x37If true, this is a \'delete\'; if false, it is a \'forget\'\x12.\n\x0fupload_batch_id\x18\x04 \x01(\x04\x42\x15\x82\xb5\x18\x11ID of this batch.\"\"\n CCloud_ClientDeleteFile_Response\"\xe0\x01\n,CCloud_ClientConflictResolution_Notification\x12>\n\x05\x61ppid\x18\x01 \x01(\rB/\x82\xb5\x18+App ID for which the conflict was resolved.\x12p\n\x11\x63hose_local_files\x18\x02 \x01(\x08\x42U\x82\xb5\x18QDid the user choose to keep the files local to the machine they are on right now?\"\"\n CCloud_EnumerateUserApps_Request\"\x98\x01\n!CCloud_EnumerateUserApps_Response\x12\x35\n\x04\x61pps\x18\x01 \x03(\x0b\x32\'.CCloud_EnumerateUserApps_Response.Apps\x1a<\n\x04\x41pps\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x12\n\ntotalcount\x18\x02 \x01(\x05\x12\x11\n\ttotalsize\x18\x03 \x01(\x03\"\xa5\x01\n#CCloud_GetAppFileChangelist_Request\x12\x19\n\x05\x61ppid\x18\x01 \x01(\rB\n\x82\xb5\x18\x06\x41pp ID\x12\x63\n\x14synced_change_number\x18\x02 \x01(\x04\x42\x45\x82\xb5\x18\x41\x43hange Number to which local machine was last successfully synced\"\x9b\x04\n\x12\x43\x43loud_AppFileInfo\x12+\n\tfile_name\x18\x01 \x01(\tB\x18\x82\xb5\x18\x14unqualified filename\x12!\n\x08sha_file\x18\x02 \x01(\x0c\x42\x0f\x82\xb5\x18\x0bSHA of file\x12=\n\ntime_stamp\x18\x03 \x01(\x04\x42)\x82\xb5\x18%server timestamp of last modification\x12+\n\rraw_file_size\x18\x04 \x01(\rB\x14\x82\xb5\x18\x10size of raw file\x12~\n\rpersist_state\x18\x05 \x01(\x0e\x32\x1a.ECloudStoragePersistState:$k_ECloudStoragePersistStatePersistedB%\x82\xb5\x18!current persist state of the file\x12:\n\x11platforms_to_sync\x18\x06 \x01(\rB\x1f\x82\xb5\x18\x1b\x45RemoteStoragePlatform bits\x12G\n\x11path_prefix_index\x18\x07 \x01(\rB,\x82\xb5\x18(index into string table of path prefixes\x12\x44\n\x12machine_name_index\x18\x08 \x01(\rB(\x82\xb5\x18$what machine last modified this file\"\xa1\x04\n$CCloud_GetAppFileChangelist_Response\x12\x42\n\x15\x63urrent_change_number\x18\x01 \x01(\x04\x42#\x82\xb5\x18\x1f\x43hange Number current on server\x12\x89\x01\n\x05\x66iles\x18\x02 \x03(\x0b\x32\x13.CCloud_AppFileInfoBe\x82\xb5\x18\x61List of files; may be the full list of extant/deleted files, or just a delta from the client list\x12j\n\ris_only_delta\x18\x03 \x01(\x08\x42S\x82\xb5\x18OIf true, \'files\' omits any files that have not changed since client\'s change ID\x12\x38\n\rpath_prefixes\x18\x04 \x03(\tB!\x82\xb5\x18\x1dstring table of path prefixes\x12\x38\n\rmachine_names\x18\x05 \x03(\tB!\x82\xb5\x18\x1dstring table of machine names\x12I\n\x0f\x61pp_buildid_hwm\x18\x06 \x01(\x04\x42\x30\x82\xb5\x18,highest app build ID which has uploaded data\"x\n CCloud_AppSessionSuspend_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x11\n\tclient_id\x18\x02 \x01(\x04\x12\x14\n\x0cmachine_name\x18\x03 \x01(\t\x12\x1c\n\x14\x63loud_sync_completed\x18\x04 \x01(\x08\"#\n!CCloud_AppSessionSuspend_Response\"C\n\x1f\x43\x43loud_AppSessionResume_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x11\n\tclient_id\x18\x02 \x01(\x04\"\"\n CCloud_AppSessionResume_Response\"{\n\x1e\x43\x43loud_AppLaunchIntent_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x11\n\tclient_id\x18\x02 \x01(\x04\x12\x14\n\x0cmachine_name\x18\x03 \x01(\t\x12!\n\x19ignore_pending_operations\x18\x04 \x01(\x08\"\x9a\x01\n\x1f\x43\x43loud_AppLaunchIntent_Response\x12w\n\x19pending_remote_operations\x18\x01 \x03(\x0b\x32\x1e.CCloud_PendingRemoteOperationB4\x82\xb5\x18\x30pending remote operations you should be aware of\"|\n#CCloud_AppExitSyncDone_Notification\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x11\n\tclient_id\x18\x02 \x01(\x04\x12\x19\n\x11uploads_completed\x18\x03 \x01(\x08\x12\x18\n\x10uploads_required\x18\x04 \x01(\x08\"6\n%CCloud_ClientGetAppQuotaUsage_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\"\x86\x01\n&CCloud_ClientGetAppQuotaUsage_Response\x12\x16\n\x0e\x65xisting_files\x18\x01 \x01(\r\x12\x16\n\x0e\x65xisting_bytes\x18\x02 \x01(\x04\x12\x15\n\rmax_num_files\x18\x03 \x01(\r\x12\x15\n\rmax_num_bytes\x18\x04 \x01(\x04\"\x9d\x01\n\'CCloud_AppCloudStateChange_Notification\x12<\n\x05\x61ppid\x18\x01 \x01(\rB-\x82\xb5\x18)App which has had a change in cloud state\x12\x34\n\x11\x61pp_change_number\x18\x02 \x01(\x04\x42\x19\x82\xb5\x18\x15New App Change Number\"@\n*CCloud_ClientLogUploadRequest_Notification\x12\x12\n\nrequest_id\x18\x01 \x01(\x04\x32\x8d#\n\x05\x43loud\x12\x84\x01\n\x14\x43lientLogUploadCheck\x12).CCloud_ClientLogUploadCheck_Notification\x1a\x0b.NoResponse\"4\x82\xb5\x18\x30\x43lient checking for pending log upload requests.\x12\x8f\x01\n\x17\x43lientLogUploadComplete\x12,.CCloud_ClientLogUploadComplete_Notification\x1a\x0b.NoResponse\"9\x82\xb5\x18\x35\x43lient is flagging a log upload request as completed.\x12\x9c\x01\n\x13GetUploadServerInfo\x12#.CCloud_GetUploadServerInfo_Request\x1a$.CCloud_GetUploadServerInfo_Response\":\x82\xb5\x18\x36Returns the URL of the proper cloud server for a user.\x12\xa8\x02\n\x0f\x42\x65ginHTTPUpload\x12\x1f.CCloud_BeginHTTPUpload_Request\x1a .CCloud_BeginHTTPUpload_Response\"\xd1\x01\x82\xb5\x18\xcc\x01\x42\x65gins the process of uploading a file to Steam external storage services. File should be uploaded via HTTP PUT to the returned URL, after which the upload must be finalized by a call to CommitHTTPUpload.\x12\xad\x01\n\x10\x43ommitHTTPUpload\x12 .CCloud_CommitHTTPUpload_Request\x1a!.CCloud_CommitHTTPUpload_Response\"T\x82\xb5\x18PCommits a file upload initiated by BeginHTTPUpload and transferred via HTTP PUT.\x12\xa5\x02\n\x0e\x42\x65ginUGCUpload\x12\x1e.CCloud_BeginUGCUpload_Request\x1a\x1f.CCloud_BeginUGCUpload_Response\"\xd1\x01\x82\xb5\x18\xcc\x01\x42\x65gins the process of uploading a file to Steam external storage services. File should be uploaded via HTTP PUT to the returned URL, after which the upload must be finalized by a call to CommitHTTPUpload.\x12\xa9\x01\n\x0f\x43ommitUGCUpload\x12\x1f.CCloud_CommitUGCUpload_Request\x1a .CCloud_CommitUGCUpload_Response\"S\x82\xb5\x18OCommits a file upload initiated by BeginUGCUpload and transferred via HTTP PUT.\x12w\n\x0eGetFileDetails\x12\x1e.CCloud_GetFileDetails_Request\x1a\x1f.CCloud_GetFileDetails_Response\"$\x82\xb5\x18 Returns details on a Cloud file.\x12\xba\x01\n\x12\x45numerateUserFiles\x12\".CCloud_EnumerateUserFiles_Request\x1a#.CCloud_EnumerateUserFiles_Response\"[\x82\xb5\x18WEnumerates Cloud files for a user of a given app ID. Returns up to 500 files at a time.\x12\x64\n\x06\x44\x65lete\x12\x16.CCloud_Delete_Request\x1a\x17.CCloud_Delete_Response\")\x82\xb5\x18%Deletes a file from the user\'s cloud.\x12\x99\x01\n\x16GetClientEncryptionKey\x12&.CCloud_GetClientEncryptionKey_Request\x1a\'.CCloud_GetClientEncryptionKey_Response\".\x82\xb5\x18*Gets the user\'s Cloud file encryption key.\x12\x63\n\tCDNReport\x12\x1e.CCloud_CDNReport_Notification\x1a\x0b.NoResponse\")\x82\xb5\x18%Reports the result of a CDN transfer.\x12\x9f\x01\n\x1d\x45xternalStorageTransferReport\x12\x32.CCloud_ExternalStorageTransferReport_Notification\x1a\x0b.NoResponse\"=\x82\xb5\x18\x39Reports the result of an external Cloud storage transfer.\x12\xab\x01\n\x13\x42\x65ginAppUploadBatch\x12#.CCloud_BeginAppUploadBatch_Request\x1a$.CCloud_BeginAppUploadBatch_Response\"I\x82\xb5\x18\x45Indicate a batch of files that will be uploaded / deleted for an app.\x12\xa3\x01\n\x16\x43ompleteAppUploadBatch\x12+.CCloud_CompleteAppUploadBatch_Notification\x1a\x0b.NoResponse\"O\x82\xb5\x18KIndicate that the batch is complete or being stopped for some other reason.\x12\xc2\x01\n\x1e\x43ompleteAppUploadBatchBlocking\x12&.CCloud_CompleteAppUploadBatch_Request\x1a\'.CCloud_CompleteAppUploadBatch_Response\"O\x82\xb5\x18KIndicate that the batch is complete or being stopped for some other reason.\x12\x88\x01\n\x15\x43lientBeginFileUpload\x12%.CCloud_ClientBeginFileUpload_Request\x1a&.CCloud_ClientBeginFileUpload_Response\" \x82\xb5\x18\x1cInitiate an upload to Cloud.\x12\x9a\x01\n\x16\x43lientCommitFileUpload\x12&.CCloud_ClientCommitFileUpload_Request\x1a\'.CCloud_ClientCommitFileUpload_Response\"/\x82\xb5\x18+Commit the file upload or indicate failure.\x12|\n\x12\x43lientFileDownload\x12\".CCloud_ClientFileDownload_Request\x1a#.CCloud_ClientFileDownload_Response\"\x1d\x82\xb5\x18\x19Initiate a file download.\x12u\n\x10\x43lientDeleteFile\x12 .CCloud_ClientDeleteFile_Request\x1a!.CCloud_ClientDeleteFile_Response\"\x1c\x82\xb5\x18\x18\x44\x65lete or forget a file.\x12\x8e\x01\n\x18\x43lientConflictResolution\x12-.CCloud_ClientConflictResolution_Notification\x1a\x0b.NoResponse\"6\x82\xb5\x18\x32User has picked a resolution for a Cloud conflict.\x12\x8f\x01\n\x11\x45numerateUserApps\x12!.CCloud_EnumerateUserApps_Request\x1a\".CCloud_EnumerateUserApps_Response\"3\x82\xb5\x18/Enumerates apps stroing cloud files for a user.\x12\xb4\x01\n\x14GetAppFileChangelist\x12$.CCloud_GetAppFileChangelist_Request\x1a%.CCloud_GetAppFileChangelist_Response\"O\x82\xb5\x18KGet a list of Cloud file changes for an app given a starting Change Number.\x12\x81\x01\n\x11SuspendAppSession\x12!.CCloud_AppSessionSuspend_Request\x1a\".CCloud_AppSessionSuspend_Response\"%\x82\xb5\x18!An app session is being suspended\x12|\n\x10ResumeAppSession\x12 .CCloud_AppSessionResume_Request\x1a!.CCloud_AppSessionResume_Response\"#\x82\xb5\x18\x1f\x41n app session is being resumed\x12\x7f\n\x15SignalAppLaunchIntent\x12\x1f.CCloud_AppLaunchIntent_Request\x1a .CCloud_AppLaunchIntent_Response\"#\x82\xb5\x18\x1f\x43lient intends to launch an app\x12\x82\x01\n\x15SignalAppExitSyncDone\x12$.CCloud_AppExitSyncDone_Notification\x1a\x0b.NoResponse\"6\x82\xb5\x18\x32\x43lient is done trying to sync after a game session\x12\x9a\x01\n\x16\x43lientGetAppQuotaUsage\x12&.CCloud_ClientGetAppQuotaUsage_Request\x1a\'.CCloud_ClientGetAppQuotaUsage_Response\"/\x82\xb5\x18+Client is requesting quota usage for an app\x1a)\x82\xb5\x18%A service for Steam Cloud operations.2\xd8\x02\n\x0b\x43loudClient\x12}\n\x14NotifyAppStateChange\x12(.CCloud_AppCloudStateChange_Notification\x1a\x0b.NoResponse\".\x82\xb5\x18*Cloud state for the given app has changed.\x12\x94\x01\n\x16\x43lientLogUploadRequest\x12+.CCloud_ClientLogUploadRequest_Notification\x1a\x0b.NoResponse\"@\x82\xb5\x18<Server is requesting log file uploads from the given client.\x1a\x33\x82\xb5\x18+Client notifications for Steam cloud events\xc0\xb5\x18\x02\x42\x03\x90\x01\x01'
   ,
-  dependencies=[steammessages__unified__base__pb2.DESCRIPTOR,enums__pb2.DESCRIPTOR,steammessages__client__objects__pb2.DESCRIPTOR,])
+  dependencies=[steammessages__base__pb2.DESCRIPTOR,steammessages__unified__base__pb2.DESCRIPTOR,enums__pb2.DESCRIPTOR,steammessages__client__objects__pb2.DESCRIPTOR,])
 
 
 
 
+_CCLOUD_CLIENTLOGUPLOADCHECK_NOTIFICATION = _descriptor.Descriptor(
+  name='CCloud_ClientLogUploadCheck_Notification',
+  full_name='CCloud_ClientLogUploadCheck_Notification',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='client_id', full_name='CCloud_ClientLogUploadCheck_Notification.client_id', index=0,
+      number=1, type=4, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=138,
+  serialized_end=199,
+)
+
+
+_CCLOUD_CLIENTLOGUPLOADCOMPLETE_NOTIFICATION = _descriptor.Descriptor(
+  name='CCloud_ClientLogUploadComplete_Notification',
+  full_name='CCloud_ClientLogUploadComplete_Notification',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='client_id', full_name='CCloud_ClientLogUploadComplete_Notification.client_id', index=0,
+      number=1, type=4, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='request_id', full_name='CCloud_ClientLogUploadComplete_Notification.request_id', index=1,
+      number=2, type=4, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=201,
+  serialized_end=285,
+)
+
+
 _CCLOUD_GETUPLOADSERVERINFO_REQUEST = _descriptor.Descriptor(
   name='CCloud_GetUploadServerInfo_Request',
   full_name='CCloud_GetUploadServerInfo_Request',
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CCloud_GetUploadServerInfo_Request.appid', index=0,
@@ -45,7 +117,7 @@ _CCLOUD_GETUPLOADSERVERINFO_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030+App ID to which a file will be uploaded to.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030+App ID to which a file will be uploaded to.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -58,8 +130,8 @@ _CCLOUD_GETUPLOADSERVERINFO_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=112,
-  serialized_end=212,
+  serialized_start=287,
+  serialized_end=387,
 )
 
 
@@ -69,14 +141,15 @@ _CCLOUD_GETUPLOADSERVERINFO_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='server_url', full_name='CCloud_GetUploadServerInfo_Response.server_url', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -89,8 +162,8 @@ _CCLOUD_GETUPLOADSERVERINFO_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=214,
-  serialized_end=271,
+  serialized_start=389,
+  serialized_end=446,
 )
 
 
@@ -100,6 +173,7 @@ _CCLOUD_BEGINHTTPUPLOAD_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CCloud_BeginHTTPUpload_Request.appid', index=0,
@@ -107,63 +181,63 @@ _CCLOUD_BEGINHTTPUPLOAD_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030,App ID for which the file is being uploaded.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030,App ID for which the file is being uploaded.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='file_size', full_name='CCloud_BeginHTTPUpload_Request.file_size', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\034Original file size in bytes.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\034Original file size in bytes.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='filename', full_name='CCloud_BeginHTTPUpload_Request.filename', index=2,
       number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\'Name of the file to store in the cloud.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\'Name of the file to store in the cloud.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='file_sha', full_name='CCloud_BeginHTTPUpload_Request.file_sha', index=3,
       number=4, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030@Hex string (40 digits) representing the SHA1 digest of the file.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030@Hex string (40 digits) representing the SHA1 digest of the file.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='is_public', full_name='CCloud_BeginHTTPUpload_Request.is_public', index=4,
       number=5, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030ETrue if the file should be marked public on the UFS, false otherwise.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030ETrue if the file should be marked public on the UFS, false otherwise.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='platforms_to_sync', full_name='CCloud_BeginHTTPUpload_Request.platforms_to_sync', index=5,
       number=6, type=9, cpp_type=9, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030xArray of string specifying which platforms to sync; value values: all, Windows, MacOS, linux, Switch, iPhoneOS, Android.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030xArray of string specifying which platforms to sync; value values: all, Windows, MacOS, linux, Switch, iPhoneOS, Android.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='request_headers_names', full_name='CCloud_BeginHTTPUpload_Request.request_headers_names', index=6,
       number=7, type=9, cpp_type=9, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030ONames for headers you\'ll want to set on your upload request. May be left blank.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030ONames for headers you\'ll want to set on your upload request. May be left blank.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='request_headers_values', full_name='CCloud_BeginHTTPUpload_Request.request_headers_values', index=7,
       number=8, type=9, cpp_type=9, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030rValues for headers you\'ll want to set on your upload request. The number of names must equal the number of values.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030rValues for headers you\'ll want to set on your upload request. The number of names must equal the number of values.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='upload_batch_id', full_name='CCloud_BeginHTTPUpload_Request.upload_batch_id', index=8,
       number=9, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030<ID of this batch returned by prior BeginAppUploadBatch call.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030<ID of this batch returned by prior BeginAppUploadBatch call.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -176,8 +250,8 @@ _CCLOUD_BEGINHTTPUPLOAD_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=274,
-  serialized_end=1183,
+  serialized_start=449,
+  serialized_end=1358,
 )
 
 
@@ -187,21 +261,22 @@ _CCLOUD_BEGINHTTPUPLOAD_RESPONSE_HTTPHEADERS = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='name', full_name='CCloud_BeginHTTPUpload_Response.HTTPHeaders.name', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='value', full_name='CCloud_BeginHTTPUpload_Response.HTTPHeaders.value', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -214,8 +289,8 @@ _CCLOUD_BEGINHTTPUPLOAD_RESPONSE_HTTPHEADERS = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1680,
-  serialized_end=1722,
+  serialized_start=1855,
+  serialized_end=1897,
 )
 
 _CCLOUD_BEGINHTTPUPLOAD_RESPONSE = _descriptor.Descriptor(
@@ -224,6 +299,7 @@ _CCLOUD_BEGINHTTPUPLOAD_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='ugcid', full_name='CCloud_BeginHTTPUpload_Response.ugcid', index=0,
@@ -231,42 +307,42 @@ _CCLOUD_BEGINHTTPUPLOAD_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\034UGC ID of the uploaded file.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\034UGC ID of the uploaded file.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='timestamp', full_name='CCloud_BeginHTTPUpload_Response.timestamp', index=1,
       number=2, type=7, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\031Server timestamp of file.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\031Server timestamp of file.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='url_host', full_name='CCloud_BeginHTTPUpload_Response.url_host', index=2,
       number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030BHost name of server to which file should be uploaded via HTTP PUT.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030BHost name of server to which file should be uploaded via HTTP PUT.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='url_path', full_name='CCloud_BeginHTTPUpload_Response.url_path', index=3,
       number=4, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\0309Relative path on server to which file should be uploaded.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\0309Relative path on server to which file should be uploaded.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='use_https', full_name='CCloud_BeginHTTPUpload_Response.use_https', index=4,
       number=5, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\'If true, use https, otherwise use http.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\'If true, use https, otherwise use http.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='request_headers', full_name='CCloud_BeginHTTPUpload_Response.request_headers', index=5,
       number=6, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\0300Name-value pairs to be sent in HTTP PUT request.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\0300Name-value pairs to be sent in HTTP PUT request.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -279,8 +355,8 @@ _CCLOUD_BEGINHTTPUPLOAD_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1186,
-  serialized_end=1722,
+  serialized_start=1361,
+  serialized_end=1897,
 )
 
 
@@ -290,6 +366,7 @@ _CCLOUD_COMMITHTTPUPLOAD_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='transfer_succeeded', full_name='CCloud_CommitHTTPUpload_Request.transfer_succeeded', index=0,
@@ -297,28 +374,28 @@ _CCLOUD_COMMITHTTPUPLOAD_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\202\001True if the HTTP PUT to the upload URL succeeded (URL provided in response to Cloud.BeginHTTPUpload), false if a failure occurred.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\202\001True if the HTTP PUT to the upload URL succeeded (URL provided in response to Cloud.BeginHTTPUpload), false if a failure occurred.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='appid', full_name='CCloud_CommitHTTPUpload_Request.appid', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030eApp ID for which the file is being uploaded. Must match the app ID provided to Cloud.BeginHTTPUpload.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030eApp ID for which the file is being uploaded. Must match the app ID provided to Cloud.BeginHTTPUpload.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='file_sha', full_name='CCloud_CommitHTTPUpload_Request.file_sha', index=2,
       number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030~Hex string (40 digits) representing the SHA1 digest of the file. Must match the SHA1 digest provided to Cloud.BeginHTTPUpload.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030~Hex string (40 digits) representing the SHA1 digest of the file. Must match the SHA1 digest provided to Cloud.BeginHTTPUpload.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='filename', full_name='CCloud_CommitHTTPUpload_Request.filename', index=3,
       number=4, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030;Filename as specified in the Cloud.BeginHTTPUpload request.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030;Filename as specified in the Cloud.BeginHTTPUpload request.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -331,8 +408,8 @@ _CCLOUD_COMMITHTTPUPLOAD_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1725,
-  serialized_end=2282,
+  serialized_start=1900,
+  serialized_end=2457,
 )
 
 
@@ -342,6 +419,7 @@ _CCLOUD_COMMITHTTPUPLOAD_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='file_committed', full_name='CCloud_CommitHTTPUpload_Response.file_committed', index=0,
@@ -349,7 +427,7 @@ _CCLOUD_COMMITHTTPUPLOAD_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030=True if the file was successfully committed, false otherwise.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030=True if the file was successfully committed, false otherwise.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -362,8 +440,8 @@ _CCLOUD_COMMITHTTPUPLOAD_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=2284,
-  serialized_end=2409,
+  serialized_start=2459,
+  serialized_end=2584,
 )
 
 
@@ -373,6 +451,7 @@ _CCLOUD_BEGINUGCUPLOAD_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CCloud_BeginUGCUpload_Request.appid', index=0,
@@ -380,35 +459,35 @@ _CCLOUD_BEGINUGCUPLOAD_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\033App ID this UGC belongs to.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\033App ID this UGC belongs to.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='file_size', full_name='CCloud_BeginUGCUpload_Request.file_size', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\023File size in bytes.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\023File size in bytes.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='filename', full_name='CCloud_BeginUGCUpload_Request.filename', index=2,
       number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\021Name of the file.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\021Name of the file.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='file_sha', full_name='CCloud_BeginUGCUpload_Request.file_sha', index=3,
       number=4, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030@Hex string (40 digits) representing the SHA1 digest of the file.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030@Hex string (40 digits) representing the SHA1 digest of the file.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='content_type', full_name='CCloud_BeginUGCUpload_Request.content_type', index=4,
       number=5, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\035MIME content type of the file'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\035MIME content type of the file', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -421,8 +500,8 @@ _CCLOUD_BEGINUGCUPLOAD_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=2412,
-  serialized_end=2721,
+  serialized_start=2587,
+  serialized_end=2896,
 )
 
 
@@ -432,21 +511,22 @@ _CCLOUD_BEGINUGCUPLOAD_RESPONSE_HTTPHEADERS = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='name', full_name='CCloud_BeginUGCUpload_Response.HTTPHeaders.name', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='value', full_name='CCloud_BeginUGCUpload_Response.HTTPHeaders.value', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -459,8 +539,8 @@ _CCLOUD_BEGINUGCUPLOAD_RESPONSE_HTTPHEADERS = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1680,
-  serialized_end=1722,
+  serialized_start=1855,
+  serialized_end=1897,
 )
 
 _CCLOUD_BEGINUGCUPLOAD_RESPONSE = _descriptor.Descriptor(
@@ -469,6 +549,7 @@ _CCLOUD_BEGINUGCUPLOAD_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='storage_system', full_name='CCloud_BeginUGCUpload_Response.storage_system', index=0,
@@ -476,49 +557,49 @@ _CCLOUD_BEGINUGCUPLOAD_RESPONSE = _descriptor.Descriptor(
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\'UGC Storage system chosen for this file'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\'UGC Storage system chosen for this file', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='ugcid', full_name='CCloud_BeginUGCUpload_Response.ugcid', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\034UGC ID of the uploaded file.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\034UGC ID of the uploaded file.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='timestamp', full_name='CCloud_BeginUGCUpload_Response.timestamp', index=2,
       number=3, type=7, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\031Server timestamp of file.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\031Server timestamp of file.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='url_host', full_name='CCloud_BeginUGCUpload_Response.url_host', index=3,
       number=4, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030BHost name of server to which file should be uploaded via HTTP PUT.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030BHost name of server to which file should be uploaded via HTTP PUT.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='url_path', full_name='CCloud_BeginUGCUpload_Response.url_path', index=4,
       number=5, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\0309Relative path on server to which file should be uploaded.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\0309Relative path on server to which file should be uploaded.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='use_https', full_name='CCloud_BeginUGCUpload_Response.use_https', index=5,
       number=6, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\'If true, use https, otherwise use http.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\'If true, use https, otherwise use http.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='request_headers', full_name='CCloud_BeginUGCUpload_Response.request_headers', index=6,
       number=7, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\0300Name-value pairs to be sent in HTTP PUT request.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\0300Name-value pairs to be sent in HTTP PUT request.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -531,8 +612,8 @@ _CCLOUD_BEGINUGCUPLOAD_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=2724,
-  serialized_end=3396,
+  serialized_start=2899,
+  serialized_end=3571,
 )
 
 
@@ -542,6 +623,7 @@ _CCLOUD_COMMITUGCUPLOAD_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='transfer_succeeded', full_name='CCloud_CommitUGCUpload_Request.transfer_succeeded', index=0,
@@ -549,21 +631,21 @@ _CCLOUD_COMMITUGCUPLOAD_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\201\001True if the HTTP PUT to the upload URL succeeded (URL provided in response to Cloud.BeginUGCUpload), false if a failure occurred.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\201\001True if the HTTP PUT to the upload URL succeeded (URL provided in response to Cloud.BeginUGCUpload), false if a failure occurred.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='appid', full_name='CCloud_CommitUGCUpload_Request.appid', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030dApp ID for which the file is being uploaded. Must match the app ID provided to Cloud.BeginUGCUpload.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030dApp ID for which the file is being uploaded. Must match the app ID provided to Cloud.BeginUGCUpload.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='ugcid', full_name='CCloud_CommitUGCUpload_Request.ugcid', index=2,
       number=3, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\034UGC ID of the uploaded file.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\034UGC ID of the uploaded file.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -576,8 +658,8 @@ _CCLOUD_COMMITUGCUPLOAD_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=3399,
-  serialized_end=3767,
+  serialized_start=3574,
+  serialized_end=3942,
 )
 
 
@@ -587,6 +669,7 @@ _CCLOUD_COMMITUGCUPLOAD_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='file_committed', full_name='CCloud_CommitUGCUpload_Response.file_committed', index=0,
@@ -594,7 +677,7 @@ _CCLOUD_COMMITUGCUPLOAD_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030=True if the file was successfully committed, false otherwise.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030=True if the file was successfully committed, false otherwise.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -607,8 +690,8 @@ _CCLOUD_COMMITUGCUPLOAD_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=3769,
-  serialized_end=3893,
+  serialized_start=3944,
+  serialized_end=4068,
 )
 
 
@@ -618,6 +701,7 @@ _CCLOUD_GETFILEDETAILS_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='ugcid', full_name='CCloud_GetFileDetails_Request.ugcid', index=0,
@@ -625,14 +709,14 @@ _CCLOUD_GETFILEDETAILS_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030(ID of the Cloud file to get details for.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030(ID of the Cloud file to get details for.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='appid', full_name='CCloud_GetFileDetails_Request.appid', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\033App ID the file belongs to.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\033App ID the file belongs to.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -645,8 +729,8 @@ _CCLOUD_GETFILEDETAILS_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=3896,
-  serialized_end=4036,
+  serialized_start=4071,
+  serialized_end=4211,
 )
 
 
@@ -656,6 +740,7 @@ _CCLOUD_USERFILE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CCloud_UserFile.appid', index=0,
@@ -663,70 +748,70 @@ _CCLOUD_USERFILE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='ugcid', full_name='CCloud_UserFile.ugcid', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='filename', full_name='CCloud_UserFile.filename', index=2,
       number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='timestamp', full_name='CCloud_UserFile.timestamp', index=3,
       number=4, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='file_size', full_name='CCloud_UserFile.file_size', index=4,
       number=5, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='url', full_name='CCloud_UserFile.url', index=5,
       number=6, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steamid_creator', full_name='CCloud_UserFile.steamid_creator', index=6,
       number=7, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='flags', full_name='CCloud_UserFile.flags', index=7,
       number=8, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='platforms_to_sync', full_name='CCloud_UserFile.platforms_to_sync', index=8,
       number=9, type=9, cpp_type=9, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030xArray of string specifying which platforms to sync; value values: all, Windows, MacOS, linux, Switch, iPhoneOS, Android.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030xArray of string specifying which platforms to sync; value values: all, Windows, MacOS, linux, Switch, iPhoneOS, Android.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='file_sha', full_name='CCloud_UserFile.file_sha', index=9,
       number=10, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030@Hex string (40 digits) representing the SHA1 digest of the file.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030@Hex string (40 digits) representing the SHA1 digest of the file.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -739,8 +824,8 @@ _CCLOUD_USERFILE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=4039,
-  serialized_end=4437,
+  serialized_start=4214,
+  serialized_end=4612,
 )
 
 
@@ -750,6 +835,7 @@ _CCLOUD_GETFILEDETAILS_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='details', full_name='CCloud_GetFileDetails_Response.details', index=0,
@@ -757,7 +843,7 @@ _CCLOUD_GETFILEDETAILS_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -770,8 +856,8 @@ _CCLOUD_GETFILEDETAILS_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=4439,
-  serialized_end=4506,
+  serialized_start=4614,
+  serialized_end=4681,
 )
 
 
@@ -781,6 +867,7 @@ _CCLOUD_ENUMERATEUSERFILES_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CCloud_EnumerateUserFiles_Request.appid', index=0,
@@ -788,28 +875,28 @@ _CCLOUD_ENUMERATEUSERFILES_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030!App ID to enumerate the files of.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030!App ID to enumerate the files of.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='extended_details', full_name='CCloud_EnumerateUserFiles_Request.extended_details', index=1,
       number=2, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030|(Optional) Get extended details back on the files found. Defaults to only returned the app Id and UGC Id of the files found.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030|(Optional) Get extended details back on the files found. Defaults to only returned the app Id and UGC Id of the files found.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='count', full_name='CCloud_EnumerateUserFiles_Request.count', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030i(Optional) Maximum number of results to return on this call. Defaults to a maximum of 500 files returned.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030i(Optional) Maximum number of results to return on this call. Defaults to a maximum of 500 files returned.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='start_index', full_name='CCloud_EnumerateUserFiles_Request.start_index', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030Y(Optional) Starting index to begin enumeration at. Defaults to the beginning of the list.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030Y(Optional) Starting index to begin enumeration at. Defaults to the beginning of the list.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -822,8 +909,8 @@ _CCLOUD_ENUMERATEUSERFILES_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=4509,
-  serialized_end=4998,
+  serialized_start=4684,
+  serialized_end=5173,
 )
 
 
@@ -833,6 +920,7 @@ _CCLOUD_ENUMERATEUSERFILES_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='files', full_name='CCloud_EnumerateUserFiles_Response.files', index=0,
@@ -840,14 +928,14 @@ _CCLOUD_ENUMERATEUSERFILES_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='total_files', full_name='CCloud_EnumerateUserFiles_Response.total_files', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -860,8 +948,8 @@ _CCLOUD_ENUMERATEUSERFILES_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=5000,
-  serialized_end=5090,
+  serialized_start=5175,
+  serialized_end=5265,
 )
 
 
@@ -871,28 +959,29 @@ _CCLOUD_DELETE_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='filename', full_name='CCloud_Delete_Request.filename', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='appid', full_name='CCloud_Delete_Request.appid', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\033App ID the file belongs to.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\033App ID the file belongs to.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='upload_batch_id', full_name='CCloud_Delete_Request.upload_batch_id', index=2,
       number=3, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030<ID of this batch returned by prior BeginAppUploadBatch call.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030<ID of this batch returned by prior BeginAppUploadBatch call.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -905,8 +994,8 @@ _CCLOUD_DELETE_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=5093,
-  serialized_end=5273,
+  serialized_start=5268,
+  serialized_end=5448,
 )
 
 
@@ -916,6 +1005,7 @@ _CCLOUD_DELETE_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -929,8 +1019,8 @@ _CCLOUD_DELETE_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=5275,
-  serialized_end=5299,
+  serialized_start=5450,
+  serialized_end=5474,
 )
 
 
@@ -940,6 +1030,7 @@ _CCLOUD_GETCLIENTENCRYPTIONKEY_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -953,8 +1044,8 @@ _CCLOUD_GETCLIENTENCRYPTIONKEY_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=5301,
-  serialized_end=5340,
+  serialized_start=5476,
+  serialized_end=5515,
 )
 
 
@@ -964,21 +1055,22 @@ _CCLOUD_GETCLIENTENCRYPTIONKEY_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='key', full_name='CCloud_GetClientEncryptionKey_Response.key', index=0,
       number=1, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\026AES-256 encryption key'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\026AES-256 encryption key', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='crc', full_name='CCloud_GetClientEncryptionKey_Response.crc', index=1,
       number=2, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\nCRC of key'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\nCRC of key', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -991,8 +1083,8 @@ _CCLOUD_GETCLIENTENCRYPTIONKEY_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=5342,
-  serialized_end=5452,
+  serialized_start=5517,
+  serialized_end=5627,
 )
 
 
@@ -1002,6 +1094,7 @@ _CCLOUD_CDNREPORT_NOTIFICATION = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CCloud_CDNReport_Notification.steamid', index=0,
@@ -1009,49 +1102,49 @@ _CCLOUD_CDNREPORT_NOTIFICATION = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='url', full_name='CCloud_CDNReport_Notification.url', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='success', full_name='CCloud_CDNReport_Notification.success', index=2,
       number=3, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='http_status_code', full_name='CCloud_CDNReport_Notification.http_status_code', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='expected_bytes', full_name='CCloud_CDNReport_Notification.expected_bytes', index=4,
       number=5, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='received_bytes', full_name='CCloud_CDNReport_Notification.received_bytes', index=5,
       number=6, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='duration', full_name='CCloud_CDNReport_Notification.duration', index=6,
       number=7, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1064,8 +1157,8 @@ _CCLOUD_CDNREPORT_NOTIFICATION = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=5455,
-  serialized_end=5625,
+  serialized_start=5630,
+  serialized_end=5800,
 )
 
 
@@ -1075,91 +1168,120 @@ _CCLOUD_EXTERNALSTORAGETRANSFERREPORT_NOTIFICATION = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='host', full_name='CCloud_ExternalStorageTransferReport_Notification.host', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='path', full_name='CCloud_ExternalStorageTransferReport_Notification.path', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='is_upload', full_name='CCloud_ExternalStorageTransferReport_Notification.is_upload', index=2,
       number=3, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='success', full_name='CCloud_ExternalStorageTransferReport_Notification.success', index=3,
       number=4, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='http_status_code', full_name='CCloud_ExternalStorageTransferReport_Notification.http_status_code', index=4,
       number=5, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='bytes_expected', full_name='CCloud_ExternalStorageTransferReport_Notification.bytes_expected', index=5,
       number=6, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='bytes_actual', full_name='CCloud_ExternalStorageTransferReport_Notification.bytes_actual', index=6,
       number=7, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='duration_ms', full_name='CCloud_ExternalStorageTransferReport_Notification.duration_ms', index=7,
       number=8, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='cellid', full_name='CCloud_ExternalStorageTransferReport_Notification.cellid', index=8,
       number=9, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='proxied', full_name='CCloud_ExternalStorageTransferReport_Notification.proxied', index=9,
       number=10, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='ipv6_local', full_name='CCloud_ExternalStorageTransferReport_Notification.ipv6_local', index=10,
       number=11, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='ipv6_remote', full_name='CCloud_ExternalStorageTransferReport_Notification.ipv6_remote', index=11,
       number=12, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='time_to_connect_ms', full_name='CCloud_ExternalStorageTransferReport_Notification.time_to_connect_ms', index=12,
+      number=13, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='time_to_send_req_ms', full_name='CCloud_ExternalStorageTransferReport_Notification.time_to_send_req_ms', index=13,
+      number=14, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='time_to_first_byte_ms', full_name='CCloud_ExternalStorageTransferReport_Notification.time_to_first_byte_ms', index=14,
+      number=15, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='time_to_last_byte_ms', full_name='CCloud_ExternalStorageTransferReport_Notification.time_to_last_byte_ms', index=15,
+      number=16, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1172,8 +1294,8 @@ _CCLOUD_EXTERNALSTORAGETRANSFERREPORT_NOTIFICATION = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=5628,
-  serialized_end=5910,
+  serialized_start=5803,
+  serialized_end=6203,
 )
 
 
@@ -1183,6 +1305,7 @@ _CCLOUD_BEGINAPPUPLOADBATCH_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CCloud_BeginAppUploadBatch_Request.appid', index=0,
@@ -1190,35 +1313,42 @@ _CCLOUD_BEGINAPPUPLOADBATCH_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\035App ID for this batch is for.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\035App ID for this batch is for.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='machine_name', full_name='CCloud_BeginAppUploadBatch_Request.machine_name', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030*Client machine name (may be user\'s alias).'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030*Client machine name (may be user\'s alias).', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='files_to_upload', full_name='CCloud_BeginAppUploadBatch_Request.files_to_upload', index=2,
       number=3, type=9, cpp_type=9, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030*Filenames of files to upload in this batch'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030*Filenames of files to upload in this batch', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='files_to_delete', full_name='CCloud_BeginAppUploadBatch_Request.files_to_delete', index=3,
       number=4, type=9, cpp_type=9, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030*Filenames of files to delete in this batch'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030*Filenames of files to delete in this batch', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='client_id', full_name='CCloud_BeginAppUploadBatch_Request.client_id', index=4,
       number=5, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\020Client ID number'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\020Client ID number', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='app_build_id', full_name='CCloud_BeginAppUploadBatch_Request.app_build_id', index=5,
+      number=6, type=4, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\0307Current local build of the app which made these changes', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1231,8 +1361,8 @@ _CCLOUD_BEGINAPPUPLOADBATCH_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=5913,
-  serialized_end=6256,
+  serialized_start=6206,
+  serialized_end=6632,
 )
 
 
@@ -1242,6 +1372,7 @@ _CCLOUD_BEGINAPPUPLOADBATCH_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='batch_id', full_name='CCloud_BeginAppUploadBatch_Response.batch_id', index=0,
@@ -1249,14 +1380,14 @@ _CCLOUD_BEGINAPPUPLOADBATCH_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\021ID of this batch.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\021ID of this batch.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='app_change_number', full_name='CCloud_BeginAppUploadBatch_Response.app_change_number', index=1,
       number=4, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\025New App Change Number'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\025New App Change Number', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1269,8 +1400,8 @@ _CCLOUD_BEGINAPPUPLOADBATCH_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=6259,
-  serialized_end=6391,
+  serialized_start=6635,
+  serialized_end=6767,
 )
 
 
@@ -1280,6 +1411,7 @@ _CCLOUD_COMPLETEAPPUPLOADBATCH_NOTIFICATION = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CCloud_CompleteAppUploadBatch_Notification.appid', index=0,
@@ -1287,21 +1419,21 @@ _CCLOUD_COMPLETEAPPUPLOADBATCH_NOTIFICATION = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\035App ID for this batch is for.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\035App ID for this batch is for.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='batch_id', full_name='CCloud_CompleteAppUploadBatch_Notification.batch_id', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\021ID of this batch.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\021ID of this batch.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='batch_eresult', full_name='CCloud_CompleteAppUploadBatch_Notification.batch_eresult', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\025result of this batch.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\025result of this batch.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1314,8 +1446,8 @@ _CCLOUD_COMPLETEAPPUPLOADBATCH_NOTIFICATION = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=6394,
-  serialized_end=6579,
+  serialized_start=6770,
+  serialized_end=6955,
 )
 
 
@@ -1325,6 +1457,7 @@ _CCLOUD_COMPLETEAPPUPLOADBATCH_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CCloud_CompleteAppUploadBatch_Request.appid', index=0,
@@ -1332,21 +1465,21 @@ _CCLOUD_COMPLETEAPPUPLOADBATCH_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\035App ID for this batch is for.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\035App ID for this batch is for.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='batch_id', full_name='CCloud_CompleteAppUploadBatch_Request.batch_id', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\021ID of this batch.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\021ID of this batch.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='batch_eresult', full_name='CCloud_CompleteAppUploadBatch_Request.batch_eresult', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\025result of this batch.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\025result of this batch.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1359,8 +1492,8 @@ _CCLOUD_COMPLETEAPPUPLOADBATCH_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=6582,
-  serialized_end=6762,
+  serialized_start=6958,
+  serialized_end=7138,
 )
 
 
@@ -1370,6 +1503,7 @@ _CCLOUD_COMPLETEAPPUPLOADBATCH_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -1383,8 +1517,8 @@ _CCLOUD_COMPLETEAPPUPLOADBATCH_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=6764,
-  serialized_end=6804,
+  serialized_start=7140,
+  serialized_end=7180,
 )
 
 
@@ -1394,6 +1528,7 @@ _CCLOUD_CLIENTBEGINFILEUPLOAD_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CCloud_ClientBeginFileUpload_Request.appid', index=0,
@@ -1401,84 +1536,84 @@ _CCLOUD_CLIENTBEGINFILEUPLOAD_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030,App ID for which the file is being uploaded.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030,App ID for which the file is being uploaded.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='file_size', full_name='CCloud_ClientBeginFileUpload_Request.file_size', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030-file size as transmitted and stored in Cloud.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030-file size as transmitted and stored in Cloud.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='raw_file_size', full_name='CCloud_ClientBeginFileUpload_Request.raw_file_size', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\0303file size before any compression and/or encryption.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\0303file size before any compression and/or encryption.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='file_sha', full_name='CCloud_ClientBeginFileUpload_Request.file_sha', index=3,
       number=4, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\022SHA-1 of raw file.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\022SHA-1 of raw file.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='time_stamp', full_name='CCloud_ClientBeginFileUpload_Request.time_stamp', index=4,
       number=5, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\022Timestamp of file.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\022Timestamp of file.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='filename', full_name='CCloud_ClientBeginFileUpload_Request.filename', index=5,
       number=6, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\'Name of the file to store in the cloud.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\'Name of the file to store in the cloud.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='platforms_to_sync', full_name='CCloud_ClientBeginFileUpload_Request.platforms_to_sync', index=6,
       number=7, type=13, cpp_type=3, label=1,
       has_default_value=True, default_value=4294967295,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='cell_id', full_name='CCloud_ClientBeginFileUpload_Request.cell_id', index=7,
       number=9, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\0301Client\'s cell ID so we can pick storage location.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\0301Client\'s cell ID so we can pick storage location.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='can_encrypt', full_name='CCloud_ClientBeginFileUpload_Request.can_encrypt', index=8,
       number=10, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\0308if true, client can encrypt the file before uploading it'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\0308if true, client can encrypt the file before uploading it', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='is_shared_file', full_name='CCloud_ClientBeginFileUpload_Request.is_shared_file', index=9,
       number=11, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030Jif true, this is going to be UGC or a screenshot or some other shared file'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030Jif true, this is going to be UGC or a screenshot or some other shared file', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='deprecated_realm', full_name='CCloud_ClientBeginFileUpload_Request.deprecated_realm', index=10,
       number=12, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\006unused'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\006unused', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='upload_batch_id', full_name='CCloud_ClientBeginFileUpload_Request.upload_batch_id', index=11,
       number=13, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\021ID of this batch.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\021ID of this batch.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1491,8 +1626,8 @@ _CCLOUD_CLIENTBEGINFILEUPLOAD_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=6807,
-  serialized_end=7593,
+  serialized_start=7183,
+  serialized_end=7969,
 )
 
 
@@ -1502,21 +1637,22 @@ _CLIENTCLOUDFILEUPLOADBLOCKDETAILS_HTTPHEADERS = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='name', full_name='ClientCloudFileUploadBlockDetails.HTTPHeaders.name', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='value', full_name='ClientCloudFileUploadBlockDetails.HTTPHeaders.value', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1529,8 +1665,8 @@ _CLIENTCLOUDFILEUPLOADBLOCKDETAILS_HTTPHEADERS = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1680,
-  serialized_end=1722,
+  serialized_start=1855,
+  serialized_end=1897,
 )
 
 _CLIENTCLOUDFILEUPLOADBLOCKDETAILS = _descriptor.Descriptor(
@@ -1539,70 +1675,71 @@ _CLIENTCLOUDFILEUPLOADBLOCKDETAILS = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='url_host', full_name='ClientCloudFileUploadBlockDetails.url_host', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030BHost name of server to which file should be uploaded via HTTP PUT.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030BHost name of server to which file should be uploaded via HTTP PUT.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='url_path', full_name='ClientCloudFileUploadBlockDetails.url_path', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\0309Relative path on server to which file should be uploaded.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\0309Relative path on server to which file should be uploaded.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='use_https', full_name='ClientCloudFileUploadBlockDetails.use_https', index=2,
       number=3, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\'If true, use https, otherwise use http.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\'If true, use https, otherwise use http.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='http_method', full_name='ClientCloudFileUploadBlockDetails.http_method', index=3,
       number=4, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\"EHTTPMethod to use for this block.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\"EHTTPMethod to use for this block.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='request_headers', full_name='ClientCloudFileUploadBlockDetails.request_headers', index=4,
       number=5, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\0300Name-value pairs to be sent in HTTP PUT request.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\0300Name-value pairs to be sent in HTTP PUT request.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='block_offset', full_name='ClientCloudFileUploadBlockDetails.block_offset', index=5,
       number=6, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\036offset of file block to upload'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\036offset of file block to upload', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='block_length', full_name='ClientCloudFileUploadBlockDetails.block_length', index=6,
       number=7, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030Slength of file block to upload - if zero, no part of the file is part of this block'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030Slength of file block to upload - if zero, no part of the file is part of this block', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='explicit_body_data', full_name='ClientCloudFileUploadBlockDetails.explicit_body_data', index=7,
       number=8, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030?explicit body data to use, instead of file data, for this block'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030?explicit body data to use, instead of file data, for this block', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='may_parallelize', full_name='ClientCloudFileUploadBlockDetails.may_parallelize', index=8,
       number=9, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030Rif true, this request may be done in parallel with other similarly-marked requests'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030Rif true, this request may be done in parallel with other similarly-marked requests', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1615,8 +1752,8 @@ _CLIENTCLOUDFILEUPLOADBLOCKDETAILS = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=7596,
-  serialized_end=8477,
+  serialized_start=7972,
+  serialized_end=8853,
 )
 
 
@@ -1626,6 +1763,7 @@ _CCLOUD_CLIENTBEGINFILEUPLOAD_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='encrypt_file', full_name='CCloud_ClientBeginFileUpload_Response.encrypt_file', index=0,
@@ -1633,14 +1771,14 @@ _CCLOUD_CLIENTBEGINFILEUPLOAD_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030AIf true, the file should be encrypted by the client before upload'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030AIf true, the file should be encrypted by the client before upload', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='block_requests', full_name='CCloud_ClientBeginFileUpload_Response.block_requests', index=1,
       number=2, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\'HTTP requests to make to perform upload'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\'HTTP requests to make to perform upload', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1653,8 +1791,8 @@ _CCLOUD_CLIENTBEGINFILEUPLOAD_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=8480,
-  serialized_end=8717,
+  serialized_start=8856,
+  serialized_end=9093,
 )
 
 
@@ -1664,6 +1802,7 @@ _CCLOUD_CLIENTCOMMITFILEUPLOAD_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='transfer_succeeded', full_name='CCloud_ClientCommitFileUpload_Request.transfer_succeeded', index=0,
@@ -1671,28 +1810,28 @@ _CCLOUD_CLIENTCOMMITFILEUPLOAD_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030ATrue if all block uploads succeeded, false if any of them failed.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030ATrue if all block uploads succeeded, false if any of them failed.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='appid', full_name='CCloud_ClientCommitFileUpload_Request.appid', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030eApp ID for which the file is being uploaded. Must match the app ID provided to Cloud.BeginFileUpload.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030eApp ID for which the file is being uploaded. Must match the app ID provided to Cloud.BeginFileUpload.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='file_sha', full_name='CCloud_ClientCommitFileUpload_Request.file_sha', index=2,
       number=3, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030ZSHA1 digest of the raw file. Must match the SHA1 digest provided to Cloud.BeginFileUpload.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030ZSHA1 digest of the raw file. Must match the SHA1 digest provided to Cloud.BeginFileUpload.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='filename', full_name='CCloud_ClientCommitFileUpload_Request.filename', index=3,
       number=4, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030;Filename as specified in the Cloud.BeginFileUpload request.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030;Filename as specified in the Cloud.BeginFileUpload request.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1705,8 +1844,8 @@ _CCLOUD_CLIENTCOMMITFILEUPLOAD_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=8720,
-  serialized_end=9177,
+  serialized_start=9096,
+  serialized_end=9553,
 )
 
 
@@ -1716,6 +1855,7 @@ _CCLOUD_CLIENTCOMMITFILEUPLOAD_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='file_committed', full_name='CCloud_ClientCommitFileUpload_Response.file_committed', index=0,
@@ -1723,7 +1863,7 @@ _CCLOUD_CLIENTCOMMITFILEUPLOAD_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030=True if the file was successfully committed, false otherwise.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030=True if the file was successfully committed, false otherwise.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1736,8 +1876,8 @@ _CCLOUD_CLIENTCOMMITFILEUPLOAD_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=9180,
-  serialized_end=9311,
+  serialized_start=9556,
+  serialized_end=9687,
 )
 
 
@@ -1747,6 +1887,7 @@ _CCLOUD_CLIENTFILEDOWNLOAD_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CCloud_ClientFileDownload_Request.appid', index=0,
@@ -1754,21 +1895,21 @@ _CCLOUD_CLIENTFILEDOWNLOAD_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\033App ID the file is part of.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\033App ID the file is part of.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='filename', full_name='CCloud_ClientFileDownload_Request.filename', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\025Filename of the file.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\025Filename of the file.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='realm', full_name='CCloud_ClientFileDownload_Request.realm', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\013Steam Realm'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\013Steam Realm', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1781,8 +1922,8 @@ _CCLOUD_CLIENTFILEDOWNLOAD_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=9314,
-  serialized_end=9474,
+  serialized_start=9690,
+  serialized_end=9850,
 )
 
 
@@ -1792,21 +1933,22 @@ _CCLOUD_CLIENTFILEDOWNLOAD_RESPONSE_HTTPHEADERS = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='name', full_name='CCloud_ClientFileDownload_Response.HTTPHeaders.name', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='value', full_name='CCloud_ClientFileDownload_Response.HTTPHeaders.value', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1819,8 +1961,8 @@ _CCLOUD_CLIENTFILEDOWNLOAD_RESPONSE_HTTPHEADERS = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1680,
-  serialized_end=1722,
+  serialized_start=1855,
+  serialized_end=1897,
 )
 
 _CCLOUD_CLIENTFILEDOWNLOAD_RESPONSE = _descriptor.Descriptor(
@@ -1829,6 +1971,7 @@ _CCLOUD_CLIENTFILEDOWNLOAD_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CCloud_ClientFileDownload_Response.appid', index=0,
@@ -1836,77 +1979,77 @@ _CCLOUD_CLIENTFILEDOWNLOAD_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\037Application the file belongs to'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\037Application the file belongs to', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='file_size', full_name='CCloud_ClientFileDownload_Response.file_size', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\0300file size as transmitted and stored in the Cloud'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\0300file size as transmitted and stored in the Cloud', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='raw_file_size', full_name='CCloud_ClientFileDownload_Response.raw_file_size', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030,file size when decompressed and/or decrypted'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030,file size when decompressed and/or decrypted', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='sha_file', full_name='CCloud_ClientFileDownload_Response.sha_file', index=3,
       number=4, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\013SHA of file'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\013SHA of file', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='time_stamp', full_name='CCloud_ClientFileDownload_Response.time_stamp', index=4,
       number=5, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\021Timestamp of file'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\021Timestamp of file', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='is_explicit_delete', full_name='CCloud_ClientFileDownload_Response.is_explicit_delete', index=5,
       number=6, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030*True if this is an explicitly deleted file'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030*True if this is an explicitly deleted file', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='url_host', full_name='CCloud_ClientFileDownload_Response.url_host', index=6,
       number=7, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\031Host to GET the file from'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\031Host to GET the file from', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='url_path', full_name='CCloud_ClientFileDownload_Response.url_path', index=7,
       number=8, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\0309Path on that host to use, including URL parameters if any'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\0309Path on that host to use, including URL parameters if any', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='use_https', full_name='CCloud_ClientFileDownload_Response.use_https', index=8,
       number=9, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030 If set, use HTTPS, else use HTTP'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030 If set, use HTTPS, else use HTTP', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='request_headers', full_name='CCloud_ClientFileDownload_Response.request_headers', index=9,
       number=10, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\0300Name-value pairs to be sent in HTTP GET request.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\0300Name-value pairs to be sent in HTTP GET request.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='encrypted', full_name='CCloud_ClientFileDownload_Response.encrypted', index=10,
       number=11, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1919,8 +2062,8 @@ _CCLOUD_CLIENTFILEDOWNLOAD_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=9477,
-  serialized_end=10243,
+  serialized_start=9853,
+  serialized_end=10619,
 )
 
 
@@ -1930,6 +2073,7 @@ _CCLOUD_CLIENTDELETEFILE_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CCloud_ClientDeleteFile_Request.appid', index=0,
@@ -1937,28 +2081,28 @@ _CCLOUD_CLIENTDELETEFILE_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030+App ID for which the file is being deleted.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030+App ID for which the file is being deleted.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='filename', full_name='CCloud_ClientDeleteFile_Request.filename', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\021Filename of file.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\021Filename of file.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='is_explicit_delete', full_name='CCloud_ClientDeleteFile_Request.is_explicit_delete', index=2,
       number=3, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\0307If true, this is a \'delete\'; if false, it is a \'forget\''), file=DESCRIPTOR),
+      serialized_options=b'\202\265\0307If true, this is a \'delete\'; if false, it is a \'forget\'', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='upload_batch_id', full_name='CCloud_ClientDeleteFile_Request.upload_batch_id', index=3,
       number=4, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\021ID of this batch.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\021ID of this batch.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1971,8 +2115,8 @@ _CCLOUD_CLIENTDELETEFILE_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=10246,
-  serialized_end=10521,
+  serialized_start=10622,
+  serialized_end=10897,
 )
 
 
@@ -1982,6 +2126,7 @@ _CCLOUD_CLIENTDELETEFILE_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -1995,8 +2140,8 @@ _CCLOUD_CLIENTDELETEFILE_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=10523,
-  serialized_end=10557,
+  serialized_start=10899,
+  serialized_end=10933,
 )
 
 
@@ -2006,6 +2151,7 @@ _CCLOUD_CLIENTCONFLICTRESOLUTION_NOTIFICATION = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CCloud_ClientConflictResolution_Notification.appid', index=0,
@@ -2013,14 +2159,14 @@ _CCLOUD_CLIENTCONFLICTRESOLUTION_NOTIFICATION = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030+App ID for which the conflict was resolved.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030+App ID for which the conflict was resolved.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='chose_local_files', full_name='CCloud_ClientConflictResolution_Notification.chose_local_files', index=1,
       number=2, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030QDid the user choose to keep the files local to the machine they are on right now?'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030QDid the user choose to keep the files local to the machine they are on right now?', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2033,8 +2179,8 @@ _CCLOUD_CLIENTCONFLICTRESOLUTION_NOTIFICATION = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=10560,
-  serialized_end=10784,
+  serialized_start=10936,
+  serialized_end=11160,
 )
 
 
@@ -2044,6 +2190,7 @@ _CCLOUD_ENUMERATEUSERAPPS_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -2057,8 +2204,8 @@ _CCLOUD_ENUMERATEUSERAPPS_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=10786,
-  serialized_end=10820,
+  serialized_start=11162,
+  serialized_end=11196,
 )
 
 
@@ -2068,6 +2215,7 @@ _CCLOUD_ENUMERATEUSERAPPS_RESPONSE_APPS = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CCloud_EnumerateUserApps_Response.Apps.appid', index=0,
@@ -2075,21 +2223,21 @@ _CCLOUD_ENUMERATEUSERAPPS_RESPONSE_APPS = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='totalcount', full_name='CCloud_EnumerateUserApps_Response.Apps.totalcount', index=1,
       number=2, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='totalsize', full_name='CCloud_EnumerateUserApps_Response.Apps.totalsize', index=2,
       number=3, type=3, cpp_type=2, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2102,8 +2250,8 @@ _CCLOUD_ENUMERATEUSERAPPS_RESPONSE_APPS = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=10915,
-  serialized_end=10975,
+  serialized_start=11291,
+  serialized_end=11351,
 )
 
 _CCLOUD_ENUMERATEUSERAPPS_RESPONSE = _descriptor.Descriptor(
@@ -2112,6 +2260,7 @@ _CCLOUD_ENUMERATEUSERAPPS_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='apps', full_name='CCloud_EnumerateUserApps_Response.apps', index=0,
@@ -2119,7 +2268,7 @@ _CCLOUD_ENUMERATEUSERAPPS_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2132,8 +2281,8 @@ _CCLOUD_ENUMERATEUSERAPPS_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=10823,
-  serialized_end=10975,
+  serialized_start=11199,
+  serialized_end=11351,
 )
 
 
@@ -2143,6 +2292,7 @@ _CCLOUD_GETAPPFILECHANGELIST_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CCloud_GetAppFileChangelist_Request.appid', index=0,
@@ -2150,14 +2300,14 @@ _CCLOUD_GETAPPFILECHANGELIST_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\006App ID'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\006App ID', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='synced_change_number', full_name='CCloud_GetAppFileChangelist_Request.synced_change_number', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030AChange Number to which local machine was last successfully synced'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030AChange Number to which local machine was last successfully synced', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2170,8 +2320,8 @@ _CCLOUD_GETAPPFILECHANGELIST_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=10978,
-  serialized_end=11143,
+  serialized_start=11354,
+  serialized_end=11519,
 )
 
 
@@ -2181,63 +2331,64 @@ _CCLOUD_APPFILEINFO = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='file_name', full_name='CCloud_AppFileInfo.file_name', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\024unqualified filename'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\024unqualified filename', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='sha_file', full_name='CCloud_AppFileInfo.sha_file', index=1,
       number=2, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\013SHA of file'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\013SHA of file', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='time_stamp', full_name='CCloud_AppFileInfo.time_stamp', index=2,
       number=3, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030%server timestamp of last modification'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030%server timestamp of last modification', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='raw_file_size', full_name='CCloud_AppFileInfo.raw_file_size', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\020size of raw file'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\020size of raw file', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='persist_state', full_name='CCloud_AppFileInfo.persist_state', index=4,
       number=5, type=14, cpp_type=8, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030!current persist state of the file'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030!current persist state of the file', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='platforms_to_sync', full_name='CCloud_AppFileInfo.platforms_to_sync', index=5,
       number=6, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\033ERemoteStoragePlatform bits'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\033ERemoteStoragePlatform bits', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='path_prefix_index', full_name='CCloud_AppFileInfo.path_prefix_index', index=6,
       number=7, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030(index into string table of path prefixes'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030(index into string table of path prefixes', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='machine_name_index', full_name='CCloud_AppFileInfo.machine_name_index', index=7,
       number=8, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030$what machine last modified this file'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030$what machine last modified this file', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2250,8 +2401,8 @@ _CCLOUD_APPFILEINFO = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=11146,
-  serialized_end=11685,
+  serialized_start=11522,
+  serialized_end=12061,
 )
 
 
@@ -2261,6 +2412,7 @@ _CCLOUD_GETAPPFILECHANGELIST_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='current_change_number', full_name='CCloud_GetAppFileChangelist_Response.current_change_number', index=0,
@@ -2268,35 +2420,42 @@ _CCLOUD_GETAPPFILECHANGELIST_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\037Change Number current on server'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\037Change Number current on server', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='files', full_name='CCloud_GetAppFileChangelist_Response.files', index=1,
       number=2, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030aList of files; may be the full list of extant/deleted files, or just a delta from the client list'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030aList of files; may be the full list of extant/deleted files, or just a delta from the client list', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='is_only_delta', full_name='CCloud_GetAppFileChangelist_Response.is_only_delta', index=2,
       number=3, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030OIf true, \'files\' omits any files that have not changed since client\'s change ID'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030OIf true, \'files\' omits any files that have not changed since client\'s change ID', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='path_prefixes', full_name='CCloud_GetAppFileChangelist_Response.path_prefixes', index=3,
       number=4, type=9, cpp_type=9, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\035string table of path prefixes'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\035string table of path prefixes', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='machine_names', full_name='CCloud_GetAppFileChangelist_Response.machine_names', index=4,
       number=5, type=9, cpp_type=9, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\035string table of machine names'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\035string table of machine names', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='app_buildid_hwm', full_name='CCloud_GetAppFileChangelist_Response.app_buildid_hwm', index=5,
+      number=6, type=4, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030,highest app build ID which has uploaded data', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2309,8 +2468,8 @@ _CCLOUD_GETAPPFILECHANGELIST_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=11688,
-  serialized_end=12158,
+  serialized_start=12064,
+  serialized_end=12609,
 )
 
 
@@ -2320,6 +2479,7 @@ _CCLOUD_APPSESSIONSUSPEND_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CCloud_AppSessionSuspend_Request.appid', index=0,
@@ -2327,28 +2487,28 @@ _CCLOUD_APPSESSIONSUSPEND_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='client_id', full_name='CCloud_AppSessionSuspend_Request.client_id', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='machine_name', full_name='CCloud_AppSessionSuspend_Request.machine_name', index=2,
       number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='cloud_sync_completed', full_name='CCloud_AppSessionSuspend_Request.cloud_sync_completed', index=3,
       number=4, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2361,8 +2521,8 @@ _CCLOUD_APPSESSIONSUSPEND_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=12160,
-  serialized_end=12280,
+  serialized_start=12611,
+  serialized_end=12731,
 )
 
 
@@ -2372,6 +2532,7 @@ _CCLOUD_APPSESSIONSUSPEND_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -2385,8 +2546,8 @@ _CCLOUD_APPSESSIONSUSPEND_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=12282,
-  serialized_end=12317,
+  serialized_start=12733,
+  serialized_end=12768,
 )
 
 
@@ -2396,6 +2557,7 @@ _CCLOUD_APPSESSIONRESUME_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CCloud_AppSessionResume_Request.appid', index=0,
@@ -2403,14 +2565,14 @@ _CCLOUD_APPSESSIONRESUME_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='client_id', full_name='CCloud_AppSessionResume_Request.client_id', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2423,8 +2585,8 @@ _CCLOUD_APPSESSIONRESUME_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=12319,
-  serialized_end=12386,
+  serialized_start=12770,
+  serialized_end=12837,
 )
 
 
@@ -2434,6 +2596,7 @@ _CCLOUD_APPSESSIONRESUME_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -2447,8 +2610,8 @@ _CCLOUD_APPSESSIONRESUME_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=12388,
-  serialized_end=12422,
+  serialized_start=12839,
+  serialized_end=12873,
 )
 
 
@@ -2458,6 +2621,7 @@ _CCLOUD_APPLAUNCHINTENT_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CCloud_AppLaunchIntent_Request.appid', index=0,
@@ -2465,28 +2629,28 @@ _CCLOUD_APPLAUNCHINTENT_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='client_id', full_name='CCloud_AppLaunchIntent_Request.client_id', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='machine_name', full_name='CCloud_AppLaunchIntent_Request.machine_name', index=2,
       number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='ignore_pending_operations', full_name='CCloud_AppLaunchIntent_Request.ignore_pending_operations', index=3,
       number=4, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2499,8 +2663,8 @@ _CCLOUD_APPLAUNCHINTENT_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=12424,
-  serialized_end=12547,
+  serialized_start=12875,
+  serialized_end=12998,
 )
 
 
@@ -2510,6 +2674,7 @@ _CCLOUD_APPLAUNCHINTENT_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='pending_remote_operations', full_name='CCloud_AppLaunchIntent_Response.pending_remote_operations', index=0,
@@ -2517,7 +2682,7 @@ _CCLOUD_APPLAUNCHINTENT_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\0300pending remote operations you should be aware of'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\0300pending remote operations you should be aware of', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2530,8 +2695,8 @@ _CCLOUD_APPLAUNCHINTENT_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=12550,
-  serialized_end=12704,
+  serialized_start=13001,
+  serialized_end=13155,
 )
 
 
@@ -2541,6 +2706,7 @@ _CCLOUD_APPEXITSYNCDONE_NOTIFICATION = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CCloud_AppExitSyncDone_Notification.appid', index=0,
@@ -2548,21 +2714,28 @@ _CCLOUD_APPEXITSYNCDONE_NOTIFICATION = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='client_id', full_name='CCloud_AppExitSyncDone_Notification.client_id', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='uploads_completed', full_name='CCloud_AppExitSyncDone_Notification.uploads_completed', index=2,
       number=3, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='uploads_required', full_name='CCloud_AppExitSyncDone_Notification.uploads_required', index=3,
+      number=4, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2575,8 +2748,93 @@ _CCLOUD_APPEXITSYNCDONE_NOTIFICATION = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=12706,
-  serialized_end=12804,
+  serialized_start=13157,
+  serialized_end=13281,
+)
+
+
+_CCLOUD_CLIENTGETAPPQUOTAUSAGE_REQUEST = _descriptor.Descriptor(
+  name='CCloud_ClientGetAppQuotaUsage_Request',
+  full_name='CCloud_ClientGetAppQuotaUsage_Request',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='appid', full_name='CCloud_ClientGetAppQuotaUsage_Request.appid', index=0,
+      number=1, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=13283,
+  serialized_end=13337,
+)
+
+
+_CCLOUD_CLIENTGETAPPQUOTAUSAGE_RESPONSE = _descriptor.Descriptor(
+  name='CCloud_ClientGetAppQuotaUsage_Response',
+  full_name='CCloud_ClientGetAppQuotaUsage_Response',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='existing_files', full_name='CCloud_ClientGetAppQuotaUsage_Response.existing_files', index=0,
+      number=1, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='existing_bytes', full_name='CCloud_ClientGetAppQuotaUsage_Response.existing_bytes', index=1,
+      number=2, type=4, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='max_num_files', full_name='CCloud_ClientGetAppQuotaUsage_Response.max_num_files', index=2,
+      number=3, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='max_num_bytes', full_name='CCloud_ClientGetAppQuotaUsage_Response.max_num_bytes', index=3,
+      number=4, type=4, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=13340,
+  serialized_end=13474,
 )
 
 
@@ -2586,6 +2844,7 @@ _CCLOUD_APPCLOUDSTATECHANGE_NOTIFICATION = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CCloud_AppCloudStateChange_Notification.appid', index=0,
@@ -2593,14 +2852,14 @@ _CCLOUD_APPCLOUDSTATECHANGE_NOTIFICATION = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030)App which has had a change in cloud state'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030)App which has had a change in cloud state', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='app_change_number', full_name='CCloud_AppCloudStateChange_Notification.app_change_number', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\025New App Change Number'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\025New App Change Number', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2613,8 +2872,40 @@ _CCLOUD_APPCLOUDSTATECHANGE_NOTIFICATION = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=12807,
-  serialized_end=12964,
+  serialized_start=13477,
+  serialized_end=13634,
+)
+
+
+_CCLOUD_CLIENTLOGUPLOADREQUEST_NOTIFICATION = _descriptor.Descriptor(
+  name='CCloud_ClientLogUploadRequest_Notification',
+  full_name='CCloud_ClientLogUploadRequest_Notification',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='request_id', full_name='CCloud_ClientLogUploadRequest_Notification.request_id', index=0,
+      number=1, type=4, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=13636,
+  serialized_end=13700,
 )
 
 _CCLOUD_BEGINHTTPUPLOAD_RESPONSE_HTTPHEADERS.containing_type = _CCLOUD_BEGINHTTPUPLOAD_RESPONSE
@@ -2634,6 +2925,8 @@ _CCLOUD_ENUMERATEUSERAPPS_RESPONSE.fields_by_name['apps'].message_type = _CCLOUD
 _CCLOUD_APPFILEINFO.fields_by_name['persist_state'].enum_type = enums__pb2._ECLOUDSTORAGEPERSISTSTATE
 _CCLOUD_GETAPPFILECHANGELIST_RESPONSE.fields_by_name['files'].message_type = _CCLOUD_APPFILEINFO
 _CCLOUD_APPLAUNCHINTENT_RESPONSE.fields_by_name['pending_remote_operations'].message_type = steammessages__client__objects__pb2._CCLOUD_PENDINGREMOTEOPERATION
+DESCRIPTOR.message_types_by_name['CCloud_ClientLogUploadCheck_Notification'] = _CCLOUD_CLIENTLOGUPLOADCHECK_NOTIFICATION
+DESCRIPTOR.message_types_by_name['CCloud_ClientLogUploadComplete_Notification'] = _CCLOUD_CLIENTLOGUPLOADCOMPLETE_NOTIFICATION
 DESCRIPTOR.message_types_by_name['CCloud_GetUploadServerInfo_Request'] = _CCLOUD_GETUPLOADSERVERINFO_REQUEST
 DESCRIPTOR.message_types_by_name['CCloud_GetUploadServerInfo_Response'] = _CCLOUD_GETUPLOADSERVERINFO_RESPONSE
 DESCRIPTOR.message_types_by_name['CCloud_BeginHTTPUpload_Request'] = _CCLOUD_BEGINHTTPUPLOAD_REQUEST
@@ -2682,392 +2975,430 @@ DESCRIPTOR.message_types_by_name['CCloud_AppSessionResume_Response'] = _CCLOUD_A
 DESCRIPTOR.message_types_by_name['CCloud_AppLaunchIntent_Request'] = _CCLOUD_APPLAUNCHINTENT_REQUEST
 DESCRIPTOR.message_types_by_name['CCloud_AppLaunchIntent_Response'] = _CCLOUD_APPLAUNCHINTENT_RESPONSE
 DESCRIPTOR.message_types_by_name['CCloud_AppExitSyncDone_Notification'] = _CCLOUD_APPEXITSYNCDONE_NOTIFICATION
+DESCRIPTOR.message_types_by_name['CCloud_ClientGetAppQuotaUsage_Request'] = _CCLOUD_CLIENTGETAPPQUOTAUSAGE_REQUEST
+DESCRIPTOR.message_types_by_name['CCloud_ClientGetAppQuotaUsage_Response'] = _CCLOUD_CLIENTGETAPPQUOTAUSAGE_RESPONSE
 DESCRIPTOR.message_types_by_name['CCloud_AppCloudStateChange_Notification'] = _CCLOUD_APPCLOUDSTATECHANGE_NOTIFICATION
+DESCRIPTOR.message_types_by_name['CCloud_ClientLogUploadRequest_Notification'] = _CCLOUD_CLIENTLOGUPLOADREQUEST_NOTIFICATION
 _sym_db.RegisterFileDescriptor(DESCRIPTOR)
 
-CCloud_GetUploadServerInfo_Request = _reflection.GeneratedProtocolMessageType('CCloud_GetUploadServerInfo_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCLOUD_GETUPLOADSERVERINFO_REQUEST,
-  __module__ = 'steammessages_cloud_pb2'
+CCloud_ClientLogUploadCheck_Notification = _reflection.GeneratedProtocolMessageType('CCloud_ClientLogUploadCheck_Notification', (_message.Message,), {
+  'DESCRIPTOR' : _CCLOUD_CLIENTLOGUPLOADCHECK_NOTIFICATION,
+  '__module__' : 'steammessages_cloud_pb2'
+  # @@protoc_insertion_point(class_scope:CCloud_ClientLogUploadCheck_Notification)
+  })
+_sym_db.RegisterMessage(CCloud_ClientLogUploadCheck_Notification)
+
+CCloud_ClientLogUploadComplete_Notification = _reflection.GeneratedProtocolMessageType('CCloud_ClientLogUploadComplete_Notification', (_message.Message,), {
+  'DESCRIPTOR' : _CCLOUD_CLIENTLOGUPLOADCOMPLETE_NOTIFICATION,
+  '__module__' : 'steammessages_cloud_pb2'
+  # @@protoc_insertion_point(class_scope:CCloud_ClientLogUploadComplete_Notification)
+  })
+_sym_db.RegisterMessage(CCloud_ClientLogUploadComplete_Notification)
+
+CCloud_GetUploadServerInfo_Request = _reflection.GeneratedProtocolMessageType('CCloud_GetUploadServerInfo_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCLOUD_GETUPLOADSERVERINFO_REQUEST,
+  '__module__' : 'steammessages_cloud_pb2'
   # @@protoc_insertion_point(class_scope:CCloud_GetUploadServerInfo_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CCloud_GetUploadServerInfo_Request)
 
-CCloud_GetUploadServerInfo_Response = _reflection.GeneratedProtocolMessageType('CCloud_GetUploadServerInfo_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCLOUD_GETUPLOADSERVERINFO_RESPONSE,
-  __module__ = 'steammessages_cloud_pb2'
+CCloud_GetUploadServerInfo_Response = _reflection.GeneratedProtocolMessageType('CCloud_GetUploadServerInfo_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCLOUD_GETUPLOADSERVERINFO_RESPONSE,
+  '__module__' : 'steammessages_cloud_pb2'
   # @@protoc_insertion_point(class_scope:CCloud_GetUploadServerInfo_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CCloud_GetUploadServerInfo_Response)
 
-CCloud_BeginHTTPUpload_Request = _reflection.GeneratedProtocolMessageType('CCloud_BeginHTTPUpload_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCLOUD_BEGINHTTPUPLOAD_REQUEST,
-  __module__ = 'steammessages_cloud_pb2'
+CCloud_BeginHTTPUpload_Request = _reflection.GeneratedProtocolMessageType('CCloud_BeginHTTPUpload_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCLOUD_BEGINHTTPUPLOAD_REQUEST,
+  '__module__' : 'steammessages_cloud_pb2'
   # @@protoc_insertion_point(class_scope:CCloud_BeginHTTPUpload_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CCloud_BeginHTTPUpload_Request)
 
-CCloud_BeginHTTPUpload_Response = _reflection.GeneratedProtocolMessageType('CCloud_BeginHTTPUpload_Response', (_message.Message,), dict(
+CCloud_BeginHTTPUpload_Response = _reflection.GeneratedProtocolMessageType('CCloud_BeginHTTPUpload_Response', (_message.Message,), {
 
-  HTTPHeaders = _reflection.GeneratedProtocolMessageType('HTTPHeaders', (_message.Message,), dict(
-    DESCRIPTOR = _CCLOUD_BEGINHTTPUPLOAD_RESPONSE_HTTPHEADERS,
-    __module__ = 'steammessages_cloud_pb2'
+  'HTTPHeaders' : _reflection.GeneratedProtocolMessageType('HTTPHeaders', (_message.Message,), {
+    'DESCRIPTOR' : _CCLOUD_BEGINHTTPUPLOAD_RESPONSE_HTTPHEADERS,
+    '__module__' : 'steammessages_cloud_pb2'
     # @@protoc_insertion_point(class_scope:CCloud_BeginHTTPUpload_Response.HTTPHeaders)
-    ))
+    })
   ,
-  DESCRIPTOR = _CCLOUD_BEGINHTTPUPLOAD_RESPONSE,
-  __module__ = 'steammessages_cloud_pb2'
+  'DESCRIPTOR' : _CCLOUD_BEGINHTTPUPLOAD_RESPONSE,
+  '__module__' : 'steammessages_cloud_pb2'
   # @@protoc_insertion_point(class_scope:CCloud_BeginHTTPUpload_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CCloud_BeginHTTPUpload_Response)
 _sym_db.RegisterMessage(CCloud_BeginHTTPUpload_Response.HTTPHeaders)
 
-CCloud_CommitHTTPUpload_Request = _reflection.GeneratedProtocolMessageType('CCloud_CommitHTTPUpload_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCLOUD_COMMITHTTPUPLOAD_REQUEST,
-  __module__ = 'steammessages_cloud_pb2'
+CCloud_CommitHTTPUpload_Request = _reflection.GeneratedProtocolMessageType('CCloud_CommitHTTPUpload_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCLOUD_COMMITHTTPUPLOAD_REQUEST,
+  '__module__' : 'steammessages_cloud_pb2'
   # @@protoc_insertion_point(class_scope:CCloud_CommitHTTPUpload_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CCloud_CommitHTTPUpload_Request)
 
-CCloud_CommitHTTPUpload_Response = _reflection.GeneratedProtocolMessageType('CCloud_CommitHTTPUpload_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCLOUD_COMMITHTTPUPLOAD_RESPONSE,
-  __module__ = 'steammessages_cloud_pb2'
+CCloud_CommitHTTPUpload_Response = _reflection.GeneratedProtocolMessageType('CCloud_CommitHTTPUpload_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCLOUD_COMMITHTTPUPLOAD_RESPONSE,
+  '__module__' : 'steammessages_cloud_pb2'
   # @@protoc_insertion_point(class_scope:CCloud_CommitHTTPUpload_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CCloud_CommitHTTPUpload_Response)
 
-CCloud_BeginUGCUpload_Request = _reflection.GeneratedProtocolMessageType('CCloud_BeginUGCUpload_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCLOUD_BEGINUGCUPLOAD_REQUEST,
-  __module__ = 'steammessages_cloud_pb2'
+CCloud_BeginUGCUpload_Request = _reflection.GeneratedProtocolMessageType('CCloud_BeginUGCUpload_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCLOUD_BEGINUGCUPLOAD_REQUEST,
+  '__module__' : 'steammessages_cloud_pb2'
   # @@protoc_insertion_point(class_scope:CCloud_BeginUGCUpload_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CCloud_BeginUGCUpload_Request)
 
-CCloud_BeginUGCUpload_Response = _reflection.GeneratedProtocolMessageType('CCloud_BeginUGCUpload_Response', (_message.Message,), dict(
+CCloud_BeginUGCUpload_Response = _reflection.GeneratedProtocolMessageType('CCloud_BeginUGCUpload_Response', (_message.Message,), {
 
-  HTTPHeaders = _reflection.GeneratedProtocolMessageType('HTTPHeaders', (_message.Message,), dict(
-    DESCRIPTOR = _CCLOUD_BEGINUGCUPLOAD_RESPONSE_HTTPHEADERS,
-    __module__ = 'steammessages_cloud_pb2'
+  'HTTPHeaders' : _reflection.GeneratedProtocolMessageType('HTTPHeaders', (_message.Message,), {
+    'DESCRIPTOR' : _CCLOUD_BEGINUGCUPLOAD_RESPONSE_HTTPHEADERS,
+    '__module__' : 'steammessages_cloud_pb2'
     # @@protoc_insertion_point(class_scope:CCloud_BeginUGCUpload_Response.HTTPHeaders)
-    ))
+    })
   ,
-  DESCRIPTOR = _CCLOUD_BEGINUGCUPLOAD_RESPONSE,
-  __module__ = 'steammessages_cloud_pb2'
+  'DESCRIPTOR' : _CCLOUD_BEGINUGCUPLOAD_RESPONSE,
+  '__module__' : 'steammessages_cloud_pb2'
   # @@protoc_insertion_point(class_scope:CCloud_BeginUGCUpload_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CCloud_BeginUGCUpload_Response)
 _sym_db.RegisterMessage(CCloud_BeginUGCUpload_Response.HTTPHeaders)
 
-CCloud_CommitUGCUpload_Request = _reflection.GeneratedProtocolMessageType('CCloud_CommitUGCUpload_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCLOUD_COMMITUGCUPLOAD_REQUEST,
-  __module__ = 'steammessages_cloud_pb2'
+CCloud_CommitUGCUpload_Request = _reflection.GeneratedProtocolMessageType('CCloud_CommitUGCUpload_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCLOUD_COMMITUGCUPLOAD_REQUEST,
+  '__module__' : 'steammessages_cloud_pb2'
   # @@protoc_insertion_point(class_scope:CCloud_CommitUGCUpload_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CCloud_CommitUGCUpload_Request)
 
-CCloud_CommitUGCUpload_Response = _reflection.GeneratedProtocolMessageType('CCloud_CommitUGCUpload_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCLOUD_COMMITUGCUPLOAD_RESPONSE,
-  __module__ = 'steammessages_cloud_pb2'
+CCloud_CommitUGCUpload_Response = _reflection.GeneratedProtocolMessageType('CCloud_CommitUGCUpload_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCLOUD_COMMITUGCUPLOAD_RESPONSE,
+  '__module__' : 'steammessages_cloud_pb2'
   # @@protoc_insertion_point(class_scope:CCloud_CommitUGCUpload_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CCloud_CommitUGCUpload_Response)
 
-CCloud_GetFileDetails_Request = _reflection.GeneratedProtocolMessageType('CCloud_GetFileDetails_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCLOUD_GETFILEDETAILS_REQUEST,
-  __module__ = 'steammessages_cloud_pb2'
+CCloud_GetFileDetails_Request = _reflection.GeneratedProtocolMessageType('CCloud_GetFileDetails_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCLOUD_GETFILEDETAILS_REQUEST,
+  '__module__' : 'steammessages_cloud_pb2'
   # @@protoc_insertion_point(class_scope:CCloud_GetFileDetails_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CCloud_GetFileDetails_Request)
 
-CCloud_UserFile = _reflection.GeneratedProtocolMessageType('CCloud_UserFile', (_message.Message,), dict(
-  DESCRIPTOR = _CCLOUD_USERFILE,
-  __module__ = 'steammessages_cloud_pb2'
+CCloud_UserFile = _reflection.GeneratedProtocolMessageType('CCloud_UserFile', (_message.Message,), {
+  'DESCRIPTOR' : _CCLOUD_USERFILE,
+  '__module__' : 'steammessages_cloud_pb2'
   # @@protoc_insertion_point(class_scope:CCloud_UserFile)
-  ))
+  })
 _sym_db.RegisterMessage(CCloud_UserFile)
 
-CCloud_GetFileDetails_Response = _reflection.GeneratedProtocolMessageType('CCloud_GetFileDetails_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCLOUD_GETFILEDETAILS_RESPONSE,
-  __module__ = 'steammessages_cloud_pb2'
+CCloud_GetFileDetails_Response = _reflection.GeneratedProtocolMessageType('CCloud_GetFileDetails_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCLOUD_GETFILEDETAILS_RESPONSE,
+  '__module__' : 'steammessages_cloud_pb2'
   # @@protoc_insertion_point(class_scope:CCloud_GetFileDetails_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CCloud_GetFileDetails_Response)
 
-CCloud_EnumerateUserFiles_Request = _reflection.GeneratedProtocolMessageType('CCloud_EnumerateUserFiles_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCLOUD_ENUMERATEUSERFILES_REQUEST,
-  __module__ = 'steammessages_cloud_pb2'
+CCloud_EnumerateUserFiles_Request = _reflection.GeneratedProtocolMessageType('CCloud_EnumerateUserFiles_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCLOUD_ENUMERATEUSERFILES_REQUEST,
+  '__module__' : 'steammessages_cloud_pb2'
   # @@protoc_insertion_point(class_scope:CCloud_EnumerateUserFiles_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CCloud_EnumerateUserFiles_Request)
 
-CCloud_EnumerateUserFiles_Response = _reflection.GeneratedProtocolMessageType('CCloud_EnumerateUserFiles_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCLOUD_ENUMERATEUSERFILES_RESPONSE,
-  __module__ = 'steammessages_cloud_pb2'
+CCloud_EnumerateUserFiles_Response = _reflection.GeneratedProtocolMessageType('CCloud_EnumerateUserFiles_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCLOUD_ENUMERATEUSERFILES_RESPONSE,
+  '__module__' : 'steammessages_cloud_pb2'
   # @@protoc_insertion_point(class_scope:CCloud_EnumerateUserFiles_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CCloud_EnumerateUserFiles_Response)
 
-CCloud_Delete_Request = _reflection.GeneratedProtocolMessageType('CCloud_Delete_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCLOUD_DELETE_REQUEST,
-  __module__ = 'steammessages_cloud_pb2'
+CCloud_Delete_Request = _reflection.GeneratedProtocolMessageType('CCloud_Delete_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCLOUD_DELETE_REQUEST,
+  '__module__' : 'steammessages_cloud_pb2'
   # @@protoc_insertion_point(class_scope:CCloud_Delete_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CCloud_Delete_Request)
 
-CCloud_Delete_Response = _reflection.GeneratedProtocolMessageType('CCloud_Delete_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCLOUD_DELETE_RESPONSE,
-  __module__ = 'steammessages_cloud_pb2'
+CCloud_Delete_Response = _reflection.GeneratedProtocolMessageType('CCloud_Delete_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCLOUD_DELETE_RESPONSE,
+  '__module__' : 'steammessages_cloud_pb2'
   # @@protoc_insertion_point(class_scope:CCloud_Delete_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CCloud_Delete_Response)
 
-CCloud_GetClientEncryptionKey_Request = _reflection.GeneratedProtocolMessageType('CCloud_GetClientEncryptionKey_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCLOUD_GETCLIENTENCRYPTIONKEY_REQUEST,
-  __module__ = 'steammessages_cloud_pb2'
+CCloud_GetClientEncryptionKey_Request = _reflection.GeneratedProtocolMessageType('CCloud_GetClientEncryptionKey_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCLOUD_GETCLIENTENCRYPTIONKEY_REQUEST,
+  '__module__' : 'steammessages_cloud_pb2'
   # @@protoc_insertion_point(class_scope:CCloud_GetClientEncryptionKey_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CCloud_GetClientEncryptionKey_Request)
 
-CCloud_GetClientEncryptionKey_Response = _reflection.GeneratedProtocolMessageType('CCloud_GetClientEncryptionKey_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCLOUD_GETCLIENTENCRYPTIONKEY_RESPONSE,
-  __module__ = 'steammessages_cloud_pb2'
+CCloud_GetClientEncryptionKey_Response = _reflection.GeneratedProtocolMessageType('CCloud_GetClientEncryptionKey_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCLOUD_GETCLIENTENCRYPTIONKEY_RESPONSE,
+  '__module__' : 'steammessages_cloud_pb2'
   # @@protoc_insertion_point(class_scope:CCloud_GetClientEncryptionKey_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CCloud_GetClientEncryptionKey_Response)
 
-CCloud_CDNReport_Notification = _reflection.GeneratedProtocolMessageType('CCloud_CDNReport_Notification', (_message.Message,), dict(
-  DESCRIPTOR = _CCLOUD_CDNREPORT_NOTIFICATION,
-  __module__ = 'steammessages_cloud_pb2'
+CCloud_CDNReport_Notification = _reflection.GeneratedProtocolMessageType('CCloud_CDNReport_Notification', (_message.Message,), {
+  'DESCRIPTOR' : _CCLOUD_CDNREPORT_NOTIFICATION,
+  '__module__' : 'steammessages_cloud_pb2'
   # @@protoc_insertion_point(class_scope:CCloud_CDNReport_Notification)
-  ))
+  })
 _sym_db.RegisterMessage(CCloud_CDNReport_Notification)
 
-CCloud_ExternalStorageTransferReport_Notification = _reflection.GeneratedProtocolMessageType('CCloud_ExternalStorageTransferReport_Notification', (_message.Message,), dict(
-  DESCRIPTOR = _CCLOUD_EXTERNALSTORAGETRANSFERREPORT_NOTIFICATION,
-  __module__ = 'steammessages_cloud_pb2'
+CCloud_ExternalStorageTransferReport_Notification = _reflection.GeneratedProtocolMessageType('CCloud_ExternalStorageTransferReport_Notification', (_message.Message,), {
+  'DESCRIPTOR' : _CCLOUD_EXTERNALSTORAGETRANSFERREPORT_NOTIFICATION,
+  '__module__' : 'steammessages_cloud_pb2'
   # @@protoc_insertion_point(class_scope:CCloud_ExternalStorageTransferReport_Notification)
-  ))
+  })
 _sym_db.RegisterMessage(CCloud_ExternalStorageTransferReport_Notification)
 
-CCloud_BeginAppUploadBatch_Request = _reflection.GeneratedProtocolMessageType('CCloud_BeginAppUploadBatch_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCLOUD_BEGINAPPUPLOADBATCH_REQUEST,
-  __module__ = 'steammessages_cloud_pb2'
+CCloud_BeginAppUploadBatch_Request = _reflection.GeneratedProtocolMessageType('CCloud_BeginAppUploadBatch_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCLOUD_BEGINAPPUPLOADBATCH_REQUEST,
+  '__module__' : 'steammessages_cloud_pb2'
   # @@protoc_insertion_point(class_scope:CCloud_BeginAppUploadBatch_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CCloud_BeginAppUploadBatch_Request)
 
-CCloud_BeginAppUploadBatch_Response = _reflection.GeneratedProtocolMessageType('CCloud_BeginAppUploadBatch_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCLOUD_BEGINAPPUPLOADBATCH_RESPONSE,
-  __module__ = 'steammessages_cloud_pb2'
+CCloud_BeginAppUploadBatch_Response = _reflection.GeneratedProtocolMessageType('CCloud_BeginAppUploadBatch_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCLOUD_BEGINAPPUPLOADBATCH_RESPONSE,
+  '__module__' : 'steammessages_cloud_pb2'
   # @@protoc_insertion_point(class_scope:CCloud_BeginAppUploadBatch_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CCloud_BeginAppUploadBatch_Response)
 
-CCloud_CompleteAppUploadBatch_Notification = _reflection.GeneratedProtocolMessageType('CCloud_CompleteAppUploadBatch_Notification', (_message.Message,), dict(
-  DESCRIPTOR = _CCLOUD_COMPLETEAPPUPLOADBATCH_NOTIFICATION,
-  __module__ = 'steammessages_cloud_pb2'
+CCloud_CompleteAppUploadBatch_Notification = _reflection.GeneratedProtocolMessageType('CCloud_CompleteAppUploadBatch_Notification', (_message.Message,), {
+  'DESCRIPTOR' : _CCLOUD_COMPLETEAPPUPLOADBATCH_NOTIFICATION,
+  '__module__' : 'steammessages_cloud_pb2'
   # @@protoc_insertion_point(class_scope:CCloud_CompleteAppUploadBatch_Notification)
-  ))
+  })
 _sym_db.RegisterMessage(CCloud_CompleteAppUploadBatch_Notification)
 
-CCloud_CompleteAppUploadBatch_Request = _reflection.GeneratedProtocolMessageType('CCloud_CompleteAppUploadBatch_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCLOUD_COMPLETEAPPUPLOADBATCH_REQUEST,
-  __module__ = 'steammessages_cloud_pb2'
+CCloud_CompleteAppUploadBatch_Request = _reflection.GeneratedProtocolMessageType('CCloud_CompleteAppUploadBatch_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCLOUD_COMPLETEAPPUPLOADBATCH_REQUEST,
+  '__module__' : 'steammessages_cloud_pb2'
   # @@protoc_insertion_point(class_scope:CCloud_CompleteAppUploadBatch_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CCloud_CompleteAppUploadBatch_Request)
 
-CCloud_CompleteAppUploadBatch_Response = _reflection.GeneratedProtocolMessageType('CCloud_CompleteAppUploadBatch_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCLOUD_COMPLETEAPPUPLOADBATCH_RESPONSE,
-  __module__ = 'steammessages_cloud_pb2'
+CCloud_CompleteAppUploadBatch_Response = _reflection.GeneratedProtocolMessageType('CCloud_CompleteAppUploadBatch_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCLOUD_COMPLETEAPPUPLOADBATCH_RESPONSE,
+  '__module__' : 'steammessages_cloud_pb2'
   # @@protoc_insertion_point(class_scope:CCloud_CompleteAppUploadBatch_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CCloud_CompleteAppUploadBatch_Response)
 
-CCloud_ClientBeginFileUpload_Request = _reflection.GeneratedProtocolMessageType('CCloud_ClientBeginFileUpload_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCLOUD_CLIENTBEGINFILEUPLOAD_REQUEST,
-  __module__ = 'steammessages_cloud_pb2'
+CCloud_ClientBeginFileUpload_Request = _reflection.GeneratedProtocolMessageType('CCloud_ClientBeginFileUpload_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCLOUD_CLIENTBEGINFILEUPLOAD_REQUEST,
+  '__module__' : 'steammessages_cloud_pb2'
   # @@protoc_insertion_point(class_scope:CCloud_ClientBeginFileUpload_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CCloud_ClientBeginFileUpload_Request)
 
-ClientCloudFileUploadBlockDetails = _reflection.GeneratedProtocolMessageType('ClientCloudFileUploadBlockDetails', (_message.Message,), dict(
+ClientCloudFileUploadBlockDetails = _reflection.GeneratedProtocolMessageType('ClientCloudFileUploadBlockDetails', (_message.Message,), {
 
-  HTTPHeaders = _reflection.GeneratedProtocolMessageType('HTTPHeaders', (_message.Message,), dict(
-    DESCRIPTOR = _CLIENTCLOUDFILEUPLOADBLOCKDETAILS_HTTPHEADERS,
-    __module__ = 'steammessages_cloud_pb2'
+  'HTTPHeaders' : _reflection.GeneratedProtocolMessageType('HTTPHeaders', (_message.Message,), {
+    'DESCRIPTOR' : _CLIENTCLOUDFILEUPLOADBLOCKDETAILS_HTTPHEADERS,
+    '__module__' : 'steammessages_cloud_pb2'
     # @@protoc_insertion_point(class_scope:ClientCloudFileUploadBlockDetails.HTTPHeaders)
-    ))
+    })
   ,
-  DESCRIPTOR = _CLIENTCLOUDFILEUPLOADBLOCKDETAILS,
-  __module__ = 'steammessages_cloud_pb2'
+  'DESCRIPTOR' : _CLIENTCLOUDFILEUPLOADBLOCKDETAILS,
+  '__module__' : 'steammessages_cloud_pb2'
   # @@protoc_insertion_point(class_scope:ClientCloudFileUploadBlockDetails)
-  ))
+  })
 _sym_db.RegisterMessage(ClientCloudFileUploadBlockDetails)
 _sym_db.RegisterMessage(ClientCloudFileUploadBlockDetails.HTTPHeaders)
 
-CCloud_ClientBeginFileUpload_Response = _reflection.GeneratedProtocolMessageType('CCloud_ClientBeginFileUpload_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCLOUD_CLIENTBEGINFILEUPLOAD_RESPONSE,
-  __module__ = 'steammessages_cloud_pb2'
+CCloud_ClientBeginFileUpload_Response = _reflection.GeneratedProtocolMessageType('CCloud_ClientBeginFileUpload_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCLOUD_CLIENTBEGINFILEUPLOAD_RESPONSE,
+  '__module__' : 'steammessages_cloud_pb2'
   # @@protoc_insertion_point(class_scope:CCloud_ClientBeginFileUpload_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CCloud_ClientBeginFileUpload_Response)
 
-CCloud_ClientCommitFileUpload_Request = _reflection.GeneratedProtocolMessageType('CCloud_ClientCommitFileUpload_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCLOUD_CLIENTCOMMITFILEUPLOAD_REQUEST,
-  __module__ = 'steammessages_cloud_pb2'
+CCloud_ClientCommitFileUpload_Request = _reflection.GeneratedProtocolMessageType('CCloud_ClientCommitFileUpload_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCLOUD_CLIENTCOMMITFILEUPLOAD_REQUEST,
+  '__module__' : 'steammessages_cloud_pb2'
   # @@protoc_insertion_point(class_scope:CCloud_ClientCommitFileUpload_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CCloud_ClientCommitFileUpload_Request)
 
-CCloud_ClientCommitFileUpload_Response = _reflection.GeneratedProtocolMessageType('CCloud_ClientCommitFileUpload_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCLOUD_CLIENTCOMMITFILEUPLOAD_RESPONSE,
-  __module__ = 'steammessages_cloud_pb2'
+CCloud_ClientCommitFileUpload_Response = _reflection.GeneratedProtocolMessageType('CCloud_ClientCommitFileUpload_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCLOUD_CLIENTCOMMITFILEUPLOAD_RESPONSE,
+  '__module__' : 'steammessages_cloud_pb2'
   # @@protoc_insertion_point(class_scope:CCloud_ClientCommitFileUpload_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CCloud_ClientCommitFileUpload_Response)
 
-CCloud_ClientFileDownload_Request = _reflection.GeneratedProtocolMessageType('CCloud_ClientFileDownload_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCLOUD_CLIENTFILEDOWNLOAD_REQUEST,
-  __module__ = 'steammessages_cloud_pb2'
+CCloud_ClientFileDownload_Request = _reflection.GeneratedProtocolMessageType('CCloud_ClientFileDownload_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCLOUD_CLIENTFILEDOWNLOAD_REQUEST,
+  '__module__' : 'steammessages_cloud_pb2'
   # @@protoc_insertion_point(class_scope:CCloud_ClientFileDownload_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CCloud_ClientFileDownload_Request)
 
-CCloud_ClientFileDownload_Response = _reflection.GeneratedProtocolMessageType('CCloud_ClientFileDownload_Response', (_message.Message,), dict(
+CCloud_ClientFileDownload_Response = _reflection.GeneratedProtocolMessageType('CCloud_ClientFileDownload_Response', (_message.Message,), {
 
-  HTTPHeaders = _reflection.GeneratedProtocolMessageType('HTTPHeaders', (_message.Message,), dict(
-    DESCRIPTOR = _CCLOUD_CLIENTFILEDOWNLOAD_RESPONSE_HTTPHEADERS,
-    __module__ = 'steammessages_cloud_pb2'
+  'HTTPHeaders' : _reflection.GeneratedProtocolMessageType('HTTPHeaders', (_message.Message,), {
+    'DESCRIPTOR' : _CCLOUD_CLIENTFILEDOWNLOAD_RESPONSE_HTTPHEADERS,
+    '__module__' : 'steammessages_cloud_pb2'
     # @@protoc_insertion_point(class_scope:CCloud_ClientFileDownload_Response.HTTPHeaders)
-    ))
+    })
   ,
-  DESCRIPTOR = _CCLOUD_CLIENTFILEDOWNLOAD_RESPONSE,
-  __module__ = 'steammessages_cloud_pb2'
+  'DESCRIPTOR' : _CCLOUD_CLIENTFILEDOWNLOAD_RESPONSE,
+  '__module__' : 'steammessages_cloud_pb2'
   # @@protoc_insertion_point(class_scope:CCloud_ClientFileDownload_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CCloud_ClientFileDownload_Response)
 _sym_db.RegisterMessage(CCloud_ClientFileDownload_Response.HTTPHeaders)
 
-CCloud_ClientDeleteFile_Request = _reflection.GeneratedProtocolMessageType('CCloud_ClientDeleteFile_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCLOUD_CLIENTDELETEFILE_REQUEST,
-  __module__ = 'steammessages_cloud_pb2'
+CCloud_ClientDeleteFile_Request = _reflection.GeneratedProtocolMessageType('CCloud_ClientDeleteFile_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCLOUD_CLIENTDELETEFILE_REQUEST,
+  '__module__' : 'steammessages_cloud_pb2'
   # @@protoc_insertion_point(class_scope:CCloud_ClientDeleteFile_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CCloud_ClientDeleteFile_Request)
 
-CCloud_ClientDeleteFile_Response = _reflection.GeneratedProtocolMessageType('CCloud_ClientDeleteFile_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCLOUD_CLIENTDELETEFILE_RESPONSE,
-  __module__ = 'steammessages_cloud_pb2'
+CCloud_ClientDeleteFile_Response = _reflection.GeneratedProtocolMessageType('CCloud_ClientDeleteFile_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCLOUD_CLIENTDELETEFILE_RESPONSE,
+  '__module__' : 'steammessages_cloud_pb2'
   # @@protoc_insertion_point(class_scope:CCloud_ClientDeleteFile_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CCloud_ClientDeleteFile_Response)
 
-CCloud_ClientConflictResolution_Notification = _reflection.GeneratedProtocolMessageType('CCloud_ClientConflictResolution_Notification', (_message.Message,), dict(
-  DESCRIPTOR = _CCLOUD_CLIENTCONFLICTRESOLUTION_NOTIFICATION,
-  __module__ = 'steammessages_cloud_pb2'
+CCloud_ClientConflictResolution_Notification = _reflection.GeneratedProtocolMessageType('CCloud_ClientConflictResolution_Notification', (_message.Message,), {
+  'DESCRIPTOR' : _CCLOUD_CLIENTCONFLICTRESOLUTION_NOTIFICATION,
+  '__module__' : 'steammessages_cloud_pb2'
   # @@protoc_insertion_point(class_scope:CCloud_ClientConflictResolution_Notification)
-  ))
+  })
 _sym_db.RegisterMessage(CCloud_ClientConflictResolution_Notification)
 
-CCloud_EnumerateUserApps_Request = _reflection.GeneratedProtocolMessageType('CCloud_EnumerateUserApps_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCLOUD_ENUMERATEUSERAPPS_REQUEST,
-  __module__ = 'steammessages_cloud_pb2'
+CCloud_EnumerateUserApps_Request = _reflection.GeneratedProtocolMessageType('CCloud_EnumerateUserApps_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCLOUD_ENUMERATEUSERAPPS_REQUEST,
+  '__module__' : 'steammessages_cloud_pb2'
   # @@protoc_insertion_point(class_scope:CCloud_EnumerateUserApps_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CCloud_EnumerateUserApps_Request)
 
-CCloud_EnumerateUserApps_Response = _reflection.GeneratedProtocolMessageType('CCloud_EnumerateUserApps_Response', (_message.Message,), dict(
+CCloud_EnumerateUserApps_Response = _reflection.GeneratedProtocolMessageType('CCloud_EnumerateUserApps_Response', (_message.Message,), {
 
-  Apps = _reflection.GeneratedProtocolMessageType('Apps', (_message.Message,), dict(
-    DESCRIPTOR = _CCLOUD_ENUMERATEUSERAPPS_RESPONSE_APPS,
-    __module__ = 'steammessages_cloud_pb2'
+  'Apps' : _reflection.GeneratedProtocolMessageType('Apps', (_message.Message,), {
+    'DESCRIPTOR' : _CCLOUD_ENUMERATEUSERAPPS_RESPONSE_APPS,
+    '__module__' : 'steammessages_cloud_pb2'
     # @@protoc_insertion_point(class_scope:CCloud_EnumerateUserApps_Response.Apps)
-    ))
+    })
   ,
-  DESCRIPTOR = _CCLOUD_ENUMERATEUSERAPPS_RESPONSE,
-  __module__ = 'steammessages_cloud_pb2'
+  'DESCRIPTOR' : _CCLOUD_ENUMERATEUSERAPPS_RESPONSE,
+  '__module__' : 'steammessages_cloud_pb2'
   # @@protoc_insertion_point(class_scope:CCloud_EnumerateUserApps_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CCloud_EnumerateUserApps_Response)
 _sym_db.RegisterMessage(CCloud_EnumerateUserApps_Response.Apps)
 
-CCloud_GetAppFileChangelist_Request = _reflection.GeneratedProtocolMessageType('CCloud_GetAppFileChangelist_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCLOUD_GETAPPFILECHANGELIST_REQUEST,
-  __module__ = 'steammessages_cloud_pb2'
+CCloud_GetAppFileChangelist_Request = _reflection.GeneratedProtocolMessageType('CCloud_GetAppFileChangelist_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCLOUD_GETAPPFILECHANGELIST_REQUEST,
+  '__module__' : 'steammessages_cloud_pb2'
   # @@protoc_insertion_point(class_scope:CCloud_GetAppFileChangelist_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CCloud_GetAppFileChangelist_Request)
 
-CCloud_AppFileInfo = _reflection.GeneratedProtocolMessageType('CCloud_AppFileInfo', (_message.Message,), dict(
-  DESCRIPTOR = _CCLOUD_APPFILEINFO,
-  __module__ = 'steammessages_cloud_pb2'
+CCloud_AppFileInfo = _reflection.GeneratedProtocolMessageType('CCloud_AppFileInfo', (_message.Message,), {
+  'DESCRIPTOR' : _CCLOUD_APPFILEINFO,
+  '__module__' : 'steammessages_cloud_pb2'
   # @@protoc_insertion_point(class_scope:CCloud_AppFileInfo)
-  ))
+  })
 _sym_db.RegisterMessage(CCloud_AppFileInfo)
 
-CCloud_GetAppFileChangelist_Response = _reflection.GeneratedProtocolMessageType('CCloud_GetAppFileChangelist_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCLOUD_GETAPPFILECHANGELIST_RESPONSE,
-  __module__ = 'steammessages_cloud_pb2'
+CCloud_GetAppFileChangelist_Response = _reflection.GeneratedProtocolMessageType('CCloud_GetAppFileChangelist_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCLOUD_GETAPPFILECHANGELIST_RESPONSE,
+  '__module__' : 'steammessages_cloud_pb2'
   # @@protoc_insertion_point(class_scope:CCloud_GetAppFileChangelist_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CCloud_GetAppFileChangelist_Response)
 
-CCloud_AppSessionSuspend_Request = _reflection.GeneratedProtocolMessageType('CCloud_AppSessionSuspend_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCLOUD_APPSESSIONSUSPEND_REQUEST,
-  __module__ = 'steammessages_cloud_pb2'
+CCloud_AppSessionSuspend_Request = _reflection.GeneratedProtocolMessageType('CCloud_AppSessionSuspend_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCLOUD_APPSESSIONSUSPEND_REQUEST,
+  '__module__' : 'steammessages_cloud_pb2'
   # @@protoc_insertion_point(class_scope:CCloud_AppSessionSuspend_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CCloud_AppSessionSuspend_Request)
 
-CCloud_AppSessionSuspend_Response = _reflection.GeneratedProtocolMessageType('CCloud_AppSessionSuspend_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCLOUD_APPSESSIONSUSPEND_RESPONSE,
-  __module__ = 'steammessages_cloud_pb2'
+CCloud_AppSessionSuspend_Response = _reflection.GeneratedProtocolMessageType('CCloud_AppSessionSuspend_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCLOUD_APPSESSIONSUSPEND_RESPONSE,
+  '__module__' : 'steammessages_cloud_pb2'
   # @@protoc_insertion_point(class_scope:CCloud_AppSessionSuspend_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CCloud_AppSessionSuspend_Response)
 
-CCloud_AppSessionResume_Request = _reflection.GeneratedProtocolMessageType('CCloud_AppSessionResume_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCLOUD_APPSESSIONRESUME_REQUEST,
-  __module__ = 'steammessages_cloud_pb2'
+CCloud_AppSessionResume_Request = _reflection.GeneratedProtocolMessageType('CCloud_AppSessionResume_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCLOUD_APPSESSIONRESUME_REQUEST,
+  '__module__' : 'steammessages_cloud_pb2'
   # @@protoc_insertion_point(class_scope:CCloud_AppSessionResume_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CCloud_AppSessionResume_Request)
 
-CCloud_AppSessionResume_Response = _reflection.GeneratedProtocolMessageType('CCloud_AppSessionResume_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCLOUD_APPSESSIONRESUME_RESPONSE,
-  __module__ = 'steammessages_cloud_pb2'
+CCloud_AppSessionResume_Response = _reflection.GeneratedProtocolMessageType('CCloud_AppSessionResume_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCLOUD_APPSESSIONRESUME_RESPONSE,
+  '__module__' : 'steammessages_cloud_pb2'
   # @@protoc_insertion_point(class_scope:CCloud_AppSessionResume_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CCloud_AppSessionResume_Response)
 
-CCloud_AppLaunchIntent_Request = _reflection.GeneratedProtocolMessageType('CCloud_AppLaunchIntent_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCLOUD_APPLAUNCHINTENT_REQUEST,
-  __module__ = 'steammessages_cloud_pb2'
+CCloud_AppLaunchIntent_Request = _reflection.GeneratedProtocolMessageType('CCloud_AppLaunchIntent_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCLOUD_APPLAUNCHINTENT_REQUEST,
+  '__module__' : 'steammessages_cloud_pb2'
   # @@protoc_insertion_point(class_scope:CCloud_AppLaunchIntent_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CCloud_AppLaunchIntent_Request)
 
-CCloud_AppLaunchIntent_Response = _reflection.GeneratedProtocolMessageType('CCloud_AppLaunchIntent_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCLOUD_APPLAUNCHINTENT_RESPONSE,
-  __module__ = 'steammessages_cloud_pb2'
+CCloud_AppLaunchIntent_Response = _reflection.GeneratedProtocolMessageType('CCloud_AppLaunchIntent_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCLOUD_APPLAUNCHINTENT_RESPONSE,
+  '__module__' : 'steammessages_cloud_pb2'
   # @@protoc_insertion_point(class_scope:CCloud_AppLaunchIntent_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CCloud_AppLaunchIntent_Response)
 
-CCloud_AppExitSyncDone_Notification = _reflection.GeneratedProtocolMessageType('CCloud_AppExitSyncDone_Notification', (_message.Message,), dict(
-  DESCRIPTOR = _CCLOUD_APPEXITSYNCDONE_NOTIFICATION,
-  __module__ = 'steammessages_cloud_pb2'
+CCloud_AppExitSyncDone_Notification = _reflection.GeneratedProtocolMessageType('CCloud_AppExitSyncDone_Notification', (_message.Message,), {
+  'DESCRIPTOR' : _CCLOUD_APPEXITSYNCDONE_NOTIFICATION,
+  '__module__' : 'steammessages_cloud_pb2'
   # @@protoc_insertion_point(class_scope:CCloud_AppExitSyncDone_Notification)
-  ))
+  })
 _sym_db.RegisterMessage(CCloud_AppExitSyncDone_Notification)
 
-CCloud_AppCloudStateChange_Notification = _reflection.GeneratedProtocolMessageType('CCloud_AppCloudStateChange_Notification', (_message.Message,), dict(
-  DESCRIPTOR = _CCLOUD_APPCLOUDSTATECHANGE_NOTIFICATION,
-  __module__ = 'steammessages_cloud_pb2'
+CCloud_ClientGetAppQuotaUsage_Request = _reflection.GeneratedProtocolMessageType('CCloud_ClientGetAppQuotaUsage_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCLOUD_CLIENTGETAPPQUOTAUSAGE_REQUEST,
+  '__module__' : 'steammessages_cloud_pb2'
+  # @@protoc_insertion_point(class_scope:CCloud_ClientGetAppQuotaUsage_Request)
+  })
+_sym_db.RegisterMessage(CCloud_ClientGetAppQuotaUsage_Request)
+
+CCloud_ClientGetAppQuotaUsage_Response = _reflection.GeneratedProtocolMessageType('CCloud_ClientGetAppQuotaUsage_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCLOUD_CLIENTGETAPPQUOTAUSAGE_RESPONSE,
+  '__module__' : 'steammessages_cloud_pb2'
+  # @@protoc_insertion_point(class_scope:CCloud_ClientGetAppQuotaUsage_Response)
+  })
+_sym_db.RegisterMessage(CCloud_ClientGetAppQuotaUsage_Response)
+
+CCloud_AppCloudStateChange_Notification = _reflection.GeneratedProtocolMessageType('CCloud_AppCloudStateChange_Notification', (_message.Message,), {
+  'DESCRIPTOR' : _CCLOUD_APPCLOUDSTATECHANGE_NOTIFICATION,
+  '__module__' : 'steammessages_cloud_pb2'
   # @@protoc_insertion_point(class_scope:CCloud_AppCloudStateChange_Notification)
-  ))
+  })
 _sym_db.RegisterMessage(CCloud_AppCloudStateChange_Notification)
 
+CCloud_ClientLogUploadRequest_Notification = _reflection.GeneratedProtocolMessageType('CCloud_ClientLogUploadRequest_Notification', (_message.Message,), {
+  'DESCRIPTOR' : _CCLOUD_CLIENTLOGUPLOADREQUEST_NOTIFICATION,
+  '__module__' : 'steammessages_cloud_pb2'
+  # @@protoc_insertion_point(class_scope:CCloud_ClientLogUploadRequest_Notification)
+  })
+_sym_db.RegisterMessage(CCloud_ClientLogUploadRequest_Notification)
+
 
 DESCRIPTOR._options = None
 _CCLOUD_GETUPLOADSERVERINFO_REQUEST.fields_by_name['appid']._options = None
@@ -3124,6 +3455,7 @@ _CCLOUD_BEGINAPPUPLOADBATCH_REQUEST.fields_by_name['machine_name']._options = No
 _CCLOUD_BEGINAPPUPLOADBATCH_REQUEST.fields_by_name['files_to_upload']._options = None
 _CCLOUD_BEGINAPPUPLOADBATCH_REQUEST.fields_by_name['files_to_delete']._options = None
 _CCLOUD_BEGINAPPUPLOADBATCH_REQUEST.fields_by_name['client_id']._options = None
+_CCLOUD_BEGINAPPUPLOADBATCH_REQUEST.fields_by_name['app_build_id']._options = None
 _CCLOUD_BEGINAPPUPLOADBATCH_RESPONSE.fields_by_name['batch_id']._options = None
 _CCLOUD_BEGINAPPUPLOADBATCH_RESPONSE.fields_by_name['app_change_number']._options = None
 _CCLOUD_COMPLETEAPPUPLOADBATCH_NOTIFICATION.fields_by_name['appid']._options = None
@@ -3193,6 +3525,7 @@ _CCLOUD_GETAPPFILECHANGELIST_RESPONSE.fields_by_name['files']._options = None
 _CCLOUD_GETAPPFILECHANGELIST_RESPONSE.fields_by_name['is_only_delta']._options = None
 _CCLOUD_GETAPPFILECHANGELIST_RESPONSE.fields_by_name['path_prefixes']._options = None
 _CCLOUD_GETAPPFILECHANGELIST_RESPONSE.fields_by_name['machine_names']._options = None
+_CCLOUD_GETAPPFILECHANGELIST_RESPONSE.fields_by_name['app_buildid_hwm']._options = None
 _CCLOUD_APPLAUNCHINTENT_RESPONSE.fields_by_name['pending_remote_operations']._options = None
 _CCLOUD_APPCLOUDSTATECHANGE_NOTIFICATION.fields_by_name['appid']._options = None
 _CCLOUD_APPCLOUDSTATECHANGE_NOTIFICATION.fields_by_name['app_change_number']._options = None
@@ -3202,234 +3535,290 @@ _CLOUD = _descriptor.ServiceDescriptor(
   full_name='Cloud',
   file=DESCRIPTOR,
   index=0,
-  serialized_options=_b('\202\265\030%A service for Steam Cloud operations.'),
-  serialized_start=12967,
-  serialized_end=17022,
+  serialized_options=b'\202\265\030%A service for Steam Cloud operations.',
+  create_key=_descriptor._internal_create_key,
+  serialized_start=13703,
+  serialized_end=18196,
   methods=[
+  _descriptor.MethodDescriptor(
+    name='ClientLogUploadCheck',
+    full_name='Cloud.ClientLogUploadCheck',
+    index=0,
+    containing_service=None,
+    input_type=_CCLOUD_CLIENTLOGUPLOADCHECK_NOTIFICATION,
+    output_type=steammessages__unified__base__pb2._NORESPONSE,
+    serialized_options=b'\202\265\0300Client checking for pending log upload requests.',
+    create_key=_descriptor._internal_create_key,
+  ),
+  _descriptor.MethodDescriptor(
+    name='ClientLogUploadComplete',
+    full_name='Cloud.ClientLogUploadComplete',
+    index=1,
+    containing_service=None,
+    input_type=_CCLOUD_CLIENTLOGUPLOADCOMPLETE_NOTIFICATION,
+    output_type=steammessages__unified__base__pb2._NORESPONSE,
+    serialized_options=b'\202\265\0305Client is flagging a log upload request as completed.',
+    create_key=_descriptor._internal_create_key,
+  ),
   _descriptor.MethodDescriptor(
     name='GetUploadServerInfo',
     full_name='Cloud.GetUploadServerInfo',
-    index=0,
+    index=2,
     containing_service=None,
     input_type=_CCLOUD_GETUPLOADSERVERINFO_REQUEST,
     output_type=_CCLOUD_GETUPLOADSERVERINFO_RESPONSE,
-    serialized_options=_b('\202\265\0306Returns the URL of the proper cloud server for a user.'),
+    serialized_options=b'\202\265\0306Returns the URL of the proper cloud server for a user.',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='BeginHTTPUpload',
     full_name='Cloud.BeginHTTPUpload',
-    index=1,
+    index=3,
     containing_service=None,
     input_type=_CCLOUD_BEGINHTTPUPLOAD_REQUEST,
     output_type=_CCLOUD_BEGINHTTPUPLOAD_RESPONSE,
-    serialized_options=_b('\202\265\030\314\001Begins the process of uploading a file to Steam external storage services. File should be uploaded via HTTP PUT to the returned URL, after which the upload must be finalized by a call to CommitHTTPUpload.'),
+    serialized_options=b'\202\265\030\314\001Begins the process of uploading a file to Steam external storage services. File should be uploaded via HTTP PUT to the returned URL, after which the upload must be finalized by a call to CommitHTTPUpload.',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='CommitHTTPUpload',
     full_name='Cloud.CommitHTTPUpload',
-    index=2,
+    index=4,
     containing_service=None,
     input_type=_CCLOUD_COMMITHTTPUPLOAD_REQUEST,
     output_type=_CCLOUD_COMMITHTTPUPLOAD_RESPONSE,
-    serialized_options=_b('\202\265\030PCommits a file upload initiated by BeginHTTPUpload and transferred via HTTP PUT.'),
+    serialized_options=b'\202\265\030PCommits a file upload initiated by BeginHTTPUpload and transferred via HTTP PUT.',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='BeginUGCUpload',
     full_name='Cloud.BeginUGCUpload',
-    index=3,
+    index=5,
     containing_service=None,
     input_type=_CCLOUD_BEGINUGCUPLOAD_REQUEST,
     output_type=_CCLOUD_BEGINUGCUPLOAD_RESPONSE,
-    serialized_options=_b('\202\265\030\314\001Begins the process of uploading a file to Steam external storage services. File should be uploaded via HTTP PUT to the returned URL, after which the upload must be finalized by a call to CommitHTTPUpload.'),
+    serialized_options=b'\202\265\030\314\001Begins the process of uploading a file to Steam external storage services. File should be uploaded via HTTP PUT to the returned URL, after which the upload must be finalized by a call to CommitHTTPUpload.',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='CommitUGCUpload',
     full_name='Cloud.CommitUGCUpload',
-    index=4,
+    index=6,
     containing_service=None,
     input_type=_CCLOUD_COMMITUGCUPLOAD_REQUEST,
     output_type=_CCLOUD_COMMITUGCUPLOAD_RESPONSE,
-    serialized_options=_b('\202\265\030OCommits a file upload initiated by BeginUGCUpload and transferred via HTTP PUT.'),
+    serialized_options=b'\202\265\030OCommits a file upload initiated by BeginUGCUpload and transferred via HTTP PUT.',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetFileDetails',
     full_name='Cloud.GetFileDetails',
-    index=5,
+    index=7,
     containing_service=None,
     input_type=_CCLOUD_GETFILEDETAILS_REQUEST,
     output_type=_CCLOUD_GETFILEDETAILS_RESPONSE,
-    serialized_options=_b('\202\265\030 Returns details on a Cloud file.'),
+    serialized_options=b'\202\265\030 Returns details on a Cloud file.',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='EnumerateUserFiles',
     full_name='Cloud.EnumerateUserFiles',
-    index=6,
+    index=8,
     containing_service=None,
     input_type=_CCLOUD_ENUMERATEUSERFILES_REQUEST,
     output_type=_CCLOUD_ENUMERATEUSERFILES_RESPONSE,
-    serialized_options=_b('\202\265\030WEnumerates Cloud files for a user of a given app ID. Returns up to 500 files at a time.'),
+    serialized_options=b'\202\265\030WEnumerates Cloud files for a user of a given app ID. Returns up to 500 files at a time.',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='Delete',
     full_name='Cloud.Delete',
-    index=7,
+    index=9,
     containing_service=None,
     input_type=_CCLOUD_DELETE_REQUEST,
     output_type=_CCLOUD_DELETE_RESPONSE,
-    serialized_options=_b('\202\265\030%Deletes a file from the user\'s cloud.'),
+    serialized_options=b'\202\265\030%Deletes a file from the user\'s cloud.',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetClientEncryptionKey',
     full_name='Cloud.GetClientEncryptionKey',
-    index=8,
+    index=10,
     containing_service=None,
     input_type=_CCLOUD_GETCLIENTENCRYPTIONKEY_REQUEST,
     output_type=_CCLOUD_GETCLIENTENCRYPTIONKEY_RESPONSE,
-    serialized_options=_b('\202\265\030*Gets the user\'s Cloud file encryption key.'),
+    serialized_options=b'\202\265\030*Gets the user\'s Cloud file encryption key.',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='CDNReport',
     full_name='Cloud.CDNReport',
-    index=9,
+    index=11,
     containing_service=None,
     input_type=_CCLOUD_CDNREPORT_NOTIFICATION,
     output_type=steammessages__unified__base__pb2._NORESPONSE,
-    serialized_options=_b('\202\265\030%Reports the result of a CDN transfer.'),
+    serialized_options=b'\202\265\030%Reports the result of a CDN transfer.',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='ExternalStorageTransferReport',
     full_name='Cloud.ExternalStorageTransferReport',
-    index=10,
+    index=12,
     containing_service=None,
     input_type=_CCLOUD_EXTERNALSTORAGETRANSFERREPORT_NOTIFICATION,
     output_type=steammessages__unified__base__pb2._NORESPONSE,
-    serialized_options=_b('\202\265\0309Reports the result of an external Cloud storage transfer.'),
+    serialized_options=b'\202\265\0309Reports the result of an external Cloud storage transfer.',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='BeginAppUploadBatch',
     full_name='Cloud.BeginAppUploadBatch',
-    index=11,
+    index=13,
     containing_service=None,
     input_type=_CCLOUD_BEGINAPPUPLOADBATCH_REQUEST,
     output_type=_CCLOUD_BEGINAPPUPLOADBATCH_RESPONSE,
-    serialized_options=_b('\202\265\030EIndicate a batch of files that will be uploaded / deleted for an app.'),
+    serialized_options=b'\202\265\030EIndicate a batch of files that will be uploaded / deleted for an app.',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='CompleteAppUploadBatch',
     full_name='Cloud.CompleteAppUploadBatch',
-    index=12,
+    index=14,
     containing_service=None,
     input_type=_CCLOUD_COMPLETEAPPUPLOADBATCH_NOTIFICATION,
     output_type=steammessages__unified__base__pb2._NORESPONSE,
-    serialized_options=_b('\202\265\030KIndicate that the batch is complete or being stopped for some other reason.'),
+    serialized_options=b'\202\265\030KIndicate that the batch is complete or being stopped for some other reason.',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='CompleteAppUploadBatchBlocking',
     full_name='Cloud.CompleteAppUploadBatchBlocking',
-    index=13,
+    index=15,
     containing_service=None,
     input_type=_CCLOUD_COMPLETEAPPUPLOADBATCH_REQUEST,
     output_type=_CCLOUD_COMPLETEAPPUPLOADBATCH_RESPONSE,
-    serialized_options=_b('\202\265\030KIndicate that the batch is complete or being stopped for some other reason.'),
+    serialized_options=b'\202\265\030KIndicate that the batch is complete or being stopped for some other reason.',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='ClientBeginFileUpload',
     full_name='Cloud.ClientBeginFileUpload',
-    index=14,
+    index=16,
     containing_service=None,
     input_type=_CCLOUD_CLIENTBEGINFILEUPLOAD_REQUEST,
     output_type=_CCLOUD_CLIENTBEGINFILEUPLOAD_RESPONSE,
-    serialized_options=_b('\202\265\030\034Initiate an upload to Cloud.'),
+    serialized_options=b'\202\265\030\034Initiate an upload to Cloud.',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='ClientCommitFileUpload',
     full_name='Cloud.ClientCommitFileUpload',
-    index=15,
+    index=17,
     containing_service=None,
     input_type=_CCLOUD_CLIENTCOMMITFILEUPLOAD_REQUEST,
     output_type=_CCLOUD_CLIENTCOMMITFILEUPLOAD_RESPONSE,
-    serialized_options=_b('\202\265\030+Commit the file upload or indicate failure.'),
+    serialized_options=b'\202\265\030+Commit the file upload or indicate failure.',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='ClientFileDownload',
     full_name='Cloud.ClientFileDownload',
-    index=16,
+    index=18,
     containing_service=None,
     input_type=_CCLOUD_CLIENTFILEDOWNLOAD_REQUEST,
     output_type=_CCLOUD_CLIENTFILEDOWNLOAD_RESPONSE,
-    serialized_options=_b('\202\265\030\031Initiate a file download.'),
+    serialized_options=b'\202\265\030\031Initiate a file download.',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='ClientDeleteFile',
     full_name='Cloud.ClientDeleteFile',
-    index=17,
+    index=19,
     containing_service=None,
     input_type=_CCLOUD_CLIENTDELETEFILE_REQUEST,
     output_type=_CCLOUD_CLIENTDELETEFILE_RESPONSE,
-    serialized_options=_b('\202\265\030\030Delete or forget a file.'),
+    serialized_options=b'\202\265\030\030Delete or forget a file.',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='ClientConflictResolution',
     full_name='Cloud.ClientConflictResolution',
-    index=18,
+    index=20,
     containing_service=None,
     input_type=_CCLOUD_CLIENTCONFLICTRESOLUTION_NOTIFICATION,
     output_type=steammessages__unified__base__pb2._NORESPONSE,
-    serialized_options=_b('\202\265\0302User has picked a resolution for a Cloud conflict.'),
+    serialized_options=b'\202\265\0302User has picked a resolution for a Cloud conflict.',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='EnumerateUserApps',
     full_name='Cloud.EnumerateUserApps',
-    index=19,
+    index=21,
     containing_service=None,
     input_type=_CCLOUD_ENUMERATEUSERAPPS_REQUEST,
     output_type=_CCLOUD_ENUMERATEUSERAPPS_RESPONSE,
-    serialized_options=_b('\202\265\030/Enumerates apps stroing cloud files for a user.'),
+    serialized_options=b'\202\265\030/Enumerates apps stroing cloud files for a user.',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetAppFileChangelist',
     full_name='Cloud.GetAppFileChangelist',
-    index=20,
+    index=22,
     containing_service=None,
     input_type=_CCLOUD_GETAPPFILECHANGELIST_REQUEST,
     output_type=_CCLOUD_GETAPPFILECHANGELIST_RESPONSE,
-    serialized_options=_b('\202\265\030KGet a list of Cloud file changes for an app given a starting Change Number.'),
+    serialized_options=b'\202\265\030KGet a list of Cloud file changes for an app given a starting Change Number.',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='SuspendAppSession',
     full_name='Cloud.SuspendAppSession',
-    index=21,
+    index=23,
     containing_service=None,
     input_type=_CCLOUD_APPSESSIONSUSPEND_REQUEST,
     output_type=_CCLOUD_APPSESSIONSUSPEND_RESPONSE,
-    serialized_options=_b('\202\265\030!An app session is being suspended'),
+    serialized_options=b'\202\265\030!An app session is being suspended',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='ResumeAppSession',
     full_name='Cloud.ResumeAppSession',
-    index=22,
+    index=24,
     containing_service=None,
     input_type=_CCLOUD_APPSESSIONRESUME_REQUEST,
     output_type=_CCLOUD_APPSESSIONRESUME_RESPONSE,
-    serialized_options=_b('\202\265\030\037An app session is being resumed'),
+    serialized_options=b'\202\265\030\037An app session is being resumed',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='SignalAppLaunchIntent',
     full_name='Cloud.SignalAppLaunchIntent',
-    index=23,
+    index=25,
     containing_service=None,
     input_type=_CCLOUD_APPLAUNCHINTENT_REQUEST,
     output_type=_CCLOUD_APPLAUNCHINTENT_RESPONSE,
-    serialized_options=_b('\202\265\030\037Client intends to launch an app'),
+    serialized_options=b'\202\265\030\037Client intends to launch an app',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='SignalAppExitSyncDone',
     full_name='Cloud.SignalAppExitSyncDone',
-    index=24,
+    index=26,
     containing_service=None,
     input_type=_CCLOUD_APPEXITSYNCDONE_NOTIFICATION,
     output_type=steammessages__unified__base__pb2._NORESPONSE,
-    serialized_options=_b('\202\265\0302Client is done trying to sync after a game session'),
+    serialized_options=b'\202\265\0302Client is done trying to sync after a game session',
+    create_key=_descriptor._internal_create_key,
+  ),
+  _descriptor.MethodDescriptor(
+    name='ClientGetAppQuotaUsage',
+    full_name='Cloud.ClientGetAppQuotaUsage',
+    index=27,
+    containing_service=None,
+    input_type=_CCLOUD_CLIENTGETAPPQUOTAUSAGE_REQUEST,
+    output_type=_CCLOUD_CLIENTGETAPPQUOTAUSAGE_RESPONSE,
+    serialized_options=b'\202\265\030+Client is requesting quota usage for an app',
+    create_key=_descriptor._internal_create_key,
   ),
 ])
 _sym_db.RegisterServiceDescriptor(_CLOUD)
@@ -3442,9 +3831,10 @@ _CLOUDCLIENT = _descriptor.ServiceDescriptor(
   full_name='CloudClient',
   file=DESCRIPTOR,
   index=1,
-  serialized_options=_b('\202\265\030+Client notifications for Steam cloud events\300\265\030\002'),
-  serialized_start=17025,
-  serialized_end=17218,
+  serialized_options=b'\202\265\030+Client notifications for Steam cloud events\300\265\030\002',
+  create_key=_descriptor._internal_create_key,
+  serialized_start=18199,
+  serialized_end=18543,
   methods=[
   _descriptor.MethodDescriptor(
     name='NotifyAppStateChange',
@@ -3453,7 +3843,18 @@ _CLOUDCLIENT = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CCLOUD_APPCLOUDSTATECHANGE_NOTIFICATION,
     output_type=steammessages__unified__base__pb2._NORESPONSE,
-    serialized_options=_b('\202\265\030*Cloud state for the given app has changed.'),
+    serialized_options=b'\202\265\030*Cloud state for the given app has changed.',
+    create_key=_descriptor._internal_create_key,
+  ),
+  _descriptor.MethodDescriptor(
+    name='ClientLogUploadRequest',
+    full_name='CloudClient.ClientLogUploadRequest',
+    index=1,
+    containing_service=None,
+    input_type=_CCLOUD_CLIENTLOGUPLOADREQUEST_NOTIFICATION,
+    output_type=steammessages__unified__base__pb2._NORESPONSE,
+    serialized_options=b'\202\265\030<Server is requesting log file uploads from the given client.',
+    create_key=_descriptor._internal_create_key,
   ),
 ])
 _sym_db.RegisterServiceDescriptor(_CLOUDCLIENT)
diff --git a/steam/protobufs/steammessages_contentsystem_pb2.py b/steam/protobufs/steammessages_contentsystem_pb2.py
index 35e952d..43c725d 100644
--- a/steam/protobufs/steammessages_contentsystem_pb2.py
+++ b/steam/protobufs/steammessages_contentsystem_pb2.py
@@ -1,9 +1,7 @@
 # -*- coding: utf-8 -*-
 # Generated by the protocol buffer compiler.  DO NOT EDIT!
 # source: steammessages_contentsystem.proto
-
-import sys
-_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1'))
+"""Generated protocol buffer code."""
 from google.protobuf import descriptor as _descriptor
 from google.protobuf import message as _message
 from google.protobuf import reflection as _reflection
@@ -15,6 +13,7 @@ from google.protobuf import service_reflection
 _sym_db = _symbol_database.Default()
 
 
+import steam.protobufs.steammessages_base_pb2 as steammessages__base__pb2
 import steam.protobufs.steammessages_unified_base_pb2 as steammessages__unified__base__pb2
 
 
@@ -22,10 +21,11 @@ DESCRIPTOR = _descriptor.FileDescriptor(
   name='steammessages_contentsystem.proto',
   package='',
   syntax='proto2',
-  serialized_options=_b('\220\001\001'),
-  serialized_pb=_b('\n!steammessages_contentsystem.proto\x1a steammessages_unified_base.proto\"\xb5\x02\n6CContentServerDirectory_GetServersForSteamPipe_Request\x12#\n\x07\x63\x65ll_id\x18\x01 \x01(\rB\x12\x82\xb5\x18\x0e\x63lient Cell ID\x12\x39\n\x0bmax_servers\x18\x02 \x01(\r:\x02\x32\x30\x42 \x82\xb5\x18\x1cmax servers in response list\x12*\n\x0bip_override\x18\x03 \x01(\tB\x15\x82\xb5\x18\x11\x63lient IP address\x12+\n\rlauncher_type\x18\x04 \x01(\x05:\x01\x30\x42\x11\x82\xb5\x18\rlauncher type\x12\x42\n\x0bipv6_public\x18\x05 \x01(\tB-\x82\xb5\x18)client public ipv6 address if it knows it\"\xdb\x02\n\"CContentServerDirectory_ServerInfo\x12\x0c\n\x04type\x18\x01 \x01(\t\x12\x11\n\tsource_id\x18\x02 \x01(\x05\x12\x0f\n\x07\x63\x65ll_id\x18\x03 \x01(\x05\x12\x0c\n\x04load\x18\x04 \x01(\x05\x12\x15\n\rweighted_load\x18\x05 \x01(\x02\x12\"\n\x1anum_entries_in_client_list\x18\x06 \x01(\x05\x12\x18\n\x10steam_china_only\x18\x07 \x01(\x08\x12\x0c\n\x04host\x18\x08 \x01(\t\x12\r\n\x05vhost\x18\t \x01(\t\x12\x14\n\x0cuse_as_proxy\x18\n \x01(\x08\x12#\n\x1bproxy_request_path_template\x18\x0b \x01(\t\x12\x15\n\rhttps_support\x18\x0c \x01(\t\x12\x17\n\x0f\x61llowed_app_ids\x18\r \x03(\r\x12\x18\n\x10preferred_server\x18\x0e \x01(\x08\"o\n7CContentServerDirectory_GetServersForSteamPipe_Response\x12\x34\n\x07servers\x18\x01 \x03(\x0b\x32#.CContentServerDirectory_ServerInfo\"\x89\x01\n1CContentServerDirectory_GetDepotPatchInfo_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x0f\n\x07\x64\x65potid\x18\x02 \x01(\r\x12\x19\n\x11source_manifestid\x18\x03 \x01(\x04\x12\x19\n\x11target_manifestid\x18\x04 \x01(\x04\"{\n2CContentServerDirectory_GetDepotPatchInfo_Response\x12\x14\n\x0cis_available\x18\x01 \x01(\x08\x12\x12\n\npatch_size\x18\x02 \x01(\x04\x12\x1b\n\x13patched_chunks_size\x18\x03 \x01(\x04\"P\n4CContentServerDirectory_GetClientUpdateHosts_Request\x12\x18\n\x10\x63\x61\x63hed_signature\x18\x01 \x01(\t\"w\n5CContentServerDirectory_GetClientUpdateHosts_Response\x12\x10\n\x08hosts_kv\x18\x01 \x01(\t\x12\x18\n\x10valid_until_time\x18\x02 \x01(\x04\x12\x12\n\nip_country\x18\x03 \x01(\t\"\xa1\x01\n6CContentServerDirectory_GetManifestRequestCode_Request\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x10\n\x08\x64\x65pot_id\x18\x02 \x01(\r\x12\x13\n\x0bmanifest_id\x18\x03 \x01(\x04\x12\x12\n\napp_branch\x18\x04 \x01(\t\x12\x1c\n\x14\x62ranch_password_hash\x18\x05 \x01(\t\"X\n7CContentServerDirectory_GetManifestRequestCode_Response\x12\x1d\n\x15manifest_request_code\x18\x01 \x01(\x04\x32\xe0\x04\n\x16\x43ontentServerDirectory\x12\x8b\x01\n\x16GetServersForSteamPipe\x12\x37.CContentServerDirectory_GetServersForSteamPipe_Request\x1a\x38.CContentServerDirectory_GetServersForSteamPipe_Response\x12|\n\x11GetDepotPatchInfo\x12\x32.CContentServerDirectory_GetDepotPatchInfo_Request\x1a\x33.CContentServerDirectory_GetDepotPatchInfo_Response\x12\x85\x01\n\x14GetClientUpdateHosts\x12\x35.CContentServerDirectory_GetClientUpdateHosts_Request\x1a\x36.CContentServerDirectory_GetClientUpdateHosts_Response\x12\x8b\x01\n\x16GetManifestRequestCode\x12\x37.CContentServerDirectory_GetManifestRequestCode_Request\x1a\x38.CContentServerDirectory_GetManifestRequestCode_Response\x1a$\x82\xb5\x18 Content Server and CDN directoryB\x03\x90\x01\x01')
+  serialized_options=b'\220\001\001',
+  create_key=_descriptor._internal_create_key,
+  serialized_pb=b'\n!steammessages_contentsystem.proto\x1a\x18steammessages_base.proto\x1a steammessages_unified_base.proto\"\xb5\x02\n6CContentServerDirectory_GetServersForSteamPipe_Request\x12#\n\x07\x63\x65ll_id\x18\x01 \x01(\rB\x12\x82\xb5\x18\x0e\x63lient Cell ID\x12\x39\n\x0bmax_servers\x18\x02 \x01(\r:\x02\x32\x30\x42 \x82\xb5\x18\x1cmax servers in response list\x12*\n\x0bip_override\x18\x03 \x01(\tB\x15\x82\xb5\x18\x11\x63lient IP address\x12+\n\rlauncher_type\x18\x04 \x01(\x05:\x01\x30\x42\x11\x82\xb5\x18\rlauncher type\x12\x42\n\x0bipv6_public\x18\x05 \x01(\tB-\x82\xb5\x18)client public ipv6 address if it knows it\"\xdb\x02\n\"CContentServerDirectory_ServerInfo\x12\x0c\n\x04type\x18\x01 \x01(\t\x12\x11\n\tsource_id\x18\x02 \x01(\x05\x12\x0f\n\x07\x63\x65ll_id\x18\x03 \x01(\x05\x12\x0c\n\x04load\x18\x04 \x01(\x05\x12\x15\n\rweighted_load\x18\x05 \x01(\x02\x12\"\n\x1anum_entries_in_client_list\x18\x06 \x01(\x05\x12\x18\n\x10steam_china_only\x18\x07 \x01(\x08\x12\x0c\n\x04host\x18\x08 \x01(\t\x12\r\n\x05vhost\x18\t \x01(\t\x12\x14\n\x0cuse_as_proxy\x18\n \x01(\x08\x12#\n\x1bproxy_request_path_template\x18\x0b \x01(\t\x12\x15\n\rhttps_support\x18\x0c \x01(\t\x12\x17\n\x0f\x61llowed_app_ids\x18\r \x03(\r\x12\x18\n\x10preferred_server\x18\x0e \x01(\x08\"o\n7CContentServerDirectory_GetServersForSteamPipe_Response\x12\x34\n\x07servers\x18\x01 \x03(\x0b\x32#.CContentServerDirectory_ServerInfo\"\x89\x01\n1CContentServerDirectory_GetDepotPatchInfo_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x0f\n\x07\x64\x65potid\x18\x02 \x01(\r\x12\x19\n\x11source_manifestid\x18\x03 \x01(\x04\x12\x19\n\x11target_manifestid\x18\x04 \x01(\x04\"{\n2CContentServerDirectory_GetDepotPatchInfo_Response\x12\x14\n\x0cis_available\x18\x01 \x01(\x08\x12\x12\n\npatch_size\x18\x02 \x01(\x04\x12\x1b\n\x13patched_chunks_size\x18\x03 \x01(\x04\"P\n4CContentServerDirectory_GetClientUpdateHosts_Request\x12\x18\n\x10\x63\x61\x63hed_signature\x18\x01 \x01(\t\"w\n5CContentServerDirectory_GetClientUpdateHosts_Response\x12\x10\n\x08hosts_kv\x18\x01 \x01(\t\x12\x18\n\x10valid_until_time\x18\x02 \x01(\x04\x12\x12\n\nip_country\x18\x03 \x01(\t\"\xa1\x01\n6CContentServerDirectory_GetManifestRequestCode_Request\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x10\n\x08\x64\x65pot_id\x18\x02 \x01(\r\x12\x13\n\x0bmanifest_id\x18\x03 \x01(\x04\x12\x12\n\napp_branch\x18\x04 \x01(\t\x12\x1c\n\x14\x62ranch_password_hash\x18\x05 \x01(\t\"X\n7CContentServerDirectory_GetManifestRequestCode_Response\x12\x1d\n\x15manifest_request_code\x18\x01 \x01(\x04\x32\xe0\x04\n\x16\x43ontentServerDirectory\x12\x8b\x01\n\x16GetServersForSteamPipe\x12\x37.CContentServerDirectory_GetServersForSteamPipe_Request\x1a\x38.CContentServerDirectory_GetServersForSteamPipe_Response\x12|\n\x11GetDepotPatchInfo\x12\x32.CContentServerDirectory_GetDepotPatchInfo_Request\x1a\x33.CContentServerDirectory_GetDepotPatchInfo_Response\x12\x85\x01\n\x14GetClientUpdateHosts\x12\x35.CContentServerDirectory_GetClientUpdateHosts_Request\x1a\x36.CContentServerDirectory_GetClientUpdateHosts_Response\x12\x8b\x01\n\x16GetManifestRequestCode\x12\x37.CContentServerDirectory_GetManifestRequestCode_Request\x1a\x38.CContentServerDirectory_GetManifestRequestCode_Response\x1a$\x82\xb5\x18 Content Server and CDN directoryB\x03\x90\x01\x01'
   ,
-  dependencies=[steammessages__unified__base__pb2.DESCRIPTOR,])
+  dependencies=[steammessages__base__pb2.DESCRIPTOR,steammessages__unified__base__pb2.DESCRIPTOR,])
 
 
 
@@ -36,6 +36,7 @@ _CCONTENTSERVERDIRECTORY_GETSERVERSFORSTEAMPIPE_REQUEST = _descriptor.Descriptor
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='cell_id', full_name='CContentServerDirectory_GetServersForSteamPipe_Request.cell_id', index=0,
@@ -43,35 +44,35 @@ _CCONTENTSERVERDIRECTORY_GETSERVERSFORSTEAMPIPE_REQUEST = _descriptor.Descriptor
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\016client Cell ID'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\016client Cell ID', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='max_servers', full_name='CContentServerDirectory_GetServersForSteamPipe_Request.max_servers', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=True, default_value=20,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\034max servers in response list'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\034max servers in response list', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='ip_override', full_name='CContentServerDirectory_GetServersForSteamPipe_Request.ip_override', index=2,
       number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\021client IP address'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\021client IP address', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='launcher_type', full_name='CContentServerDirectory_GetServersForSteamPipe_Request.launcher_type', index=3,
       number=4, type=5, cpp_type=1, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\rlauncher type'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\rlauncher type', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='ipv6_public', full_name='CContentServerDirectory_GetServersForSteamPipe_Request.ipv6_public', index=4,
       number=5, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030)client public ipv6 address if it knows it'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030)client public ipv6 address if it knows it', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -84,8 +85,8 @@ _CCONTENTSERVERDIRECTORY_GETSERVERSFORSTEAMPIPE_REQUEST = _descriptor.Descriptor
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=72,
-  serialized_end=381,
+  serialized_start=98,
+  serialized_end=407,
 )
 
 
@@ -95,105 +96,106 @@ _CCONTENTSERVERDIRECTORY_SERVERINFO = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='type', full_name='CContentServerDirectory_ServerInfo.type', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='source_id', full_name='CContentServerDirectory_ServerInfo.source_id', index=1,
       number=2, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='cell_id', full_name='CContentServerDirectory_ServerInfo.cell_id', index=2,
       number=3, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='load', full_name='CContentServerDirectory_ServerInfo.load', index=3,
       number=4, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='weighted_load', full_name='CContentServerDirectory_ServerInfo.weighted_load', index=4,
       number=5, type=2, cpp_type=6, label=1,
       has_default_value=False, default_value=float(0),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='num_entries_in_client_list', full_name='CContentServerDirectory_ServerInfo.num_entries_in_client_list', index=5,
       number=6, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steam_china_only', full_name='CContentServerDirectory_ServerInfo.steam_china_only', index=6,
       number=7, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='host', full_name='CContentServerDirectory_ServerInfo.host', index=7,
       number=8, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='vhost', full_name='CContentServerDirectory_ServerInfo.vhost', index=8,
       number=9, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='use_as_proxy', full_name='CContentServerDirectory_ServerInfo.use_as_proxy', index=9,
       number=10, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='proxy_request_path_template', full_name='CContentServerDirectory_ServerInfo.proxy_request_path_template', index=10,
       number=11, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='https_support', full_name='CContentServerDirectory_ServerInfo.https_support', index=11,
       number=12, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='allowed_app_ids', full_name='CContentServerDirectory_ServerInfo.allowed_app_ids', index=12,
       number=13, type=13, cpp_type=3, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='preferred_server', full_name='CContentServerDirectory_ServerInfo.preferred_server', index=13,
       number=14, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -206,8 +208,8 @@ _CCONTENTSERVERDIRECTORY_SERVERINFO = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=384,
-  serialized_end=731,
+  serialized_start=410,
+  serialized_end=757,
 )
 
 
@@ -217,6 +219,7 @@ _CCONTENTSERVERDIRECTORY_GETSERVERSFORSTEAMPIPE_RESPONSE = _descriptor.Descripto
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='servers', full_name='CContentServerDirectory_GetServersForSteamPipe_Response.servers', index=0,
@@ -224,7 +227,7 @@ _CCONTENTSERVERDIRECTORY_GETSERVERSFORSTEAMPIPE_RESPONSE = _descriptor.Descripto
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -237,8 +240,8 @@ _CCONTENTSERVERDIRECTORY_GETSERVERSFORSTEAMPIPE_RESPONSE = _descriptor.Descripto
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=733,
-  serialized_end=844,
+  serialized_start=759,
+  serialized_end=870,
 )
 
 
@@ -248,6 +251,7 @@ _CCONTENTSERVERDIRECTORY_GETDEPOTPATCHINFO_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CContentServerDirectory_GetDepotPatchInfo_Request.appid', index=0,
@@ -255,28 +259,28 @@ _CCONTENTSERVERDIRECTORY_GETDEPOTPATCHINFO_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='depotid', full_name='CContentServerDirectory_GetDepotPatchInfo_Request.depotid', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='source_manifestid', full_name='CContentServerDirectory_GetDepotPatchInfo_Request.source_manifestid', index=2,
       number=3, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='target_manifestid', full_name='CContentServerDirectory_GetDepotPatchInfo_Request.target_manifestid', index=3,
       number=4, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -289,8 +293,8 @@ _CCONTENTSERVERDIRECTORY_GETDEPOTPATCHINFO_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=847,
-  serialized_end=984,
+  serialized_start=873,
+  serialized_end=1010,
 )
 
 
@@ -300,6 +304,7 @@ _CCONTENTSERVERDIRECTORY_GETDEPOTPATCHINFO_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='is_available', full_name='CContentServerDirectory_GetDepotPatchInfo_Response.is_available', index=0,
@@ -307,21 +312,21 @@ _CCONTENTSERVERDIRECTORY_GETDEPOTPATCHINFO_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='patch_size', full_name='CContentServerDirectory_GetDepotPatchInfo_Response.patch_size', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='patched_chunks_size', full_name='CContentServerDirectory_GetDepotPatchInfo_Response.patched_chunks_size', index=2,
       number=3, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -334,8 +339,8 @@ _CCONTENTSERVERDIRECTORY_GETDEPOTPATCHINFO_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=986,
-  serialized_end=1109,
+  serialized_start=1012,
+  serialized_end=1135,
 )
 
 
@@ -345,14 +350,15 @@ _CCONTENTSERVERDIRECTORY_GETCLIENTUPDATEHOSTS_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='cached_signature', full_name='CContentServerDirectory_GetClientUpdateHosts_Request.cached_signature', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -365,8 +371,8 @@ _CCONTENTSERVERDIRECTORY_GETCLIENTUPDATEHOSTS_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1111,
-  serialized_end=1191,
+  serialized_start=1137,
+  serialized_end=1217,
 )
 
 
@@ -376,28 +382,29 @@ _CCONTENTSERVERDIRECTORY_GETCLIENTUPDATEHOSTS_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='hosts_kv', full_name='CContentServerDirectory_GetClientUpdateHosts_Response.hosts_kv', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='valid_until_time', full_name='CContentServerDirectory_GetClientUpdateHosts_Response.valid_until_time', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='ip_country', full_name='CContentServerDirectory_GetClientUpdateHosts_Response.ip_country', index=2,
       number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -410,8 +417,8 @@ _CCONTENTSERVERDIRECTORY_GETCLIENTUPDATEHOSTS_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1193,
-  serialized_end=1312,
+  serialized_start=1219,
+  serialized_end=1338,
 )
 
 
@@ -421,6 +428,7 @@ _CCONTENTSERVERDIRECTORY_GETMANIFESTREQUESTCODE_REQUEST = _descriptor.Descriptor
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CContentServerDirectory_GetManifestRequestCode_Request.app_id', index=0,
@@ -428,35 +436,35 @@ _CCONTENTSERVERDIRECTORY_GETMANIFESTREQUESTCODE_REQUEST = _descriptor.Descriptor
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='depot_id', full_name='CContentServerDirectory_GetManifestRequestCode_Request.depot_id', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='manifest_id', full_name='CContentServerDirectory_GetManifestRequestCode_Request.manifest_id', index=2,
       number=3, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='app_branch', full_name='CContentServerDirectory_GetManifestRequestCode_Request.app_branch', index=3,
       number=4, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='branch_password_hash', full_name='CContentServerDirectory_GetManifestRequestCode_Request.branch_password_hash', index=4,
       number=5, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -469,8 +477,8 @@ _CCONTENTSERVERDIRECTORY_GETMANIFESTREQUESTCODE_REQUEST = _descriptor.Descriptor
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1315,
-  serialized_end=1476,
+  serialized_start=1341,
+  serialized_end=1502,
 )
 
 
@@ -480,6 +488,7 @@ _CCONTENTSERVERDIRECTORY_GETMANIFESTREQUESTCODE_RESPONSE = _descriptor.Descripto
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='manifest_request_code', full_name='CContentServerDirectory_GetManifestRequestCode_Response.manifest_request_code', index=0,
@@ -487,7 +496,7 @@ _CCONTENTSERVERDIRECTORY_GETMANIFESTREQUESTCODE_RESPONSE = _descriptor.Descripto
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -500,8 +509,8 @@ _CCONTENTSERVERDIRECTORY_GETMANIFESTREQUESTCODE_RESPONSE = _descriptor.Descripto
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1478,
-  serialized_end=1566,
+  serialized_start=1504,
+  serialized_end=1592,
 )
 
 _CCONTENTSERVERDIRECTORY_GETSERVERSFORSTEAMPIPE_RESPONSE.fields_by_name['servers'].message_type = _CCONTENTSERVERDIRECTORY_SERVERINFO
@@ -516,67 +525,67 @@ DESCRIPTOR.message_types_by_name['CContentServerDirectory_GetManifestRequestCode
 DESCRIPTOR.message_types_by_name['CContentServerDirectory_GetManifestRequestCode_Response'] = _CCONTENTSERVERDIRECTORY_GETMANIFESTREQUESTCODE_RESPONSE
 _sym_db.RegisterFileDescriptor(DESCRIPTOR)
 
-CContentServerDirectory_GetServersForSteamPipe_Request = _reflection.GeneratedProtocolMessageType('CContentServerDirectory_GetServersForSteamPipe_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCONTENTSERVERDIRECTORY_GETSERVERSFORSTEAMPIPE_REQUEST,
-  __module__ = 'steammessages_contentsystem_pb2'
+CContentServerDirectory_GetServersForSteamPipe_Request = _reflection.GeneratedProtocolMessageType('CContentServerDirectory_GetServersForSteamPipe_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCONTENTSERVERDIRECTORY_GETSERVERSFORSTEAMPIPE_REQUEST,
+  '__module__' : 'steammessages_contentsystem_pb2'
   # @@protoc_insertion_point(class_scope:CContentServerDirectory_GetServersForSteamPipe_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CContentServerDirectory_GetServersForSteamPipe_Request)
 
-CContentServerDirectory_ServerInfo = _reflection.GeneratedProtocolMessageType('CContentServerDirectory_ServerInfo', (_message.Message,), dict(
-  DESCRIPTOR = _CCONTENTSERVERDIRECTORY_SERVERINFO,
-  __module__ = 'steammessages_contentsystem_pb2'
+CContentServerDirectory_ServerInfo = _reflection.GeneratedProtocolMessageType('CContentServerDirectory_ServerInfo', (_message.Message,), {
+  'DESCRIPTOR' : _CCONTENTSERVERDIRECTORY_SERVERINFO,
+  '__module__' : 'steammessages_contentsystem_pb2'
   # @@protoc_insertion_point(class_scope:CContentServerDirectory_ServerInfo)
-  ))
+  })
 _sym_db.RegisterMessage(CContentServerDirectory_ServerInfo)
 
-CContentServerDirectory_GetServersForSteamPipe_Response = _reflection.GeneratedProtocolMessageType('CContentServerDirectory_GetServersForSteamPipe_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCONTENTSERVERDIRECTORY_GETSERVERSFORSTEAMPIPE_RESPONSE,
-  __module__ = 'steammessages_contentsystem_pb2'
+CContentServerDirectory_GetServersForSteamPipe_Response = _reflection.GeneratedProtocolMessageType('CContentServerDirectory_GetServersForSteamPipe_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCONTENTSERVERDIRECTORY_GETSERVERSFORSTEAMPIPE_RESPONSE,
+  '__module__' : 'steammessages_contentsystem_pb2'
   # @@protoc_insertion_point(class_scope:CContentServerDirectory_GetServersForSteamPipe_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CContentServerDirectory_GetServersForSteamPipe_Response)
 
-CContentServerDirectory_GetDepotPatchInfo_Request = _reflection.GeneratedProtocolMessageType('CContentServerDirectory_GetDepotPatchInfo_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCONTENTSERVERDIRECTORY_GETDEPOTPATCHINFO_REQUEST,
-  __module__ = 'steammessages_contentsystem_pb2'
+CContentServerDirectory_GetDepotPatchInfo_Request = _reflection.GeneratedProtocolMessageType('CContentServerDirectory_GetDepotPatchInfo_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCONTENTSERVERDIRECTORY_GETDEPOTPATCHINFO_REQUEST,
+  '__module__' : 'steammessages_contentsystem_pb2'
   # @@protoc_insertion_point(class_scope:CContentServerDirectory_GetDepotPatchInfo_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CContentServerDirectory_GetDepotPatchInfo_Request)
 
-CContentServerDirectory_GetDepotPatchInfo_Response = _reflection.GeneratedProtocolMessageType('CContentServerDirectory_GetDepotPatchInfo_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCONTENTSERVERDIRECTORY_GETDEPOTPATCHINFO_RESPONSE,
-  __module__ = 'steammessages_contentsystem_pb2'
+CContentServerDirectory_GetDepotPatchInfo_Response = _reflection.GeneratedProtocolMessageType('CContentServerDirectory_GetDepotPatchInfo_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCONTENTSERVERDIRECTORY_GETDEPOTPATCHINFO_RESPONSE,
+  '__module__' : 'steammessages_contentsystem_pb2'
   # @@protoc_insertion_point(class_scope:CContentServerDirectory_GetDepotPatchInfo_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CContentServerDirectory_GetDepotPatchInfo_Response)
 
-CContentServerDirectory_GetClientUpdateHosts_Request = _reflection.GeneratedProtocolMessageType('CContentServerDirectory_GetClientUpdateHosts_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCONTENTSERVERDIRECTORY_GETCLIENTUPDATEHOSTS_REQUEST,
-  __module__ = 'steammessages_contentsystem_pb2'
+CContentServerDirectory_GetClientUpdateHosts_Request = _reflection.GeneratedProtocolMessageType('CContentServerDirectory_GetClientUpdateHosts_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCONTENTSERVERDIRECTORY_GETCLIENTUPDATEHOSTS_REQUEST,
+  '__module__' : 'steammessages_contentsystem_pb2'
   # @@protoc_insertion_point(class_scope:CContentServerDirectory_GetClientUpdateHosts_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CContentServerDirectory_GetClientUpdateHosts_Request)
 
-CContentServerDirectory_GetClientUpdateHosts_Response = _reflection.GeneratedProtocolMessageType('CContentServerDirectory_GetClientUpdateHosts_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCONTENTSERVERDIRECTORY_GETCLIENTUPDATEHOSTS_RESPONSE,
-  __module__ = 'steammessages_contentsystem_pb2'
+CContentServerDirectory_GetClientUpdateHosts_Response = _reflection.GeneratedProtocolMessageType('CContentServerDirectory_GetClientUpdateHosts_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCONTENTSERVERDIRECTORY_GETCLIENTUPDATEHOSTS_RESPONSE,
+  '__module__' : 'steammessages_contentsystem_pb2'
   # @@protoc_insertion_point(class_scope:CContentServerDirectory_GetClientUpdateHosts_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CContentServerDirectory_GetClientUpdateHosts_Response)
 
-CContentServerDirectory_GetManifestRequestCode_Request = _reflection.GeneratedProtocolMessageType('CContentServerDirectory_GetManifestRequestCode_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCONTENTSERVERDIRECTORY_GETMANIFESTREQUESTCODE_REQUEST,
-  __module__ = 'steammessages_contentsystem_pb2'
+CContentServerDirectory_GetManifestRequestCode_Request = _reflection.GeneratedProtocolMessageType('CContentServerDirectory_GetManifestRequestCode_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCONTENTSERVERDIRECTORY_GETMANIFESTREQUESTCODE_REQUEST,
+  '__module__' : 'steammessages_contentsystem_pb2'
   # @@protoc_insertion_point(class_scope:CContentServerDirectory_GetManifestRequestCode_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CContentServerDirectory_GetManifestRequestCode_Request)
 
-CContentServerDirectory_GetManifestRequestCode_Response = _reflection.GeneratedProtocolMessageType('CContentServerDirectory_GetManifestRequestCode_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCONTENTSERVERDIRECTORY_GETMANIFESTREQUESTCODE_RESPONSE,
-  __module__ = 'steammessages_contentsystem_pb2'
+CContentServerDirectory_GetManifestRequestCode_Response = _reflection.GeneratedProtocolMessageType('CContentServerDirectory_GetManifestRequestCode_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCONTENTSERVERDIRECTORY_GETMANIFESTREQUESTCODE_RESPONSE,
+  '__module__' : 'steammessages_contentsystem_pb2'
   # @@protoc_insertion_point(class_scope:CContentServerDirectory_GetManifestRequestCode_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CContentServerDirectory_GetManifestRequestCode_Response)
 
 
@@ -592,9 +601,10 @@ _CONTENTSERVERDIRECTORY = _descriptor.ServiceDescriptor(
   full_name='ContentServerDirectory',
   file=DESCRIPTOR,
   index=0,
-  serialized_options=_b('\202\265\030 Content Server and CDN directory'),
-  serialized_start=1569,
-  serialized_end=2177,
+  serialized_options=b'\202\265\030 Content Server and CDN directory',
+  create_key=_descriptor._internal_create_key,
+  serialized_start=1595,
+  serialized_end=2203,
   methods=[
   _descriptor.MethodDescriptor(
     name='GetServersForSteamPipe',
@@ -604,6 +614,7 @@ _CONTENTSERVERDIRECTORY = _descriptor.ServiceDescriptor(
     input_type=_CCONTENTSERVERDIRECTORY_GETSERVERSFORSTEAMPIPE_REQUEST,
     output_type=_CCONTENTSERVERDIRECTORY_GETSERVERSFORSTEAMPIPE_RESPONSE,
     serialized_options=None,
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetDepotPatchInfo',
@@ -613,6 +624,7 @@ _CONTENTSERVERDIRECTORY = _descriptor.ServiceDescriptor(
     input_type=_CCONTENTSERVERDIRECTORY_GETDEPOTPATCHINFO_REQUEST,
     output_type=_CCONTENTSERVERDIRECTORY_GETDEPOTPATCHINFO_RESPONSE,
     serialized_options=None,
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetClientUpdateHosts',
@@ -622,6 +634,7 @@ _CONTENTSERVERDIRECTORY = _descriptor.ServiceDescriptor(
     input_type=_CCONTENTSERVERDIRECTORY_GETCLIENTUPDATEHOSTS_REQUEST,
     output_type=_CCONTENTSERVERDIRECTORY_GETCLIENTUPDATEHOSTS_RESPONSE,
     serialized_options=None,
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetManifestRequestCode',
@@ -631,6 +644,7 @@ _CONTENTSERVERDIRECTORY = _descriptor.ServiceDescriptor(
     input_type=_CCONTENTSERVERDIRECTORY_GETMANIFESTREQUESTCODE_REQUEST,
     output_type=_CCONTENTSERVERDIRECTORY_GETMANIFESTREQUESTCODE_RESPONSE,
     serialized_options=None,
+    create_key=_descriptor._internal_create_key,
   ),
 ])
 _sym_db.RegisterServiceDescriptor(_CONTENTSERVERDIRECTORY)
diff --git a/steam/protobufs/steammessages_credentials_pb2.py b/steam/protobufs/steammessages_credentials_pb2.py
index fc3c13a..0c7f092 100644
--- a/steam/protobufs/steammessages_credentials_pb2.py
+++ b/steam/protobufs/steammessages_credentials_pb2.py
@@ -1,9 +1,7 @@
 # -*- coding: utf-8 -*-
 # Generated by the protocol buffer compiler.  DO NOT EDIT!
 # source: steammessages_credentials.proto
-
-import sys
-_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1'))
+"""Generated protocol buffer code."""
 from google.protobuf import descriptor as _descriptor
 from google.protobuf import message as _message
 from google.protobuf import reflection as _reflection
@@ -15,18 +13,19 @@ from google.protobuf import service_reflection
 _sym_db = _symbol_database.Default()
 
 
-import steam.protobufs.steammessages_unified_base_pb2 as steammessages__unified__base__pb2
 import steam.protobufs.steammessages_base_pb2 as steammessages__base__pb2
+import steam.protobufs.steammessages_unified_base_pb2 as steammessages__unified__base__pb2
 
 
 DESCRIPTOR = _descriptor.FileDescriptor(
   name='steammessages_credentials.proto',
   package='',
   syntax='proto2',
-  serialized_options=_b('\220\001\001'),
-  serialized_pb=_b('\n\x1fsteammessages_credentials.proto\x1a steammessages_unified_base.proto\x1a\x18steammessages_base.proto\"q\n*CCredentials_TestAvailablePassword_Request\x12\x10\n\x08password\x18\x01 \x01(\t\x12\x1b\n\x13sha_digest_password\x18\x02 \x01(\x0c\x12\x14\n\x0c\x61\x63\x63ount_name\x18\x03 \x01(\t\"?\n+CCredentials_TestAvailablePassword_Response\x12\x10\n\x08is_valid\x18\x03 \x01(\x08\"\x9e\x03\n)CCredentials_GetSteamGuardDetails_Request\x12u\n\x1binclude_new_authentications\x18\x01 \x01(\x08:\x04trueBJ\x82\xb5\x18\x46Whether or not to populate the newauthentication field in the response\x12\x95\x01\n\twebcookie\x18\x02 \x01(\tB\x81\x01\x82\xb5\x18}The user\'s Steam Guard machine auth cookie. If present, it\'ll be used to get the user\'s machine ID instead of the AM session.\x12 \n\x18timestamp_minimum_wanted\x18\x03 \x01(\x07\x12\x1c\n\x14\x64\x65precated_ipaddress\x18\x04 \x01(\x05\x12\"\n\nip_address\x18\x05 \x01(\x0b\x32\x0e.CMsgIPAddress\"\xb3\t\n*CCredentials_GetSteamGuardDetails_Response\x12\x1d\n\x15is_steamguard_enabled\x18\x01 \x01(\x08\x12$\n\x1ctimestamp_steamguard_enabled\x18\x02 \x01(\x07\x12\x63\n\x1c\x64\x65precated_newauthentication\x18\x03 \x03(\x0b\x32=.CCredentials_GetSteamGuardDetails_Response.NewAuthentication\x12*\n\"deprecated_machine_name_userchosen\x18\x04 \x01(\t\x12\x37\n/deprecated_timestamp_machine_steamguard_enabled\x18\x05 \x01(\x07\x12\x43\n;deprecated_authentication_exists_from_geoloc_before_mintime\x18\x06 \x01(\x08\x12\x1d\n\x15\x64\x65precated_machine_id\x18\x07 \x01(\x04\x12M\n\x0csession_data\x18\x08 \x03(\x0b\x32\x37.CCredentials_GetSteamGuardDetails_Response.SessionData\x12\x1c\n\x14is_twofactor_enabled\x18\t \x01(\x08\x12#\n\x1btimestamp_twofactor_enabled\x18\n \x01(\x07\x12\x19\n\x11is_phone_verified\x18\x0b \x01(\x08\x1a\xf2\x01\n\x11NewAuthentication\x12$\n\x1ctimestamp_steamguard_enabled\x18\x01 \x01(\x07\x12\x15\n\ris_web_cookie\x18\x02 \x01(\x08\x12\x1c\n\x14\x64\x65precated_ipaddress\x18\x03 \x01(\x05\x12\x13\n\x0bgeoloc_info\x18\x04 \x01(\t\x12\x15\n\ris_remembered\x18\x05 \x01(\x08\x12\"\n\x1amachine_name_user_supplied\x18\x06 \x01(\t\x12\x0e\n\x06status\x18\x07 \x01(\x05\x12\"\n\nip_address\x18\x08 \x01(\x0b\x32\x0e.CMsgIPAddress\x1a\xef\x02\n\x0bSessionData\x12\x12\n\nmachine_id\x18\x01 \x01(\x04\x12\x1f\n\x17machine_name_userchosen\x18\x02 \x01(\t\x12,\n$timestamp_machine_steamguard_enabled\x18\x03 \x01(\x07\x12\x38\n0authentication_exists_from_geoloc_before_mintime\x18\x04 \x01(\x08\x12X\n\x11newauthentication\x18\x05 \x03(\x0b\x32=.CCredentials_GetSteamGuardDetails_Response.NewAuthentication\x12\x39\n1authentication_exists_from_same_ip_before_mintime\x18\x06 \x01(\x08\x12\x13\n\x0bpublic_ipv4\x18\x07 \x01(\r\x12\x19\n\x11public_ip_address\x18\x08 \x01(\t\"d\n1CCredentials_NewMachineNotificationDialog_Request\x12\x13\n\x0bis_approved\x18\x01 \x01(\x08\x12\x1a\n\x12is_wizard_complete\x18\x02 \x01(\x08\"4\n2CCredentials_NewMachineNotificationDialog_Response\";\n)CCredentials_ValidateEmailAddress_Request\x12\x0e\n\x06stoken\x18\x01 \x01(\t\"C\n*CCredentials_ValidateEmailAddress_Response\x12\x15\n\rwas_validated\x18\x01 \x01(\x08\"_\n-CCredentials_SteamGuardPhishingReport_Request\x12\x14\n\x0cparam_string\x18\x01 \x01(\t\x12\x18\n\x10ipaddress_actual\x18\x02 \x01(\t\"\xb3\x02\n.CCredentials_SteamGuardPhishingReport_Response\x12\x1e\n\x16ipaddress_loginattempt\x18\x01 \x01(\t\x12 \n\x18\x63ountryname_loginattempt\x18\x02 \x01(\t\x12\x1e\n\x16statename_loginattempt\x18\x03 \x01(\t\x12\x1d\n\x15\x63ityname_loginattempt\x18\x04 \x01(\t\x12\x18\n\x10ipaddress_actual\x18\x05 \x01(\t\x12\x1a\n\x12\x63ountryname_actual\x18\x06 \x01(\t\x12\x18\n\x10statename_actual\x18\x07 \x01(\t\x12\x17\n\x0f\x63ityname_actual\x18\x08 \x01(\t\x12\x17\n\x0fsteamguard_code\x18\t \x01(\t\"J\n-CCredentials_LastCredentialChangeTime_Request\x12\x19\n\x11user_changes_only\x18\x01 \x01(\x08\"\xa4\x01\n.CCredentials_LastCredentialChangeTime_Response\x12&\n\x1etimestamp_last_password_change\x18\x01 \x01(\x07\x12#\n\x1btimestamp_last_email_change\x18\x02 \x01(\x07\x12%\n\x1dtimestamp_last_password_reset\x18\x03 \x01(\x07\"+\n)CCredentials_GetAccountAuthSecret_Request\"O\n*CCredentials_GetAccountAuthSecret_Response\x12\x11\n\tsecret_id\x18\x01 \x01(\x05\x12\x0e\n\x06secret\x18\x02 \x01(\x0c\x32\xed\x08\n\x0b\x43redentials\x12\x8e\x01\n\x15TestAvailablePassword\x12+.CCredentials_TestAvailablePassword_Request\x1a,.CCredentials_TestAvailablePassword_Response\"\x1a\x82\xb5\x18\x16TestAvailablePassword.\x12\x8a\x01\n\x14GetSteamGuardDetails\x12*.CCredentials_GetSteamGuardDetails_Request\x1a+.CCredentials_GetSteamGuardDetails_Response\"\x19\x82\xb5\x18\x15GetSteamGuardDetails.\x12\xb6\x01\n\"NewMachineNotificationDialogResult\x12\x32.CCredentials_NewMachineNotificationDialog_Request\x1a\x33.CCredentials_NewMachineNotificationDialog_Response\"\'\x82\xb5\x18#NewMachineNotificationDialogResult.\x12\x9c\x01\n\x14ValidateEmailAddress\x12*.CCredentials_ValidateEmailAddress_Request\x1a+.CCredentials_ValidateEmailAddress_Response\"+\x82\xb5\x18\'Validate an email address given a token\x12\x99\x01\n\x18SteamGuardPhishingReport\x12..CCredentials_SteamGuardPhishingReport_Request\x1a/.CCredentials_SteamGuardPhishingReport_Response\"\x1c\x82\xb5\x18\x18SteamGuardPhishingReport\x12\xa6\x01\n\x1eGetCredentialChangeTimeDetails\x12..CCredentials_LastCredentialChangeTime_Request\x1a/.CCredentials_LastCredentialChangeTime_Response\"#\x82\xb5\x18\x1fGetCredentialChangeTimeDetails.\x12\x89\x01\n\x14GetAccountAuthSecret\x12*.CCredentials_GetAccountAuthSecret_Request\x1a+.CCredentials_GetAccountAuthSecret_Response\"\x18\x82\xb5\x18\x14GetAccountAuthSecret\x1a\x17\x82\xb5\x18\x13\x43redentials serviceB\x03\x90\x01\x01')
+  serialized_options=b'\220\001\001',
+  create_key=_descriptor._internal_create_key,
+  serialized_pb=b'\n\x1fsteammessages_credentials.proto\x1a\x18steammessages_base.proto\x1a steammessages_unified_base.proto\"q\n*CCredentials_TestAvailablePassword_Request\x12\x10\n\x08password\x18\x01 \x01(\t\x12\x1b\n\x13sha_digest_password\x18\x02 \x01(\x0c\x12\x14\n\x0c\x61\x63\x63ount_name\x18\x03 \x01(\t\"?\n+CCredentials_TestAvailablePassword_Response\x12\x10\n\x08is_valid\x18\x03 \x01(\x08\"\x9e\x03\n)CCredentials_GetSteamGuardDetails_Request\x12u\n\x1binclude_new_authentications\x18\x01 \x01(\x08:\x04trueBJ\x82\xb5\x18\x46Whether or not to populate the newauthentication field in the response\x12\x95\x01\n\twebcookie\x18\x02 \x01(\tB\x81\x01\x82\xb5\x18}The user\'s Steam Guard machine auth cookie. If present, it\'ll be used to get the user\'s machine ID instead of the AM session.\x12 \n\x18timestamp_minimum_wanted\x18\x03 \x01(\x07\x12\x1c\n\x14\x64\x65precated_ipaddress\x18\x04 \x01(\x05\x12\"\n\nip_address\x18\x05 \x01(\x0b\x32\x0e.CMsgIPAddress\"\xb3\t\n*CCredentials_GetSteamGuardDetails_Response\x12\x1d\n\x15is_steamguard_enabled\x18\x01 \x01(\x08\x12$\n\x1ctimestamp_steamguard_enabled\x18\x02 \x01(\x07\x12\x63\n\x1c\x64\x65precated_newauthentication\x18\x03 \x03(\x0b\x32=.CCredentials_GetSteamGuardDetails_Response.NewAuthentication\x12*\n\"deprecated_machine_name_userchosen\x18\x04 \x01(\t\x12\x37\n/deprecated_timestamp_machine_steamguard_enabled\x18\x05 \x01(\x07\x12\x43\n;deprecated_authentication_exists_from_geoloc_before_mintime\x18\x06 \x01(\x08\x12\x1d\n\x15\x64\x65precated_machine_id\x18\x07 \x01(\x04\x12M\n\x0csession_data\x18\x08 \x03(\x0b\x32\x37.CCredentials_GetSteamGuardDetails_Response.SessionData\x12\x1c\n\x14is_twofactor_enabled\x18\t \x01(\x08\x12#\n\x1btimestamp_twofactor_enabled\x18\n \x01(\x07\x12\x19\n\x11is_phone_verified\x18\x0b \x01(\x08\x1a\xf2\x01\n\x11NewAuthentication\x12$\n\x1ctimestamp_steamguard_enabled\x18\x01 \x01(\x07\x12\x15\n\ris_web_cookie\x18\x02 \x01(\x08\x12\x1c\n\x14\x64\x65precated_ipaddress\x18\x03 \x01(\x05\x12\x13\n\x0bgeoloc_info\x18\x04 \x01(\t\x12\x15\n\ris_remembered\x18\x05 \x01(\x08\x12\"\n\x1amachine_name_user_supplied\x18\x06 \x01(\t\x12\x0e\n\x06status\x18\x07 \x01(\x05\x12\"\n\nip_address\x18\x08 \x01(\x0b\x32\x0e.CMsgIPAddress\x1a\xef\x02\n\x0bSessionData\x12\x12\n\nmachine_id\x18\x01 \x01(\x04\x12\x1f\n\x17machine_name_userchosen\x18\x02 \x01(\t\x12,\n$timestamp_machine_steamguard_enabled\x18\x03 \x01(\x07\x12\x38\n0authentication_exists_from_geoloc_before_mintime\x18\x04 \x01(\x08\x12X\n\x11newauthentication\x18\x05 \x03(\x0b\x32=.CCredentials_GetSteamGuardDetails_Response.NewAuthentication\x12\x39\n1authentication_exists_from_same_ip_before_mintime\x18\x06 \x01(\x08\x12\x13\n\x0bpublic_ipv4\x18\x07 \x01(\r\x12\x19\n\x11public_ip_address\x18\x08 \x01(\t\"d\n1CCredentials_NewMachineNotificationDialog_Request\x12\x13\n\x0bis_approved\x18\x01 \x01(\x08\x12\x1a\n\x12is_wizard_complete\x18\x02 \x01(\x08\"4\n2CCredentials_NewMachineNotificationDialog_Response\";\n)CCredentials_ValidateEmailAddress_Request\x12\x0e\n\x06stoken\x18\x01 \x01(\t\"C\n*CCredentials_ValidateEmailAddress_Response\x12\x15\n\rwas_validated\x18\x01 \x01(\x08\"_\n-CCredentials_SteamGuardPhishingReport_Request\x12\x14\n\x0cparam_string\x18\x01 \x01(\t\x12\x18\n\x10ipaddress_actual\x18\x02 \x01(\t\"\xb3\x02\n.CCredentials_SteamGuardPhishingReport_Response\x12\x1e\n\x16ipaddress_loginattempt\x18\x01 \x01(\t\x12 \n\x18\x63ountryname_loginattempt\x18\x02 \x01(\t\x12\x1e\n\x16statename_loginattempt\x18\x03 \x01(\t\x12\x1d\n\x15\x63ityname_loginattempt\x18\x04 \x01(\t\x12\x18\n\x10ipaddress_actual\x18\x05 \x01(\t\x12\x1a\n\x12\x63ountryname_actual\x18\x06 \x01(\t\x12\x18\n\x10statename_actual\x18\x07 \x01(\t\x12\x17\n\x0f\x63ityname_actual\x18\x08 \x01(\t\x12\x17\n\x0fsteamguard_code\x18\t \x01(\t\"J\n-CCredentials_LastCredentialChangeTime_Request\x12\x19\n\x11user_changes_only\x18\x01 \x01(\x08\"\xa4\x01\n.CCredentials_LastCredentialChangeTime_Response\x12&\n\x1etimestamp_last_password_change\x18\x01 \x01(\x07\x12#\n\x1btimestamp_last_email_change\x18\x02 \x01(\x07\x12%\n\x1dtimestamp_last_password_reset\x18\x03 \x01(\x07\"+\n)CCredentials_GetAccountAuthSecret_Request\"O\n*CCredentials_GetAccountAuthSecret_Response\x12\x11\n\tsecret_id\x18\x01 \x01(\x05\x12\x0e\n\x06secret\x18\x02 \x01(\x0c\x32\xed\x08\n\x0b\x43redentials\x12\x8e\x01\n\x15TestAvailablePassword\x12+.CCredentials_TestAvailablePassword_Request\x1a,.CCredentials_TestAvailablePassword_Response\"\x1a\x82\xb5\x18\x16TestAvailablePassword.\x12\x8a\x01\n\x14GetSteamGuardDetails\x12*.CCredentials_GetSteamGuardDetails_Request\x1a+.CCredentials_GetSteamGuardDetails_Response\"\x19\x82\xb5\x18\x15GetSteamGuardDetails.\x12\xb6\x01\n\"NewMachineNotificationDialogResult\x12\x32.CCredentials_NewMachineNotificationDialog_Request\x1a\x33.CCredentials_NewMachineNotificationDialog_Response\"\'\x82\xb5\x18#NewMachineNotificationDialogResult.\x12\x9c\x01\n\x14ValidateEmailAddress\x12*.CCredentials_ValidateEmailAddress_Request\x1a+.CCredentials_ValidateEmailAddress_Response\"+\x82\xb5\x18\'Validate an email address given a token\x12\x99\x01\n\x18SteamGuardPhishingReport\x12..CCredentials_SteamGuardPhishingReport_Request\x1a/.CCredentials_SteamGuardPhishingReport_Response\"\x1c\x82\xb5\x18\x18SteamGuardPhishingReport\x12\xa6\x01\n\x1eGetCredentialChangeTimeDetails\x12..CCredentials_LastCredentialChangeTime_Request\x1a/.CCredentials_LastCredentialChangeTime_Response\"#\x82\xb5\x18\x1fGetCredentialChangeTimeDetails.\x12\x89\x01\n\x14GetAccountAuthSecret\x12*.CCredentials_GetAccountAuthSecret_Request\x1a+.CCredentials_GetAccountAuthSecret_Response\"\x18\x82\xb5\x18\x14GetAccountAuthSecret\x1a\x17\x82\xb5\x18\x13\x43redentials serviceB\x03\x90\x01\x01'
   ,
-  dependencies=[steammessages__unified__base__pb2.DESCRIPTOR,steammessages__base__pb2.DESCRIPTOR,])
+  dependencies=[steammessages__base__pb2.DESCRIPTOR,steammessages__unified__base__pb2.DESCRIPTOR,])
 
 
 
@@ -37,28 +36,29 @@ _CCREDENTIALS_TESTAVAILABLEPASSWORD_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='password', full_name='CCredentials_TestAvailablePassword_Request.password', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='sha_digest_password', full_name='CCredentials_TestAvailablePassword_Request.sha_digest_password', index=1,
       number=2, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='account_name', full_name='CCredentials_TestAvailablePassword_Request.account_name', index=2,
       number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -82,6 +82,7 @@ _CCREDENTIALS_TESTAVAILABLEPASSWORD_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='is_valid', full_name='CCredentials_TestAvailablePassword_Response.is_valid', index=0,
@@ -89,7 +90,7 @@ _CCREDENTIALS_TESTAVAILABLEPASSWORD_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -113,6 +114,7 @@ _CCREDENTIALS_GETSTEAMGUARDDETAILS_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='include_new_authentications', full_name='CCredentials_GetSteamGuardDetails_Request.include_new_authentications', index=0,
@@ -120,35 +122,35 @@ _CCREDENTIALS_GETSTEAMGUARDDETAILS_REQUEST = _descriptor.Descriptor(
       has_default_value=True, default_value=True,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030FWhether or not to populate the newauthentication field in the response'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030FWhether or not to populate the newauthentication field in the response', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='webcookie', full_name='CCredentials_GetSteamGuardDetails_Request.webcookie', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030}The user\'s Steam Guard machine auth cookie. If present, it\'ll be used to get the user\'s machine ID instead of the AM session.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030}The user\'s Steam Guard machine auth cookie. If present, it\'ll be used to get the user\'s machine ID instead of the AM session.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='timestamp_minimum_wanted', full_name='CCredentials_GetSteamGuardDetails_Request.timestamp_minimum_wanted', index=2,
       number=3, type=7, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='deprecated_ipaddress', full_name='CCredentials_GetSteamGuardDetails_Request.deprecated_ipaddress', index=3,
       number=4, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='ip_address', full_name='CCredentials_GetSteamGuardDetails_Request.ip_address', index=4,
       number=5, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -172,6 +174,7 @@ _CCREDENTIALS_GETSTEAMGUARDDETAILS_RESPONSE_NEWAUTHENTICATION = _descriptor.Desc
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='timestamp_steamguard_enabled', full_name='CCredentials_GetSteamGuardDetails_Response.NewAuthentication.timestamp_steamguard_enabled', index=0,
@@ -179,56 +182,56 @@ _CCREDENTIALS_GETSTEAMGUARDDETAILS_RESPONSE_NEWAUTHENTICATION = _descriptor.Desc
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='is_web_cookie', full_name='CCredentials_GetSteamGuardDetails_Response.NewAuthentication.is_web_cookie', index=1,
       number=2, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='deprecated_ipaddress', full_name='CCredentials_GetSteamGuardDetails_Response.NewAuthentication.deprecated_ipaddress', index=2,
       number=3, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='geoloc_info', full_name='CCredentials_GetSteamGuardDetails_Response.NewAuthentication.geoloc_info', index=3,
       number=4, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='is_remembered', full_name='CCredentials_GetSteamGuardDetails_Response.NewAuthentication.is_remembered', index=4,
       number=5, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='machine_name_user_supplied', full_name='CCredentials_GetSteamGuardDetails_Response.NewAuthentication.machine_name_user_supplied', index=5,
       number=6, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='status', full_name='CCredentials_GetSteamGuardDetails_Response.NewAuthentication.status', index=6,
       number=7, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='ip_address', full_name='CCredentials_GetSteamGuardDetails_Response.NewAuthentication.ip_address', index=7,
       number=8, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -251,6 +254,7 @@ _CCREDENTIALS_GETSTEAMGUARDDETAILS_RESPONSE_SESSIONDATA = _descriptor.Descriptor
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='machine_id', full_name='CCredentials_GetSteamGuardDetails_Response.SessionData.machine_id', index=0,
@@ -258,56 +262,56 @@ _CCREDENTIALS_GETSTEAMGUARDDETAILS_RESPONSE_SESSIONDATA = _descriptor.Descriptor
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='machine_name_userchosen', full_name='CCredentials_GetSteamGuardDetails_Response.SessionData.machine_name_userchosen', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='timestamp_machine_steamguard_enabled', full_name='CCredentials_GetSteamGuardDetails_Response.SessionData.timestamp_machine_steamguard_enabled', index=2,
       number=3, type=7, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='authentication_exists_from_geoloc_before_mintime', full_name='CCredentials_GetSteamGuardDetails_Response.SessionData.authentication_exists_from_geoloc_before_mintime', index=3,
       number=4, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='newauthentication', full_name='CCredentials_GetSteamGuardDetails_Response.SessionData.newauthentication', index=4,
       number=5, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='authentication_exists_from_same_ip_before_mintime', full_name='CCredentials_GetSteamGuardDetails_Response.SessionData.authentication_exists_from_same_ip_before_mintime', index=5,
       number=6, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='public_ipv4', full_name='CCredentials_GetSteamGuardDetails_Response.SessionData.public_ipv4', index=6,
       number=7, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='public_ip_address', full_name='CCredentials_GetSteamGuardDetails_Response.SessionData.public_ip_address', index=7,
       number=8, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -330,6 +334,7 @@ _CCREDENTIALS_GETSTEAMGUARDDETAILS_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='is_steamguard_enabled', full_name='CCredentials_GetSteamGuardDetails_Response.is_steamguard_enabled', index=0,
@@ -337,77 +342,77 @@ _CCREDENTIALS_GETSTEAMGUARDDETAILS_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='timestamp_steamguard_enabled', full_name='CCredentials_GetSteamGuardDetails_Response.timestamp_steamguard_enabled', index=1,
       number=2, type=7, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='deprecated_newauthentication', full_name='CCredentials_GetSteamGuardDetails_Response.deprecated_newauthentication', index=2,
       number=3, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='deprecated_machine_name_userchosen', full_name='CCredentials_GetSteamGuardDetails_Response.deprecated_machine_name_userchosen', index=3,
       number=4, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='deprecated_timestamp_machine_steamguard_enabled', full_name='CCredentials_GetSteamGuardDetails_Response.deprecated_timestamp_machine_steamguard_enabled', index=4,
       number=5, type=7, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='deprecated_authentication_exists_from_geoloc_before_mintime', full_name='CCredentials_GetSteamGuardDetails_Response.deprecated_authentication_exists_from_geoloc_before_mintime', index=5,
       number=6, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='deprecated_machine_id', full_name='CCredentials_GetSteamGuardDetails_Response.deprecated_machine_id', index=6,
       number=7, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='session_data', full_name='CCredentials_GetSteamGuardDetails_Response.session_data', index=7,
       number=8, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='is_twofactor_enabled', full_name='CCredentials_GetSteamGuardDetails_Response.is_twofactor_enabled', index=8,
       number=9, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='timestamp_twofactor_enabled', full_name='CCredentials_GetSteamGuardDetails_Response.timestamp_twofactor_enabled', index=9,
       number=10, type=7, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='is_phone_verified', full_name='CCredentials_GetSteamGuardDetails_Response.is_phone_verified', index=10,
       number=11, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -431,6 +436,7 @@ _CCREDENTIALS_NEWMACHINENOTIFICATIONDIALOG_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='is_approved', full_name='CCredentials_NewMachineNotificationDialog_Request.is_approved', index=0,
@@ -438,14 +444,14 @@ _CCREDENTIALS_NEWMACHINENOTIFICATIONDIALOG_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='is_wizard_complete', full_name='CCredentials_NewMachineNotificationDialog_Request.is_wizard_complete', index=1,
       number=2, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -469,6 +475,7 @@ _CCREDENTIALS_NEWMACHINENOTIFICATIONDIALOG_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -493,14 +500,15 @@ _CCREDENTIALS_VALIDATEEMAILADDRESS_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='stoken', full_name='CCredentials_ValidateEmailAddress_Request.stoken', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -524,6 +532,7 @@ _CCREDENTIALS_VALIDATEEMAILADDRESS_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='was_validated', full_name='CCredentials_ValidateEmailAddress_Response.was_validated', index=0,
@@ -531,7 +540,7 @@ _CCREDENTIALS_VALIDATEEMAILADDRESS_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -555,21 +564,22 @@ _CCREDENTIALS_STEAMGUARDPHISHINGREPORT_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='param_string', full_name='CCredentials_SteamGuardPhishingReport_Request.param_string', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='ipaddress_actual', full_name='CCredentials_SteamGuardPhishingReport_Request.ipaddress_actual', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -593,70 +603,71 @@ _CCREDENTIALS_STEAMGUARDPHISHINGREPORT_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='ipaddress_loginattempt', full_name='CCredentials_SteamGuardPhishingReport_Response.ipaddress_loginattempt', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='countryname_loginattempt', full_name='CCredentials_SteamGuardPhishingReport_Response.countryname_loginattempt', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='statename_loginattempt', full_name='CCredentials_SteamGuardPhishingReport_Response.statename_loginattempt', index=2,
       number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='cityname_loginattempt', full_name='CCredentials_SteamGuardPhishingReport_Response.cityname_loginattempt', index=3,
       number=4, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='ipaddress_actual', full_name='CCredentials_SteamGuardPhishingReport_Response.ipaddress_actual', index=4,
       number=5, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='countryname_actual', full_name='CCredentials_SteamGuardPhishingReport_Response.countryname_actual', index=5,
       number=6, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='statename_actual', full_name='CCredentials_SteamGuardPhishingReport_Response.statename_actual', index=6,
       number=7, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='cityname_actual', full_name='CCredentials_SteamGuardPhishingReport_Response.cityname_actual', index=7,
       number=8, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steamguard_code', full_name='CCredentials_SteamGuardPhishingReport_Response.steamguard_code', index=8,
       number=9, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -680,6 +691,7 @@ _CCREDENTIALS_LASTCREDENTIALCHANGETIME_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='user_changes_only', full_name='CCredentials_LastCredentialChangeTime_Request.user_changes_only', index=0,
@@ -687,7 +699,7 @@ _CCREDENTIALS_LASTCREDENTIALCHANGETIME_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -711,6 +723,7 @@ _CCREDENTIALS_LASTCREDENTIALCHANGETIME_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='timestamp_last_password_change', full_name='CCredentials_LastCredentialChangeTime_Response.timestamp_last_password_change', index=0,
@@ -718,21 +731,21 @@ _CCREDENTIALS_LASTCREDENTIALCHANGETIME_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='timestamp_last_email_change', full_name='CCredentials_LastCredentialChangeTime_Response.timestamp_last_email_change', index=1,
       number=2, type=7, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='timestamp_last_password_reset', full_name='CCredentials_LastCredentialChangeTime_Response.timestamp_last_password_reset', index=2,
       number=3, type=7, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -756,6 +769,7 @@ _CCREDENTIALS_GETACCOUNTAUTHSECRET_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -780,6 +794,7 @@ _CCREDENTIALS_GETACCOUNTAUTHSECRET_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='secret_id', full_name='CCredentials_GetAccountAuthSecret_Response.secret_id', index=0,
@@ -787,14 +802,14 @@ _CCREDENTIALS_GETACCOUNTAUTHSECRET_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='secret', full_name='CCredentials_GetAccountAuthSecret_Response.secret', index=1,
       number=2, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -834,118 +849,118 @@ DESCRIPTOR.message_types_by_name['CCredentials_GetAccountAuthSecret_Request'] =
 DESCRIPTOR.message_types_by_name['CCredentials_GetAccountAuthSecret_Response'] = _CCREDENTIALS_GETACCOUNTAUTHSECRET_RESPONSE
 _sym_db.RegisterFileDescriptor(DESCRIPTOR)
 
-CCredentials_TestAvailablePassword_Request = _reflection.GeneratedProtocolMessageType('CCredentials_TestAvailablePassword_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCREDENTIALS_TESTAVAILABLEPASSWORD_REQUEST,
-  __module__ = 'steammessages_credentials_pb2'
+CCredentials_TestAvailablePassword_Request = _reflection.GeneratedProtocolMessageType('CCredentials_TestAvailablePassword_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCREDENTIALS_TESTAVAILABLEPASSWORD_REQUEST,
+  '__module__' : 'steammessages_credentials_pb2'
   # @@protoc_insertion_point(class_scope:CCredentials_TestAvailablePassword_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CCredentials_TestAvailablePassword_Request)
 
-CCredentials_TestAvailablePassword_Response = _reflection.GeneratedProtocolMessageType('CCredentials_TestAvailablePassword_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCREDENTIALS_TESTAVAILABLEPASSWORD_RESPONSE,
-  __module__ = 'steammessages_credentials_pb2'
+CCredentials_TestAvailablePassword_Response = _reflection.GeneratedProtocolMessageType('CCredentials_TestAvailablePassword_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCREDENTIALS_TESTAVAILABLEPASSWORD_RESPONSE,
+  '__module__' : 'steammessages_credentials_pb2'
   # @@protoc_insertion_point(class_scope:CCredentials_TestAvailablePassword_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CCredentials_TestAvailablePassword_Response)
 
-CCredentials_GetSteamGuardDetails_Request = _reflection.GeneratedProtocolMessageType('CCredentials_GetSteamGuardDetails_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCREDENTIALS_GETSTEAMGUARDDETAILS_REQUEST,
-  __module__ = 'steammessages_credentials_pb2'
+CCredentials_GetSteamGuardDetails_Request = _reflection.GeneratedProtocolMessageType('CCredentials_GetSteamGuardDetails_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCREDENTIALS_GETSTEAMGUARDDETAILS_REQUEST,
+  '__module__' : 'steammessages_credentials_pb2'
   # @@protoc_insertion_point(class_scope:CCredentials_GetSteamGuardDetails_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CCredentials_GetSteamGuardDetails_Request)
 
-CCredentials_GetSteamGuardDetails_Response = _reflection.GeneratedProtocolMessageType('CCredentials_GetSteamGuardDetails_Response', (_message.Message,), dict(
+CCredentials_GetSteamGuardDetails_Response = _reflection.GeneratedProtocolMessageType('CCredentials_GetSteamGuardDetails_Response', (_message.Message,), {
 
-  NewAuthentication = _reflection.GeneratedProtocolMessageType('NewAuthentication', (_message.Message,), dict(
-    DESCRIPTOR = _CCREDENTIALS_GETSTEAMGUARDDETAILS_RESPONSE_NEWAUTHENTICATION,
-    __module__ = 'steammessages_credentials_pb2'
+  'NewAuthentication' : _reflection.GeneratedProtocolMessageType('NewAuthentication', (_message.Message,), {
+    'DESCRIPTOR' : _CCREDENTIALS_GETSTEAMGUARDDETAILS_RESPONSE_NEWAUTHENTICATION,
+    '__module__' : 'steammessages_credentials_pb2'
     # @@protoc_insertion_point(class_scope:CCredentials_GetSteamGuardDetails_Response.NewAuthentication)
-    ))
+    })
   ,
 
-  SessionData = _reflection.GeneratedProtocolMessageType('SessionData', (_message.Message,), dict(
-    DESCRIPTOR = _CCREDENTIALS_GETSTEAMGUARDDETAILS_RESPONSE_SESSIONDATA,
-    __module__ = 'steammessages_credentials_pb2'
+  'SessionData' : _reflection.GeneratedProtocolMessageType('SessionData', (_message.Message,), {
+    'DESCRIPTOR' : _CCREDENTIALS_GETSTEAMGUARDDETAILS_RESPONSE_SESSIONDATA,
+    '__module__' : 'steammessages_credentials_pb2'
     # @@protoc_insertion_point(class_scope:CCredentials_GetSteamGuardDetails_Response.SessionData)
-    ))
+    })
   ,
-  DESCRIPTOR = _CCREDENTIALS_GETSTEAMGUARDDETAILS_RESPONSE,
-  __module__ = 'steammessages_credentials_pb2'
+  'DESCRIPTOR' : _CCREDENTIALS_GETSTEAMGUARDDETAILS_RESPONSE,
+  '__module__' : 'steammessages_credentials_pb2'
   # @@protoc_insertion_point(class_scope:CCredentials_GetSteamGuardDetails_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CCredentials_GetSteamGuardDetails_Response)
 _sym_db.RegisterMessage(CCredentials_GetSteamGuardDetails_Response.NewAuthentication)
 _sym_db.RegisterMessage(CCredentials_GetSteamGuardDetails_Response.SessionData)
 
-CCredentials_NewMachineNotificationDialog_Request = _reflection.GeneratedProtocolMessageType('CCredentials_NewMachineNotificationDialog_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCREDENTIALS_NEWMACHINENOTIFICATIONDIALOG_REQUEST,
-  __module__ = 'steammessages_credentials_pb2'
+CCredentials_NewMachineNotificationDialog_Request = _reflection.GeneratedProtocolMessageType('CCredentials_NewMachineNotificationDialog_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCREDENTIALS_NEWMACHINENOTIFICATIONDIALOG_REQUEST,
+  '__module__' : 'steammessages_credentials_pb2'
   # @@protoc_insertion_point(class_scope:CCredentials_NewMachineNotificationDialog_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CCredentials_NewMachineNotificationDialog_Request)
 
-CCredentials_NewMachineNotificationDialog_Response = _reflection.GeneratedProtocolMessageType('CCredentials_NewMachineNotificationDialog_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCREDENTIALS_NEWMACHINENOTIFICATIONDIALOG_RESPONSE,
-  __module__ = 'steammessages_credentials_pb2'
+CCredentials_NewMachineNotificationDialog_Response = _reflection.GeneratedProtocolMessageType('CCredentials_NewMachineNotificationDialog_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCREDENTIALS_NEWMACHINENOTIFICATIONDIALOG_RESPONSE,
+  '__module__' : 'steammessages_credentials_pb2'
   # @@protoc_insertion_point(class_scope:CCredentials_NewMachineNotificationDialog_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CCredentials_NewMachineNotificationDialog_Response)
 
-CCredentials_ValidateEmailAddress_Request = _reflection.GeneratedProtocolMessageType('CCredentials_ValidateEmailAddress_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCREDENTIALS_VALIDATEEMAILADDRESS_REQUEST,
-  __module__ = 'steammessages_credentials_pb2'
+CCredentials_ValidateEmailAddress_Request = _reflection.GeneratedProtocolMessageType('CCredentials_ValidateEmailAddress_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCREDENTIALS_VALIDATEEMAILADDRESS_REQUEST,
+  '__module__' : 'steammessages_credentials_pb2'
   # @@protoc_insertion_point(class_scope:CCredentials_ValidateEmailAddress_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CCredentials_ValidateEmailAddress_Request)
 
-CCredentials_ValidateEmailAddress_Response = _reflection.GeneratedProtocolMessageType('CCredentials_ValidateEmailAddress_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCREDENTIALS_VALIDATEEMAILADDRESS_RESPONSE,
-  __module__ = 'steammessages_credentials_pb2'
+CCredentials_ValidateEmailAddress_Response = _reflection.GeneratedProtocolMessageType('CCredentials_ValidateEmailAddress_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCREDENTIALS_VALIDATEEMAILADDRESS_RESPONSE,
+  '__module__' : 'steammessages_credentials_pb2'
   # @@protoc_insertion_point(class_scope:CCredentials_ValidateEmailAddress_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CCredentials_ValidateEmailAddress_Response)
 
-CCredentials_SteamGuardPhishingReport_Request = _reflection.GeneratedProtocolMessageType('CCredentials_SteamGuardPhishingReport_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCREDENTIALS_STEAMGUARDPHISHINGREPORT_REQUEST,
-  __module__ = 'steammessages_credentials_pb2'
+CCredentials_SteamGuardPhishingReport_Request = _reflection.GeneratedProtocolMessageType('CCredentials_SteamGuardPhishingReport_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCREDENTIALS_STEAMGUARDPHISHINGREPORT_REQUEST,
+  '__module__' : 'steammessages_credentials_pb2'
   # @@protoc_insertion_point(class_scope:CCredentials_SteamGuardPhishingReport_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CCredentials_SteamGuardPhishingReport_Request)
 
-CCredentials_SteamGuardPhishingReport_Response = _reflection.GeneratedProtocolMessageType('CCredentials_SteamGuardPhishingReport_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCREDENTIALS_STEAMGUARDPHISHINGREPORT_RESPONSE,
-  __module__ = 'steammessages_credentials_pb2'
+CCredentials_SteamGuardPhishingReport_Response = _reflection.GeneratedProtocolMessageType('CCredentials_SteamGuardPhishingReport_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCREDENTIALS_STEAMGUARDPHISHINGREPORT_RESPONSE,
+  '__module__' : 'steammessages_credentials_pb2'
   # @@protoc_insertion_point(class_scope:CCredentials_SteamGuardPhishingReport_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CCredentials_SteamGuardPhishingReport_Response)
 
-CCredentials_LastCredentialChangeTime_Request = _reflection.GeneratedProtocolMessageType('CCredentials_LastCredentialChangeTime_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCREDENTIALS_LASTCREDENTIALCHANGETIME_REQUEST,
-  __module__ = 'steammessages_credentials_pb2'
+CCredentials_LastCredentialChangeTime_Request = _reflection.GeneratedProtocolMessageType('CCredentials_LastCredentialChangeTime_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCREDENTIALS_LASTCREDENTIALCHANGETIME_REQUEST,
+  '__module__' : 'steammessages_credentials_pb2'
   # @@protoc_insertion_point(class_scope:CCredentials_LastCredentialChangeTime_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CCredentials_LastCredentialChangeTime_Request)
 
-CCredentials_LastCredentialChangeTime_Response = _reflection.GeneratedProtocolMessageType('CCredentials_LastCredentialChangeTime_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCREDENTIALS_LASTCREDENTIALCHANGETIME_RESPONSE,
-  __module__ = 'steammessages_credentials_pb2'
+CCredentials_LastCredentialChangeTime_Response = _reflection.GeneratedProtocolMessageType('CCredentials_LastCredentialChangeTime_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCREDENTIALS_LASTCREDENTIALCHANGETIME_RESPONSE,
+  '__module__' : 'steammessages_credentials_pb2'
   # @@protoc_insertion_point(class_scope:CCredentials_LastCredentialChangeTime_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CCredentials_LastCredentialChangeTime_Response)
 
-CCredentials_GetAccountAuthSecret_Request = _reflection.GeneratedProtocolMessageType('CCredentials_GetAccountAuthSecret_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCREDENTIALS_GETACCOUNTAUTHSECRET_REQUEST,
-  __module__ = 'steammessages_credentials_pb2'
+CCredentials_GetAccountAuthSecret_Request = _reflection.GeneratedProtocolMessageType('CCredentials_GetAccountAuthSecret_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCREDENTIALS_GETACCOUNTAUTHSECRET_REQUEST,
+  '__module__' : 'steammessages_credentials_pb2'
   # @@protoc_insertion_point(class_scope:CCredentials_GetAccountAuthSecret_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CCredentials_GetAccountAuthSecret_Request)
 
-CCredentials_GetAccountAuthSecret_Response = _reflection.GeneratedProtocolMessageType('CCredentials_GetAccountAuthSecret_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCREDENTIALS_GETACCOUNTAUTHSECRET_RESPONSE,
-  __module__ = 'steammessages_credentials_pb2'
+CCredentials_GetAccountAuthSecret_Response = _reflection.GeneratedProtocolMessageType('CCredentials_GetAccountAuthSecret_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCREDENTIALS_GETACCOUNTAUTHSECRET_RESPONSE,
+  '__module__' : 'steammessages_credentials_pb2'
   # @@protoc_insertion_point(class_scope:CCredentials_GetAccountAuthSecret_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CCredentials_GetAccountAuthSecret_Response)
 
 
@@ -958,7 +973,8 @@ _CREDENTIALS = _descriptor.ServiceDescriptor(
   full_name='Credentials',
   file=DESCRIPTOR,
   index=0,
-  serialized_options=_b('\202\265\030\023Credentials service'),
+  serialized_options=b'\202\265\030\023Credentials service',
+  create_key=_descriptor._internal_create_key,
   serialized_start=2961,
   serialized_end=4094,
   methods=[
@@ -969,7 +985,8 @@ _CREDENTIALS = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CCREDENTIALS_TESTAVAILABLEPASSWORD_REQUEST,
     output_type=_CCREDENTIALS_TESTAVAILABLEPASSWORD_RESPONSE,
-    serialized_options=_b('\202\265\030\026TestAvailablePassword.'),
+    serialized_options=b'\202\265\030\026TestAvailablePassword.',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetSteamGuardDetails',
@@ -978,7 +995,8 @@ _CREDENTIALS = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CCREDENTIALS_GETSTEAMGUARDDETAILS_REQUEST,
     output_type=_CCREDENTIALS_GETSTEAMGUARDDETAILS_RESPONSE,
-    serialized_options=_b('\202\265\030\025GetSteamGuardDetails.'),
+    serialized_options=b'\202\265\030\025GetSteamGuardDetails.',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='NewMachineNotificationDialogResult',
@@ -987,7 +1005,8 @@ _CREDENTIALS = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CCREDENTIALS_NEWMACHINENOTIFICATIONDIALOG_REQUEST,
     output_type=_CCREDENTIALS_NEWMACHINENOTIFICATIONDIALOG_RESPONSE,
-    serialized_options=_b('\202\265\030#NewMachineNotificationDialogResult.'),
+    serialized_options=b'\202\265\030#NewMachineNotificationDialogResult.',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='ValidateEmailAddress',
@@ -996,7 +1015,8 @@ _CREDENTIALS = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CCREDENTIALS_VALIDATEEMAILADDRESS_REQUEST,
     output_type=_CCREDENTIALS_VALIDATEEMAILADDRESS_RESPONSE,
-    serialized_options=_b('\202\265\030\'Validate an email address given a token'),
+    serialized_options=b'\202\265\030\'Validate an email address given a token',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='SteamGuardPhishingReport',
@@ -1005,7 +1025,8 @@ _CREDENTIALS = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CCREDENTIALS_STEAMGUARDPHISHINGREPORT_REQUEST,
     output_type=_CCREDENTIALS_STEAMGUARDPHISHINGREPORT_RESPONSE,
-    serialized_options=_b('\202\265\030\030SteamGuardPhishingReport'),
+    serialized_options=b'\202\265\030\030SteamGuardPhishingReport',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetCredentialChangeTimeDetails',
@@ -1014,7 +1035,8 @@ _CREDENTIALS = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CCREDENTIALS_LASTCREDENTIALCHANGETIME_REQUEST,
     output_type=_CCREDENTIALS_LASTCREDENTIALCHANGETIME_RESPONSE,
-    serialized_options=_b('\202\265\030\037GetCredentialChangeTimeDetails.'),
+    serialized_options=b'\202\265\030\037GetCredentialChangeTimeDetails.',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetAccountAuthSecret',
@@ -1023,7 +1045,8 @@ _CREDENTIALS = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CCREDENTIALS_GETACCOUNTAUTHSECRET_REQUEST,
     output_type=_CCREDENTIALS_GETACCOUNTAUTHSECRET_RESPONSE,
-    serialized_options=_b('\202\265\030\024GetAccountAuthSecret'),
+    serialized_options=b'\202\265\030\024GetAccountAuthSecret',
+    create_key=_descriptor._internal_create_key,
   ),
 ])
 _sym_db.RegisterServiceDescriptor(_CREDENTIALS)
diff --git a/steam/protobufs/steammessages_datapublisher_pb2.py b/steam/protobufs/steammessages_datapublisher_pb2.py
index 2a01743..53b4de6 100644
--- a/steam/protobufs/steammessages_datapublisher_pb2.py
+++ b/steam/protobufs/steammessages_datapublisher_pb2.py
@@ -1,9 +1,7 @@
 # -*- coding: utf-8 -*-
 # Generated by the protocol buffer compiler.  DO NOT EDIT!
 # source: steammessages_datapublisher.proto
-
-import sys
-_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1'))
+"""Generated protocol buffer code."""
 from google.protobuf import descriptor as _descriptor
 from google.protobuf import message as _message
 from google.protobuf import reflection as _reflection
@@ -15,6 +13,7 @@ from google.protobuf import service_reflection
 _sym_db = _symbol_database.Default()
 
 
+import steam.protobufs.steammessages_base_pb2 as steammessages__base__pb2
 import steam.protobufs.steammessages_unified_base_pb2 as steammessages__unified__base__pb2
 
 
@@ -22,10 +21,11 @@ DESCRIPTOR = _descriptor.FileDescriptor(
   name='steammessages_datapublisher.proto',
   package='',
   syntax='proto2',
-  serialized_options=_b('\220\001\001'),
-  serialized_pb=_b('\n!steammessages_datapublisher.proto\x1a steammessages_unified_base.proto\"\xfd\x03\n9CDataPublisher_ClientContentCorruptionReport_Notification\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x0f\n\x07\x64\x65potid\x18\x02 \x01(\r\x12\x39\n\x0f\x64ownload_source\x18\x03 \x01(\tB \x82\xb5\x18\x1chost name of download source\x12.\n\x08objectid\x18\x04 \x01(\tB\x1c\x82\xb5\x18\x18\x43hunk SHA or Manifest ID\x12\"\n\x06\x63\x65llid\x18\x05 \x01(\rB\x12\x82\xb5\x18\x0e\x43lient Cell ID\x12>\n\x0bis_manifest\x18\x06 \x01(\x08\x42)\x82\xb5\x18%The object is a manifest, not a chunk\x12-\n\x0bobject_size\x18\x07 \x01(\x04\x42\x18\x82\xb5\x18\x14object size in bytes\x12\x37\n\x0f\x63orruption_type\x18\x08 \x01(\rB\x1e\x82\xb5\x18\x1aSee EContentCorruptionType\x12-\n\nused_https\x18\t \x01(\x08\x42\x19\x82\xb5\x18\x15the request was HTTPS\x12:\n\x11oc_proxy_detected\x18\n \x01(\x08\x42\x1f\x82\xb5\x18\x1b\x64\x65tected an OpenCache proxy\"\xd0\x04\n.CDataPublisher_ClientUpdateAppJob_Notification\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x11\n\tdepot_ids\x18\x02 \x03(\r\x12\x11\n\tapp_state\x18\x03 \x01(\r\x12\x15\n\rjob_app_error\x18\x04 \x01(\r\x12\x15\n\rerror_details\x18\x05 \x01(\t\x12\x14\n\x0cjob_duration\x18\x06 \x01(\r\x12\x1f\n\x17\x66iles_validation_failed\x18\x07 \x01(\r\x12\x1c\n\x14job_bytes_downloaded\x18\x08 \x01(\x04\x12\x18\n\x10job_bytes_staged\x18\t \x01(\x04\x12\x16\n\x0e\x62ytes_comitted\x18\n \x01(\x04\x12\x17\n\x0fstart_app_state\x18\x0b \x01(\r\x12\x18\n\x10stats_machine_id\x18\x0c \x01(\x06\x12\x13\n\x0b\x62ranch_name\x18\r \x01(\t\x12\x1e\n\x16total_bytes_downloaded\x18\x0e \x01(\x04\x12\x1a\n\x12total_bytes_staged\x18\x0f \x01(\x04\x12\x1c\n\x14total_bytes_restored\x18\x10 \x01(\x04\x12\x13\n\x0bis_borrowed\x18\x11 \x01(\x08\x12\x17\n\x0fis_free_weekend\x18\x12 \x01(\x08\x12\x1a\n\x12total_bytes_legacy\x18\x13 \x01(\x04\x12\x1b\n\x13total_bytes_patched\x18\x14 \x01(\x04\x12\x19\n\x11total_bytes_saved\x18\x15 \x01(\x04\x12\x0f\n\x07\x63\x65ll_id\x18\x16 \x01(\r\"c\n(CValveHWSurvey_GetSurveySchedule_Request\x12\x17\n\x0fsurveydatetoken\x18\x01 \x01(\t\x12\x1e\n\x16surveydatetokenversion\x18\x02 \x01(\x06\"d\n)CValveHWSurvey_GetSurveySchedule_Response\x12\x17\n\x0fsurveydatetoken\x18\x01 \x01(\r\x12\x1e\n\x16surveydatetokenversion\x18\x02 \x01(\x06\x32\xfc\x01\n\rDataPublisher\x12h\n\x1d\x43lientContentCorruptionReport\x12:.CDataPublisher_ClientContentCorruptionReport_Notification\x1a\x0b.NoResponse\x12X\n\x18\x43lientUpdateAppJobReport\x12/.CDataPublisher_ClientUpdateAppJob_Notification\x1a\x0b.NoResponse\x1a\'\x82\xb5\x18#Data Publisher (DP) server services2\xac\x01\n\rValveHWSurvey\x12\x87\x01\n\x11GetSurveySchedule\x12).CValveHWSurvey_GetSurveySchedule_Request\x1a*.CValveHWSurvey_GetSurveySchedule_Response\"\x1b\x82\xb5\x18\x17Should I run the survey\x1a\x11\x82\xb5\x18\rValveHWSurveyB\x03\x90\x01\x01')
+  serialized_options=b'\220\001\001',
+  create_key=_descriptor._internal_create_key,
+  serialized_pb=b'\n!steammessages_datapublisher.proto\x1a\x18steammessages_base.proto\x1a steammessages_unified_base.proto\"\xfd\x03\n9CDataPublisher_ClientContentCorruptionReport_Notification\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x0f\n\x07\x64\x65potid\x18\x02 \x01(\r\x12\x39\n\x0f\x64ownload_source\x18\x03 \x01(\tB \x82\xb5\x18\x1chost name of download source\x12.\n\x08objectid\x18\x04 \x01(\tB\x1c\x82\xb5\x18\x18\x43hunk SHA or Manifest ID\x12\"\n\x06\x63\x65llid\x18\x05 \x01(\rB\x12\x82\xb5\x18\x0e\x43lient Cell ID\x12>\n\x0bis_manifest\x18\x06 \x01(\x08\x42)\x82\xb5\x18%The object is a manifest, not a chunk\x12-\n\x0bobject_size\x18\x07 \x01(\x04\x42\x18\x82\xb5\x18\x14object size in bytes\x12\x37\n\x0f\x63orruption_type\x18\x08 \x01(\rB\x1e\x82\xb5\x18\x1aSee EContentCorruptionType\x12-\n\nused_https\x18\t \x01(\x08\x42\x19\x82\xb5\x18\x15the request was HTTPS\x12:\n\x11oc_proxy_detected\x18\n \x01(\x08\x42\x1f\x82\xb5\x18\x1b\x64\x65tected an OpenCache proxy\"\xd0\x04\n.CDataPublisher_ClientUpdateAppJob_Notification\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x11\n\tdepot_ids\x18\x02 \x03(\r\x12\x11\n\tapp_state\x18\x03 \x01(\r\x12\x15\n\rjob_app_error\x18\x04 \x01(\r\x12\x15\n\rerror_details\x18\x05 \x01(\t\x12\x14\n\x0cjob_duration\x18\x06 \x01(\r\x12\x1f\n\x17\x66iles_validation_failed\x18\x07 \x01(\r\x12\x1c\n\x14job_bytes_downloaded\x18\x08 \x01(\x04\x12\x18\n\x10job_bytes_staged\x18\t \x01(\x04\x12\x16\n\x0e\x62ytes_comitted\x18\n \x01(\x04\x12\x17\n\x0fstart_app_state\x18\x0b \x01(\r\x12\x18\n\x10stats_machine_id\x18\x0c \x01(\x06\x12\x13\n\x0b\x62ranch_name\x18\r \x01(\t\x12\x1e\n\x16total_bytes_downloaded\x18\x0e \x01(\x04\x12\x1a\n\x12total_bytes_staged\x18\x0f \x01(\x04\x12\x1c\n\x14total_bytes_restored\x18\x10 \x01(\x04\x12\x13\n\x0bis_borrowed\x18\x11 \x01(\x08\x12\x17\n\x0fis_free_weekend\x18\x12 \x01(\x08\x12\x1a\n\x12total_bytes_legacy\x18\x13 \x01(\x04\x12\x1b\n\x13total_bytes_patched\x18\x14 \x01(\x04\x12\x19\n\x11total_bytes_saved\x18\x15 \x01(\x04\x12\x0f\n\x07\x63\x65ll_id\x18\x16 \x01(\r\"c\n(CValveHWSurvey_GetSurveySchedule_Request\x12\x17\n\x0fsurveydatetoken\x18\x01 \x01(\t\x12\x1e\n\x16surveydatetokenversion\x18\x02 \x01(\x06\"d\n)CValveHWSurvey_GetSurveySchedule_Response\x12\x17\n\x0fsurveydatetoken\x18\x01 \x01(\r\x12\x1e\n\x16surveydatetokenversion\x18\x02 \x01(\x06\x32\xfc\x01\n\rDataPublisher\x12h\n\x1d\x43lientContentCorruptionReport\x12:.CDataPublisher_ClientContentCorruptionReport_Notification\x1a\x0b.NoResponse\x12X\n\x18\x43lientUpdateAppJobReport\x12/.CDataPublisher_ClientUpdateAppJob_Notification\x1a\x0b.NoResponse\x1a\'\x82\xb5\x18#Data Publisher (DP) server services2\xac\x01\n\rValveHWSurvey\x12\x87\x01\n\x11GetSurveySchedule\x12).CValveHWSurvey_GetSurveySchedule_Request\x1a*.CValveHWSurvey_GetSurveySchedule_Response\"\x1b\x82\xb5\x18\x17Should I run the survey\x1a\x11\x82\xb5\x18\rValveHWSurveyB\x03\x90\x01\x01'
   ,
-  dependencies=[steammessages__unified__base__pb2.DESCRIPTOR,])
+  dependencies=[steammessages__base__pb2.DESCRIPTOR,steammessages__unified__base__pb2.DESCRIPTOR,])
 
 
 
@@ -36,6 +36,7 @@ _CDATAPUBLISHER_CLIENTCONTENTCORRUPTIONREPORT_NOTIFICATION = _descriptor.Descrip
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CDataPublisher_ClientContentCorruptionReport_Notification.appid', index=0,
@@ -43,70 +44,70 @@ _CDATAPUBLISHER_CLIENTCONTENTCORRUPTIONREPORT_NOTIFICATION = _descriptor.Descrip
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='depotid', full_name='CDataPublisher_ClientContentCorruptionReport_Notification.depotid', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='download_source', full_name='CDataPublisher_ClientContentCorruptionReport_Notification.download_source', index=2,
       number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\034host name of download source'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\034host name of download source', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='objectid', full_name='CDataPublisher_ClientContentCorruptionReport_Notification.objectid', index=3,
       number=4, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\030Chunk SHA or Manifest ID'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\030Chunk SHA or Manifest ID', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='cellid', full_name='CDataPublisher_ClientContentCorruptionReport_Notification.cellid', index=4,
       number=5, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\016Client Cell ID'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\016Client Cell ID', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='is_manifest', full_name='CDataPublisher_ClientContentCorruptionReport_Notification.is_manifest', index=5,
       number=6, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030%The object is a manifest, not a chunk'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030%The object is a manifest, not a chunk', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='object_size', full_name='CDataPublisher_ClientContentCorruptionReport_Notification.object_size', index=6,
       number=7, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\024object size in bytes'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\024object size in bytes', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='corruption_type', full_name='CDataPublisher_ClientContentCorruptionReport_Notification.corruption_type', index=7,
       number=8, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\032See EContentCorruptionType'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\032See EContentCorruptionType', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='used_https', full_name='CDataPublisher_ClientContentCorruptionReport_Notification.used_https', index=8,
       number=9, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\025the request was HTTPS'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\025the request was HTTPS', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='oc_proxy_detected', full_name='CDataPublisher_ClientContentCorruptionReport_Notification.oc_proxy_detected', index=9,
       number=10, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\033detected an OpenCache proxy'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\033detected an OpenCache proxy', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -119,8 +120,8 @@ _CDATAPUBLISHER_CLIENTCONTENTCORRUPTIONREPORT_NOTIFICATION = _descriptor.Descrip
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=72,
-  serialized_end=581,
+  serialized_start=98,
+  serialized_end=607,
 )
 
 
@@ -130,6 +131,7 @@ _CDATAPUBLISHER_CLIENTUPDATEAPPJOB_NOTIFICATION = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CDataPublisher_ClientUpdateAppJob_Notification.app_id', index=0,
@@ -137,154 +139,154 @@ _CDATAPUBLISHER_CLIENTUPDATEAPPJOB_NOTIFICATION = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='depot_ids', full_name='CDataPublisher_ClientUpdateAppJob_Notification.depot_ids', index=1,
       number=2, type=13, cpp_type=3, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='app_state', full_name='CDataPublisher_ClientUpdateAppJob_Notification.app_state', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='job_app_error', full_name='CDataPublisher_ClientUpdateAppJob_Notification.job_app_error', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='error_details', full_name='CDataPublisher_ClientUpdateAppJob_Notification.error_details', index=4,
       number=5, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='job_duration', full_name='CDataPublisher_ClientUpdateAppJob_Notification.job_duration', index=5,
       number=6, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='files_validation_failed', full_name='CDataPublisher_ClientUpdateAppJob_Notification.files_validation_failed', index=6,
       number=7, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='job_bytes_downloaded', full_name='CDataPublisher_ClientUpdateAppJob_Notification.job_bytes_downloaded', index=7,
       number=8, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='job_bytes_staged', full_name='CDataPublisher_ClientUpdateAppJob_Notification.job_bytes_staged', index=8,
       number=9, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='bytes_comitted', full_name='CDataPublisher_ClientUpdateAppJob_Notification.bytes_comitted', index=9,
       number=10, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='start_app_state', full_name='CDataPublisher_ClientUpdateAppJob_Notification.start_app_state', index=10,
       number=11, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='stats_machine_id', full_name='CDataPublisher_ClientUpdateAppJob_Notification.stats_machine_id', index=11,
       number=12, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='branch_name', full_name='CDataPublisher_ClientUpdateAppJob_Notification.branch_name', index=12,
       number=13, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='total_bytes_downloaded', full_name='CDataPublisher_ClientUpdateAppJob_Notification.total_bytes_downloaded', index=13,
       number=14, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='total_bytes_staged', full_name='CDataPublisher_ClientUpdateAppJob_Notification.total_bytes_staged', index=14,
       number=15, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='total_bytes_restored', full_name='CDataPublisher_ClientUpdateAppJob_Notification.total_bytes_restored', index=15,
       number=16, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='is_borrowed', full_name='CDataPublisher_ClientUpdateAppJob_Notification.is_borrowed', index=16,
       number=17, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='is_free_weekend', full_name='CDataPublisher_ClientUpdateAppJob_Notification.is_free_weekend', index=17,
       number=18, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='total_bytes_legacy', full_name='CDataPublisher_ClientUpdateAppJob_Notification.total_bytes_legacy', index=18,
       number=19, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='total_bytes_patched', full_name='CDataPublisher_ClientUpdateAppJob_Notification.total_bytes_patched', index=19,
       number=20, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='total_bytes_saved', full_name='CDataPublisher_ClientUpdateAppJob_Notification.total_bytes_saved', index=20,
       number=21, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='cell_id', full_name='CDataPublisher_ClientUpdateAppJob_Notification.cell_id', index=21,
       number=22, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -297,8 +299,8 @@ _CDATAPUBLISHER_CLIENTUPDATEAPPJOB_NOTIFICATION = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=584,
-  serialized_end=1176,
+  serialized_start=610,
+  serialized_end=1202,
 )
 
 
@@ -308,21 +310,22 @@ _CVALVEHWSURVEY_GETSURVEYSCHEDULE_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='surveydatetoken', full_name='CValveHWSurvey_GetSurveySchedule_Request.surveydatetoken', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='surveydatetokenversion', full_name='CValveHWSurvey_GetSurveySchedule_Request.surveydatetokenversion', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -335,8 +338,8 @@ _CVALVEHWSURVEY_GETSURVEYSCHEDULE_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1178,
-  serialized_end=1277,
+  serialized_start=1204,
+  serialized_end=1303,
 )
 
 
@@ -346,6 +349,7 @@ _CVALVEHWSURVEY_GETSURVEYSCHEDULE_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='surveydatetoken', full_name='CValveHWSurvey_GetSurveySchedule_Response.surveydatetoken', index=0,
@@ -353,14 +357,14 @@ _CVALVEHWSURVEY_GETSURVEYSCHEDULE_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='surveydatetokenversion', full_name='CValveHWSurvey_GetSurveySchedule_Response.surveydatetokenversion', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -373,8 +377,8 @@ _CVALVEHWSURVEY_GETSURVEYSCHEDULE_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1279,
-  serialized_end=1379,
+  serialized_start=1305,
+  serialized_end=1405,
 )
 
 DESCRIPTOR.message_types_by_name['CDataPublisher_ClientContentCorruptionReport_Notification'] = _CDATAPUBLISHER_CLIENTCONTENTCORRUPTIONREPORT_NOTIFICATION
@@ -383,32 +387,32 @@ DESCRIPTOR.message_types_by_name['CValveHWSurvey_GetSurveySchedule_Request'] = _
 DESCRIPTOR.message_types_by_name['CValveHWSurvey_GetSurveySchedule_Response'] = _CVALVEHWSURVEY_GETSURVEYSCHEDULE_RESPONSE
 _sym_db.RegisterFileDescriptor(DESCRIPTOR)
 
-CDataPublisher_ClientContentCorruptionReport_Notification = _reflection.GeneratedProtocolMessageType('CDataPublisher_ClientContentCorruptionReport_Notification', (_message.Message,), dict(
-  DESCRIPTOR = _CDATAPUBLISHER_CLIENTCONTENTCORRUPTIONREPORT_NOTIFICATION,
-  __module__ = 'steammessages_datapublisher_pb2'
+CDataPublisher_ClientContentCorruptionReport_Notification = _reflection.GeneratedProtocolMessageType('CDataPublisher_ClientContentCorruptionReport_Notification', (_message.Message,), {
+  'DESCRIPTOR' : _CDATAPUBLISHER_CLIENTCONTENTCORRUPTIONREPORT_NOTIFICATION,
+  '__module__' : 'steammessages_datapublisher_pb2'
   # @@protoc_insertion_point(class_scope:CDataPublisher_ClientContentCorruptionReport_Notification)
-  ))
+  })
 _sym_db.RegisterMessage(CDataPublisher_ClientContentCorruptionReport_Notification)
 
-CDataPublisher_ClientUpdateAppJob_Notification = _reflection.GeneratedProtocolMessageType('CDataPublisher_ClientUpdateAppJob_Notification', (_message.Message,), dict(
-  DESCRIPTOR = _CDATAPUBLISHER_CLIENTUPDATEAPPJOB_NOTIFICATION,
-  __module__ = 'steammessages_datapublisher_pb2'
+CDataPublisher_ClientUpdateAppJob_Notification = _reflection.GeneratedProtocolMessageType('CDataPublisher_ClientUpdateAppJob_Notification', (_message.Message,), {
+  'DESCRIPTOR' : _CDATAPUBLISHER_CLIENTUPDATEAPPJOB_NOTIFICATION,
+  '__module__' : 'steammessages_datapublisher_pb2'
   # @@protoc_insertion_point(class_scope:CDataPublisher_ClientUpdateAppJob_Notification)
-  ))
+  })
 _sym_db.RegisterMessage(CDataPublisher_ClientUpdateAppJob_Notification)
 
-CValveHWSurvey_GetSurveySchedule_Request = _reflection.GeneratedProtocolMessageType('CValveHWSurvey_GetSurveySchedule_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CVALVEHWSURVEY_GETSURVEYSCHEDULE_REQUEST,
-  __module__ = 'steammessages_datapublisher_pb2'
+CValveHWSurvey_GetSurveySchedule_Request = _reflection.GeneratedProtocolMessageType('CValveHWSurvey_GetSurveySchedule_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CVALVEHWSURVEY_GETSURVEYSCHEDULE_REQUEST,
+  '__module__' : 'steammessages_datapublisher_pb2'
   # @@protoc_insertion_point(class_scope:CValveHWSurvey_GetSurveySchedule_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CValveHWSurvey_GetSurveySchedule_Request)
 
-CValveHWSurvey_GetSurveySchedule_Response = _reflection.GeneratedProtocolMessageType('CValveHWSurvey_GetSurveySchedule_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CVALVEHWSURVEY_GETSURVEYSCHEDULE_RESPONSE,
-  __module__ = 'steammessages_datapublisher_pb2'
+CValveHWSurvey_GetSurveySchedule_Response = _reflection.GeneratedProtocolMessageType('CValveHWSurvey_GetSurveySchedule_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CVALVEHWSURVEY_GETSURVEYSCHEDULE_RESPONSE,
+  '__module__' : 'steammessages_datapublisher_pb2'
   # @@protoc_insertion_point(class_scope:CValveHWSurvey_GetSurveySchedule_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CValveHWSurvey_GetSurveySchedule_Response)
 
 
@@ -427,9 +431,10 @@ _DATAPUBLISHER = _descriptor.ServiceDescriptor(
   full_name='DataPublisher',
   file=DESCRIPTOR,
   index=0,
-  serialized_options=_b('\202\265\030#Data Publisher (DP) server services'),
-  serialized_start=1382,
-  serialized_end=1634,
+  serialized_options=b'\202\265\030#Data Publisher (DP) server services',
+  create_key=_descriptor._internal_create_key,
+  serialized_start=1408,
+  serialized_end=1660,
   methods=[
   _descriptor.MethodDescriptor(
     name='ClientContentCorruptionReport',
@@ -439,6 +444,7 @@ _DATAPUBLISHER = _descriptor.ServiceDescriptor(
     input_type=_CDATAPUBLISHER_CLIENTCONTENTCORRUPTIONREPORT_NOTIFICATION,
     output_type=steammessages__unified__base__pb2._NORESPONSE,
     serialized_options=None,
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='ClientUpdateAppJobReport',
@@ -448,6 +454,7 @@ _DATAPUBLISHER = _descriptor.ServiceDescriptor(
     input_type=_CDATAPUBLISHER_CLIENTUPDATEAPPJOB_NOTIFICATION,
     output_type=steammessages__unified__base__pb2._NORESPONSE,
     serialized_options=None,
+    create_key=_descriptor._internal_create_key,
   ),
 ])
 _sym_db.RegisterServiceDescriptor(_DATAPUBLISHER)
@@ -460,9 +467,10 @@ _VALVEHWSURVEY = _descriptor.ServiceDescriptor(
   full_name='ValveHWSurvey',
   file=DESCRIPTOR,
   index=1,
-  serialized_options=_b('\202\265\030\rValveHWSurvey'),
-  serialized_start=1637,
-  serialized_end=1809,
+  serialized_options=b'\202\265\030\rValveHWSurvey',
+  create_key=_descriptor._internal_create_key,
+  serialized_start=1663,
+  serialized_end=1835,
   methods=[
   _descriptor.MethodDescriptor(
     name='GetSurveySchedule',
@@ -471,7 +479,8 @@ _VALVEHWSURVEY = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CVALVEHWSURVEY_GETSURVEYSCHEDULE_REQUEST,
     output_type=_CVALVEHWSURVEY_GETSURVEYSCHEDULE_RESPONSE,
-    serialized_options=_b('\202\265\030\027Should I run the survey'),
+    serialized_options=b'\202\265\030\027Should I run the survey',
+    create_key=_descriptor._internal_create_key,
   ),
 ])
 _sym_db.RegisterServiceDescriptor(_VALVEHWSURVEY)
diff --git a/steam/protobufs/steammessages_depotbuilder_pb2.py b/steam/protobufs/steammessages_depotbuilder_pb2.py
index 547cacd..1a4a7ab 100644
--- a/steam/protobufs/steammessages_depotbuilder_pb2.py
+++ b/steam/protobufs/steammessages_depotbuilder_pb2.py
@@ -1,9 +1,7 @@
 # -*- coding: utf-8 -*-
 # Generated by the protocol buffer compiler.  DO NOT EDIT!
 # source: steammessages_depotbuilder.proto
-
-import sys
-_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1'))
+"""Generated protocol buffer code."""
 from google.protobuf import descriptor as _descriptor
 from google.protobuf import message as _message
 from google.protobuf import reflection as _reflection
@@ -15,6 +13,7 @@ from google.protobuf import service_reflection
 _sym_db = _symbol_database.Default()
 
 
+import steam.protobufs.steammessages_base_pb2 as steammessages__base__pb2
 import steam.protobufs.steammessages_unified_base_pb2 as steammessages__unified__base__pb2
 
 
@@ -22,10 +21,11 @@ DESCRIPTOR = _descriptor.FileDescriptor(
   name='steammessages_depotbuilder.proto',
   package='',
   syntax='proto2',
-  serialized_options=_b('\220\001\001'),
-  serialized_pb=_b('\n steammessages_depotbuilder.proto\x1a steammessages_unified_base.proto\"\x8e\x01\n&CContentBuilder_InitDepotBuild_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x0f\n\x07\x64\x65potid\x18\x02 \x01(\r\x12\x17\n\x0fworkshop_itemid\x18\x03 \x01(\x04\x12\x14\n\x0c\x66or_local_cs\x18\x04 \x01(\x08\x12\x15\n\rtarget_branch\x18\x05 \x01(\t\"\x88\x03\n\'CContentBuilder_InitDepotBuild_Response\x12\x1b\n\x13\x62\x61seline_manifestid\x18\x01 \x01(\x04\x12\x12\n\nchunk_size\x18\x02 \x01(\r\x12\x0f\n\x07\x61\x65s_key\x18\x03 \x01(\x0c\x12\x0f\n\x07rsa_key\x18\x04 \x01(\x0c\x12\x10\n\x08url_host\x18\x05 \x01(\t\x12 \n\x18offset_detection_enabled\x18\x06 \x01(\x08\x12(\n offset_detection_min_clean_chunk\x18\x07 \x01(\r\x12)\n!offset_detection_blast_radius_pre\x18\x08 \x01(\r\x12*\n\"offset_detection_blast_radius_post\x18\t \x01(\r\x12)\n!offset_detection_max_distance_pre\x18\n \x01(\r\x12*\n\"offset_detection_max_distance_post\x18\x0b \x01(\r\"\xad\x01\n(CContentBuilder_StartDepotUpload_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x0f\n\x07\x64\x65potid\x18\x02 \x01(\r\x12\x17\n\x0fworkshop_itemid\x18\x03 \x01(\x04\x12\x14\n\x0c\x66or_local_cs\x18\x04 \x01(\x08\x12\x1b\n\x13\x62\x61seline_manifestid\x18\x05 \x01(\x04\x12\x15\n\rmanifest_size\x18\x06 \x01(\r\"G\n)CContentBuilder_StartDepotUpload_Response\x12\x1a\n\x12\x64\x65pot_build_handle\x18\x01 \x01(\x04\"Z\n-CContentBuilder_GetMissingDepotChunks_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x1a\n\x12\x64\x65pot_build_handle\x18\x02 \x01(\x04\"\xd2\x01\n.CContentBuilder_GetMissingDepotChunks_Response\x12N\n\x0emissing_chunks\x18\x01 \x03(\x0b\x32\x36.CContentBuilder_GetMissingDepotChunks_Response.Chunks\x12\x1c\n\x14total_missing_chunks\x18\x02 \x01(\r\x12\x1b\n\x13total_missing_bytes\x18\x03 \x01(\x04\x1a\x15\n\x06\x43hunks\x12\x0b\n\x03sha\x18\x01 \x01(\x0c\"V\n)CContentBuilder_FinishDepotUpload_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x1a\n\x12\x64\x65pot_build_handle\x18\x02 \x01(\x04\"U\n*CContentBuilder_FinishDepotUpload_Response\x12\x12\n\nmanifestid\x18\x01 \x01(\x04\x12\x13\n\x0bprev_reused\x18\x02 \x01(\x08\"\xd9\x01\n&CContentBuilder_CommitAppBuild_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12G\n\x0f\x64\x65pot_manifests\x18\x02 \x03(\x0b\x32..CContentBuilder_CommitAppBuild_Request.Depots\x12\x13\n\x0b\x62uild_notes\x18\x04 \x01(\t\x12\x13\n\x0blive_branch\x18\x05 \x01(\t\x1a-\n\x06\x44\x65pots\x12\x0f\n\x07\x64\x65potid\x18\x01 \x01(\r\x12\x12\n\nmanifestid\x18\x02 \x01(\x04\":\n\'CContentBuilder_CommitAppBuild_Response\x12\x0f\n\x07\x62uildid\x18\x01 \x01(\r\"c\n)CContentBuilder_SignInstallScript_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x0f\n\x07\x64\x65potid\x18\x02 \x01(\r\x12\x16\n\x0einstall_script\x18\x03 \x01(\t\"K\n*CContentBuilder_SignInstallScript_Response\x12\x1d\n\x15signed_install_script\x18\x01 \x01(\t2\x92\x08\n\x0e\x43ontentBuilder\x12\x98\x01\n\x0eInitDepotBuild\x12\'.CContentBuilder_InitDepotBuild_Request\x1a(.CContentBuilder_InitDepotBuild_Response\"3\x82\xb5\x18/Get inital parameters to start building a depot\x12\x9e\x01\n\x10StartDepotUpload\x12).CContentBuilder_StartDepotUpload_Request\x1a*.CContentBuilder_StartDepotUpload_Response\"3\x82\xb5\x18/Start uploading manifest and chunks for a depot\x12\xa9\x01\n\x15GetMissingDepotChunks\x12..CContentBuilder_GetMissingDepotChunks_Request\x1a/.CContentBuilder_GetMissingDepotChunks_Response\"/\x82\xb5\x18+Get list of missing chunks for depot upload\x12\xb1\x01\n\x11\x46inishDepotUpload\x12*.CContentBuilder_FinishDepotUpload_Request\x1a+.CContentBuilder_FinishDepotUpload_Response\"C\x82\xb5\x18?Commit a depot build after manifest and all chunks are uploaded\x12\xa7\x01\n\x0e\x43ommitAppBuild\x12\'.CContentBuilder_CommitAppBuild_Request\x1a(.CContentBuilder_CommitAppBuild_Response\"B\x82\xb5\x18>Combine previous depot uploads into an app build and commit it\x12\x88\x01\n\x11SignInstallScript\x12*.CContentBuilder_SignInstallScript_Request\x1a+.CContentBuilder_SignInstallScript_Response\"\x1a\x82\xb5\x18\x16Sign an install script\x1a/\x82\xb5\x18+Interface to build and upload depot contentB\x03\x90\x01\x01')
+  serialized_options=b'\220\001\001',
+  create_key=_descriptor._internal_create_key,
+  serialized_pb=b'\n steammessages_depotbuilder.proto\x1a\x18steammessages_base.proto\x1a steammessages_unified_base.proto\"\x8e\x01\n&CContentBuilder_InitDepotBuild_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x0f\n\x07\x64\x65potid\x18\x02 \x01(\r\x12\x17\n\x0fworkshop_itemid\x18\x03 \x01(\x04\x12\x14\n\x0c\x66or_local_cs\x18\x04 \x01(\x08\x12\x15\n\rtarget_branch\x18\x05 \x01(\t\"\x88\x03\n\'CContentBuilder_InitDepotBuild_Response\x12\x1b\n\x13\x62\x61seline_manifestid\x18\x01 \x01(\x04\x12\x12\n\nchunk_size\x18\x02 \x01(\r\x12\x0f\n\x07\x61\x65s_key\x18\x03 \x01(\x0c\x12\x0f\n\x07rsa_key\x18\x04 \x01(\x0c\x12\x10\n\x08url_host\x18\x05 \x01(\t\x12 \n\x18offset_detection_enabled\x18\x06 \x01(\x08\x12(\n offset_detection_min_clean_chunk\x18\x07 \x01(\r\x12)\n!offset_detection_blast_radius_pre\x18\x08 \x01(\r\x12*\n\"offset_detection_blast_radius_post\x18\t \x01(\r\x12)\n!offset_detection_max_distance_pre\x18\n \x01(\r\x12*\n\"offset_detection_max_distance_post\x18\x0b \x01(\r\"\xad\x01\n(CContentBuilder_StartDepotUpload_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x0f\n\x07\x64\x65potid\x18\x02 \x01(\r\x12\x17\n\x0fworkshop_itemid\x18\x03 \x01(\x04\x12\x14\n\x0c\x66or_local_cs\x18\x04 \x01(\x08\x12\x1b\n\x13\x62\x61seline_manifestid\x18\x05 \x01(\x04\x12\x15\n\rmanifest_size\x18\x06 \x01(\r\"G\n)CContentBuilder_StartDepotUpload_Response\x12\x1a\n\x12\x64\x65pot_build_handle\x18\x01 \x01(\x04\"Z\n-CContentBuilder_GetMissingDepotChunks_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x1a\n\x12\x64\x65pot_build_handle\x18\x02 \x01(\x04\"\xd2\x01\n.CContentBuilder_GetMissingDepotChunks_Response\x12N\n\x0emissing_chunks\x18\x01 \x03(\x0b\x32\x36.CContentBuilder_GetMissingDepotChunks_Response.Chunks\x12\x1c\n\x14total_missing_chunks\x18\x02 \x01(\r\x12\x1b\n\x13total_missing_bytes\x18\x03 \x01(\x04\x1a\x15\n\x06\x43hunks\x12\x0b\n\x03sha\x18\x01 \x01(\x0c\"V\n)CContentBuilder_FinishDepotUpload_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x1a\n\x12\x64\x65pot_build_handle\x18\x02 \x01(\x04\"U\n*CContentBuilder_FinishDepotUpload_Response\x12\x12\n\nmanifestid\x18\x01 \x01(\x04\x12\x13\n\x0bprev_reused\x18\x02 \x01(\x08\"\xd9\x01\n&CContentBuilder_CommitAppBuild_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12G\n\x0f\x64\x65pot_manifests\x18\x02 \x03(\x0b\x32..CContentBuilder_CommitAppBuild_Request.Depots\x12\x13\n\x0b\x62uild_notes\x18\x04 \x01(\t\x12\x13\n\x0blive_branch\x18\x05 \x01(\t\x1a-\n\x06\x44\x65pots\x12\x0f\n\x07\x64\x65potid\x18\x01 \x01(\r\x12\x12\n\nmanifestid\x18\x02 \x01(\x04\":\n\'CContentBuilder_CommitAppBuild_Response\x12\x0f\n\x07\x62uildid\x18\x01 \x01(\r\"c\n)CContentBuilder_SignInstallScript_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x0f\n\x07\x64\x65potid\x18\x02 \x01(\r\x12\x16\n\x0einstall_script\x18\x03 \x01(\t\"K\n*CContentBuilder_SignInstallScript_Response\x12\x1d\n\x15signed_install_script\x18\x01 \x01(\t2\x92\x08\n\x0e\x43ontentBuilder\x12\x98\x01\n\x0eInitDepotBuild\x12\'.CContentBuilder_InitDepotBuild_Request\x1a(.CContentBuilder_InitDepotBuild_Response\"3\x82\xb5\x18/Get inital parameters to start building a depot\x12\x9e\x01\n\x10StartDepotUpload\x12).CContentBuilder_StartDepotUpload_Request\x1a*.CContentBuilder_StartDepotUpload_Response\"3\x82\xb5\x18/Start uploading manifest and chunks for a depot\x12\xa9\x01\n\x15GetMissingDepotChunks\x12..CContentBuilder_GetMissingDepotChunks_Request\x1a/.CContentBuilder_GetMissingDepotChunks_Response\"/\x82\xb5\x18+Get list of missing chunks for depot upload\x12\xb1\x01\n\x11\x46inishDepotUpload\x12*.CContentBuilder_FinishDepotUpload_Request\x1a+.CContentBuilder_FinishDepotUpload_Response\"C\x82\xb5\x18?Commit a depot build after manifest and all chunks are uploaded\x12\xa7\x01\n\x0e\x43ommitAppBuild\x12\'.CContentBuilder_CommitAppBuild_Request\x1a(.CContentBuilder_CommitAppBuild_Response\"B\x82\xb5\x18>Combine previous depot uploads into an app build and commit it\x12\x88\x01\n\x11SignInstallScript\x12*.CContentBuilder_SignInstallScript_Request\x1a+.CContentBuilder_SignInstallScript_Response\"\x1a\x82\xb5\x18\x16Sign an install script\x1a/\x82\xb5\x18+Interface to build and upload depot contentB\x03\x90\x01\x01'
   ,
-  dependencies=[steammessages__unified__base__pb2.DESCRIPTOR,])
+  dependencies=[steammessages__base__pb2.DESCRIPTOR,steammessages__unified__base__pb2.DESCRIPTOR,])
 
 
 
@@ -36,6 +36,7 @@ _CCONTENTBUILDER_INITDEPOTBUILD_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CContentBuilder_InitDepotBuild_Request.appid', index=0,
@@ -43,35 +44,35 @@ _CCONTENTBUILDER_INITDEPOTBUILD_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='depotid', full_name='CContentBuilder_InitDepotBuild_Request.depotid', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='workshop_itemid', full_name='CContentBuilder_InitDepotBuild_Request.workshop_itemid', index=2,
       number=3, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='for_local_cs', full_name='CContentBuilder_InitDepotBuild_Request.for_local_cs', index=3,
       number=4, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='target_branch', full_name='CContentBuilder_InitDepotBuild_Request.target_branch', index=4,
       number=5, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -84,8 +85,8 @@ _CCONTENTBUILDER_INITDEPOTBUILD_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=71,
-  serialized_end=213,
+  serialized_start=97,
+  serialized_end=239,
 )
 
 
@@ -95,6 +96,7 @@ _CCONTENTBUILDER_INITDEPOTBUILD_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='baseline_manifestid', full_name='CContentBuilder_InitDepotBuild_Response.baseline_manifestid', index=0,
@@ -102,77 +104,77 @@ _CCONTENTBUILDER_INITDEPOTBUILD_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='chunk_size', full_name='CContentBuilder_InitDepotBuild_Response.chunk_size', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='aes_key', full_name='CContentBuilder_InitDepotBuild_Response.aes_key', index=2,
       number=3, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='rsa_key', full_name='CContentBuilder_InitDepotBuild_Response.rsa_key', index=3,
       number=4, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='url_host', full_name='CContentBuilder_InitDepotBuild_Response.url_host', index=4,
       number=5, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='offset_detection_enabled', full_name='CContentBuilder_InitDepotBuild_Response.offset_detection_enabled', index=5,
       number=6, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='offset_detection_min_clean_chunk', full_name='CContentBuilder_InitDepotBuild_Response.offset_detection_min_clean_chunk', index=6,
       number=7, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='offset_detection_blast_radius_pre', full_name='CContentBuilder_InitDepotBuild_Response.offset_detection_blast_radius_pre', index=7,
       number=8, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='offset_detection_blast_radius_post', full_name='CContentBuilder_InitDepotBuild_Response.offset_detection_blast_radius_post', index=8,
       number=9, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='offset_detection_max_distance_pre', full_name='CContentBuilder_InitDepotBuild_Response.offset_detection_max_distance_pre', index=9,
       number=10, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='offset_detection_max_distance_post', full_name='CContentBuilder_InitDepotBuild_Response.offset_detection_max_distance_post', index=10,
       number=11, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -185,8 +187,8 @@ _CCONTENTBUILDER_INITDEPOTBUILD_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=216,
-  serialized_end=608,
+  serialized_start=242,
+  serialized_end=634,
 )
 
 
@@ -196,6 +198,7 @@ _CCONTENTBUILDER_STARTDEPOTUPLOAD_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CContentBuilder_StartDepotUpload_Request.appid', index=0,
@@ -203,42 +206,42 @@ _CCONTENTBUILDER_STARTDEPOTUPLOAD_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='depotid', full_name='CContentBuilder_StartDepotUpload_Request.depotid', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='workshop_itemid', full_name='CContentBuilder_StartDepotUpload_Request.workshop_itemid', index=2,
       number=3, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='for_local_cs', full_name='CContentBuilder_StartDepotUpload_Request.for_local_cs', index=3,
       number=4, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='baseline_manifestid', full_name='CContentBuilder_StartDepotUpload_Request.baseline_manifestid', index=4,
       number=5, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='manifest_size', full_name='CContentBuilder_StartDepotUpload_Request.manifest_size', index=5,
       number=6, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -251,8 +254,8 @@ _CCONTENTBUILDER_STARTDEPOTUPLOAD_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=611,
-  serialized_end=784,
+  serialized_start=637,
+  serialized_end=810,
 )
 
 
@@ -262,6 +265,7 @@ _CCONTENTBUILDER_STARTDEPOTUPLOAD_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='depot_build_handle', full_name='CContentBuilder_StartDepotUpload_Response.depot_build_handle', index=0,
@@ -269,7 +273,7 @@ _CCONTENTBUILDER_STARTDEPOTUPLOAD_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -282,8 +286,8 @@ _CCONTENTBUILDER_STARTDEPOTUPLOAD_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=786,
-  serialized_end=857,
+  serialized_start=812,
+  serialized_end=883,
 )
 
 
@@ -293,6 +297,7 @@ _CCONTENTBUILDER_GETMISSINGDEPOTCHUNKS_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CContentBuilder_GetMissingDepotChunks_Request.appid', index=0,
@@ -300,14 +305,14 @@ _CCONTENTBUILDER_GETMISSINGDEPOTCHUNKS_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='depot_build_handle', full_name='CContentBuilder_GetMissingDepotChunks_Request.depot_build_handle', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -320,8 +325,8 @@ _CCONTENTBUILDER_GETMISSINGDEPOTCHUNKS_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=859,
-  serialized_end=949,
+  serialized_start=885,
+  serialized_end=975,
 )
 
 
@@ -331,14 +336,15 @@ _CCONTENTBUILDER_GETMISSINGDEPOTCHUNKS_RESPONSE_CHUNKS = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='sha', full_name='CContentBuilder_GetMissingDepotChunks_Response.Chunks.sha', index=0,
       number=1, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -351,8 +357,8 @@ _CCONTENTBUILDER_GETMISSINGDEPOTCHUNKS_RESPONSE_CHUNKS = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1141,
-  serialized_end=1162,
+  serialized_start=1167,
+  serialized_end=1188,
 )
 
 _CCONTENTBUILDER_GETMISSINGDEPOTCHUNKS_RESPONSE = _descriptor.Descriptor(
@@ -361,6 +367,7 @@ _CCONTENTBUILDER_GETMISSINGDEPOTCHUNKS_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='missing_chunks', full_name='CContentBuilder_GetMissingDepotChunks_Response.missing_chunks', index=0,
@@ -368,21 +375,21 @@ _CCONTENTBUILDER_GETMISSINGDEPOTCHUNKS_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='total_missing_chunks', full_name='CContentBuilder_GetMissingDepotChunks_Response.total_missing_chunks', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='total_missing_bytes', full_name='CContentBuilder_GetMissingDepotChunks_Response.total_missing_bytes', index=2,
       number=3, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -395,8 +402,8 @@ _CCONTENTBUILDER_GETMISSINGDEPOTCHUNKS_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=952,
-  serialized_end=1162,
+  serialized_start=978,
+  serialized_end=1188,
 )
 
 
@@ -406,6 +413,7 @@ _CCONTENTBUILDER_FINISHDEPOTUPLOAD_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CContentBuilder_FinishDepotUpload_Request.appid', index=0,
@@ -413,14 +421,14 @@ _CCONTENTBUILDER_FINISHDEPOTUPLOAD_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='depot_build_handle', full_name='CContentBuilder_FinishDepotUpload_Request.depot_build_handle', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -433,8 +441,8 @@ _CCONTENTBUILDER_FINISHDEPOTUPLOAD_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1164,
-  serialized_end=1250,
+  serialized_start=1190,
+  serialized_end=1276,
 )
 
 
@@ -444,6 +452,7 @@ _CCONTENTBUILDER_FINISHDEPOTUPLOAD_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='manifestid', full_name='CContentBuilder_FinishDepotUpload_Response.manifestid', index=0,
@@ -451,14 +460,14 @@ _CCONTENTBUILDER_FINISHDEPOTUPLOAD_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='prev_reused', full_name='CContentBuilder_FinishDepotUpload_Response.prev_reused', index=1,
       number=2, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -471,8 +480,8 @@ _CCONTENTBUILDER_FINISHDEPOTUPLOAD_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1252,
-  serialized_end=1337,
+  serialized_start=1278,
+  serialized_end=1363,
 )
 
 
@@ -482,6 +491,7 @@ _CCONTENTBUILDER_COMMITAPPBUILD_REQUEST_DEPOTS = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='depotid', full_name='CContentBuilder_CommitAppBuild_Request.Depots.depotid', index=0,
@@ -489,14 +499,14 @@ _CCONTENTBUILDER_COMMITAPPBUILD_REQUEST_DEPOTS = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='manifestid', full_name='CContentBuilder_CommitAppBuild_Request.Depots.manifestid', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -509,8 +519,8 @@ _CCONTENTBUILDER_COMMITAPPBUILD_REQUEST_DEPOTS = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1512,
-  serialized_end=1557,
+  serialized_start=1538,
+  serialized_end=1583,
 )
 
 _CCONTENTBUILDER_COMMITAPPBUILD_REQUEST = _descriptor.Descriptor(
@@ -519,6 +529,7 @@ _CCONTENTBUILDER_COMMITAPPBUILD_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CContentBuilder_CommitAppBuild_Request.appid', index=0,
@@ -526,28 +537,28 @@ _CCONTENTBUILDER_COMMITAPPBUILD_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='depot_manifests', full_name='CContentBuilder_CommitAppBuild_Request.depot_manifests', index=1,
       number=2, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='build_notes', full_name='CContentBuilder_CommitAppBuild_Request.build_notes', index=2,
       number=4, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='live_branch', full_name='CContentBuilder_CommitAppBuild_Request.live_branch', index=3,
       number=5, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -560,8 +571,8 @@ _CCONTENTBUILDER_COMMITAPPBUILD_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1340,
-  serialized_end=1557,
+  serialized_start=1366,
+  serialized_end=1583,
 )
 
 
@@ -571,6 +582,7 @@ _CCONTENTBUILDER_COMMITAPPBUILD_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='buildid', full_name='CContentBuilder_CommitAppBuild_Response.buildid', index=0,
@@ -578,7 +590,7 @@ _CCONTENTBUILDER_COMMITAPPBUILD_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -591,8 +603,8 @@ _CCONTENTBUILDER_COMMITAPPBUILD_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1559,
-  serialized_end=1617,
+  serialized_start=1585,
+  serialized_end=1643,
 )
 
 
@@ -602,6 +614,7 @@ _CCONTENTBUILDER_SIGNINSTALLSCRIPT_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CContentBuilder_SignInstallScript_Request.appid', index=0,
@@ -609,21 +622,21 @@ _CCONTENTBUILDER_SIGNINSTALLSCRIPT_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='depotid', full_name='CContentBuilder_SignInstallScript_Request.depotid', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='install_script', full_name='CContentBuilder_SignInstallScript_Request.install_script', index=2,
       number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -636,8 +649,8 @@ _CCONTENTBUILDER_SIGNINSTALLSCRIPT_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1619,
-  serialized_end=1718,
+  serialized_start=1645,
+  serialized_end=1744,
 )
 
 
@@ -647,14 +660,15 @@ _CCONTENTBUILDER_SIGNINSTALLSCRIPT_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='signed_install_script', full_name='CContentBuilder_SignInstallScript_Response.signed_install_script', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -667,8 +681,8 @@ _CCONTENTBUILDER_SIGNINSTALLSCRIPT_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1720,
-  serialized_end=1795,
+  serialized_start=1746,
+  serialized_end=1821,
 )
 
 _CCONTENTBUILDER_GETMISSINGDEPOTCHUNKS_RESPONSE_CHUNKS.containing_type = _CCONTENTBUILDER_GETMISSINGDEPOTCHUNKS_RESPONSE
@@ -689,104 +703,104 @@ DESCRIPTOR.message_types_by_name['CContentBuilder_SignInstallScript_Request'] =
 DESCRIPTOR.message_types_by_name['CContentBuilder_SignInstallScript_Response'] = _CCONTENTBUILDER_SIGNINSTALLSCRIPT_RESPONSE
 _sym_db.RegisterFileDescriptor(DESCRIPTOR)
 
-CContentBuilder_InitDepotBuild_Request = _reflection.GeneratedProtocolMessageType('CContentBuilder_InitDepotBuild_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCONTENTBUILDER_INITDEPOTBUILD_REQUEST,
-  __module__ = 'steammessages_depotbuilder_pb2'
+CContentBuilder_InitDepotBuild_Request = _reflection.GeneratedProtocolMessageType('CContentBuilder_InitDepotBuild_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCONTENTBUILDER_INITDEPOTBUILD_REQUEST,
+  '__module__' : 'steammessages_depotbuilder_pb2'
   # @@protoc_insertion_point(class_scope:CContentBuilder_InitDepotBuild_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CContentBuilder_InitDepotBuild_Request)
 
-CContentBuilder_InitDepotBuild_Response = _reflection.GeneratedProtocolMessageType('CContentBuilder_InitDepotBuild_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCONTENTBUILDER_INITDEPOTBUILD_RESPONSE,
-  __module__ = 'steammessages_depotbuilder_pb2'
+CContentBuilder_InitDepotBuild_Response = _reflection.GeneratedProtocolMessageType('CContentBuilder_InitDepotBuild_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCONTENTBUILDER_INITDEPOTBUILD_RESPONSE,
+  '__module__' : 'steammessages_depotbuilder_pb2'
   # @@protoc_insertion_point(class_scope:CContentBuilder_InitDepotBuild_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CContentBuilder_InitDepotBuild_Response)
 
-CContentBuilder_StartDepotUpload_Request = _reflection.GeneratedProtocolMessageType('CContentBuilder_StartDepotUpload_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCONTENTBUILDER_STARTDEPOTUPLOAD_REQUEST,
-  __module__ = 'steammessages_depotbuilder_pb2'
+CContentBuilder_StartDepotUpload_Request = _reflection.GeneratedProtocolMessageType('CContentBuilder_StartDepotUpload_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCONTENTBUILDER_STARTDEPOTUPLOAD_REQUEST,
+  '__module__' : 'steammessages_depotbuilder_pb2'
   # @@protoc_insertion_point(class_scope:CContentBuilder_StartDepotUpload_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CContentBuilder_StartDepotUpload_Request)
 
-CContentBuilder_StartDepotUpload_Response = _reflection.GeneratedProtocolMessageType('CContentBuilder_StartDepotUpload_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCONTENTBUILDER_STARTDEPOTUPLOAD_RESPONSE,
-  __module__ = 'steammessages_depotbuilder_pb2'
+CContentBuilder_StartDepotUpload_Response = _reflection.GeneratedProtocolMessageType('CContentBuilder_StartDepotUpload_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCONTENTBUILDER_STARTDEPOTUPLOAD_RESPONSE,
+  '__module__' : 'steammessages_depotbuilder_pb2'
   # @@protoc_insertion_point(class_scope:CContentBuilder_StartDepotUpload_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CContentBuilder_StartDepotUpload_Response)
 
-CContentBuilder_GetMissingDepotChunks_Request = _reflection.GeneratedProtocolMessageType('CContentBuilder_GetMissingDepotChunks_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCONTENTBUILDER_GETMISSINGDEPOTCHUNKS_REQUEST,
-  __module__ = 'steammessages_depotbuilder_pb2'
+CContentBuilder_GetMissingDepotChunks_Request = _reflection.GeneratedProtocolMessageType('CContentBuilder_GetMissingDepotChunks_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCONTENTBUILDER_GETMISSINGDEPOTCHUNKS_REQUEST,
+  '__module__' : 'steammessages_depotbuilder_pb2'
   # @@protoc_insertion_point(class_scope:CContentBuilder_GetMissingDepotChunks_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CContentBuilder_GetMissingDepotChunks_Request)
 
-CContentBuilder_GetMissingDepotChunks_Response = _reflection.GeneratedProtocolMessageType('CContentBuilder_GetMissingDepotChunks_Response', (_message.Message,), dict(
+CContentBuilder_GetMissingDepotChunks_Response = _reflection.GeneratedProtocolMessageType('CContentBuilder_GetMissingDepotChunks_Response', (_message.Message,), {
 
-  Chunks = _reflection.GeneratedProtocolMessageType('Chunks', (_message.Message,), dict(
-    DESCRIPTOR = _CCONTENTBUILDER_GETMISSINGDEPOTCHUNKS_RESPONSE_CHUNKS,
-    __module__ = 'steammessages_depotbuilder_pb2'
+  'Chunks' : _reflection.GeneratedProtocolMessageType('Chunks', (_message.Message,), {
+    'DESCRIPTOR' : _CCONTENTBUILDER_GETMISSINGDEPOTCHUNKS_RESPONSE_CHUNKS,
+    '__module__' : 'steammessages_depotbuilder_pb2'
     # @@protoc_insertion_point(class_scope:CContentBuilder_GetMissingDepotChunks_Response.Chunks)
-    ))
+    })
   ,
-  DESCRIPTOR = _CCONTENTBUILDER_GETMISSINGDEPOTCHUNKS_RESPONSE,
-  __module__ = 'steammessages_depotbuilder_pb2'
+  'DESCRIPTOR' : _CCONTENTBUILDER_GETMISSINGDEPOTCHUNKS_RESPONSE,
+  '__module__' : 'steammessages_depotbuilder_pb2'
   # @@protoc_insertion_point(class_scope:CContentBuilder_GetMissingDepotChunks_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CContentBuilder_GetMissingDepotChunks_Response)
 _sym_db.RegisterMessage(CContentBuilder_GetMissingDepotChunks_Response.Chunks)
 
-CContentBuilder_FinishDepotUpload_Request = _reflection.GeneratedProtocolMessageType('CContentBuilder_FinishDepotUpload_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCONTENTBUILDER_FINISHDEPOTUPLOAD_REQUEST,
-  __module__ = 'steammessages_depotbuilder_pb2'
+CContentBuilder_FinishDepotUpload_Request = _reflection.GeneratedProtocolMessageType('CContentBuilder_FinishDepotUpload_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCONTENTBUILDER_FINISHDEPOTUPLOAD_REQUEST,
+  '__module__' : 'steammessages_depotbuilder_pb2'
   # @@protoc_insertion_point(class_scope:CContentBuilder_FinishDepotUpload_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CContentBuilder_FinishDepotUpload_Request)
 
-CContentBuilder_FinishDepotUpload_Response = _reflection.GeneratedProtocolMessageType('CContentBuilder_FinishDepotUpload_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCONTENTBUILDER_FINISHDEPOTUPLOAD_RESPONSE,
-  __module__ = 'steammessages_depotbuilder_pb2'
+CContentBuilder_FinishDepotUpload_Response = _reflection.GeneratedProtocolMessageType('CContentBuilder_FinishDepotUpload_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCONTENTBUILDER_FINISHDEPOTUPLOAD_RESPONSE,
+  '__module__' : 'steammessages_depotbuilder_pb2'
   # @@protoc_insertion_point(class_scope:CContentBuilder_FinishDepotUpload_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CContentBuilder_FinishDepotUpload_Response)
 
-CContentBuilder_CommitAppBuild_Request = _reflection.GeneratedProtocolMessageType('CContentBuilder_CommitAppBuild_Request', (_message.Message,), dict(
+CContentBuilder_CommitAppBuild_Request = _reflection.GeneratedProtocolMessageType('CContentBuilder_CommitAppBuild_Request', (_message.Message,), {
 
-  Depots = _reflection.GeneratedProtocolMessageType('Depots', (_message.Message,), dict(
-    DESCRIPTOR = _CCONTENTBUILDER_COMMITAPPBUILD_REQUEST_DEPOTS,
-    __module__ = 'steammessages_depotbuilder_pb2'
+  'Depots' : _reflection.GeneratedProtocolMessageType('Depots', (_message.Message,), {
+    'DESCRIPTOR' : _CCONTENTBUILDER_COMMITAPPBUILD_REQUEST_DEPOTS,
+    '__module__' : 'steammessages_depotbuilder_pb2'
     # @@protoc_insertion_point(class_scope:CContentBuilder_CommitAppBuild_Request.Depots)
-    ))
+    })
   ,
-  DESCRIPTOR = _CCONTENTBUILDER_COMMITAPPBUILD_REQUEST,
-  __module__ = 'steammessages_depotbuilder_pb2'
+  'DESCRIPTOR' : _CCONTENTBUILDER_COMMITAPPBUILD_REQUEST,
+  '__module__' : 'steammessages_depotbuilder_pb2'
   # @@protoc_insertion_point(class_scope:CContentBuilder_CommitAppBuild_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CContentBuilder_CommitAppBuild_Request)
 _sym_db.RegisterMessage(CContentBuilder_CommitAppBuild_Request.Depots)
 
-CContentBuilder_CommitAppBuild_Response = _reflection.GeneratedProtocolMessageType('CContentBuilder_CommitAppBuild_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCONTENTBUILDER_COMMITAPPBUILD_RESPONSE,
-  __module__ = 'steammessages_depotbuilder_pb2'
+CContentBuilder_CommitAppBuild_Response = _reflection.GeneratedProtocolMessageType('CContentBuilder_CommitAppBuild_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCONTENTBUILDER_COMMITAPPBUILD_RESPONSE,
+  '__module__' : 'steammessages_depotbuilder_pb2'
   # @@protoc_insertion_point(class_scope:CContentBuilder_CommitAppBuild_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CContentBuilder_CommitAppBuild_Response)
 
-CContentBuilder_SignInstallScript_Request = _reflection.GeneratedProtocolMessageType('CContentBuilder_SignInstallScript_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCONTENTBUILDER_SIGNINSTALLSCRIPT_REQUEST,
-  __module__ = 'steammessages_depotbuilder_pb2'
+CContentBuilder_SignInstallScript_Request = _reflection.GeneratedProtocolMessageType('CContentBuilder_SignInstallScript_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCONTENTBUILDER_SIGNINSTALLSCRIPT_REQUEST,
+  '__module__' : 'steammessages_depotbuilder_pb2'
   # @@protoc_insertion_point(class_scope:CContentBuilder_SignInstallScript_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CContentBuilder_SignInstallScript_Request)
 
-CContentBuilder_SignInstallScript_Response = _reflection.GeneratedProtocolMessageType('CContentBuilder_SignInstallScript_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCONTENTBUILDER_SIGNINSTALLSCRIPT_RESPONSE,
-  __module__ = 'steammessages_depotbuilder_pb2'
+CContentBuilder_SignInstallScript_Response = _reflection.GeneratedProtocolMessageType('CContentBuilder_SignInstallScript_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCONTENTBUILDER_SIGNINSTALLSCRIPT_RESPONSE,
+  '__module__' : 'steammessages_depotbuilder_pb2'
   # @@protoc_insertion_point(class_scope:CContentBuilder_SignInstallScript_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CContentBuilder_SignInstallScript_Response)
 
 
@@ -797,9 +811,10 @@ _CONTENTBUILDER = _descriptor.ServiceDescriptor(
   full_name='ContentBuilder',
   file=DESCRIPTOR,
   index=0,
-  serialized_options=_b('\202\265\030+Interface to build and upload depot content'),
-  serialized_start=1798,
-  serialized_end=2840,
+  serialized_options=b'\202\265\030+Interface to build and upload depot content',
+  create_key=_descriptor._internal_create_key,
+  serialized_start=1824,
+  serialized_end=2866,
   methods=[
   _descriptor.MethodDescriptor(
     name='InitDepotBuild',
@@ -808,7 +823,8 @@ _CONTENTBUILDER = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CCONTENTBUILDER_INITDEPOTBUILD_REQUEST,
     output_type=_CCONTENTBUILDER_INITDEPOTBUILD_RESPONSE,
-    serialized_options=_b('\202\265\030/Get inital parameters to start building a depot'),
+    serialized_options=b'\202\265\030/Get inital parameters to start building a depot',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='StartDepotUpload',
@@ -817,7 +833,8 @@ _CONTENTBUILDER = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CCONTENTBUILDER_STARTDEPOTUPLOAD_REQUEST,
     output_type=_CCONTENTBUILDER_STARTDEPOTUPLOAD_RESPONSE,
-    serialized_options=_b('\202\265\030/Start uploading manifest and chunks for a depot'),
+    serialized_options=b'\202\265\030/Start uploading manifest and chunks for a depot',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetMissingDepotChunks',
@@ -826,7 +843,8 @@ _CONTENTBUILDER = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CCONTENTBUILDER_GETMISSINGDEPOTCHUNKS_REQUEST,
     output_type=_CCONTENTBUILDER_GETMISSINGDEPOTCHUNKS_RESPONSE,
-    serialized_options=_b('\202\265\030+Get list of missing chunks for depot upload'),
+    serialized_options=b'\202\265\030+Get list of missing chunks for depot upload',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='FinishDepotUpload',
@@ -835,7 +853,8 @@ _CONTENTBUILDER = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CCONTENTBUILDER_FINISHDEPOTUPLOAD_REQUEST,
     output_type=_CCONTENTBUILDER_FINISHDEPOTUPLOAD_RESPONSE,
-    serialized_options=_b('\202\265\030?Commit a depot build after manifest and all chunks are uploaded'),
+    serialized_options=b'\202\265\030?Commit a depot build after manifest and all chunks are uploaded',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='CommitAppBuild',
@@ -844,7 +863,8 @@ _CONTENTBUILDER = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CCONTENTBUILDER_COMMITAPPBUILD_REQUEST,
     output_type=_CCONTENTBUILDER_COMMITAPPBUILD_RESPONSE,
-    serialized_options=_b('\202\265\030>Combine previous depot uploads into an app build and commit it'),
+    serialized_options=b'\202\265\030>Combine previous depot uploads into an app build and commit it',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='SignInstallScript',
@@ -853,7 +873,8 @@ _CONTENTBUILDER = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CCONTENTBUILDER_SIGNINSTALLSCRIPT_REQUEST,
     output_type=_CCONTENTBUILDER_SIGNINSTALLSCRIPT_RESPONSE,
-    serialized_options=_b('\202\265\030\026Sign an install script'),
+    serialized_options=b'\202\265\030\026Sign an install script',
+    create_key=_descriptor._internal_create_key,
   ),
 ])
 _sym_db.RegisterServiceDescriptor(_CONTENTBUILDER)
diff --git a/steam/protobufs/steammessages_deviceauth_pb2.py b/steam/protobufs/steammessages_deviceauth_pb2.py
index aac690c..c730a48 100644
--- a/steam/protobufs/steammessages_deviceauth_pb2.py
+++ b/steam/protobufs/steammessages_deviceauth_pb2.py
@@ -1,9 +1,7 @@
 # -*- coding: utf-8 -*-
 # Generated by the protocol buffer compiler.  DO NOT EDIT!
 # source: steammessages_deviceauth.proto
-
-import sys
-_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1'))
+"""Generated protocol buffer code."""
 from google.protobuf import descriptor as _descriptor
 from google.protobuf import message as _message
 from google.protobuf import reflection as _reflection
@@ -15,6 +13,7 @@ from google.protobuf import service_reflection
 _sym_db = _symbol_database.Default()
 
 
+import steam.protobufs.steammessages_base_pb2 as steammessages__base__pb2
 import steam.protobufs.steammessages_unified_base_pb2 as steammessages__unified__base__pb2
 
 
@@ -22,10 +21,11 @@ DESCRIPTOR = _descriptor.FileDescriptor(
   name='steammessages_deviceauth.proto',
   package='',
   syntax='proto2',
-  serialized_options=_b('\220\001\001'),
-  serialized_pb=_b('\n\x1esteammessages_deviceauth.proto\x1a steammessages_unified_base.proto\"X\n+CDeviceAuth_GetOwnAuthorizedDevices_Request\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12\x18\n\x10include_canceled\x18\x02 \x01(\x08\"\xb8\x02\n,CDeviceAuth_GetOwnAuthorizedDevices_Response\x12\x45\n\x07\x64\x65vices\x18\x01 \x03(\x0b\x32\x34.CDeviceAuth_GetOwnAuthorizedDevices_Response.Device\x1a\xc0\x01\n\x06\x44\x65vice\x12\x19\n\x11\x61uth_device_token\x18\x01 \x01(\x06\x12\x13\n\x0b\x64\x65vice_name\x18\x02 \x01(\t\x12\x12\n\nis_pending\x18\x03 \x01(\x08\x12\x13\n\x0bis_canceled\x18\x04 \x01(\x08\x12\x16\n\x0elast_time_used\x18\x05 \x01(\r\x12\x18\n\x10last_borrower_id\x18\x06 \x01(\x06\x12\x17\n\x0flast_app_played\x18\x07 \x01(\r\x12\x12\n\nis_limited\x18\x08 \x01(\x08\"\x85\x01\n.CDeviceAuth_AcceptAuthorizationRequest_Request\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12\x19\n\x11\x61uth_device_token\x18\x02 \x01(\x06\x12\x11\n\tauth_code\x18\x03 \x01(\x06\x12\x14\n\x0c\x66rom_steamid\x18\x04 \x01(\x06\"1\n/CDeviceAuth_AcceptAuthorizationRequest_Response\"W\n)CDeviceAuth_AuthorizeRemoteDevice_Request\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12\x19\n\x11\x61uth_device_token\x18\x02 \x01(\x06\",\n*CDeviceAuth_AuthorizeRemoteDevice_Response\"Y\n+CDeviceAuth_DeauthorizeRemoteDevice_Request\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12\x19\n\x11\x61uth_device_token\x18\x02 \x01(\x06\".\n,CDeviceAuth_DeauthorizeRemoteDevice_Response\"?\n,CDeviceAuth_GetUsedAuthorizedDevices_Request\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\"\xfa\x01\n-CDeviceAuth_GetUsedAuthorizedDevices_Response\x12\x46\n\x07\x64\x65vices\x18\x01 \x03(\x0b\x32\x35.CDeviceAuth_GetUsedAuthorizedDevices_Response.Device\x1a\x80\x01\n\x06\x44\x65vice\x12\x19\n\x11\x61uth_device_token\x18\x01 \x01(\x06\x12\x13\n\x0b\x64\x65vice_name\x18\x02 \x01(\t\x12\x15\n\rowner_steamid\x18\x03 \x01(\x06\x12\x16\n\x0elast_time_used\x18\x04 \x01(\r\x12\x17\n\x0flast_app_played\x18\x05 \x01(\r\"p\n*CDeviceAuth_GetAuthorizedBorrowers_Request\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12\x18\n\x10include_canceled\x18\x02 \x01(\x08\x12\x17\n\x0finclude_pending\x18\x03 \x01(\x08\"\xd3\x01\n+CDeviceAuth_GetAuthorizedBorrowers_Response\x12H\n\tborrowers\x18\x01 \x03(\x0b\x32\x35.CDeviceAuth_GetAuthorizedBorrowers_Response.Borrower\x1aZ\n\x08\x42orrower\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12\x12\n\nis_pending\x18\x02 \x01(\x08\x12\x13\n\x0bis_canceled\x18\x03 \x01(\x08\x12\x14\n\x0ctime_created\x18\x04 \x01(\r\"W\n*CDeviceAuth_AddAuthorizedBorrowers_Request\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12\x18\n\x10steamid_borrower\x18\x02 \x03(\x06\"F\n+CDeviceAuth_AddAuthorizedBorrowers_Response\x12\x17\n\x0fseconds_to_wait\x18\x01 \x01(\x05\"Z\n-CDeviceAuth_RemoveAuthorizedBorrowers_Request\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12\x18\n\x10steamid_borrower\x18\x02 \x03(\x06\"0\n.CDeviceAuth_RemoveAuthorizedBorrowers_Response\"q\n+CDeviceAuth_GetAuthorizedAsBorrower_Request\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12\x18\n\x10include_canceled\x18\x02 \x01(\x08\x12\x17\n\x0finclude_pending\x18\x03 \x01(\x08\"\xe0\x01\n,CDeviceAuth_GetAuthorizedAsBorrower_Response\x12\x45\n\x07lenders\x18\x01 \x03(\x0b\x32\x34.CDeviceAuth_GetAuthorizedAsBorrower_Response.Lender\x1ai\n\x06Lender\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12\x14\n\x0ctime_created\x18\x02 \x01(\r\x12\x12\n\nis_pending\x18\x03 \x01(\x08\x12\x13\n\x0bis_canceled\x18\x04 \x01(\x08\x12\x0f\n\x07is_used\x18\x05 \x01(\x08\"@\n-CDeviceAuth_GetExcludedGamesInLibrary_Request\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\"\xe6\x01\n.CDeviceAuth_GetExcludedGamesInLibrary_Response\x12T\n\x0e\x65xcluded_games\x18\x01 \x03(\x0b\x32<.CDeviceAuth_GetExcludedGamesInLibrary_Response.ExcludedGame\x1a^\n\x0c\x45xcludedGame\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x11\n\tgame_name\x18\x02 \x01(\t\x12\x12\n\nvac_banned\x18\x03 \x01(\x08\x12\x18\n\x10package_excluded\x18\x04 \x01(\x08\"=\n*CDeviceAuth_GetBorrowerPlayHistory_Request\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\"\xb8\x02\n+CDeviceAuth_GetBorrowerPlayHistory_Response\x12R\n\x0elender_history\x18\x01 \x03(\x0b\x32:.CDeviceAuth_GetBorrowerPlayHistory_Response.LenderHistory\x1a\x43\n\x0bGameHistory\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x11\n\ttime_last\x18\x02 \x01(\r\x12\x12\n\ntime_total\x18\x03 \x01(\r\x1ap\n\rLenderHistory\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12N\n\x0cgame_history\x18\x02 \x03(\x0b\x32\x38.CDeviceAuth_GetBorrowerPlayHistory_Response.GameHistory2\xc2\x0f\n\nDeviceAuth\x12\x9a\x01\n\x17GetOwnAuthorizedDevices\x12,.CDeviceAuth_GetOwnAuthorizedDevices_Request\x1a-.CDeviceAuth_GetOwnAuthorizedDevices_Response\"\"\x82\xb5\x18\x1eGet list of authorized devices\x12\xb5\x01\n\x1a\x41\x63\x63\x65ptAuthorizationRequest\x12/.CDeviceAuth_AcceptAuthorizationRequest_Request\x1a\x30.CDeviceAuth_AcceptAuthorizationRequest_Response\"4\x82\xb5\x18\x30\x41\x63\x63\x65pt an authorization request by another users\x12\xaa\x01\n\x15\x41uthorizeRemoteDevice\x12*.CDeviceAuth_AuthorizeRemoteDevice_Request\x1a+.CDeviceAuth_AuthorizeRemoteDevice_Response\"8\x82\xb5\x18\x34\x41uthorize own remote device that has pending request\x12\x9b\x01\n\x17\x44\x65\x61uthorizeRemoteDevice\x12,.CDeviceAuth_DeauthorizeRemoteDevice_Request\x1a-.CDeviceAuth_DeauthorizeRemoteDevice_Response\"#\x82\xb5\x18\x1fRevoke own device authorization\x12\xbb\x01\n\x18GetUsedAuthorizedDevices\x12-.CDeviceAuth_GetUsedAuthorizedDevices_Request\x1a..CDeviceAuth_GetUsedAuthorizedDevices_Response\"@\x82\xb5\x18<Get list of authorized devices user played borrowed games on\x12\xb2\x01\n\x16GetAuthorizedBorrowers\x12+.CDeviceAuth_GetAuthorizedBorrowers_Request\x1a,.CDeviceAuth_GetAuthorizedBorrowers_Response\"=\x82\xb5\x18\x39Get list of users that can borrow on an authorized device\x12\xb0\x01\n\x16\x41\x64\x64\x41uthorizedBorrowers\x12+.CDeviceAuth_AddAuthorizedBorrowers_Request\x1a,.CDeviceAuth_AddAuthorizedBorrowers_Response\";\x82\xb5\x18\x37\x41\x64\x64 users that can borrow on limited authorized devices\x12\xbc\x01\n\x19RemoveAuthorizedBorrowers\x12..CDeviceAuth_RemoveAuthorizedBorrowers_Request\x1a/.CDeviceAuth_RemoveAuthorizedBorrowers_Response\">\x82\xb5\x18:Remove users that can borrow on limited authorized devices\x12\xb9\x01\n\x17GetAuthorizedAsBorrower\x12,.CDeviceAuth_GetAuthorizedAsBorrower_Request\x1a-.CDeviceAuth_GetAuthorizedAsBorrower_Response\"A\x82\xb5\x18=Get list of lenders that authorized given account as borrower\x12\xaf\x01\n\x19GetExcludedGamesInLibrary\x12..CDeviceAuth_GetExcludedGamesInLibrary_Request\x1a/.CDeviceAuth_GetExcludedGamesInLibrary_Response\"1\x82\xb5\x18-Get list of excluded games in lenders library\x12\x9a\x01\n\x16GetBorrowerPlayHistory\x12+.CDeviceAuth_GetBorrowerPlayHistory_Request\x1a,.CDeviceAuth_GetBorrowerPlayHistory_Response\"%\x82\xb5\x18!Get list played games as borrower\x1a$\x82\xb5\x18 Library Sharing settings serviceB\x03\x90\x01\x01')
+  serialized_options=b'\220\001\001',
+  create_key=_descriptor._internal_create_key,
+  serialized_pb=b'\n\x1esteammessages_deviceauth.proto\x1a\x18steammessages_base.proto\x1a steammessages_unified_base.proto\"X\n+CDeviceAuth_GetOwnAuthorizedDevices_Request\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12\x18\n\x10include_canceled\x18\x02 \x01(\x08\"\xb8\x02\n,CDeviceAuth_GetOwnAuthorizedDevices_Response\x12\x45\n\x07\x64\x65vices\x18\x01 \x03(\x0b\x32\x34.CDeviceAuth_GetOwnAuthorizedDevices_Response.Device\x1a\xc0\x01\n\x06\x44\x65vice\x12\x19\n\x11\x61uth_device_token\x18\x01 \x01(\x06\x12\x13\n\x0b\x64\x65vice_name\x18\x02 \x01(\t\x12\x12\n\nis_pending\x18\x03 \x01(\x08\x12\x13\n\x0bis_canceled\x18\x04 \x01(\x08\x12\x16\n\x0elast_time_used\x18\x05 \x01(\r\x12\x18\n\x10last_borrower_id\x18\x06 \x01(\x06\x12\x17\n\x0flast_app_played\x18\x07 \x01(\r\x12\x12\n\nis_limited\x18\x08 \x01(\x08\"\x85\x01\n.CDeviceAuth_AcceptAuthorizationRequest_Request\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12\x19\n\x11\x61uth_device_token\x18\x02 \x01(\x06\x12\x11\n\tauth_code\x18\x03 \x01(\x06\x12\x14\n\x0c\x66rom_steamid\x18\x04 \x01(\x06\"1\n/CDeviceAuth_AcceptAuthorizationRequest_Response\"W\n)CDeviceAuth_AuthorizeRemoteDevice_Request\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12\x19\n\x11\x61uth_device_token\x18\x02 \x01(\x06\",\n*CDeviceAuth_AuthorizeRemoteDevice_Response\"Y\n+CDeviceAuth_DeauthorizeRemoteDevice_Request\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12\x19\n\x11\x61uth_device_token\x18\x02 \x01(\x06\".\n,CDeviceAuth_DeauthorizeRemoteDevice_Response\"?\n,CDeviceAuth_GetUsedAuthorizedDevices_Request\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\"\xfa\x01\n-CDeviceAuth_GetUsedAuthorizedDevices_Response\x12\x46\n\x07\x64\x65vices\x18\x01 \x03(\x0b\x32\x35.CDeviceAuth_GetUsedAuthorizedDevices_Response.Device\x1a\x80\x01\n\x06\x44\x65vice\x12\x19\n\x11\x61uth_device_token\x18\x01 \x01(\x06\x12\x13\n\x0b\x64\x65vice_name\x18\x02 \x01(\t\x12\x15\n\rowner_steamid\x18\x03 \x01(\x06\x12\x16\n\x0elast_time_used\x18\x04 \x01(\r\x12\x17\n\x0flast_app_played\x18\x05 \x01(\r\"p\n*CDeviceAuth_GetAuthorizedBorrowers_Request\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12\x18\n\x10include_canceled\x18\x02 \x01(\x08\x12\x17\n\x0finclude_pending\x18\x03 \x01(\x08\"\xd3\x01\n+CDeviceAuth_GetAuthorizedBorrowers_Response\x12H\n\tborrowers\x18\x01 \x03(\x0b\x32\x35.CDeviceAuth_GetAuthorizedBorrowers_Response.Borrower\x1aZ\n\x08\x42orrower\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12\x12\n\nis_pending\x18\x02 \x01(\x08\x12\x13\n\x0bis_canceled\x18\x03 \x01(\x08\x12\x14\n\x0ctime_created\x18\x04 \x01(\r\"W\n*CDeviceAuth_AddAuthorizedBorrowers_Request\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12\x18\n\x10steamid_borrower\x18\x02 \x03(\x06\"F\n+CDeviceAuth_AddAuthorizedBorrowers_Response\x12\x17\n\x0fseconds_to_wait\x18\x01 \x01(\x05\"Z\n-CDeviceAuth_RemoveAuthorizedBorrowers_Request\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12\x18\n\x10steamid_borrower\x18\x02 \x03(\x06\"0\n.CDeviceAuth_RemoveAuthorizedBorrowers_Response\"q\n+CDeviceAuth_GetAuthorizedAsBorrower_Request\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12\x18\n\x10include_canceled\x18\x02 \x01(\x08\x12\x17\n\x0finclude_pending\x18\x03 \x01(\x08\"\xe0\x01\n,CDeviceAuth_GetAuthorizedAsBorrower_Response\x12\x45\n\x07lenders\x18\x01 \x03(\x0b\x32\x34.CDeviceAuth_GetAuthorizedAsBorrower_Response.Lender\x1ai\n\x06Lender\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12\x14\n\x0ctime_created\x18\x02 \x01(\r\x12\x12\n\nis_pending\x18\x03 \x01(\x08\x12\x13\n\x0bis_canceled\x18\x04 \x01(\x08\x12\x0f\n\x07is_used\x18\x05 \x01(\x08\"@\n-CDeviceAuth_GetExcludedGamesInLibrary_Request\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\"\xe6\x01\n.CDeviceAuth_GetExcludedGamesInLibrary_Response\x12T\n\x0e\x65xcluded_games\x18\x01 \x03(\x0b\x32<.CDeviceAuth_GetExcludedGamesInLibrary_Response.ExcludedGame\x1a^\n\x0c\x45xcludedGame\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x11\n\tgame_name\x18\x02 \x01(\t\x12\x12\n\nvac_banned\x18\x03 \x01(\x08\x12\x18\n\x10package_excluded\x18\x04 \x01(\x08\"=\n*CDeviceAuth_GetBorrowerPlayHistory_Request\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\"\xb8\x02\n+CDeviceAuth_GetBorrowerPlayHistory_Response\x12R\n\x0elender_history\x18\x01 \x03(\x0b\x32:.CDeviceAuth_GetBorrowerPlayHistory_Response.LenderHistory\x1a\x43\n\x0bGameHistory\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x11\n\ttime_last\x18\x02 \x01(\r\x12\x12\n\ntime_total\x18\x03 \x01(\r\x1ap\n\rLenderHistory\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12N\n\x0cgame_history\x18\x02 \x03(\x0b\x32\x38.CDeviceAuth_GetBorrowerPlayHistory_Response.GameHistory2\xc2\x0f\n\nDeviceAuth\x12\x9a\x01\n\x17GetOwnAuthorizedDevices\x12,.CDeviceAuth_GetOwnAuthorizedDevices_Request\x1a-.CDeviceAuth_GetOwnAuthorizedDevices_Response\"\"\x82\xb5\x18\x1eGet list of authorized devices\x12\xb5\x01\n\x1a\x41\x63\x63\x65ptAuthorizationRequest\x12/.CDeviceAuth_AcceptAuthorizationRequest_Request\x1a\x30.CDeviceAuth_AcceptAuthorizationRequest_Response\"4\x82\xb5\x18\x30\x41\x63\x63\x65pt an authorization request by another users\x12\xaa\x01\n\x15\x41uthorizeRemoteDevice\x12*.CDeviceAuth_AuthorizeRemoteDevice_Request\x1a+.CDeviceAuth_AuthorizeRemoteDevice_Response\"8\x82\xb5\x18\x34\x41uthorize own remote device that has pending request\x12\x9b\x01\n\x17\x44\x65\x61uthorizeRemoteDevice\x12,.CDeviceAuth_DeauthorizeRemoteDevice_Request\x1a-.CDeviceAuth_DeauthorizeRemoteDevice_Response\"#\x82\xb5\x18\x1fRevoke own device authorization\x12\xbb\x01\n\x18GetUsedAuthorizedDevices\x12-.CDeviceAuth_GetUsedAuthorizedDevices_Request\x1a..CDeviceAuth_GetUsedAuthorizedDevices_Response\"@\x82\xb5\x18<Get list of authorized devices user played borrowed games on\x12\xb2\x01\n\x16GetAuthorizedBorrowers\x12+.CDeviceAuth_GetAuthorizedBorrowers_Request\x1a,.CDeviceAuth_GetAuthorizedBorrowers_Response\"=\x82\xb5\x18\x39Get list of users that can borrow on an authorized device\x12\xb0\x01\n\x16\x41\x64\x64\x41uthorizedBorrowers\x12+.CDeviceAuth_AddAuthorizedBorrowers_Request\x1a,.CDeviceAuth_AddAuthorizedBorrowers_Response\";\x82\xb5\x18\x37\x41\x64\x64 users that can borrow on limited authorized devices\x12\xbc\x01\n\x19RemoveAuthorizedBorrowers\x12..CDeviceAuth_RemoveAuthorizedBorrowers_Request\x1a/.CDeviceAuth_RemoveAuthorizedBorrowers_Response\">\x82\xb5\x18:Remove users that can borrow on limited authorized devices\x12\xb9\x01\n\x17GetAuthorizedAsBorrower\x12,.CDeviceAuth_GetAuthorizedAsBorrower_Request\x1a-.CDeviceAuth_GetAuthorizedAsBorrower_Response\"A\x82\xb5\x18=Get list of lenders that authorized given account as borrower\x12\xaf\x01\n\x19GetExcludedGamesInLibrary\x12..CDeviceAuth_GetExcludedGamesInLibrary_Request\x1a/.CDeviceAuth_GetExcludedGamesInLibrary_Response\"1\x82\xb5\x18-Get list of excluded games in lenders library\x12\x9a\x01\n\x16GetBorrowerPlayHistory\x12+.CDeviceAuth_GetBorrowerPlayHistory_Request\x1a,.CDeviceAuth_GetBorrowerPlayHistory_Response\"%\x82\xb5\x18!Get list played games as borrower\x1a$\x82\xb5\x18 Library Sharing settings serviceB\x03\x90\x01\x01'
   ,
-  dependencies=[steammessages__unified__base__pb2.DESCRIPTOR,])
+  dependencies=[steammessages__base__pb2.DESCRIPTOR,steammessages__unified__base__pb2.DESCRIPTOR,])
 
 
 
@@ -36,6 +36,7 @@ _CDEVICEAUTH_GETOWNAUTHORIZEDDEVICES_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CDeviceAuth_GetOwnAuthorizedDevices_Request.steamid', index=0,
@@ -43,14 +44,14 @@ _CDEVICEAUTH_GETOWNAUTHORIZEDDEVICES_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='include_canceled', full_name='CDeviceAuth_GetOwnAuthorizedDevices_Request.include_canceled', index=1,
       number=2, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -63,8 +64,8 @@ _CDEVICEAUTH_GETOWNAUTHORIZEDDEVICES_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=68,
-  serialized_end=156,
+  serialized_start=94,
+  serialized_end=182,
 )
 
 
@@ -74,6 +75,7 @@ _CDEVICEAUTH_GETOWNAUTHORIZEDDEVICES_RESPONSE_DEVICE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='auth_device_token', full_name='CDeviceAuth_GetOwnAuthorizedDevices_Response.Device.auth_device_token', index=0,
@@ -81,56 +83,56 @@ _CDEVICEAUTH_GETOWNAUTHORIZEDDEVICES_RESPONSE_DEVICE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='device_name', full_name='CDeviceAuth_GetOwnAuthorizedDevices_Response.Device.device_name', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='is_pending', full_name='CDeviceAuth_GetOwnAuthorizedDevices_Response.Device.is_pending', index=2,
       number=3, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='is_canceled', full_name='CDeviceAuth_GetOwnAuthorizedDevices_Response.Device.is_canceled', index=3,
       number=4, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='last_time_used', full_name='CDeviceAuth_GetOwnAuthorizedDevices_Response.Device.last_time_used', index=4,
       number=5, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='last_borrower_id', full_name='CDeviceAuth_GetOwnAuthorizedDevices_Response.Device.last_borrower_id', index=5,
       number=6, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='last_app_played', full_name='CDeviceAuth_GetOwnAuthorizedDevices_Response.Device.last_app_played', index=6,
       number=7, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='is_limited', full_name='CDeviceAuth_GetOwnAuthorizedDevices_Response.Device.is_limited', index=7,
       number=8, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -143,8 +145,8 @@ _CDEVICEAUTH_GETOWNAUTHORIZEDDEVICES_RESPONSE_DEVICE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=279,
-  serialized_end=471,
+  serialized_start=305,
+  serialized_end=497,
 )
 
 _CDEVICEAUTH_GETOWNAUTHORIZEDDEVICES_RESPONSE = _descriptor.Descriptor(
@@ -153,6 +155,7 @@ _CDEVICEAUTH_GETOWNAUTHORIZEDDEVICES_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='devices', full_name='CDeviceAuth_GetOwnAuthorizedDevices_Response.devices', index=0,
@@ -160,7 +163,7 @@ _CDEVICEAUTH_GETOWNAUTHORIZEDDEVICES_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -173,8 +176,8 @@ _CDEVICEAUTH_GETOWNAUTHORIZEDDEVICES_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=159,
-  serialized_end=471,
+  serialized_start=185,
+  serialized_end=497,
 )
 
 
@@ -184,6 +187,7 @@ _CDEVICEAUTH_ACCEPTAUTHORIZATIONREQUEST_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CDeviceAuth_AcceptAuthorizationRequest_Request.steamid', index=0,
@@ -191,28 +195,28 @@ _CDEVICEAUTH_ACCEPTAUTHORIZATIONREQUEST_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='auth_device_token', full_name='CDeviceAuth_AcceptAuthorizationRequest_Request.auth_device_token', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='auth_code', full_name='CDeviceAuth_AcceptAuthorizationRequest_Request.auth_code', index=2,
       number=3, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='from_steamid', full_name='CDeviceAuth_AcceptAuthorizationRequest_Request.from_steamid', index=3,
       number=4, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -225,8 +229,8 @@ _CDEVICEAUTH_ACCEPTAUTHORIZATIONREQUEST_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=474,
-  serialized_end=607,
+  serialized_start=500,
+  serialized_end=633,
 )
 
 
@@ -236,6 +240,7 @@ _CDEVICEAUTH_ACCEPTAUTHORIZATIONREQUEST_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -249,8 +254,8 @@ _CDEVICEAUTH_ACCEPTAUTHORIZATIONREQUEST_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=609,
-  serialized_end=658,
+  serialized_start=635,
+  serialized_end=684,
 )
 
 
@@ -260,6 +265,7 @@ _CDEVICEAUTH_AUTHORIZEREMOTEDEVICE_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CDeviceAuth_AuthorizeRemoteDevice_Request.steamid', index=0,
@@ -267,14 +273,14 @@ _CDEVICEAUTH_AUTHORIZEREMOTEDEVICE_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='auth_device_token', full_name='CDeviceAuth_AuthorizeRemoteDevice_Request.auth_device_token', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -287,8 +293,8 @@ _CDEVICEAUTH_AUTHORIZEREMOTEDEVICE_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=660,
-  serialized_end=747,
+  serialized_start=686,
+  serialized_end=773,
 )
 
 
@@ -298,6 +304,7 @@ _CDEVICEAUTH_AUTHORIZEREMOTEDEVICE_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -311,8 +318,8 @@ _CDEVICEAUTH_AUTHORIZEREMOTEDEVICE_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=749,
-  serialized_end=793,
+  serialized_start=775,
+  serialized_end=819,
 )
 
 
@@ -322,6 +329,7 @@ _CDEVICEAUTH_DEAUTHORIZEREMOTEDEVICE_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CDeviceAuth_DeauthorizeRemoteDevice_Request.steamid', index=0,
@@ -329,14 +337,14 @@ _CDEVICEAUTH_DEAUTHORIZEREMOTEDEVICE_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='auth_device_token', full_name='CDeviceAuth_DeauthorizeRemoteDevice_Request.auth_device_token', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -349,8 +357,8 @@ _CDEVICEAUTH_DEAUTHORIZEREMOTEDEVICE_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=795,
-  serialized_end=884,
+  serialized_start=821,
+  serialized_end=910,
 )
 
 
@@ -360,6 +368,7 @@ _CDEVICEAUTH_DEAUTHORIZEREMOTEDEVICE_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -373,8 +382,8 @@ _CDEVICEAUTH_DEAUTHORIZEREMOTEDEVICE_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=886,
-  serialized_end=932,
+  serialized_start=912,
+  serialized_end=958,
 )
 
 
@@ -384,6 +393,7 @@ _CDEVICEAUTH_GETUSEDAUTHORIZEDDEVICES_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CDeviceAuth_GetUsedAuthorizedDevices_Request.steamid', index=0,
@@ -391,7 +401,7 @@ _CDEVICEAUTH_GETUSEDAUTHORIZEDDEVICES_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -404,8 +414,8 @@ _CDEVICEAUTH_GETUSEDAUTHORIZEDDEVICES_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=934,
-  serialized_end=997,
+  serialized_start=960,
+  serialized_end=1023,
 )
 
 
@@ -415,6 +425,7 @@ _CDEVICEAUTH_GETUSEDAUTHORIZEDDEVICES_RESPONSE_DEVICE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='auth_device_token', full_name='CDeviceAuth_GetUsedAuthorizedDevices_Response.Device.auth_device_token', index=0,
@@ -422,35 +433,35 @@ _CDEVICEAUTH_GETUSEDAUTHORIZEDDEVICES_RESPONSE_DEVICE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='device_name', full_name='CDeviceAuth_GetUsedAuthorizedDevices_Response.Device.device_name', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='owner_steamid', full_name='CDeviceAuth_GetUsedAuthorizedDevices_Response.Device.owner_steamid', index=2,
       number=3, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='last_time_used', full_name='CDeviceAuth_GetUsedAuthorizedDevices_Response.Device.last_time_used', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='last_app_played', full_name='CDeviceAuth_GetUsedAuthorizedDevices_Response.Device.last_app_played', index=4,
       number=5, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -463,8 +474,8 @@ _CDEVICEAUTH_GETUSEDAUTHORIZEDDEVICES_RESPONSE_DEVICE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1122,
-  serialized_end=1250,
+  serialized_start=1148,
+  serialized_end=1276,
 )
 
 _CDEVICEAUTH_GETUSEDAUTHORIZEDDEVICES_RESPONSE = _descriptor.Descriptor(
@@ -473,6 +484,7 @@ _CDEVICEAUTH_GETUSEDAUTHORIZEDDEVICES_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='devices', full_name='CDeviceAuth_GetUsedAuthorizedDevices_Response.devices', index=0,
@@ -480,7 +492,7 @@ _CDEVICEAUTH_GETUSEDAUTHORIZEDDEVICES_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -493,8 +505,8 @@ _CDEVICEAUTH_GETUSEDAUTHORIZEDDEVICES_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1000,
-  serialized_end=1250,
+  serialized_start=1026,
+  serialized_end=1276,
 )
 
 
@@ -504,6 +516,7 @@ _CDEVICEAUTH_GETAUTHORIZEDBORROWERS_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CDeviceAuth_GetAuthorizedBorrowers_Request.steamid', index=0,
@@ -511,21 +524,21 @@ _CDEVICEAUTH_GETAUTHORIZEDBORROWERS_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='include_canceled', full_name='CDeviceAuth_GetAuthorizedBorrowers_Request.include_canceled', index=1,
       number=2, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='include_pending', full_name='CDeviceAuth_GetAuthorizedBorrowers_Request.include_pending', index=2,
       number=3, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -538,8 +551,8 @@ _CDEVICEAUTH_GETAUTHORIZEDBORROWERS_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1252,
-  serialized_end=1364,
+  serialized_start=1278,
+  serialized_end=1390,
 )
 
 
@@ -549,6 +562,7 @@ _CDEVICEAUTH_GETAUTHORIZEDBORROWERS_RESPONSE_BORROWER = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CDeviceAuth_GetAuthorizedBorrowers_Response.Borrower.steamid', index=0,
@@ -556,28 +570,28 @@ _CDEVICEAUTH_GETAUTHORIZEDBORROWERS_RESPONSE_BORROWER = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='is_pending', full_name='CDeviceAuth_GetAuthorizedBorrowers_Response.Borrower.is_pending', index=1,
       number=2, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='is_canceled', full_name='CDeviceAuth_GetAuthorizedBorrowers_Response.Borrower.is_canceled', index=2,
       number=3, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='time_created', full_name='CDeviceAuth_GetAuthorizedBorrowers_Response.Borrower.time_created', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -590,8 +604,8 @@ _CDEVICEAUTH_GETAUTHORIZEDBORROWERS_RESPONSE_BORROWER = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1488,
-  serialized_end=1578,
+  serialized_start=1514,
+  serialized_end=1604,
 )
 
 _CDEVICEAUTH_GETAUTHORIZEDBORROWERS_RESPONSE = _descriptor.Descriptor(
@@ -600,6 +614,7 @@ _CDEVICEAUTH_GETAUTHORIZEDBORROWERS_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='borrowers', full_name='CDeviceAuth_GetAuthorizedBorrowers_Response.borrowers', index=0,
@@ -607,7 +622,7 @@ _CDEVICEAUTH_GETAUTHORIZEDBORROWERS_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -620,8 +635,8 @@ _CDEVICEAUTH_GETAUTHORIZEDBORROWERS_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1367,
-  serialized_end=1578,
+  serialized_start=1393,
+  serialized_end=1604,
 )
 
 
@@ -631,6 +646,7 @@ _CDEVICEAUTH_ADDAUTHORIZEDBORROWERS_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CDeviceAuth_AddAuthorizedBorrowers_Request.steamid', index=0,
@@ -638,14 +654,14 @@ _CDEVICEAUTH_ADDAUTHORIZEDBORROWERS_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steamid_borrower', full_name='CDeviceAuth_AddAuthorizedBorrowers_Request.steamid_borrower', index=1,
       number=2, type=6, cpp_type=4, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -658,8 +674,8 @@ _CDEVICEAUTH_ADDAUTHORIZEDBORROWERS_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1580,
-  serialized_end=1667,
+  serialized_start=1606,
+  serialized_end=1693,
 )
 
 
@@ -669,6 +685,7 @@ _CDEVICEAUTH_ADDAUTHORIZEDBORROWERS_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='seconds_to_wait', full_name='CDeviceAuth_AddAuthorizedBorrowers_Response.seconds_to_wait', index=0,
@@ -676,7 +693,7 @@ _CDEVICEAUTH_ADDAUTHORIZEDBORROWERS_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -689,8 +706,8 @@ _CDEVICEAUTH_ADDAUTHORIZEDBORROWERS_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1669,
-  serialized_end=1739,
+  serialized_start=1695,
+  serialized_end=1765,
 )
 
 
@@ -700,6 +717,7 @@ _CDEVICEAUTH_REMOVEAUTHORIZEDBORROWERS_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CDeviceAuth_RemoveAuthorizedBorrowers_Request.steamid', index=0,
@@ -707,14 +725,14 @@ _CDEVICEAUTH_REMOVEAUTHORIZEDBORROWERS_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steamid_borrower', full_name='CDeviceAuth_RemoveAuthorizedBorrowers_Request.steamid_borrower', index=1,
       number=2, type=6, cpp_type=4, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -727,8 +745,8 @@ _CDEVICEAUTH_REMOVEAUTHORIZEDBORROWERS_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1741,
-  serialized_end=1831,
+  serialized_start=1767,
+  serialized_end=1857,
 )
 
 
@@ -738,6 +756,7 @@ _CDEVICEAUTH_REMOVEAUTHORIZEDBORROWERS_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -751,8 +770,8 @@ _CDEVICEAUTH_REMOVEAUTHORIZEDBORROWERS_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1833,
-  serialized_end=1881,
+  serialized_start=1859,
+  serialized_end=1907,
 )
 
 
@@ -762,6 +781,7 @@ _CDEVICEAUTH_GETAUTHORIZEDASBORROWER_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CDeviceAuth_GetAuthorizedAsBorrower_Request.steamid', index=0,
@@ -769,21 +789,21 @@ _CDEVICEAUTH_GETAUTHORIZEDASBORROWER_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='include_canceled', full_name='CDeviceAuth_GetAuthorizedAsBorrower_Request.include_canceled', index=1,
       number=2, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='include_pending', full_name='CDeviceAuth_GetAuthorizedAsBorrower_Request.include_pending', index=2,
       number=3, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -796,8 +816,8 @@ _CDEVICEAUTH_GETAUTHORIZEDASBORROWER_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1883,
-  serialized_end=1996,
+  serialized_start=1909,
+  serialized_end=2022,
 )
 
 
@@ -807,6 +827,7 @@ _CDEVICEAUTH_GETAUTHORIZEDASBORROWER_RESPONSE_LENDER = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CDeviceAuth_GetAuthorizedAsBorrower_Response.Lender.steamid', index=0,
@@ -814,35 +835,35 @@ _CDEVICEAUTH_GETAUTHORIZEDASBORROWER_RESPONSE_LENDER = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='time_created', full_name='CDeviceAuth_GetAuthorizedAsBorrower_Response.Lender.time_created', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='is_pending', full_name='CDeviceAuth_GetAuthorizedAsBorrower_Response.Lender.is_pending', index=2,
       number=3, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='is_canceled', full_name='CDeviceAuth_GetAuthorizedAsBorrower_Response.Lender.is_canceled', index=3,
       number=4, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='is_used', full_name='CDeviceAuth_GetAuthorizedAsBorrower_Response.Lender.is_used', index=4,
       number=5, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -855,8 +876,8 @@ _CDEVICEAUTH_GETAUTHORIZEDASBORROWER_RESPONSE_LENDER = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=2118,
-  serialized_end=2223,
+  serialized_start=2144,
+  serialized_end=2249,
 )
 
 _CDEVICEAUTH_GETAUTHORIZEDASBORROWER_RESPONSE = _descriptor.Descriptor(
@@ -865,6 +886,7 @@ _CDEVICEAUTH_GETAUTHORIZEDASBORROWER_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='lenders', full_name='CDeviceAuth_GetAuthorizedAsBorrower_Response.lenders', index=0,
@@ -872,7 +894,7 @@ _CDEVICEAUTH_GETAUTHORIZEDASBORROWER_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -885,8 +907,8 @@ _CDEVICEAUTH_GETAUTHORIZEDASBORROWER_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1999,
-  serialized_end=2223,
+  serialized_start=2025,
+  serialized_end=2249,
 )
 
 
@@ -896,6 +918,7 @@ _CDEVICEAUTH_GETEXCLUDEDGAMESINLIBRARY_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CDeviceAuth_GetExcludedGamesInLibrary_Request.steamid', index=0,
@@ -903,7 +926,7 @@ _CDEVICEAUTH_GETEXCLUDEDGAMESINLIBRARY_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -916,8 +939,8 @@ _CDEVICEAUTH_GETEXCLUDEDGAMESINLIBRARY_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=2225,
-  serialized_end=2289,
+  serialized_start=2251,
+  serialized_end=2315,
 )
 
 
@@ -927,6 +950,7 @@ _CDEVICEAUTH_GETEXCLUDEDGAMESINLIBRARY_RESPONSE_EXCLUDEDGAME = _descriptor.Descr
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CDeviceAuth_GetExcludedGamesInLibrary_Response.ExcludedGame.appid', index=0,
@@ -934,28 +958,28 @@ _CDEVICEAUTH_GETEXCLUDEDGAMESINLIBRARY_RESPONSE_EXCLUDEDGAME = _descriptor.Descr
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='game_name', full_name='CDeviceAuth_GetExcludedGamesInLibrary_Response.ExcludedGame.game_name', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='vac_banned', full_name='CDeviceAuth_GetExcludedGamesInLibrary_Response.ExcludedGame.vac_banned', index=2,
       number=3, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='package_excluded', full_name='CDeviceAuth_GetExcludedGamesInLibrary_Response.ExcludedGame.package_excluded', index=3,
       number=4, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -968,8 +992,8 @@ _CDEVICEAUTH_GETEXCLUDEDGAMESINLIBRARY_RESPONSE_EXCLUDEDGAME = _descriptor.Descr
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=2428,
-  serialized_end=2522,
+  serialized_start=2454,
+  serialized_end=2548,
 )
 
 _CDEVICEAUTH_GETEXCLUDEDGAMESINLIBRARY_RESPONSE = _descriptor.Descriptor(
@@ -978,6 +1002,7 @@ _CDEVICEAUTH_GETEXCLUDEDGAMESINLIBRARY_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='excluded_games', full_name='CDeviceAuth_GetExcludedGamesInLibrary_Response.excluded_games', index=0,
@@ -985,7 +1010,7 @@ _CDEVICEAUTH_GETEXCLUDEDGAMESINLIBRARY_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -998,8 +1023,8 @@ _CDEVICEAUTH_GETEXCLUDEDGAMESINLIBRARY_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=2292,
-  serialized_end=2522,
+  serialized_start=2318,
+  serialized_end=2548,
 )
 
 
@@ -1009,6 +1034,7 @@ _CDEVICEAUTH_GETBORROWERPLAYHISTORY_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CDeviceAuth_GetBorrowerPlayHistory_Request.steamid', index=0,
@@ -1016,7 +1042,7 @@ _CDEVICEAUTH_GETBORROWERPLAYHISTORY_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1029,8 +1055,8 @@ _CDEVICEAUTH_GETBORROWERPLAYHISTORY_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=2524,
-  serialized_end=2585,
+  serialized_start=2550,
+  serialized_end=2611,
 )
 
 
@@ -1040,6 +1066,7 @@ _CDEVICEAUTH_GETBORROWERPLAYHISTORY_RESPONSE_GAMEHISTORY = _descriptor.Descripto
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CDeviceAuth_GetBorrowerPlayHistory_Response.GameHistory.appid', index=0,
@@ -1047,21 +1074,21 @@ _CDEVICEAUTH_GETBORROWERPLAYHISTORY_RESPONSE_GAMEHISTORY = _descriptor.Descripto
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='time_last', full_name='CDeviceAuth_GetBorrowerPlayHistory_Response.GameHistory.time_last', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='time_total', full_name='CDeviceAuth_GetBorrowerPlayHistory_Response.GameHistory.time_total', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1074,8 +1101,8 @@ _CDEVICEAUTH_GETBORROWERPLAYHISTORY_RESPONSE_GAMEHISTORY = _descriptor.Descripto
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=2719,
-  serialized_end=2786,
+  serialized_start=2745,
+  serialized_end=2812,
 )
 
 _CDEVICEAUTH_GETBORROWERPLAYHISTORY_RESPONSE_LENDERHISTORY = _descriptor.Descriptor(
@@ -1084,6 +1111,7 @@ _CDEVICEAUTH_GETBORROWERPLAYHISTORY_RESPONSE_LENDERHISTORY = _descriptor.Descrip
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CDeviceAuth_GetBorrowerPlayHistory_Response.LenderHistory.steamid', index=0,
@@ -1091,14 +1119,14 @@ _CDEVICEAUTH_GETBORROWERPLAYHISTORY_RESPONSE_LENDERHISTORY = _descriptor.Descrip
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='game_history', full_name='CDeviceAuth_GetBorrowerPlayHistory_Response.LenderHistory.game_history', index=1,
       number=2, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1111,8 +1139,8 @@ _CDEVICEAUTH_GETBORROWERPLAYHISTORY_RESPONSE_LENDERHISTORY = _descriptor.Descrip
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=2788,
-  serialized_end=2900,
+  serialized_start=2814,
+  serialized_end=2926,
 )
 
 _CDEVICEAUTH_GETBORROWERPLAYHISTORY_RESPONSE = _descriptor.Descriptor(
@@ -1121,6 +1149,7 @@ _CDEVICEAUTH_GETBORROWERPLAYHISTORY_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='lender_history', full_name='CDeviceAuth_GetBorrowerPlayHistory_Response.lender_history', index=0,
@@ -1128,7 +1157,7 @@ _CDEVICEAUTH_GETBORROWERPLAYHISTORY_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1141,8 +1170,8 @@ _CDEVICEAUTH_GETBORROWERPLAYHISTORY_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=2588,
-  serialized_end=2900,
+  serialized_start=2614,
+  serialized_end=2926,
 )
 
 _CDEVICEAUTH_GETOWNAUTHORIZEDDEVICES_RESPONSE_DEVICE.containing_type = _CDEVICEAUTH_GETOWNAUTHORIZEDDEVICES_RESPONSE
@@ -1183,212 +1212,212 @@ DESCRIPTOR.message_types_by_name['CDeviceAuth_GetBorrowerPlayHistory_Request'] =
 DESCRIPTOR.message_types_by_name['CDeviceAuth_GetBorrowerPlayHistory_Response'] = _CDEVICEAUTH_GETBORROWERPLAYHISTORY_RESPONSE
 _sym_db.RegisterFileDescriptor(DESCRIPTOR)
 
-CDeviceAuth_GetOwnAuthorizedDevices_Request = _reflection.GeneratedProtocolMessageType('CDeviceAuth_GetOwnAuthorizedDevices_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CDEVICEAUTH_GETOWNAUTHORIZEDDEVICES_REQUEST,
-  __module__ = 'steammessages_deviceauth_pb2'
+CDeviceAuth_GetOwnAuthorizedDevices_Request = _reflection.GeneratedProtocolMessageType('CDeviceAuth_GetOwnAuthorizedDevices_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CDEVICEAUTH_GETOWNAUTHORIZEDDEVICES_REQUEST,
+  '__module__' : 'steammessages_deviceauth_pb2'
   # @@protoc_insertion_point(class_scope:CDeviceAuth_GetOwnAuthorizedDevices_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CDeviceAuth_GetOwnAuthorizedDevices_Request)
 
-CDeviceAuth_GetOwnAuthorizedDevices_Response = _reflection.GeneratedProtocolMessageType('CDeviceAuth_GetOwnAuthorizedDevices_Response', (_message.Message,), dict(
+CDeviceAuth_GetOwnAuthorizedDevices_Response = _reflection.GeneratedProtocolMessageType('CDeviceAuth_GetOwnAuthorizedDevices_Response', (_message.Message,), {
 
-  Device = _reflection.GeneratedProtocolMessageType('Device', (_message.Message,), dict(
-    DESCRIPTOR = _CDEVICEAUTH_GETOWNAUTHORIZEDDEVICES_RESPONSE_DEVICE,
-    __module__ = 'steammessages_deviceauth_pb2'
+  'Device' : _reflection.GeneratedProtocolMessageType('Device', (_message.Message,), {
+    'DESCRIPTOR' : _CDEVICEAUTH_GETOWNAUTHORIZEDDEVICES_RESPONSE_DEVICE,
+    '__module__' : 'steammessages_deviceauth_pb2'
     # @@protoc_insertion_point(class_scope:CDeviceAuth_GetOwnAuthorizedDevices_Response.Device)
-    ))
+    })
   ,
-  DESCRIPTOR = _CDEVICEAUTH_GETOWNAUTHORIZEDDEVICES_RESPONSE,
-  __module__ = 'steammessages_deviceauth_pb2'
+  'DESCRIPTOR' : _CDEVICEAUTH_GETOWNAUTHORIZEDDEVICES_RESPONSE,
+  '__module__' : 'steammessages_deviceauth_pb2'
   # @@protoc_insertion_point(class_scope:CDeviceAuth_GetOwnAuthorizedDevices_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CDeviceAuth_GetOwnAuthorizedDevices_Response)
 _sym_db.RegisterMessage(CDeviceAuth_GetOwnAuthorizedDevices_Response.Device)
 
-CDeviceAuth_AcceptAuthorizationRequest_Request = _reflection.GeneratedProtocolMessageType('CDeviceAuth_AcceptAuthorizationRequest_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CDEVICEAUTH_ACCEPTAUTHORIZATIONREQUEST_REQUEST,
-  __module__ = 'steammessages_deviceauth_pb2'
+CDeviceAuth_AcceptAuthorizationRequest_Request = _reflection.GeneratedProtocolMessageType('CDeviceAuth_AcceptAuthorizationRequest_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CDEVICEAUTH_ACCEPTAUTHORIZATIONREQUEST_REQUEST,
+  '__module__' : 'steammessages_deviceauth_pb2'
   # @@protoc_insertion_point(class_scope:CDeviceAuth_AcceptAuthorizationRequest_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CDeviceAuth_AcceptAuthorizationRequest_Request)
 
-CDeviceAuth_AcceptAuthorizationRequest_Response = _reflection.GeneratedProtocolMessageType('CDeviceAuth_AcceptAuthorizationRequest_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CDEVICEAUTH_ACCEPTAUTHORIZATIONREQUEST_RESPONSE,
-  __module__ = 'steammessages_deviceauth_pb2'
+CDeviceAuth_AcceptAuthorizationRequest_Response = _reflection.GeneratedProtocolMessageType('CDeviceAuth_AcceptAuthorizationRequest_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CDEVICEAUTH_ACCEPTAUTHORIZATIONREQUEST_RESPONSE,
+  '__module__' : 'steammessages_deviceauth_pb2'
   # @@protoc_insertion_point(class_scope:CDeviceAuth_AcceptAuthorizationRequest_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CDeviceAuth_AcceptAuthorizationRequest_Response)
 
-CDeviceAuth_AuthorizeRemoteDevice_Request = _reflection.GeneratedProtocolMessageType('CDeviceAuth_AuthorizeRemoteDevice_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CDEVICEAUTH_AUTHORIZEREMOTEDEVICE_REQUEST,
-  __module__ = 'steammessages_deviceauth_pb2'
+CDeviceAuth_AuthorizeRemoteDevice_Request = _reflection.GeneratedProtocolMessageType('CDeviceAuth_AuthorizeRemoteDevice_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CDEVICEAUTH_AUTHORIZEREMOTEDEVICE_REQUEST,
+  '__module__' : 'steammessages_deviceauth_pb2'
   # @@protoc_insertion_point(class_scope:CDeviceAuth_AuthorizeRemoteDevice_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CDeviceAuth_AuthorizeRemoteDevice_Request)
 
-CDeviceAuth_AuthorizeRemoteDevice_Response = _reflection.GeneratedProtocolMessageType('CDeviceAuth_AuthorizeRemoteDevice_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CDEVICEAUTH_AUTHORIZEREMOTEDEVICE_RESPONSE,
-  __module__ = 'steammessages_deviceauth_pb2'
+CDeviceAuth_AuthorizeRemoteDevice_Response = _reflection.GeneratedProtocolMessageType('CDeviceAuth_AuthorizeRemoteDevice_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CDEVICEAUTH_AUTHORIZEREMOTEDEVICE_RESPONSE,
+  '__module__' : 'steammessages_deviceauth_pb2'
   # @@protoc_insertion_point(class_scope:CDeviceAuth_AuthorizeRemoteDevice_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CDeviceAuth_AuthorizeRemoteDevice_Response)
 
-CDeviceAuth_DeauthorizeRemoteDevice_Request = _reflection.GeneratedProtocolMessageType('CDeviceAuth_DeauthorizeRemoteDevice_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CDEVICEAUTH_DEAUTHORIZEREMOTEDEVICE_REQUEST,
-  __module__ = 'steammessages_deviceauth_pb2'
+CDeviceAuth_DeauthorizeRemoteDevice_Request = _reflection.GeneratedProtocolMessageType('CDeviceAuth_DeauthorizeRemoteDevice_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CDEVICEAUTH_DEAUTHORIZEREMOTEDEVICE_REQUEST,
+  '__module__' : 'steammessages_deviceauth_pb2'
   # @@protoc_insertion_point(class_scope:CDeviceAuth_DeauthorizeRemoteDevice_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CDeviceAuth_DeauthorizeRemoteDevice_Request)
 
-CDeviceAuth_DeauthorizeRemoteDevice_Response = _reflection.GeneratedProtocolMessageType('CDeviceAuth_DeauthorizeRemoteDevice_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CDEVICEAUTH_DEAUTHORIZEREMOTEDEVICE_RESPONSE,
-  __module__ = 'steammessages_deviceauth_pb2'
+CDeviceAuth_DeauthorizeRemoteDevice_Response = _reflection.GeneratedProtocolMessageType('CDeviceAuth_DeauthorizeRemoteDevice_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CDEVICEAUTH_DEAUTHORIZEREMOTEDEVICE_RESPONSE,
+  '__module__' : 'steammessages_deviceauth_pb2'
   # @@protoc_insertion_point(class_scope:CDeviceAuth_DeauthorizeRemoteDevice_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CDeviceAuth_DeauthorizeRemoteDevice_Response)
 
-CDeviceAuth_GetUsedAuthorizedDevices_Request = _reflection.GeneratedProtocolMessageType('CDeviceAuth_GetUsedAuthorizedDevices_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CDEVICEAUTH_GETUSEDAUTHORIZEDDEVICES_REQUEST,
-  __module__ = 'steammessages_deviceauth_pb2'
+CDeviceAuth_GetUsedAuthorizedDevices_Request = _reflection.GeneratedProtocolMessageType('CDeviceAuth_GetUsedAuthorizedDevices_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CDEVICEAUTH_GETUSEDAUTHORIZEDDEVICES_REQUEST,
+  '__module__' : 'steammessages_deviceauth_pb2'
   # @@protoc_insertion_point(class_scope:CDeviceAuth_GetUsedAuthorizedDevices_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CDeviceAuth_GetUsedAuthorizedDevices_Request)
 
-CDeviceAuth_GetUsedAuthorizedDevices_Response = _reflection.GeneratedProtocolMessageType('CDeviceAuth_GetUsedAuthorizedDevices_Response', (_message.Message,), dict(
+CDeviceAuth_GetUsedAuthorizedDevices_Response = _reflection.GeneratedProtocolMessageType('CDeviceAuth_GetUsedAuthorizedDevices_Response', (_message.Message,), {
 
-  Device = _reflection.GeneratedProtocolMessageType('Device', (_message.Message,), dict(
-    DESCRIPTOR = _CDEVICEAUTH_GETUSEDAUTHORIZEDDEVICES_RESPONSE_DEVICE,
-    __module__ = 'steammessages_deviceauth_pb2'
+  'Device' : _reflection.GeneratedProtocolMessageType('Device', (_message.Message,), {
+    'DESCRIPTOR' : _CDEVICEAUTH_GETUSEDAUTHORIZEDDEVICES_RESPONSE_DEVICE,
+    '__module__' : 'steammessages_deviceauth_pb2'
     # @@protoc_insertion_point(class_scope:CDeviceAuth_GetUsedAuthorizedDevices_Response.Device)
-    ))
+    })
   ,
-  DESCRIPTOR = _CDEVICEAUTH_GETUSEDAUTHORIZEDDEVICES_RESPONSE,
-  __module__ = 'steammessages_deviceauth_pb2'
+  'DESCRIPTOR' : _CDEVICEAUTH_GETUSEDAUTHORIZEDDEVICES_RESPONSE,
+  '__module__' : 'steammessages_deviceauth_pb2'
   # @@protoc_insertion_point(class_scope:CDeviceAuth_GetUsedAuthorizedDevices_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CDeviceAuth_GetUsedAuthorizedDevices_Response)
 _sym_db.RegisterMessage(CDeviceAuth_GetUsedAuthorizedDevices_Response.Device)
 
-CDeviceAuth_GetAuthorizedBorrowers_Request = _reflection.GeneratedProtocolMessageType('CDeviceAuth_GetAuthorizedBorrowers_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CDEVICEAUTH_GETAUTHORIZEDBORROWERS_REQUEST,
-  __module__ = 'steammessages_deviceauth_pb2'
+CDeviceAuth_GetAuthorizedBorrowers_Request = _reflection.GeneratedProtocolMessageType('CDeviceAuth_GetAuthorizedBorrowers_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CDEVICEAUTH_GETAUTHORIZEDBORROWERS_REQUEST,
+  '__module__' : 'steammessages_deviceauth_pb2'
   # @@protoc_insertion_point(class_scope:CDeviceAuth_GetAuthorizedBorrowers_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CDeviceAuth_GetAuthorizedBorrowers_Request)
 
-CDeviceAuth_GetAuthorizedBorrowers_Response = _reflection.GeneratedProtocolMessageType('CDeviceAuth_GetAuthorizedBorrowers_Response', (_message.Message,), dict(
+CDeviceAuth_GetAuthorizedBorrowers_Response = _reflection.GeneratedProtocolMessageType('CDeviceAuth_GetAuthorizedBorrowers_Response', (_message.Message,), {
 
-  Borrower = _reflection.GeneratedProtocolMessageType('Borrower', (_message.Message,), dict(
-    DESCRIPTOR = _CDEVICEAUTH_GETAUTHORIZEDBORROWERS_RESPONSE_BORROWER,
-    __module__ = 'steammessages_deviceauth_pb2'
+  'Borrower' : _reflection.GeneratedProtocolMessageType('Borrower', (_message.Message,), {
+    'DESCRIPTOR' : _CDEVICEAUTH_GETAUTHORIZEDBORROWERS_RESPONSE_BORROWER,
+    '__module__' : 'steammessages_deviceauth_pb2'
     # @@protoc_insertion_point(class_scope:CDeviceAuth_GetAuthorizedBorrowers_Response.Borrower)
-    ))
+    })
   ,
-  DESCRIPTOR = _CDEVICEAUTH_GETAUTHORIZEDBORROWERS_RESPONSE,
-  __module__ = 'steammessages_deviceauth_pb2'
+  'DESCRIPTOR' : _CDEVICEAUTH_GETAUTHORIZEDBORROWERS_RESPONSE,
+  '__module__' : 'steammessages_deviceauth_pb2'
   # @@protoc_insertion_point(class_scope:CDeviceAuth_GetAuthorizedBorrowers_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CDeviceAuth_GetAuthorizedBorrowers_Response)
 _sym_db.RegisterMessage(CDeviceAuth_GetAuthorizedBorrowers_Response.Borrower)
 
-CDeviceAuth_AddAuthorizedBorrowers_Request = _reflection.GeneratedProtocolMessageType('CDeviceAuth_AddAuthorizedBorrowers_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CDEVICEAUTH_ADDAUTHORIZEDBORROWERS_REQUEST,
-  __module__ = 'steammessages_deviceauth_pb2'
+CDeviceAuth_AddAuthorizedBorrowers_Request = _reflection.GeneratedProtocolMessageType('CDeviceAuth_AddAuthorizedBorrowers_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CDEVICEAUTH_ADDAUTHORIZEDBORROWERS_REQUEST,
+  '__module__' : 'steammessages_deviceauth_pb2'
   # @@protoc_insertion_point(class_scope:CDeviceAuth_AddAuthorizedBorrowers_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CDeviceAuth_AddAuthorizedBorrowers_Request)
 
-CDeviceAuth_AddAuthorizedBorrowers_Response = _reflection.GeneratedProtocolMessageType('CDeviceAuth_AddAuthorizedBorrowers_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CDEVICEAUTH_ADDAUTHORIZEDBORROWERS_RESPONSE,
-  __module__ = 'steammessages_deviceauth_pb2'
+CDeviceAuth_AddAuthorizedBorrowers_Response = _reflection.GeneratedProtocolMessageType('CDeviceAuth_AddAuthorizedBorrowers_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CDEVICEAUTH_ADDAUTHORIZEDBORROWERS_RESPONSE,
+  '__module__' : 'steammessages_deviceauth_pb2'
   # @@protoc_insertion_point(class_scope:CDeviceAuth_AddAuthorizedBorrowers_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CDeviceAuth_AddAuthorizedBorrowers_Response)
 
-CDeviceAuth_RemoveAuthorizedBorrowers_Request = _reflection.GeneratedProtocolMessageType('CDeviceAuth_RemoveAuthorizedBorrowers_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CDEVICEAUTH_REMOVEAUTHORIZEDBORROWERS_REQUEST,
-  __module__ = 'steammessages_deviceauth_pb2'
+CDeviceAuth_RemoveAuthorizedBorrowers_Request = _reflection.GeneratedProtocolMessageType('CDeviceAuth_RemoveAuthorizedBorrowers_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CDEVICEAUTH_REMOVEAUTHORIZEDBORROWERS_REQUEST,
+  '__module__' : 'steammessages_deviceauth_pb2'
   # @@protoc_insertion_point(class_scope:CDeviceAuth_RemoveAuthorizedBorrowers_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CDeviceAuth_RemoveAuthorizedBorrowers_Request)
 
-CDeviceAuth_RemoveAuthorizedBorrowers_Response = _reflection.GeneratedProtocolMessageType('CDeviceAuth_RemoveAuthorizedBorrowers_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CDEVICEAUTH_REMOVEAUTHORIZEDBORROWERS_RESPONSE,
-  __module__ = 'steammessages_deviceauth_pb2'
+CDeviceAuth_RemoveAuthorizedBorrowers_Response = _reflection.GeneratedProtocolMessageType('CDeviceAuth_RemoveAuthorizedBorrowers_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CDEVICEAUTH_REMOVEAUTHORIZEDBORROWERS_RESPONSE,
+  '__module__' : 'steammessages_deviceauth_pb2'
   # @@protoc_insertion_point(class_scope:CDeviceAuth_RemoveAuthorizedBorrowers_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CDeviceAuth_RemoveAuthorizedBorrowers_Response)
 
-CDeviceAuth_GetAuthorizedAsBorrower_Request = _reflection.GeneratedProtocolMessageType('CDeviceAuth_GetAuthorizedAsBorrower_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CDEVICEAUTH_GETAUTHORIZEDASBORROWER_REQUEST,
-  __module__ = 'steammessages_deviceauth_pb2'
+CDeviceAuth_GetAuthorizedAsBorrower_Request = _reflection.GeneratedProtocolMessageType('CDeviceAuth_GetAuthorizedAsBorrower_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CDEVICEAUTH_GETAUTHORIZEDASBORROWER_REQUEST,
+  '__module__' : 'steammessages_deviceauth_pb2'
   # @@protoc_insertion_point(class_scope:CDeviceAuth_GetAuthorizedAsBorrower_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CDeviceAuth_GetAuthorizedAsBorrower_Request)
 
-CDeviceAuth_GetAuthorizedAsBorrower_Response = _reflection.GeneratedProtocolMessageType('CDeviceAuth_GetAuthorizedAsBorrower_Response', (_message.Message,), dict(
+CDeviceAuth_GetAuthorizedAsBorrower_Response = _reflection.GeneratedProtocolMessageType('CDeviceAuth_GetAuthorizedAsBorrower_Response', (_message.Message,), {
 
-  Lender = _reflection.GeneratedProtocolMessageType('Lender', (_message.Message,), dict(
-    DESCRIPTOR = _CDEVICEAUTH_GETAUTHORIZEDASBORROWER_RESPONSE_LENDER,
-    __module__ = 'steammessages_deviceauth_pb2'
+  'Lender' : _reflection.GeneratedProtocolMessageType('Lender', (_message.Message,), {
+    'DESCRIPTOR' : _CDEVICEAUTH_GETAUTHORIZEDASBORROWER_RESPONSE_LENDER,
+    '__module__' : 'steammessages_deviceauth_pb2'
     # @@protoc_insertion_point(class_scope:CDeviceAuth_GetAuthorizedAsBorrower_Response.Lender)
-    ))
+    })
   ,
-  DESCRIPTOR = _CDEVICEAUTH_GETAUTHORIZEDASBORROWER_RESPONSE,
-  __module__ = 'steammessages_deviceauth_pb2'
+  'DESCRIPTOR' : _CDEVICEAUTH_GETAUTHORIZEDASBORROWER_RESPONSE,
+  '__module__' : 'steammessages_deviceauth_pb2'
   # @@protoc_insertion_point(class_scope:CDeviceAuth_GetAuthorizedAsBorrower_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CDeviceAuth_GetAuthorizedAsBorrower_Response)
 _sym_db.RegisterMessage(CDeviceAuth_GetAuthorizedAsBorrower_Response.Lender)
 
-CDeviceAuth_GetExcludedGamesInLibrary_Request = _reflection.GeneratedProtocolMessageType('CDeviceAuth_GetExcludedGamesInLibrary_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CDEVICEAUTH_GETEXCLUDEDGAMESINLIBRARY_REQUEST,
-  __module__ = 'steammessages_deviceauth_pb2'
+CDeviceAuth_GetExcludedGamesInLibrary_Request = _reflection.GeneratedProtocolMessageType('CDeviceAuth_GetExcludedGamesInLibrary_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CDEVICEAUTH_GETEXCLUDEDGAMESINLIBRARY_REQUEST,
+  '__module__' : 'steammessages_deviceauth_pb2'
   # @@protoc_insertion_point(class_scope:CDeviceAuth_GetExcludedGamesInLibrary_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CDeviceAuth_GetExcludedGamesInLibrary_Request)
 
-CDeviceAuth_GetExcludedGamesInLibrary_Response = _reflection.GeneratedProtocolMessageType('CDeviceAuth_GetExcludedGamesInLibrary_Response', (_message.Message,), dict(
+CDeviceAuth_GetExcludedGamesInLibrary_Response = _reflection.GeneratedProtocolMessageType('CDeviceAuth_GetExcludedGamesInLibrary_Response', (_message.Message,), {
 
-  ExcludedGame = _reflection.GeneratedProtocolMessageType('ExcludedGame', (_message.Message,), dict(
-    DESCRIPTOR = _CDEVICEAUTH_GETEXCLUDEDGAMESINLIBRARY_RESPONSE_EXCLUDEDGAME,
-    __module__ = 'steammessages_deviceauth_pb2'
+  'ExcludedGame' : _reflection.GeneratedProtocolMessageType('ExcludedGame', (_message.Message,), {
+    'DESCRIPTOR' : _CDEVICEAUTH_GETEXCLUDEDGAMESINLIBRARY_RESPONSE_EXCLUDEDGAME,
+    '__module__' : 'steammessages_deviceauth_pb2'
     # @@protoc_insertion_point(class_scope:CDeviceAuth_GetExcludedGamesInLibrary_Response.ExcludedGame)
-    ))
+    })
   ,
-  DESCRIPTOR = _CDEVICEAUTH_GETEXCLUDEDGAMESINLIBRARY_RESPONSE,
-  __module__ = 'steammessages_deviceauth_pb2'
+  'DESCRIPTOR' : _CDEVICEAUTH_GETEXCLUDEDGAMESINLIBRARY_RESPONSE,
+  '__module__' : 'steammessages_deviceauth_pb2'
   # @@protoc_insertion_point(class_scope:CDeviceAuth_GetExcludedGamesInLibrary_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CDeviceAuth_GetExcludedGamesInLibrary_Response)
 _sym_db.RegisterMessage(CDeviceAuth_GetExcludedGamesInLibrary_Response.ExcludedGame)
 
-CDeviceAuth_GetBorrowerPlayHistory_Request = _reflection.GeneratedProtocolMessageType('CDeviceAuth_GetBorrowerPlayHistory_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CDEVICEAUTH_GETBORROWERPLAYHISTORY_REQUEST,
-  __module__ = 'steammessages_deviceauth_pb2'
+CDeviceAuth_GetBorrowerPlayHistory_Request = _reflection.GeneratedProtocolMessageType('CDeviceAuth_GetBorrowerPlayHistory_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CDEVICEAUTH_GETBORROWERPLAYHISTORY_REQUEST,
+  '__module__' : 'steammessages_deviceauth_pb2'
   # @@protoc_insertion_point(class_scope:CDeviceAuth_GetBorrowerPlayHistory_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CDeviceAuth_GetBorrowerPlayHistory_Request)
 
-CDeviceAuth_GetBorrowerPlayHistory_Response = _reflection.GeneratedProtocolMessageType('CDeviceAuth_GetBorrowerPlayHistory_Response', (_message.Message,), dict(
+CDeviceAuth_GetBorrowerPlayHistory_Response = _reflection.GeneratedProtocolMessageType('CDeviceAuth_GetBorrowerPlayHistory_Response', (_message.Message,), {
 
-  GameHistory = _reflection.GeneratedProtocolMessageType('GameHistory', (_message.Message,), dict(
-    DESCRIPTOR = _CDEVICEAUTH_GETBORROWERPLAYHISTORY_RESPONSE_GAMEHISTORY,
-    __module__ = 'steammessages_deviceauth_pb2'
+  'GameHistory' : _reflection.GeneratedProtocolMessageType('GameHistory', (_message.Message,), {
+    'DESCRIPTOR' : _CDEVICEAUTH_GETBORROWERPLAYHISTORY_RESPONSE_GAMEHISTORY,
+    '__module__' : 'steammessages_deviceauth_pb2'
     # @@protoc_insertion_point(class_scope:CDeviceAuth_GetBorrowerPlayHistory_Response.GameHistory)
-    ))
+    })
   ,
 
-  LenderHistory = _reflection.GeneratedProtocolMessageType('LenderHistory', (_message.Message,), dict(
-    DESCRIPTOR = _CDEVICEAUTH_GETBORROWERPLAYHISTORY_RESPONSE_LENDERHISTORY,
-    __module__ = 'steammessages_deviceauth_pb2'
+  'LenderHistory' : _reflection.GeneratedProtocolMessageType('LenderHistory', (_message.Message,), {
+    'DESCRIPTOR' : _CDEVICEAUTH_GETBORROWERPLAYHISTORY_RESPONSE_LENDERHISTORY,
+    '__module__' : 'steammessages_deviceauth_pb2'
     # @@protoc_insertion_point(class_scope:CDeviceAuth_GetBorrowerPlayHistory_Response.LenderHistory)
-    ))
+    })
   ,
-  DESCRIPTOR = _CDEVICEAUTH_GETBORROWERPLAYHISTORY_RESPONSE,
-  __module__ = 'steammessages_deviceauth_pb2'
+  'DESCRIPTOR' : _CDEVICEAUTH_GETBORROWERPLAYHISTORY_RESPONSE,
+  '__module__' : 'steammessages_deviceauth_pb2'
   # @@protoc_insertion_point(class_scope:CDeviceAuth_GetBorrowerPlayHistory_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CDeviceAuth_GetBorrowerPlayHistory_Response)
 _sym_db.RegisterMessage(CDeviceAuth_GetBorrowerPlayHistory_Response.GameHistory)
 _sym_db.RegisterMessage(CDeviceAuth_GetBorrowerPlayHistory_Response.LenderHistory)
@@ -1401,9 +1430,10 @@ _DEVICEAUTH = _descriptor.ServiceDescriptor(
   full_name='DeviceAuth',
   file=DESCRIPTOR,
   index=0,
-  serialized_options=_b('\202\265\030 Library Sharing settings service'),
-  serialized_start=2903,
-  serialized_end=4889,
+  serialized_options=b'\202\265\030 Library Sharing settings service',
+  create_key=_descriptor._internal_create_key,
+  serialized_start=2929,
+  serialized_end=4915,
   methods=[
   _descriptor.MethodDescriptor(
     name='GetOwnAuthorizedDevices',
@@ -1412,7 +1442,8 @@ _DEVICEAUTH = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CDEVICEAUTH_GETOWNAUTHORIZEDDEVICES_REQUEST,
     output_type=_CDEVICEAUTH_GETOWNAUTHORIZEDDEVICES_RESPONSE,
-    serialized_options=_b('\202\265\030\036Get list of authorized devices'),
+    serialized_options=b'\202\265\030\036Get list of authorized devices',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='AcceptAuthorizationRequest',
@@ -1421,7 +1452,8 @@ _DEVICEAUTH = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CDEVICEAUTH_ACCEPTAUTHORIZATIONREQUEST_REQUEST,
     output_type=_CDEVICEAUTH_ACCEPTAUTHORIZATIONREQUEST_RESPONSE,
-    serialized_options=_b('\202\265\0300Accept an authorization request by another users'),
+    serialized_options=b'\202\265\0300Accept an authorization request by another users',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='AuthorizeRemoteDevice',
@@ -1430,7 +1462,8 @@ _DEVICEAUTH = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CDEVICEAUTH_AUTHORIZEREMOTEDEVICE_REQUEST,
     output_type=_CDEVICEAUTH_AUTHORIZEREMOTEDEVICE_RESPONSE,
-    serialized_options=_b('\202\265\0304Authorize own remote device that has pending request'),
+    serialized_options=b'\202\265\0304Authorize own remote device that has pending request',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='DeauthorizeRemoteDevice',
@@ -1439,7 +1472,8 @@ _DEVICEAUTH = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CDEVICEAUTH_DEAUTHORIZEREMOTEDEVICE_REQUEST,
     output_type=_CDEVICEAUTH_DEAUTHORIZEREMOTEDEVICE_RESPONSE,
-    serialized_options=_b('\202\265\030\037Revoke own device authorization'),
+    serialized_options=b'\202\265\030\037Revoke own device authorization',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetUsedAuthorizedDevices',
@@ -1448,7 +1482,8 @@ _DEVICEAUTH = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CDEVICEAUTH_GETUSEDAUTHORIZEDDEVICES_REQUEST,
     output_type=_CDEVICEAUTH_GETUSEDAUTHORIZEDDEVICES_RESPONSE,
-    serialized_options=_b('\202\265\030<Get list of authorized devices user played borrowed games on'),
+    serialized_options=b'\202\265\030<Get list of authorized devices user played borrowed games on',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetAuthorizedBorrowers',
@@ -1457,7 +1492,8 @@ _DEVICEAUTH = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CDEVICEAUTH_GETAUTHORIZEDBORROWERS_REQUEST,
     output_type=_CDEVICEAUTH_GETAUTHORIZEDBORROWERS_RESPONSE,
-    serialized_options=_b('\202\265\0309Get list of users that can borrow on an authorized device'),
+    serialized_options=b'\202\265\0309Get list of users that can borrow on an authorized device',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='AddAuthorizedBorrowers',
@@ -1466,7 +1502,8 @@ _DEVICEAUTH = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CDEVICEAUTH_ADDAUTHORIZEDBORROWERS_REQUEST,
     output_type=_CDEVICEAUTH_ADDAUTHORIZEDBORROWERS_RESPONSE,
-    serialized_options=_b('\202\265\0307Add users that can borrow on limited authorized devices'),
+    serialized_options=b'\202\265\0307Add users that can borrow on limited authorized devices',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='RemoveAuthorizedBorrowers',
@@ -1475,7 +1512,8 @@ _DEVICEAUTH = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CDEVICEAUTH_REMOVEAUTHORIZEDBORROWERS_REQUEST,
     output_type=_CDEVICEAUTH_REMOVEAUTHORIZEDBORROWERS_RESPONSE,
-    serialized_options=_b('\202\265\030:Remove users that can borrow on limited authorized devices'),
+    serialized_options=b'\202\265\030:Remove users that can borrow on limited authorized devices',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetAuthorizedAsBorrower',
@@ -1484,7 +1522,8 @@ _DEVICEAUTH = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CDEVICEAUTH_GETAUTHORIZEDASBORROWER_REQUEST,
     output_type=_CDEVICEAUTH_GETAUTHORIZEDASBORROWER_RESPONSE,
-    serialized_options=_b('\202\265\030=Get list of lenders that authorized given account as borrower'),
+    serialized_options=b'\202\265\030=Get list of lenders that authorized given account as borrower',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetExcludedGamesInLibrary',
@@ -1493,7 +1532,8 @@ _DEVICEAUTH = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CDEVICEAUTH_GETEXCLUDEDGAMESINLIBRARY_REQUEST,
     output_type=_CDEVICEAUTH_GETEXCLUDEDGAMESINLIBRARY_RESPONSE,
-    serialized_options=_b('\202\265\030-Get list of excluded games in lenders library'),
+    serialized_options=b'\202\265\030-Get list of excluded games in lenders library',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetBorrowerPlayHistory',
@@ -1502,7 +1542,8 @@ _DEVICEAUTH = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CDEVICEAUTH_GETBORROWERPLAYHISTORY_REQUEST,
     output_type=_CDEVICEAUTH_GETBORROWERPLAYHISTORY_RESPONSE,
-    serialized_options=_b('\202\265\030!Get list played games as borrower'),
+    serialized_options=b'\202\265\030!Get list played games as borrower',
+    create_key=_descriptor._internal_create_key,
   ),
 ])
 _sym_db.RegisterServiceDescriptor(_DEVICEAUTH)
diff --git a/steam/protobufs/steammessages_econ_pb2.py b/steam/protobufs/steammessages_econ_pb2.py
index 3da38e1..c5c37a8 100644
--- a/steam/protobufs/steammessages_econ_pb2.py
+++ b/steam/protobufs/steammessages_econ_pb2.py
@@ -1,9 +1,7 @@
 # -*- coding: utf-8 -*-
 # Generated by the protocol buffer compiler.  DO NOT EDIT!
 # source: steammessages_econ.proto
-
-import sys
-_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1'))
+"""Generated protocol buffer code."""
 from google.protobuf import descriptor as _descriptor
 from google.protobuf import message as _message
 from google.protobuf import reflection as _reflection
@@ -15,6 +13,7 @@ from google.protobuf import service_reflection
 _sym_db = _symbol_database.Default()
 
 
+import steam.protobufs.steammessages_base_pb2 as steammessages__base__pb2
 import steam.protobufs.steammessages_unified_base_pb2 as steammessages__unified__base__pb2
 
 
@@ -22,59 +21,51 @@ DESCRIPTOR = _descriptor.FileDescriptor(
   name='steammessages_econ.proto',
   package='',
   syntax='proto2',
-  serialized_options=_b('\220\001\001'),
-  serialized_pb=_b('\n\x18steammessages_econ.proto\x1a steammessages_unified_base.proto\"D\n&CEcon_GetTradeOfferAccessToken_Request\x12\x1a\n\x12generate_new_token\x18\x01 \x01(\x08\"K\n\'CEcon_GetTradeOfferAccessToken_Response\x12 \n\x18trade_offer_access_token\x18\x01 \x01(\t\"C\n-CEcon_ClientGetItemShopOverlayAuthURL_Request\x12\x12\n\nreturn_url\x18\x01 \x01(\t\"=\n.CEcon_ClientGetItemShopOverlayAuthURL_Response\x12\x0b\n\x03url\x18\x01 \x01(\t\"\xa9\x01\n\x1f\x43\x45\x63on_GetAssetClassInfo_Request\x12\x10\n\x08language\x18\x01 \x01(\t\x12\r\n\x05\x61ppid\x18\x02 \x01(\r\x12\x37\n\x07\x63lasses\x18\x03 \x03(\x0b\x32&.CEcon_GetAssetClassInfo_Request.Class\x1a,\n\x05\x43lass\x12\x0f\n\x07\x63lassid\x18\x01 \x01(\x04\x12\x12\n\ninstanceid\x18\x02 \x01(\x04\"V\n\x19\x43\x45\x63onItem_DescriptionLine\x12\x0c\n\x04type\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t\x12\r\n\x05\x63olor\x18\x03 \x01(\t\x12\r\n\x05label\x18\x04 \x01(\t\".\n\x10\x43\x45\x63onItem_Action\x12\x0c\n\x04link\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\"\xe3\x06\n\x15\x43\x45\x63onItem_Description\x12\r\n\x05\x61ppid\x18\x01 \x01(\x05\x12\x0f\n\x07\x63lassid\x18\x02 \x01(\x04\x12\x12\n\ninstanceid\x18\x03 \x01(\x04\x12\x10\n\x08\x63urrency\x18\x04 \x01(\x08\x12\x18\n\x10\x62\x61\x63kground_color\x18\x05 \x01(\t\x12\x10\n\x08icon_url\x18\x06 \x01(\t\x12\x16\n\x0eicon_url_large\x18\x07 \x01(\t\x12\x30\n\x0c\x64\x65scriptions\x18\x08 \x03(\x0b\x32\x1a.CEconItem_DescriptionLine\x12\x10\n\x08tradable\x18\t \x01(\x08\x12\"\n\x07\x61\x63tions\x18\n \x03(\x0b\x32\x11.CEconItem_Action\x12\x36\n\x12owner_descriptions\x18\x0b \x03(\x0b\x32\x1a.CEconItem_DescriptionLine\x12(\n\rowner_actions\x18\x0c \x03(\x0b\x32\x11.CEconItem_Action\x12\x15\n\rfraudwarnings\x18\r \x03(\t\x12\x0c\n\x04name\x18\x0e \x01(\t\x12\x12\n\nname_color\x18\x0f \x01(\t\x12\x0c\n\x04type\x18\x10 \x01(\t\x12\x13\n\x0bmarket_name\x18\x11 \x01(\t\x12\x18\n\x10market_hash_name\x18\x12 \x01(\t\x12\x12\n\nmarket_fee\x18\x13 \x01(\t\x12\x16\n\x0emarket_fee_app\x18\x1c \x01(\x05\x12.\n\x0e\x63ontained_item\x18\x14 \x01(\x0b\x32\x16.CEconItem_Description\x12)\n\x0emarket_actions\x18\x15 \x03(\x0b\x32\x11.CEconItem_Action\x12\x11\n\tcommodity\x18\x16 \x01(\x08\x12#\n\x1bmarket_tradable_restriction\x18\x17 \x01(\x05\x12%\n\x1dmarket_marketable_restriction\x18\x18 \x01(\x05\x12\x12\n\nmarketable\x18\x19 \x01(\x08\x12\x1c\n\x04tags\x18\x1a \x03(\x0b\x32\x0e.CEconItem_Tag\x12\x17\n\x0fitem_expiration\x18\x1b \x01(\t\x12&\n\x1emarket_buy_country_restriction\x18\x1e \x01(\t\x12\'\n\x1fmarket_sell_country_restriction\x18\x1f \x01(\t\"\x98\x03\n\rCEconItem_Tag\x12\x31\n\x05\x61ppid\x18\x01 \x01(\rB\"\x82\xb5\x18\x1eThe app that contains the item\x12J\n\x08\x63\x61tegory\x18\x02 \x01(\tB8\x82\xb5\x18\x34The internal name of the category the tag belongs to\x12\x37\n\rinternal_name\x18\x03 \x01(\tB \x82\xb5\x18\x1cThe internal name of the tag\x12G\n\x17localized_category_name\x18\x04 \x01(\tB&\x82\xb5\x18\"The localized name of the category\x12=\n\x12localized_tag_name\x18\x05 \x01(\tB!\x82\xb5\x18\x1dThe localized name of the tag\x12G\n\x05\x63olor\x18\x06 \x01(\tB8\x82\xb5\x18\x34The color to use when displaying the tag to the user\"P\n CEcon_GetAssetClassInfo_Response\x12,\n\x0c\x64\x65scriptions\x18\x01 \x03(\x0b\x32\x16.CEconItem_Description2\xe2\x04\n\x04\x45\x63on\x12\x9a\x01\n\x18GetTradeOfferAccessToken\x12\'.CEcon_GetTradeOfferAccessToken_Request\x1a(.CEcon_GetTradeOfferAccessToken_Response\"+\x82\xb5\x18\'Get the user\'s trade offer access token\x12\xd9\x01\n\x1f\x43lientGetItemShopOverlayAuthURL\x12..CEcon_ClientGetItemShopOverlayAuthURL_Request\x1a/.CEcon_ClientGetItemShopOverlayAuthURL_Response\"U\x82\xb5\x18QGenerates a URL which sets a secure cookie for in-game-browser itemshop purchases\x12\x9f\x01\n\x11GetAssetClassInfo\x12 .CEcon_GetAssetClassInfo_Request\x1a!.CEcon_GetAssetClassInfo_Response\"E\x82\xb5\x18\x41Returns description information about the passed in asset classes\x1a?\x82\xb5\x18;A service that provides communication with the econ serversB\x03\x90\x01\x01')
+  serialized_options=b'\220\001\001',
+  create_key=_descriptor._internal_create_key,
+  serialized_pb=b'\n\x18steammessages_econ.proto\x1a\x18steammessages_base.proto\x1a steammessages_unified_base.proto\"\x95\x03\n/CEcon_GetInventoryItemsWithDescriptions_Request\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12\r\n\x05\x61ppid\x18\x02 \x01(\r\x12\x11\n\tcontextid\x18\x03 \x01(\x04\x12\x18\n\x10get_descriptions\x18\x04 \x01(\x08\x12$\n\x1c\x66or_trade_offer_verification\x18\n \x01(\x08\x12\x10\n\x08language\x18\x05 \x01(\t\x12O\n\x07\x66ilters\x18\x06 \x01(\x0b\x32>.CEcon_GetInventoryItemsWithDescriptions_Request.FilterOptions\x12\x15\n\rstart_assetid\x18\x08 \x01(\x04\x12\r\n\x05\x63ount\x18\t \x01(\x05\x1a\x66\n\rFilterOptions\x12\x10\n\x08\x61ssetids\x18\x01 \x03(\x04\x12\x13\n\x0b\x63urrencyids\x18\x02 \x03(\r\x12\x15\n\rtradable_only\x18\x03 \x01(\x08\x12\x17\n\x0fmarketable_only\x18\x04 \x01(\x08\"\xe7\x01\n\x0b\x43\x45\x63on_Asset\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x11\n\tcontextid\x18\x02 \x01(\x04\x12\x0f\n\x07\x61ssetid\x18\x03 \x01(\x04\x12\x0f\n\x07\x63lassid\x18\x04 \x01(\x04\x12\x12\n\ninstanceid\x18\x05 \x01(\x04\x12N\n\ncurrencyid\x18\x06 \x01(\rB:\x82\xb5\x18\x36Set currencyid if it\'s a currency, assetid for an item\x12\x0e\n\x06\x61mount\x18\x07 \x01(\x03\x12\x0f\n\x07missing\x18\x08 \x01(\x08\x12\x0f\n\x07\x65st_usd\x18\t \x01(\x03\"V\n\x19\x43\x45\x63onItem_DescriptionLine\x12\x0c\n\x04type\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t\x12\r\n\x05\x63olor\x18\x03 \x01(\t\x12\r\n\x05label\x18\x04 \x01(\t\".\n\x10\x43\x45\x63onItem_Action\x12\x0c\n\x04link\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\"\xe3\x06\n\x15\x43\x45\x63onItem_Description\x12\r\n\x05\x61ppid\x18\x01 \x01(\x05\x12\x0f\n\x07\x63lassid\x18\x02 \x01(\x04\x12\x12\n\ninstanceid\x18\x03 \x01(\x04\x12\x10\n\x08\x63urrency\x18\x04 \x01(\x08\x12\x18\n\x10\x62\x61\x63kground_color\x18\x05 \x01(\t\x12\x10\n\x08icon_url\x18\x06 \x01(\t\x12\x16\n\x0eicon_url_large\x18\x07 \x01(\t\x12\x30\n\x0c\x64\x65scriptions\x18\x08 \x03(\x0b\x32\x1a.CEconItem_DescriptionLine\x12\x10\n\x08tradable\x18\t \x01(\x08\x12\"\n\x07\x61\x63tions\x18\n \x03(\x0b\x32\x11.CEconItem_Action\x12\x36\n\x12owner_descriptions\x18\x0b \x03(\x0b\x32\x1a.CEconItem_DescriptionLine\x12(\n\rowner_actions\x18\x0c \x03(\x0b\x32\x11.CEconItem_Action\x12\x15\n\rfraudwarnings\x18\r \x03(\t\x12\x0c\n\x04name\x18\x0e \x01(\t\x12\x12\n\nname_color\x18\x0f \x01(\t\x12\x0c\n\x04type\x18\x10 \x01(\t\x12\x13\n\x0bmarket_name\x18\x11 \x01(\t\x12\x18\n\x10market_hash_name\x18\x12 \x01(\t\x12\x12\n\nmarket_fee\x18\x13 \x01(\t\x12\x16\n\x0emarket_fee_app\x18\x1c \x01(\x05\x12.\n\x0e\x63ontained_item\x18\x14 \x01(\x0b\x32\x16.CEconItem_Description\x12)\n\x0emarket_actions\x18\x15 \x03(\x0b\x32\x11.CEconItem_Action\x12\x11\n\tcommodity\x18\x16 \x01(\x08\x12#\n\x1bmarket_tradable_restriction\x18\x17 \x01(\x05\x12%\n\x1dmarket_marketable_restriction\x18\x18 \x01(\x05\x12\x12\n\nmarketable\x18\x19 \x01(\x08\x12\x1c\n\x04tags\x18\x1a \x03(\x0b\x32\x0e.CEconItem_Tag\x12\x17\n\x0fitem_expiration\x18\x1b \x01(\t\x12&\n\x1emarket_buy_country_restriction\x18\x1e \x01(\t\x12\'\n\x1fmarket_sell_country_restriction\x18\x1f \x01(\t\"\x98\x03\n\rCEconItem_Tag\x12\x31\n\x05\x61ppid\x18\x01 \x01(\rB\"\x82\xb5\x18\x1eThe app that contains the item\x12J\n\x08\x63\x61tegory\x18\x02 \x01(\tB8\x82\xb5\x18\x34The internal name of the category the tag belongs to\x12\x37\n\rinternal_name\x18\x03 \x01(\tB \x82\xb5\x18\x1cThe internal name of the tag\x12G\n\x17localized_category_name\x18\x04 \x01(\tB&\x82\xb5\x18\"The localized name of the category\x12=\n\x12localized_tag_name\x18\x05 \x01(\tB!\x82\xb5\x18\x1dThe localized name of the tag\x12G\n\x05\x63olor\x18\x06 \x01(\tB8\x82\xb5\x18\x34The color to use when displaying the tag to the user\"\xc4\x02\n0CEcon_GetInventoryItemsWithDescriptions_Response\x12\x1c\n\x06\x61ssets\x18\x01 \x03(\x0b\x32\x0c.CEcon_Asset\x12,\n\x0c\x64\x65scriptions\x18\x02 \x03(\x0b\x32\x16.CEconItem_Description\x12{\n\x0emissing_assets\x18\x03 \x03(\x0b\x32\x0c.CEcon_AssetBU\x82\xb5\x18QThis list of assets in the original list we could not find in the users inventory\x12\x12\n\nmore_items\x18\x04 \x01(\x08\x12\x14\n\x0clast_assetid\x18\x05 \x01(\x04\x12\x1d\n\x15total_inventory_count\x18\x06 \x01(\r\"D\n&CEcon_GetTradeOfferAccessToken_Request\x12\x1a\n\x12generate_new_token\x18\x01 \x01(\x08\"K\n\'CEcon_GetTradeOfferAccessToken_Response\x12 \n\x18trade_offer_access_token\x18\x01 \x01(\t\"C\n-CEcon_ClientGetItemShopOverlayAuthURL_Request\x12\x12\n\nreturn_url\x18\x01 \x01(\t\"=\n.CEcon_ClientGetItemShopOverlayAuthURL_Response\x12\x0b\n\x03url\x18\x01 \x01(\t\"\xa9\x01\n\x1f\x43\x45\x63on_GetAssetClassInfo_Request\x12\x10\n\x08language\x18\x01 \x01(\t\x12\r\n\x05\x61ppid\x18\x02 \x01(\r\x12\x37\n\x07\x63lasses\x18\x03 \x03(\x0b\x32&.CEcon_GetAssetClassInfo_Request.Class\x1a,\n\x05\x43lass\x12\x0f\n\x07\x63lassid\x18\x01 \x01(\x04\x12\x12\n\ninstanceid\x18\x02 \x01(\x04\"P\n CEcon_GetAssetClassInfo_Response\x12,\n\x0c\x64\x65scriptions\x18\x01 \x03(\x0b\x32\x16.CEconItem_Description2\xb6\x06\n\x04\x45\x63on\x12\xd1\x01\n!GetInventoryItemsWithDescriptions\x12\x30.CEcon_GetInventoryItemsWithDescriptions_Request\x1a\x31.CEcon_GetInventoryItemsWithDescriptions_Response\"G\x82\xb5\x18\x43Gets a set of items from a users inventory, along with descriptions\x12\x9a\x01\n\x18GetTradeOfferAccessToken\x12\'.CEcon_GetTradeOfferAccessToken_Request\x1a(.CEcon_GetTradeOfferAccessToken_Response\"+\x82\xb5\x18\'Get the user\'s trade offer access token\x12\xd9\x01\n\x1f\x43lientGetItemShopOverlayAuthURL\x12..CEcon_ClientGetItemShopOverlayAuthURL_Request\x1a/.CEcon_ClientGetItemShopOverlayAuthURL_Response\"U\x82\xb5\x18QGenerates a URL which sets a secure cookie for in-game-browser itemshop purchases\x12\x9f\x01\n\x11GetAssetClassInfo\x12 .CEcon_GetAssetClassInfo_Request\x1a!.CEcon_GetAssetClassInfo_Response\"E\x82\xb5\x18\x41Returns description information about the passed in asset classes\x1a?\x82\xb5\x18;A service that provides communication with the econ serversB\x03\x90\x01\x01'
   ,
-  dependencies=[steammessages__unified__base__pb2.DESCRIPTOR,])
+  dependencies=[steammessages__base__pb2.DESCRIPTOR,steammessages__unified__base__pb2.DESCRIPTOR,])
 
 
 
 
-_CECON_GETTRADEOFFERACCESSTOKEN_REQUEST = _descriptor.Descriptor(
-  name='CEcon_GetTradeOfferAccessToken_Request',
-  full_name='CEcon_GetTradeOfferAccessToken_Request',
+_CECON_GETINVENTORYITEMSWITHDESCRIPTIONS_REQUEST_FILTEROPTIONS = _descriptor.Descriptor(
+  name='FilterOptions',
+  full_name='CEcon_GetInventoryItemsWithDescriptions_Request.FilterOptions',
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
-      name='generate_new_token', full_name='CEcon_GetTradeOfferAccessToken_Request.generate_new_token', index=0,
-      number=1, type=8, cpp_type=7, label=1,
+      name='assetids', full_name='CEcon_GetInventoryItemsWithDescriptions_Request.FilterOptions.assetids', index=0,
+      number=1, type=4, cpp_type=4, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='currencyids', full_name='CEcon_GetInventoryItemsWithDescriptions_Request.FilterOptions.currencyids', index=1,
+      number=2, type=13, cpp_type=3, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='tradable_only', full_name='CEcon_GetInventoryItemsWithDescriptions_Request.FilterOptions.tradable_only', index=2,
+      number=3, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto2',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=62,
-  serialized_end=130,
-)
-
-
-_CECON_GETTRADEOFFERACCESSTOKEN_RESPONSE = _descriptor.Descriptor(
-  name='CEcon_GetTradeOfferAccessToken_Response',
-  full_name='CEcon_GetTradeOfferAccessToken_Response',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  fields=[
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
-      name='trade_offer_access_token', full_name='CEcon_GetTradeOfferAccessToken_Response.trade_offer_access_token', index=0,
-      number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      name='marketable_only', full_name='CEcon_GetInventoryItemsWithDescriptions_Request.FilterOptions.marketable_only', index=3,
+      number=4, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -87,60 +78,85 @@ _CECON_GETTRADEOFFERACCESSTOKEN_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=132,
-  serialized_end=207,
+  serialized_start=392,
+  serialized_end=494,
 )
 
-
-_CECON_CLIENTGETITEMSHOPOVERLAYAUTHURL_REQUEST = _descriptor.Descriptor(
-  name='CEcon_ClientGetItemShopOverlayAuthURL_Request',
-  full_name='CEcon_ClientGetItemShopOverlayAuthURL_Request',
+_CECON_GETINVENTORYITEMSWITHDESCRIPTIONS_REQUEST = _descriptor.Descriptor(
+  name='CEcon_GetInventoryItemsWithDescriptions_Request',
+  full_name='CEcon_GetInventoryItemsWithDescriptions_Request',
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
-      name='return_url', full_name='CEcon_ClientGetItemShopOverlayAuthURL_Request.return_url', index=0,
-      number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      name='steamid', full_name='CEcon_GetInventoryItemsWithDescriptions_Request.steamid', index=0,
+      number=1, type=6, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto2',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=209,
-  serialized_end=276,
-)
-
-
-_CECON_CLIENTGETITEMSHOPOVERLAYAUTHURL_RESPONSE = _descriptor.Descriptor(
-  name='CEcon_ClientGetItemShopOverlayAuthURL_Response',
-  full_name='CEcon_ClientGetItemShopOverlayAuthURL_Response',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  fields=[
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
-      name='url', full_name='CEcon_ClientGetItemShopOverlayAuthURL_Response.url', index=0,
-      number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      name='appid', full_name='CEcon_GetInventoryItemsWithDescriptions_Request.appid', index=1,
+      number=2, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='contextid', full_name='CEcon_GetInventoryItemsWithDescriptions_Request.contextid', index=2,
+      number=3, type=4, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='get_descriptions', full_name='CEcon_GetInventoryItemsWithDescriptions_Request.get_descriptions', index=3,
+      number=4, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='for_trade_offer_verification', full_name='CEcon_GetInventoryItemsWithDescriptions_Request.for_trade_offer_verification', index=4,
+      number=10, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='language', full_name='CEcon_GetInventoryItemsWithDescriptions_Request.language', index=5,
+      number=5, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='filters', full_name='CEcon_GetInventoryItemsWithDescriptions_Request.filters', index=6,
+      number=6, type=11, cpp_type=10, label=1,
+      has_default_value=False, default_value=None,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='start_assetid', full_name='CEcon_GetInventoryItemsWithDescriptions_Request.start_assetid', index=7,
+      number=8, type=4, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='count', full_name='CEcon_GetInventoryItemsWithDescriptions_Request.count', index=8,
+      number=9, type=5, cpp_type=1, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
-  nested_types=[],
+  nested_types=[_CECON_GETINVENTORYITEMSWITHDESCRIPTIONS_REQUEST_FILTEROPTIONS, ],
   enum_types=[
   ],
   serialized_options=None,
@@ -149,80 +165,86 @@ _CECON_CLIENTGETITEMSHOPOVERLAYAUTHURL_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=278,
-  serialized_end=339,
+  serialized_start=89,
+  serialized_end=494,
 )
 
 
-_CECON_GETASSETCLASSINFO_REQUEST_CLASS = _descriptor.Descriptor(
-  name='Class',
-  full_name='CEcon_GetAssetClassInfo_Request.Class',
+_CECON_ASSET = _descriptor.Descriptor(
+  name='CEcon_Asset',
+  full_name='CEcon_Asset',
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
-      name='classid', full_name='CEcon_GetAssetClassInfo_Request.Class.classid', index=0,
-      number=1, type=4, cpp_type=4, label=1,
+      name='appid', full_name='CEcon_Asset.appid', index=0,
+      number=1, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
-      name='instanceid', full_name='CEcon_GetAssetClassInfo_Request.Class.instanceid', index=1,
+      name='contextid', full_name='CEcon_Asset.contextid', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto2',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=467,
-  serialized_end=511,
-)
-
-_CECON_GETASSETCLASSINFO_REQUEST = _descriptor.Descriptor(
-  name='CEcon_GetAssetClassInfo_Request',
-  full_name='CEcon_GetAssetClassInfo_Request',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  fields=[
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
-      name='language', full_name='CEcon_GetAssetClassInfo_Request.language', index=0,
-      number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      name='assetid', full_name='CEcon_Asset.assetid', index=2,
+      number=3, type=4, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
-      name='appid', full_name='CEcon_GetAssetClassInfo_Request.appid', index=1,
-      number=2, type=13, cpp_type=3, label=1,
+      name='classid', full_name='CEcon_Asset.classid', index=3,
+      number=4, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
-      name='classes', full_name='CEcon_GetAssetClassInfo_Request.classes', index=2,
-      number=3, type=11, cpp_type=10, label=3,
-      has_default_value=False, default_value=[],
+      name='instanceid', full_name='CEcon_Asset.instanceid', index=4,
+      number=5, type=4, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='currencyid', full_name='CEcon_Asset.currencyid', index=5,
+      number=6, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\0306Set currencyid if it\'s a currency, assetid for an item', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='amount', full_name='CEcon_Asset.amount', index=6,
+      number=7, type=3, cpp_type=2, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='missing', full_name='CEcon_Asset.missing', index=7,
+      number=8, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='est_usd', full_name='CEcon_Asset.est_usd', index=8,
+      number=9, type=3, cpp_type=2, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
-  nested_types=[_CECON_GETASSETCLASSINFO_REQUEST_CLASS, ],
+  nested_types=[],
   enum_types=[
   ],
   serialized_options=None,
@@ -231,8 +253,8 @@ _CECON_GETASSETCLASSINFO_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=342,
-  serialized_end=511,
+  serialized_start=497,
+  serialized_end=728,
 )
 
 
@@ -242,35 +264,36 @@ _CECONITEM_DESCRIPTIONLINE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='type', full_name='CEconItem_DescriptionLine.type', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='value', full_name='CEconItem_DescriptionLine.value', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='color', full_name='CEconItem_DescriptionLine.color', index=2,
       number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='label', full_name='CEconItem_DescriptionLine.label', index=3,
       number=4, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -283,8 +306,8 @@ _CECONITEM_DESCRIPTIONLINE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=513,
-  serialized_end=599,
+  serialized_start=730,
+  serialized_end=816,
 )
 
 
@@ -294,21 +317,22 @@ _CECONITEM_ACTION = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='link', full_name='CEconItem_Action.link', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='name', full_name='CEconItem_Action.name', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -321,8 +345,8 @@ _CECONITEM_ACTION = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=601,
-  serialized_end=647,
+  serialized_start=818,
+  serialized_end=864,
 )
 
 
@@ -332,6 +356,7 @@ _CECONITEM_DESCRIPTION = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CEconItem_Description.appid', index=0,
@@ -339,210 +364,210 @@ _CECONITEM_DESCRIPTION = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='classid', full_name='CEconItem_Description.classid', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='instanceid', full_name='CEconItem_Description.instanceid', index=2,
       number=3, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='currency', full_name='CEconItem_Description.currency', index=3,
       number=4, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='background_color', full_name='CEconItem_Description.background_color', index=4,
       number=5, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='icon_url', full_name='CEconItem_Description.icon_url', index=5,
       number=6, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='icon_url_large', full_name='CEconItem_Description.icon_url_large', index=6,
       number=7, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='descriptions', full_name='CEconItem_Description.descriptions', index=7,
       number=8, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='tradable', full_name='CEconItem_Description.tradable', index=8,
       number=9, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='actions', full_name='CEconItem_Description.actions', index=9,
       number=10, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='owner_descriptions', full_name='CEconItem_Description.owner_descriptions', index=10,
       number=11, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='owner_actions', full_name='CEconItem_Description.owner_actions', index=11,
       number=12, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='fraudwarnings', full_name='CEconItem_Description.fraudwarnings', index=12,
       number=13, type=9, cpp_type=9, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='name', full_name='CEconItem_Description.name', index=13,
       number=14, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='name_color', full_name='CEconItem_Description.name_color', index=14,
       number=15, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='type', full_name='CEconItem_Description.type', index=15,
       number=16, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='market_name', full_name='CEconItem_Description.market_name', index=16,
       number=17, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='market_hash_name', full_name='CEconItem_Description.market_hash_name', index=17,
       number=18, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='market_fee', full_name='CEconItem_Description.market_fee', index=18,
       number=19, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='market_fee_app', full_name='CEconItem_Description.market_fee_app', index=19,
       number=28, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='contained_item', full_name='CEconItem_Description.contained_item', index=20,
       number=20, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='market_actions', full_name='CEconItem_Description.market_actions', index=21,
       number=21, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='commodity', full_name='CEconItem_Description.commodity', index=22,
       number=22, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='market_tradable_restriction', full_name='CEconItem_Description.market_tradable_restriction', index=23,
       number=23, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='market_marketable_restriction', full_name='CEconItem_Description.market_marketable_restriction', index=24,
       number=24, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='marketable', full_name='CEconItem_Description.marketable', index=25,
       number=25, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='tags', full_name='CEconItem_Description.tags', index=26,
       number=26, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='item_expiration', full_name='CEconItem_Description.item_expiration', index=27,
       number=27, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='market_buy_country_restriction', full_name='CEconItem_Description.market_buy_country_restriction', index=28,
       number=30, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='market_sell_country_restriction', full_name='CEconItem_Description.market_sell_country_restriction', index=29,
       number=31, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -555,8 +580,8 @@ _CECONITEM_DESCRIPTION = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=650,
-  serialized_end=1517,
+  serialized_start=867,
+  serialized_end=1734,
 )
 
 
@@ -566,6 +591,7 @@ _CECONITEM_TAG = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CEconItem_Tag.appid', index=0,
@@ -573,42 +599,109 @@ _CECONITEM_TAG = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\036The app that contains the item'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\036The app that contains the item', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='category', full_name='CEconItem_Tag.category', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\0304The internal name of the category the tag belongs to'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\0304The internal name of the category the tag belongs to', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='internal_name', full_name='CEconItem_Tag.internal_name', index=2,
       number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\034The internal name of the tag'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\034The internal name of the tag', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='localized_category_name', full_name='CEconItem_Tag.localized_category_name', index=3,
       number=4, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\"The localized name of the category'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\"The localized name of the category', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='localized_tag_name', full_name='CEconItem_Tag.localized_tag_name', index=4,
       number=5, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\035The localized name of the tag'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\035The localized name of the tag', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='color', full_name='CEconItem_Tag.color', index=5,
       number=6, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\0304The color to use when displaying the tag to the user', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=1737,
+  serialized_end=2145,
+)
+
+
+_CECON_GETINVENTORYITEMSWITHDESCRIPTIONS_RESPONSE = _descriptor.Descriptor(
+  name='CEcon_GetInventoryItemsWithDescriptions_Response',
+  full_name='CEcon_GetInventoryItemsWithDescriptions_Response',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='assets', full_name='CEcon_GetInventoryItemsWithDescriptions_Response.assets', index=0,
+      number=1, type=11, cpp_type=10, label=3,
+      has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\0304The color to use when displaying the tag to the user'), file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='descriptions', full_name='CEcon_GetInventoryItemsWithDescriptions_Response.descriptions', index=1,
+      number=2, type=11, cpp_type=10, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='missing_assets', full_name='CEcon_GetInventoryItemsWithDescriptions_Response.missing_assets', index=2,
+      number=3, type=11, cpp_type=10, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030QThis list of assets in the original list we could not find in the users inventory', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='more_items', full_name='CEcon_GetInventoryItemsWithDescriptions_Response.more_items', index=3,
+      number=4, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='last_assetid', full_name='CEcon_GetInventoryItemsWithDescriptions_Response.last_assetid', index=4,
+      number=5, type=4, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='total_inventory_count', full_name='CEcon_GetInventoryItemsWithDescriptions_Response.total_inventory_count', index=5,
+      number=6, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -621,8 +714,220 @@ _CECONITEM_TAG = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1520,
-  serialized_end=1928,
+  serialized_start=2148,
+  serialized_end=2472,
+)
+
+
+_CECON_GETTRADEOFFERACCESSTOKEN_REQUEST = _descriptor.Descriptor(
+  name='CEcon_GetTradeOfferAccessToken_Request',
+  full_name='CEcon_GetTradeOfferAccessToken_Request',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='generate_new_token', full_name='CEcon_GetTradeOfferAccessToken_Request.generate_new_token', index=0,
+      number=1, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=2474,
+  serialized_end=2542,
+)
+
+
+_CECON_GETTRADEOFFERACCESSTOKEN_RESPONSE = _descriptor.Descriptor(
+  name='CEcon_GetTradeOfferAccessToken_Response',
+  full_name='CEcon_GetTradeOfferAccessToken_Response',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='trade_offer_access_token', full_name='CEcon_GetTradeOfferAccessToken_Response.trade_offer_access_token', index=0,
+      number=1, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=2544,
+  serialized_end=2619,
+)
+
+
+_CECON_CLIENTGETITEMSHOPOVERLAYAUTHURL_REQUEST = _descriptor.Descriptor(
+  name='CEcon_ClientGetItemShopOverlayAuthURL_Request',
+  full_name='CEcon_ClientGetItemShopOverlayAuthURL_Request',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='return_url', full_name='CEcon_ClientGetItemShopOverlayAuthURL_Request.return_url', index=0,
+      number=1, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=2621,
+  serialized_end=2688,
+)
+
+
+_CECON_CLIENTGETITEMSHOPOVERLAYAUTHURL_RESPONSE = _descriptor.Descriptor(
+  name='CEcon_ClientGetItemShopOverlayAuthURL_Response',
+  full_name='CEcon_ClientGetItemShopOverlayAuthURL_Response',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='url', full_name='CEcon_ClientGetItemShopOverlayAuthURL_Response.url', index=0,
+      number=1, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=2690,
+  serialized_end=2751,
+)
+
+
+_CECON_GETASSETCLASSINFO_REQUEST_CLASS = _descriptor.Descriptor(
+  name='Class',
+  full_name='CEcon_GetAssetClassInfo_Request.Class',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='classid', full_name='CEcon_GetAssetClassInfo_Request.Class.classid', index=0,
+      number=1, type=4, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='instanceid', full_name='CEcon_GetAssetClassInfo_Request.Class.instanceid', index=1,
+      number=2, type=4, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=2879,
+  serialized_end=2923,
+)
+
+_CECON_GETASSETCLASSINFO_REQUEST = _descriptor.Descriptor(
+  name='CEcon_GetAssetClassInfo_Request',
+  full_name='CEcon_GetAssetClassInfo_Request',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='language', full_name='CEcon_GetAssetClassInfo_Request.language', index=0,
+      number=1, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='appid', full_name='CEcon_GetAssetClassInfo_Request.appid', index=1,
+      number=2, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='classes', full_name='CEcon_GetAssetClassInfo_Request.classes', index=2,
+      number=3, type=11, cpp_type=10, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[_CECON_GETASSETCLASSINFO_REQUEST_CLASS, ],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=2754,
+  serialized_end=2923,
 )
 
 
@@ -632,6 +937,7 @@ _CECON_GETASSETCLASSINFO_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='descriptions', full_name='CEcon_GetAssetClassInfo_Response.descriptions', index=0,
@@ -639,7 +945,7 @@ _CECON_GETASSETCLASSINFO_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -652,12 +958,12 @@ _CECON_GETASSETCLASSINFO_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1930,
-  serialized_end=2010,
+  serialized_start=2925,
+  serialized_end=3005,
 )
 
-_CECON_GETASSETCLASSINFO_REQUEST_CLASS.containing_type = _CECON_GETASSETCLASSINFO_REQUEST
-_CECON_GETASSETCLASSINFO_REQUEST.fields_by_name['classes'].message_type = _CECON_GETASSETCLASSINFO_REQUEST_CLASS
+_CECON_GETINVENTORYITEMSWITHDESCRIPTIONS_REQUEST_FILTEROPTIONS.containing_type = _CECON_GETINVENTORYITEMSWITHDESCRIPTIONS_REQUEST
+_CECON_GETINVENTORYITEMSWITHDESCRIPTIONS_REQUEST.fields_by_name['filters'].message_type = _CECON_GETINVENTORYITEMSWITHDESCRIPTIONS_REQUEST_FILTEROPTIONS
 _CECONITEM_DESCRIPTION.fields_by_name['descriptions'].message_type = _CECONITEM_DESCRIPTIONLINE
 _CECONITEM_DESCRIPTION.fields_by_name['actions'].message_type = _CECONITEM_ACTION
 _CECONITEM_DESCRIPTION.fields_by_name['owner_descriptions'].message_type = _CECONITEM_DESCRIPTIONLINE
@@ -665,141 +971,194 @@ _CECONITEM_DESCRIPTION.fields_by_name['owner_actions'].message_type = _CECONITEM
 _CECONITEM_DESCRIPTION.fields_by_name['contained_item'].message_type = _CECONITEM_DESCRIPTION
 _CECONITEM_DESCRIPTION.fields_by_name['market_actions'].message_type = _CECONITEM_ACTION
 _CECONITEM_DESCRIPTION.fields_by_name['tags'].message_type = _CECONITEM_TAG
+_CECON_GETINVENTORYITEMSWITHDESCRIPTIONS_RESPONSE.fields_by_name['assets'].message_type = _CECON_ASSET
+_CECON_GETINVENTORYITEMSWITHDESCRIPTIONS_RESPONSE.fields_by_name['descriptions'].message_type = _CECONITEM_DESCRIPTION
+_CECON_GETINVENTORYITEMSWITHDESCRIPTIONS_RESPONSE.fields_by_name['missing_assets'].message_type = _CECON_ASSET
+_CECON_GETASSETCLASSINFO_REQUEST_CLASS.containing_type = _CECON_GETASSETCLASSINFO_REQUEST
+_CECON_GETASSETCLASSINFO_REQUEST.fields_by_name['classes'].message_type = _CECON_GETASSETCLASSINFO_REQUEST_CLASS
 _CECON_GETASSETCLASSINFO_RESPONSE.fields_by_name['descriptions'].message_type = _CECONITEM_DESCRIPTION
+DESCRIPTOR.message_types_by_name['CEcon_GetInventoryItemsWithDescriptions_Request'] = _CECON_GETINVENTORYITEMSWITHDESCRIPTIONS_REQUEST
+DESCRIPTOR.message_types_by_name['CEcon_Asset'] = _CECON_ASSET
+DESCRIPTOR.message_types_by_name['CEconItem_DescriptionLine'] = _CECONITEM_DESCRIPTIONLINE
+DESCRIPTOR.message_types_by_name['CEconItem_Action'] = _CECONITEM_ACTION
+DESCRIPTOR.message_types_by_name['CEconItem_Description'] = _CECONITEM_DESCRIPTION
+DESCRIPTOR.message_types_by_name['CEconItem_Tag'] = _CECONITEM_TAG
+DESCRIPTOR.message_types_by_name['CEcon_GetInventoryItemsWithDescriptions_Response'] = _CECON_GETINVENTORYITEMSWITHDESCRIPTIONS_RESPONSE
 DESCRIPTOR.message_types_by_name['CEcon_GetTradeOfferAccessToken_Request'] = _CECON_GETTRADEOFFERACCESSTOKEN_REQUEST
 DESCRIPTOR.message_types_by_name['CEcon_GetTradeOfferAccessToken_Response'] = _CECON_GETTRADEOFFERACCESSTOKEN_RESPONSE
 DESCRIPTOR.message_types_by_name['CEcon_ClientGetItemShopOverlayAuthURL_Request'] = _CECON_CLIENTGETITEMSHOPOVERLAYAUTHURL_REQUEST
 DESCRIPTOR.message_types_by_name['CEcon_ClientGetItemShopOverlayAuthURL_Response'] = _CECON_CLIENTGETITEMSHOPOVERLAYAUTHURL_RESPONSE
 DESCRIPTOR.message_types_by_name['CEcon_GetAssetClassInfo_Request'] = _CECON_GETASSETCLASSINFO_REQUEST
-DESCRIPTOR.message_types_by_name['CEconItem_DescriptionLine'] = _CECONITEM_DESCRIPTIONLINE
-DESCRIPTOR.message_types_by_name['CEconItem_Action'] = _CECONITEM_ACTION
-DESCRIPTOR.message_types_by_name['CEconItem_Description'] = _CECONITEM_DESCRIPTION
-DESCRIPTOR.message_types_by_name['CEconItem_Tag'] = _CECONITEM_TAG
 DESCRIPTOR.message_types_by_name['CEcon_GetAssetClassInfo_Response'] = _CECON_GETASSETCLASSINFO_RESPONSE
 _sym_db.RegisterFileDescriptor(DESCRIPTOR)
 
-CEcon_GetTradeOfferAccessToken_Request = _reflection.GeneratedProtocolMessageType('CEcon_GetTradeOfferAccessToken_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CECON_GETTRADEOFFERACCESSTOKEN_REQUEST,
-  __module__ = 'steammessages_econ_pb2'
+CEcon_GetInventoryItemsWithDescriptions_Request = _reflection.GeneratedProtocolMessageType('CEcon_GetInventoryItemsWithDescriptions_Request', (_message.Message,), {
+
+  'FilterOptions' : _reflection.GeneratedProtocolMessageType('FilterOptions', (_message.Message,), {
+    'DESCRIPTOR' : _CECON_GETINVENTORYITEMSWITHDESCRIPTIONS_REQUEST_FILTEROPTIONS,
+    '__module__' : 'steammessages_econ_pb2'
+    # @@protoc_insertion_point(class_scope:CEcon_GetInventoryItemsWithDescriptions_Request.FilterOptions)
+    })
+  ,
+  'DESCRIPTOR' : _CECON_GETINVENTORYITEMSWITHDESCRIPTIONS_REQUEST,
+  '__module__' : 'steammessages_econ_pb2'
+  # @@protoc_insertion_point(class_scope:CEcon_GetInventoryItemsWithDescriptions_Request)
+  })
+_sym_db.RegisterMessage(CEcon_GetInventoryItemsWithDescriptions_Request)
+_sym_db.RegisterMessage(CEcon_GetInventoryItemsWithDescriptions_Request.FilterOptions)
+
+CEcon_Asset = _reflection.GeneratedProtocolMessageType('CEcon_Asset', (_message.Message,), {
+  'DESCRIPTOR' : _CECON_ASSET,
+  '__module__' : 'steammessages_econ_pb2'
+  # @@protoc_insertion_point(class_scope:CEcon_Asset)
+  })
+_sym_db.RegisterMessage(CEcon_Asset)
+
+CEconItem_DescriptionLine = _reflection.GeneratedProtocolMessageType('CEconItem_DescriptionLine', (_message.Message,), {
+  'DESCRIPTOR' : _CECONITEM_DESCRIPTIONLINE,
+  '__module__' : 'steammessages_econ_pb2'
+  # @@protoc_insertion_point(class_scope:CEconItem_DescriptionLine)
+  })
+_sym_db.RegisterMessage(CEconItem_DescriptionLine)
+
+CEconItem_Action = _reflection.GeneratedProtocolMessageType('CEconItem_Action', (_message.Message,), {
+  'DESCRIPTOR' : _CECONITEM_ACTION,
+  '__module__' : 'steammessages_econ_pb2'
+  # @@protoc_insertion_point(class_scope:CEconItem_Action)
+  })
+_sym_db.RegisterMessage(CEconItem_Action)
+
+CEconItem_Description = _reflection.GeneratedProtocolMessageType('CEconItem_Description', (_message.Message,), {
+  'DESCRIPTOR' : _CECONITEM_DESCRIPTION,
+  '__module__' : 'steammessages_econ_pb2'
+  # @@protoc_insertion_point(class_scope:CEconItem_Description)
+  })
+_sym_db.RegisterMessage(CEconItem_Description)
+
+CEconItem_Tag = _reflection.GeneratedProtocolMessageType('CEconItem_Tag', (_message.Message,), {
+  'DESCRIPTOR' : _CECONITEM_TAG,
+  '__module__' : 'steammessages_econ_pb2'
+  # @@protoc_insertion_point(class_scope:CEconItem_Tag)
+  })
+_sym_db.RegisterMessage(CEconItem_Tag)
+
+CEcon_GetInventoryItemsWithDescriptions_Response = _reflection.GeneratedProtocolMessageType('CEcon_GetInventoryItemsWithDescriptions_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CECON_GETINVENTORYITEMSWITHDESCRIPTIONS_RESPONSE,
+  '__module__' : 'steammessages_econ_pb2'
+  # @@protoc_insertion_point(class_scope:CEcon_GetInventoryItemsWithDescriptions_Response)
+  })
+_sym_db.RegisterMessage(CEcon_GetInventoryItemsWithDescriptions_Response)
+
+CEcon_GetTradeOfferAccessToken_Request = _reflection.GeneratedProtocolMessageType('CEcon_GetTradeOfferAccessToken_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CECON_GETTRADEOFFERACCESSTOKEN_REQUEST,
+  '__module__' : 'steammessages_econ_pb2'
   # @@protoc_insertion_point(class_scope:CEcon_GetTradeOfferAccessToken_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CEcon_GetTradeOfferAccessToken_Request)
 
-CEcon_GetTradeOfferAccessToken_Response = _reflection.GeneratedProtocolMessageType('CEcon_GetTradeOfferAccessToken_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CECON_GETTRADEOFFERACCESSTOKEN_RESPONSE,
-  __module__ = 'steammessages_econ_pb2'
+CEcon_GetTradeOfferAccessToken_Response = _reflection.GeneratedProtocolMessageType('CEcon_GetTradeOfferAccessToken_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CECON_GETTRADEOFFERACCESSTOKEN_RESPONSE,
+  '__module__' : 'steammessages_econ_pb2'
   # @@protoc_insertion_point(class_scope:CEcon_GetTradeOfferAccessToken_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CEcon_GetTradeOfferAccessToken_Response)
 
-CEcon_ClientGetItemShopOverlayAuthURL_Request = _reflection.GeneratedProtocolMessageType('CEcon_ClientGetItemShopOverlayAuthURL_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CECON_CLIENTGETITEMSHOPOVERLAYAUTHURL_REQUEST,
-  __module__ = 'steammessages_econ_pb2'
+CEcon_ClientGetItemShopOverlayAuthURL_Request = _reflection.GeneratedProtocolMessageType('CEcon_ClientGetItemShopOverlayAuthURL_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CECON_CLIENTGETITEMSHOPOVERLAYAUTHURL_REQUEST,
+  '__module__' : 'steammessages_econ_pb2'
   # @@protoc_insertion_point(class_scope:CEcon_ClientGetItemShopOverlayAuthURL_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CEcon_ClientGetItemShopOverlayAuthURL_Request)
 
-CEcon_ClientGetItemShopOverlayAuthURL_Response = _reflection.GeneratedProtocolMessageType('CEcon_ClientGetItemShopOverlayAuthURL_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CECON_CLIENTGETITEMSHOPOVERLAYAUTHURL_RESPONSE,
-  __module__ = 'steammessages_econ_pb2'
+CEcon_ClientGetItemShopOverlayAuthURL_Response = _reflection.GeneratedProtocolMessageType('CEcon_ClientGetItemShopOverlayAuthURL_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CECON_CLIENTGETITEMSHOPOVERLAYAUTHURL_RESPONSE,
+  '__module__' : 'steammessages_econ_pb2'
   # @@protoc_insertion_point(class_scope:CEcon_ClientGetItemShopOverlayAuthURL_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CEcon_ClientGetItemShopOverlayAuthURL_Response)
 
-CEcon_GetAssetClassInfo_Request = _reflection.GeneratedProtocolMessageType('CEcon_GetAssetClassInfo_Request', (_message.Message,), dict(
+CEcon_GetAssetClassInfo_Request = _reflection.GeneratedProtocolMessageType('CEcon_GetAssetClassInfo_Request', (_message.Message,), {
 
-  Class = _reflection.GeneratedProtocolMessageType('Class', (_message.Message,), dict(
-    DESCRIPTOR = _CECON_GETASSETCLASSINFO_REQUEST_CLASS,
-    __module__ = 'steammessages_econ_pb2'
+  'Class' : _reflection.GeneratedProtocolMessageType('Class', (_message.Message,), {
+    'DESCRIPTOR' : _CECON_GETASSETCLASSINFO_REQUEST_CLASS,
+    '__module__' : 'steammessages_econ_pb2'
     # @@protoc_insertion_point(class_scope:CEcon_GetAssetClassInfo_Request.Class)
-    ))
+    })
   ,
-  DESCRIPTOR = _CECON_GETASSETCLASSINFO_REQUEST,
-  __module__ = 'steammessages_econ_pb2'
+  'DESCRIPTOR' : _CECON_GETASSETCLASSINFO_REQUEST,
+  '__module__' : 'steammessages_econ_pb2'
   # @@protoc_insertion_point(class_scope:CEcon_GetAssetClassInfo_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CEcon_GetAssetClassInfo_Request)
 _sym_db.RegisterMessage(CEcon_GetAssetClassInfo_Request.Class)
 
-CEconItem_DescriptionLine = _reflection.GeneratedProtocolMessageType('CEconItem_DescriptionLine', (_message.Message,), dict(
-  DESCRIPTOR = _CECONITEM_DESCRIPTIONLINE,
-  __module__ = 'steammessages_econ_pb2'
-  # @@protoc_insertion_point(class_scope:CEconItem_DescriptionLine)
-  ))
-_sym_db.RegisterMessage(CEconItem_DescriptionLine)
-
-CEconItem_Action = _reflection.GeneratedProtocolMessageType('CEconItem_Action', (_message.Message,), dict(
-  DESCRIPTOR = _CECONITEM_ACTION,
-  __module__ = 'steammessages_econ_pb2'
-  # @@protoc_insertion_point(class_scope:CEconItem_Action)
-  ))
-_sym_db.RegisterMessage(CEconItem_Action)
-
-CEconItem_Description = _reflection.GeneratedProtocolMessageType('CEconItem_Description', (_message.Message,), dict(
-  DESCRIPTOR = _CECONITEM_DESCRIPTION,
-  __module__ = 'steammessages_econ_pb2'
-  # @@protoc_insertion_point(class_scope:CEconItem_Description)
-  ))
-_sym_db.RegisterMessage(CEconItem_Description)
-
-CEconItem_Tag = _reflection.GeneratedProtocolMessageType('CEconItem_Tag', (_message.Message,), dict(
-  DESCRIPTOR = _CECONITEM_TAG,
-  __module__ = 'steammessages_econ_pb2'
-  # @@protoc_insertion_point(class_scope:CEconItem_Tag)
-  ))
-_sym_db.RegisterMessage(CEconItem_Tag)
-
-CEcon_GetAssetClassInfo_Response = _reflection.GeneratedProtocolMessageType('CEcon_GetAssetClassInfo_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CECON_GETASSETCLASSINFO_RESPONSE,
-  __module__ = 'steammessages_econ_pb2'
+CEcon_GetAssetClassInfo_Response = _reflection.GeneratedProtocolMessageType('CEcon_GetAssetClassInfo_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CECON_GETASSETCLASSINFO_RESPONSE,
+  '__module__' : 'steammessages_econ_pb2'
   # @@protoc_insertion_point(class_scope:CEcon_GetAssetClassInfo_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CEcon_GetAssetClassInfo_Response)
 
 
 DESCRIPTOR._options = None
+_CECON_ASSET.fields_by_name['currencyid']._options = None
 _CECONITEM_TAG.fields_by_name['appid']._options = None
 _CECONITEM_TAG.fields_by_name['category']._options = None
 _CECONITEM_TAG.fields_by_name['internal_name']._options = None
 _CECONITEM_TAG.fields_by_name['localized_category_name']._options = None
 _CECONITEM_TAG.fields_by_name['localized_tag_name']._options = None
 _CECONITEM_TAG.fields_by_name['color']._options = None
+_CECON_GETINVENTORYITEMSWITHDESCRIPTIONS_RESPONSE.fields_by_name['missing_assets']._options = None
 
 _ECON = _descriptor.ServiceDescriptor(
   name='Econ',
   full_name='Econ',
   file=DESCRIPTOR,
   index=0,
-  serialized_options=_b('\202\265\030;A service that provides communication with the econ servers'),
-  serialized_start=2013,
-  serialized_end=2623,
+  serialized_options=b'\202\265\030;A service that provides communication with the econ servers',
+  create_key=_descriptor._internal_create_key,
+  serialized_start=3008,
+  serialized_end=3830,
   methods=[
+  _descriptor.MethodDescriptor(
+    name='GetInventoryItemsWithDescriptions',
+    full_name='Econ.GetInventoryItemsWithDescriptions',
+    index=0,
+    containing_service=None,
+    input_type=_CECON_GETINVENTORYITEMSWITHDESCRIPTIONS_REQUEST,
+    output_type=_CECON_GETINVENTORYITEMSWITHDESCRIPTIONS_RESPONSE,
+    serialized_options=b'\202\265\030CGets a set of items from a users inventory, along with descriptions',
+    create_key=_descriptor._internal_create_key,
+  ),
   _descriptor.MethodDescriptor(
     name='GetTradeOfferAccessToken',
     full_name='Econ.GetTradeOfferAccessToken',
-    index=0,
+    index=1,
     containing_service=None,
     input_type=_CECON_GETTRADEOFFERACCESSTOKEN_REQUEST,
     output_type=_CECON_GETTRADEOFFERACCESSTOKEN_RESPONSE,
-    serialized_options=_b('\202\265\030\'Get the user\'s trade offer access token'),
+    serialized_options=b'\202\265\030\'Get the user\'s trade offer access token',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='ClientGetItemShopOverlayAuthURL',
     full_name='Econ.ClientGetItemShopOverlayAuthURL',
-    index=1,
+    index=2,
     containing_service=None,
     input_type=_CECON_CLIENTGETITEMSHOPOVERLAYAUTHURL_REQUEST,
     output_type=_CECON_CLIENTGETITEMSHOPOVERLAYAUTHURL_RESPONSE,
-    serialized_options=_b('\202\265\030QGenerates a URL which sets a secure cookie for in-game-browser itemshop purchases'),
+    serialized_options=b'\202\265\030QGenerates a URL which sets a secure cookie for in-game-browser itemshop purchases',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetAssetClassInfo',
     full_name='Econ.GetAssetClassInfo',
-    index=2,
+    index=3,
     containing_service=None,
     input_type=_CECON_GETASSETCLASSINFO_REQUEST,
     output_type=_CECON_GETASSETCLASSINFO_RESPONSE,
-    serialized_options=_b('\202\265\030AReturns description information about the passed in asset classes'),
+    serialized_options=b'\202\265\030AReturns description information about the passed in asset classes',
+    create_key=_descriptor._internal_create_key,
   ),
 ])
 _sym_db.RegisterServiceDescriptor(_ECON)
diff --git a/steam/protobufs/steammessages_friendmessages_pb2.py b/steam/protobufs/steammessages_friendmessages_pb2.py
index 07829e5..938eac3 100755
--- a/steam/protobufs/steammessages_friendmessages_pb2.py
+++ b/steam/protobufs/steammessages_friendmessages_pb2.py
@@ -1,9 +1,7 @@
 # -*- coding: utf-8 -*-
 # Generated by the protocol buffer compiler.  DO NOT EDIT!
 # source: steammessages_friendmessages.proto
-
-import sys
-_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1'))
+"""Generated protocol buffer code."""
 from google.protobuf.internal import enum_type_wrapper
 from google.protobuf import descriptor as _descriptor
 from google.protobuf import message as _message
@@ -16,6 +14,7 @@ from google.protobuf import service_reflection
 _sym_db = _symbol_database.Default()
 
 
+import steam.protobufs.steammessages_base_pb2 as steammessages__base__pb2
 import steam.protobufs.steammessages_unified_base_pb2 as steammessages__unified__base__pb2
 
 
@@ -23,34 +22,39 @@ DESCRIPTOR = _descriptor.FileDescriptor(
   name='steammessages_friendmessages.proto',
   package='',
   syntax='proto2',
-  serialized_options=_b('\220\001\001'),
-  serialized_pb=_b('\n\"steammessages_friendmessages.proto\x1a steammessages_unified_base.proto\"\xf1\x05\n)CFriendMessages_GetRecentMessages_Request\x12\x10\n\x08steamid1\x18\x01 \x01(\x06\x12\x10\n\x08steamid2\x18\x02 \x01(\x06\x12L\n\x05\x63ount\x18\x03 \x01(\rB=\x82\xb5\x18\x39If non-zero, cap the number of recent messages to return.\x12s\n\x18most_recent_conversation\x18\x04 \x01(\x08\x42Q\x82\xb5\x18MGrab the block of chat from the most recent conversation (a ~5 minute period)\x12\xa9\x01\n\x12rtime32_start_time\x18\x05 \x01(\x07\x42\x8c\x01\x82\xb5\x18\x87\x01If non-zero, return only messages with timestamps greater or equal to this. If zero, we only return messages from a recent time cutoff.\x12\x45\n\rbbcode_format\x18\x06 \x01(\x08\x42.\x82\xb5\x18*Return the results with bbcode formatting.\x12\x84\x01\n\rstart_ordinal\x18\x07 \x01(\rBm\x82\xb5\x18iCombined with start time, only messages after this ordinal are returned (dedupes messages in same second)\x12M\n\ttime_last\x18\x08 \x01(\rB:\x82\xb5\x18\x36if present/non-zero, return only messages before this.\x12\x14\n\x0cordinal_last\x18\t \x01(\r\"\x82\x04\n*CFriendMessages_GetRecentMessages_Response\x12~\n\x08messages\x18\x01 \x03(\x0b\x32\x39.CFriendMessages_GetRecentMessages_Response.FriendMessageB1\x82\xb5\x18-Array of messages, returned newest to oldest.\x12\x16\n\x0emore_available\x18\x04 \x01(\x08\x1a\xbb\x02\n\rFriendMessage\x12\x11\n\taccountid\x18\x01 \x01(\r\x12\x11\n\ttimestamp\x18\x02 \x01(\r\x12\x0f\n\x07message\x18\x03 \x01(\t\x12\x0f\n\x07ordinal\x18\x04 \x01(\r\x12\\\n\treactions\x18\x05 \x03(\x0b\x32I.CFriendMessages_GetRecentMessages_Response.FriendMessage.MessageReaction\x1a\x83\x01\n\x0fMessageReaction\x12L\n\rreaction_type\x18\x01 \x01(\x0e\x32\x15.EMessageReactionType:\x1ek_EMessageReactionType_Invalid\x12\x10\n\x08reaction\x18\x02 \x01(\t\x12\x10\n\x08reactors\x18\x03 \x03(\r\"\xdf\x02\n1CFriendsMessages_GetActiveMessageSessions_Request\x12\x7f\n\x11lastmessage_since\x18\x01 \x01(\rBd\x82\xb5\x18`return only session information where a chat message has been sent since this time (for polling)\x12\xa8\x01\n\x1bonly_sessions_with_messages\x18\x02 \x01(\x08\x42\x82\x01\x82\xb5\x18~If non-zero, return only message sessions that have messages since our message cutoff. If zero, we return all active sessions.\"\xfc\x02\n2CFriendsMessages_GetActiveMessageSessions_Response\x12\x62\n\x10message_sessions\x18\x01 \x03(\x0b\x32H.CFriendsMessages_GetActiveMessageSessions_Response.FriendMessageSession\x12i\n\ttimestamp\x18\x02 \x01(\rBV\x82\xb5\x18RThis should be passed in the next request as lastmessage_since to poll for updates\x1aw\n\x14\x46riendMessageSession\x12\x18\n\x10\x61\x63\x63ountid_friend\x18\x01 \x01(\r\x12\x14\n\x0clast_message\x18\x02 \x01(\r\x12\x11\n\tlast_view\x18\x03 \x01(\r\x12\x1c\n\x14unread_message_count\x18\x04 \x01(\r\"\xc2\x01\n#CFriendMessages_SendMessage_Request\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12\x17\n\x0f\x63hat_entry_type\x18\x02 \x01(\x05\x12\x0f\n\x07message\x18\x03 \x01(\t\x12\x17\n\x0f\x63ontains_bbcode\x18\x04 \x01(\x08\x12\x16\n\x0e\x65\x63ho_to_sender\x18\x05 \x01(\x08\x12\x14\n\x0clow_priority\x18\x06 \x01(\x08\x12\x19\n\x11\x63lient_message_id\x18\x08 \x01(\t\"\x8c\x01\n$CFriendMessages_SendMessage_Response\x12\x18\n\x10modified_message\x18\x01 \x01(\t\x12\x18\n\x10server_timestamp\x18\x02 \x01(\r\x12\x0f\n\x07ordinal\x18\x03 \x01(\r\x12\x1f\n\x17message_without_bb_code\x18\x04 \x01(\t\"U\n\'CFriendMessages_AckMessage_Notification\x12\x17\n\x0fsteamid_partner\x18\x01 \x01(\x06\x12\x11\n\ttimestamp\x18\x02 \x01(\r\"<\n)CFriendMessages_IsInFriendsUIBeta_Request\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\"e\n*CFriendMessages_IsInFriendsUIBeta_Response\x12\x1b\n\x13online_in_friendsui\x18\x01 \x01(\x08\x12\x1a\n\x12has_used_friendsui\x18\x02 \x01(\x08\"\xdb\x01\n-CFriendMessages_UpdateMessageReaction_Request\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12\x18\n\x10server_timestamp\x18\x02 \x01(\r\x12\x0f\n\x07ordinal\x18\x03 \x01(\r\x12L\n\rreaction_type\x18\x04 \x01(\x0e\x32\x15.EMessageReactionType:\x1ek_EMessageReactionType_Invalid\x12\x10\n\x08reaction\x18\x05 \x01(\t\x12\x0e\n\x06is_add\x18\x06 \x01(\x08\"B\n.CFriendMessages_UpdateMessageReaction_Response\x12\x10\n\x08reactors\x18\x01 \x03(\r\"\x86\x02\n,CFriendMessages_IncomingMessage_Notification\x12\x16\n\x0esteamid_friend\x18\x01 \x01(\x06\x12\x17\n\x0f\x63hat_entry_type\x18\x02 \x01(\x05\x12\x1c\n\x14\x66rom_limited_account\x18\x03 \x01(\x08\x12\x0f\n\x07message\x18\x04 \x01(\t\x12 \n\x18rtime32_server_timestamp\x18\x05 \x01(\x07\x12\x0f\n\x07ordinal\x18\x06 \x01(\r\x12\x12\n\nlocal_echo\x18\x07 \x01(\x08\x12\x19\n\x11message_no_bbcode\x18\x08 \x01(\t\x12\x14\n\x0clow_priority\x18\t \x01(\x08\"\xf2\x01\n,CFriendMessages_MessageReaction_Notification\x12\x16\n\x0esteamid_friend\x18\x01 \x01(\x06\x12\x18\n\x10server_timestamp\x18\x02 \x01(\r\x12\x0f\n\x07ordinal\x18\x03 \x01(\r\x12\x0f\n\x07reactor\x18\x04 \x01(\x06\x12L\n\rreaction_type\x18\x05 \x01(\x0e\x32\x15.EMessageReactionType:\x1ek_EMessageReactionType_Invalid\x12\x10\n\x08reaction\x18\x06 \x01(\t\x12\x0e\n\x06is_add\x18\x07 \x01(\x08*\x83\x01\n\x14\x45MessageReactionType\x12\"\n\x1ek_EMessageReactionType_Invalid\x10\x00\x12#\n\x1fk_EMessageReactionType_Emoticon\x10\x01\x12\"\n\x1ek_EMessageReactionType_Sticker\x10\x02\x32\xbd\x08\n\x0e\x46riendMessages\x12\xa5\x01\n\x11GetRecentMessages\x12*.CFriendMessages_GetRecentMessages_Request\x1a+.CFriendMessages_GetRecentMessages_Response\"7\x82\xb5\x18\x33Get a log of recent chat messages between two users\x12\xc0\x01\n\x18GetActiveMessageSessions\x12\x32.CFriendsMessages_GetActiveMessageSessions_Request\x1a\x33.CFriendsMessages_GetActiveMessageSessions_Response\";\x82\xb5\x18\x37Get information about recent offline messages and chats\x12\x7f\n\x0bSendMessage\x12$.CFriendMessages_SendMessage_Request\x1a%.CFriendMessages_SendMessage_Response\"#\x82\xb5\x18\x1fSend a chat message to a friend\x12\x8c\x01\n\nAckMessage\x12(.CFriendMessages_AckMessage_Notification\x1a\x0b.NoResponse\"G\x82\xb5\x18\x43\x41\x63knowledge that we have seen the most recent message from a friend\x12\x9b\x01\n\x11IsInFriendsUIBeta\x12*.CFriendMessages_IsInFriendsUIBeta_Request\x1a+.CFriendMessages_IsInFriendsUIBeta_Response\"-\x82\xb5\x18)See if a friend is in the friendsui beta.\x12\xae\x01\n\x15UpdateMessageReaction\x12..CFriendMessages_UpdateMessageReaction_Request\x1a/.CFriendMessages_UpdateMessageReaction_Response\"4\x82\xb5\x18\x30\x41\x64\x64s/removes a reaction to/from a friend message\x1a\x61\x82\xb5\x18]A service for relaying and logging friend messages (user-to-user chats and offline messaging)2\x98\x03\n\x14\x46riendMessagesClient\x12r\n\x0fIncomingMessage\x12-.CFriendMessages_IncomingMessage_Notification\x1a\x0b.NoResponse\"#\x82\xb5\x18\x1fNew chat message from a friend.\x12\x8d\x01\n\x14NotifyAckMessageEcho\x12(.CFriendMessages_AckMessage_Notification\x1a\x0b.NoResponse\">\x82\xb5\x18:A session acked an unread message, echo to other sessions.\x12v\n\x0fMessageReaction\x12-.CFriendMessages_MessageReaction_Notification\x1a\x0b.NoResponse\"\'\x82\xb5\x18#New message reaction from a friend.\x1a\x04\xc0\xb5\x18\x02\x42\x03\x90\x01\x01')
+  serialized_options=b'\220\001\001',
+  create_key=_descriptor._internal_create_key,
+  serialized_pb=b'\n\"steammessages_friendmessages.proto\x1a\x18steammessages_base.proto\x1a steammessages_unified_base.proto\"\xf1\x05\n)CFriendMessages_GetRecentMessages_Request\x12\x10\n\x08steamid1\x18\x01 \x01(\x06\x12\x10\n\x08steamid2\x18\x02 \x01(\x06\x12L\n\x05\x63ount\x18\x03 \x01(\rB=\x82\xb5\x18\x39If non-zero, cap the number of recent messages to return.\x12s\n\x18most_recent_conversation\x18\x04 \x01(\x08\x42Q\x82\xb5\x18MGrab the block of chat from the most recent conversation (a ~5 minute period)\x12\xa9\x01\n\x12rtime32_start_time\x18\x05 \x01(\x07\x42\x8c\x01\x82\xb5\x18\x87\x01If non-zero, return only messages with timestamps greater or equal to this. If zero, we only return messages from a recent time cutoff.\x12\x45\n\rbbcode_format\x18\x06 \x01(\x08\x42.\x82\xb5\x18*Return the results with bbcode formatting.\x12\x84\x01\n\rstart_ordinal\x18\x07 \x01(\rBm\x82\xb5\x18iCombined with start time, only messages after this ordinal are returned (dedupes messages in same second)\x12M\n\ttime_last\x18\x08 \x01(\rB:\x82\xb5\x18\x36if present/non-zero, return only messages before this.\x12\x14\n\x0cordinal_last\x18\t \x01(\r\"\x82\x04\n*CFriendMessages_GetRecentMessages_Response\x12~\n\x08messages\x18\x01 \x03(\x0b\x32\x39.CFriendMessages_GetRecentMessages_Response.FriendMessageB1\x82\xb5\x18-Array of messages, returned newest to oldest.\x12\x16\n\x0emore_available\x18\x04 \x01(\x08\x1a\xbb\x02\n\rFriendMessage\x12\x11\n\taccountid\x18\x01 \x01(\r\x12\x11\n\ttimestamp\x18\x02 \x01(\r\x12\x0f\n\x07message\x18\x03 \x01(\t\x12\x0f\n\x07ordinal\x18\x04 \x01(\r\x12\\\n\treactions\x18\x05 \x03(\x0b\x32I.CFriendMessages_GetRecentMessages_Response.FriendMessage.MessageReaction\x1a\x83\x01\n\x0fMessageReaction\x12L\n\rreaction_type\x18\x01 \x01(\x0e\x32\x15.EMessageReactionType:\x1ek_EMessageReactionType_Invalid\x12\x10\n\x08reaction\x18\x02 \x01(\t\x12\x10\n\x08reactors\x18\x03 \x03(\r\"\xdf\x02\n1CFriendsMessages_GetActiveMessageSessions_Request\x12\x7f\n\x11lastmessage_since\x18\x01 \x01(\rBd\x82\xb5\x18`return only session information where a chat message has been sent since this time (for polling)\x12\xa8\x01\n\x1bonly_sessions_with_messages\x18\x02 \x01(\x08\x42\x82\x01\x82\xb5\x18~If non-zero, return only message sessions that have messages since our message cutoff. If zero, we return all active sessions.\"\xfc\x02\n2CFriendsMessages_GetActiveMessageSessions_Response\x12\x62\n\x10message_sessions\x18\x01 \x03(\x0b\x32H.CFriendsMessages_GetActiveMessageSessions_Response.FriendMessageSession\x12i\n\ttimestamp\x18\x02 \x01(\rBV\x82\xb5\x18RThis should be passed in the next request as lastmessage_since to poll for updates\x1aw\n\x14\x46riendMessageSession\x12\x18\n\x10\x61\x63\x63ountid_friend\x18\x01 \x01(\r\x12\x14\n\x0clast_message\x18\x02 \x01(\r\x12\x11\n\tlast_view\x18\x03 \x01(\r\x12\x1c\n\x14unread_message_count\x18\x04 \x01(\r\"\xc2\x01\n#CFriendMessages_SendMessage_Request\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12\x17\n\x0f\x63hat_entry_type\x18\x02 \x01(\x05\x12\x0f\n\x07message\x18\x03 \x01(\t\x12\x17\n\x0f\x63ontains_bbcode\x18\x04 \x01(\x08\x12\x16\n\x0e\x65\x63ho_to_sender\x18\x05 \x01(\x08\x12\x14\n\x0clow_priority\x18\x06 \x01(\x08\x12\x19\n\x11\x63lient_message_id\x18\x08 \x01(\t\"\x8c\x01\n$CFriendMessages_SendMessage_Response\x12\x18\n\x10modified_message\x18\x01 \x01(\t\x12\x18\n\x10server_timestamp\x18\x02 \x01(\r\x12\x0f\n\x07ordinal\x18\x03 \x01(\r\x12\x1f\n\x17message_without_bb_code\x18\x04 \x01(\t\"U\n\'CFriendMessages_AckMessage_Notification\x12\x17\n\x0fsteamid_partner\x18\x01 \x01(\x06\x12\x11\n\ttimestamp\x18\x02 \x01(\r\"<\n)CFriendMessages_IsInFriendsUIBeta_Request\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\"e\n*CFriendMessages_IsInFriendsUIBeta_Response\x12\x1b\n\x13online_in_friendsui\x18\x01 \x01(\x08\x12\x1a\n\x12has_used_friendsui\x18\x02 \x01(\x08\"\xdb\x01\n-CFriendMessages_UpdateMessageReaction_Request\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12\x18\n\x10server_timestamp\x18\x02 \x01(\r\x12\x0f\n\x07ordinal\x18\x03 \x01(\r\x12L\n\rreaction_type\x18\x04 \x01(\x0e\x32\x15.EMessageReactionType:\x1ek_EMessageReactionType_Invalid\x12\x10\n\x08reaction\x18\x05 \x01(\t\x12\x0e\n\x06is_add\x18\x06 \x01(\x08\"B\n.CFriendMessages_UpdateMessageReaction_Response\x12\x10\n\x08reactors\x18\x01 \x03(\r\"\x86\x02\n,CFriendMessages_IncomingMessage_Notification\x12\x16\n\x0esteamid_friend\x18\x01 \x01(\x06\x12\x17\n\x0f\x63hat_entry_type\x18\x02 \x01(\x05\x12\x1c\n\x14\x66rom_limited_account\x18\x03 \x01(\x08\x12\x0f\n\x07message\x18\x04 \x01(\t\x12 \n\x18rtime32_server_timestamp\x18\x05 \x01(\x07\x12\x0f\n\x07ordinal\x18\x06 \x01(\r\x12\x12\n\nlocal_echo\x18\x07 \x01(\x08\x12\x19\n\x11message_no_bbcode\x18\x08 \x01(\t\x12\x14\n\x0clow_priority\x18\t \x01(\x08\"\xf2\x01\n,CFriendMessages_MessageReaction_Notification\x12\x16\n\x0esteamid_friend\x18\x01 \x01(\x06\x12\x18\n\x10server_timestamp\x18\x02 \x01(\r\x12\x0f\n\x07ordinal\x18\x03 \x01(\r\x12\x0f\n\x07reactor\x18\x04 \x01(\x06\x12L\n\rreaction_type\x18\x05 \x01(\x0e\x32\x15.EMessageReactionType:\x1ek_EMessageReactionType_Invalid\x12\x10\n\x08reaction\x18\x06 \x01(\t\x12\x0e\n\x06is_add\x18\x07 \x01(\x08*\x83\x01\n\x14\x45MessageReactionType\x12\"\n\x1ek_EMessageReactionType_Invalid\x10\x00\x12#\n\x1fk_EMessageReactionType_Emoticon\x10\x01\x12\"\n\x1ek_EMessageReactionType_Sticker\x10\x02\x32\xbd\x08\n\x0e\x46riendMessages\x12\xa5\x01\n\x11GetRecentMessages\x12*.CFriendMessages_GetRecentMessages_Request\x1a+.CFriendMessages_GetRecentMessages_Response\"7\x82\xb5\x18\x33Get a log of recent chat messages between two users\x12\xc0\x01\n\x18GetActiveMessageSessions\x12\x32.CFriendsMessages_GetActiveMessageSessions_Request\x1a\x33.CFriendsMessages_GetActiveMessageSessions_Response\";\x82\xb5\x18\x37Get information about recent offline messages and chats\x12\x7f\n\x0bSendMessage\x12$.CFriendMessages_SendMessage_Request\x1a%.CFriendMessages_SendMessage_Response\"#\x82\xb5\x18\x1fSend a chat message to a friend\x12\x8c\x01\n\nAckMessage\x12(.CFriendMessages_AckMessage_Notification\x1a\x0b.NoResponse\"G\x82\xb5\x18\x43\x41\x63knowledge that we have seen the most recent message from a friend\x12\x9b\x01\n\x11IsInFriendsUIBeta\x12*.CFriendMessages_IsInFriendsUIBeta_Request\x1a+.CFriendMessages_IsInFriendsUIBeta_Response\"-\x82\xb5\x18)See if a friend is in the friendsui beta.\x12\xae\x01\n\x15UpdateMessageReaction\x12..CFriendMessages_UpdateMessageReaction_Request\x1a/.CFriendMessages_UpdateMessageReaction_Response\"4\x82\xb5\x18\x30\x41\x64\x64s/removes a reaction to/from a friend message\x1a\x61\x82\xb5\x18]A service for relaying and logging friend messages (user-to-user chats and offline messaging)2\x98\x03\n\x14\x46riendMessagesClient\x12r\n\x0fIncomingMessage\x12-.CFriendMessages_IncomingMessage_Notification\x1a\x0b.NoResponse\"#\x82\xb5\x18\x1fNew chat message from a friend.\x12\x8d\x01\n\x14NotifyAckMessageEcho\x12(.CFriendMessages_AckMessage_Notification\x1a\x0b.NoResponse\">\x82\xb5\x18:A session acked an unread message, echo to other sessions.\x12v\n\x0fMessageReaction\x12-.CFriendMessages_MessageReaction_Notification\x1a\x0b.NoResponse\"\'\x82\xb5\x18#New message reaction from a friend.\x1a\x04\xc0\xb5\x18\x02\x42\x03\x90\x01\x01'
   ,
-  dependencies=[steammessages__unified__base__pb2.DESCRIPTOR,])
+  dependencies=[steammessages__base__pb2.DESCRIPTOR,steammessages__unified__base__pb2.DESCRIPTOR,])
 
 _EMESSAGEREACTIONTYPE = _descriptor.EnumDescriptor(
   name='EMessageReactionType',
   full_name='EMessageReactionType',
   filename=None,
   file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
   values=[
     _descriptor.EnumValueDescriptor(
       name='k_EMessageReactionType_Invalid', index=0, number=0,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMessageReactionType_Emoticon', index=1, number=1,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EMessageReactionType_Sticker', index=2, number=2,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
   ],
   containing_type=None,
   serialized_options=None,
-  serialized_start=3475,
-  serialized_end=3606,
+  serialized_start=3501,
+  serialized_end=3632,
 )
 _sym_db.RegisterEnumDescriptor(_EMESSAGEREACTIONTYPE)
 
@@ -67,6 +71,7 @@ _CFRIENDMESSAGES_GETRECENTMESSAGES_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid1', full_name='CFriendMessages_GetRecentMessages_Request.steamid1', index=0,
@@ -74,63 +79,63 @@ _CFRIENDMESSAGES_GETRECENTMESSAGES_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steamid2', full_name='CFriendMessages_GetRecentMessages_Request.steamid2', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='count', full_name='CFriendMessages_GetRecentMessages_Request.count', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\0309If non-zero, cap the number of recent messages to return.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\0309If non-zero, cap the number of recent messages to return.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='most_recent_conversation', full_name='CFriendMessages_GetRecentMessages_Request.most_recent_conversation', index=3,
       number=4, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030MGrab the block of chat from the most recent conversation (a ~5 minute period)'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030MGrab the block of chat from the most recent conversation (a ~5 minute period)', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='rtime32_start_time', full_name='CFriendMessages_GetRecentMessages_Request.rtime32_start_time', index=4,
       number=5, type=7, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\207\001If non-zero, return only messages with timestamps greater or equal to this. If zero, we only return messages from a recent time cutoff.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\207\001If non-zero, return only messages with timestamps greater or equal to this. If zero, we only return messages from a recent time cutoff.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='bbcode_format', full_name='CFriendMessages_GetRecentMessages_Request.bbcode_format', index=5,
       number=6, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030*Return the results with bbcode formatting.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030*Return the results with bbcode formatting.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='start_ordinal', full_name='CFriendMessages_GetRecentMessages_Request.start_ordinal', index=6,
       number=7, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030iCombined with start time, only messages after this ordinal are returned (dedupes messages in same second)'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030iCombined with start time, only messages after this ordinal are returned (dedupes messages in same second)', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='time_last', full_name='CFriendMessages_GetRecentMessages_Request.time_last', index=7,
       number=8, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\0306if present/non-zero, return only messages before this.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\0306if present/non-zero, return only messages before this.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='ordinal_last', full_name='CFriendMessages_GetRecentMessages_Request.ordinal_last', index=8,
       number=9, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -143,8 +148,8 @@ _CFRIENDMESSAGES_GETRECENTMESSAGES_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=73,
-  serialized_end=826,
+  serialized_start=99,
+  serialized_end=852,
 )
 
 
@@ -154,6 +159,7 @@ _CFRIENDMESSAGES_GETRECENTMESSAGES_RESPONSE_FRIENDMESSAGE_MESSAGEREACTION = _des
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='reaction_type', full_name='CFriendMessages_GetRecentMessages_Response.FriendMessage.MessageReaction.reaction_type', index=0,
@@ -161,21 +167,21 @@ _CFRIENDMESSAGES_GETRECENTMESSAGES_RESPONSE_FRIENDMESSAGE_MESSAGEREACTION = _des
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='reaction', full_name='CFriendMessages_GetRecentMessages_Response.FriendMessage.MessageReaction.reaction', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='reactors', full_name='CFriendMessages_GetRecentMessages_Response.FriendMessage.MessageReaction.reactors', index=2,
       number=3, type=13, cpp_type=3, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -188,8 +194,8 @@ _CFRIENDMESSAGES_GETRECENTMESSAGES_RESPONSE_FRIENDMESSAGE_MESSAGEREACTION = _des
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1212,
-  serialized_end=1343,
+  serialized_start=1238,
+  serialized_end=1369,
 )
 
 _CFRIENDMESSAGES_GETRECENTMESSAGES_RESPONSE_FRIENDMESSAGE = _descriptor.Descriptor(
@@ -198,6 +204,7 @@ _CFRIENDMESSAGES_GETRECENTMESSAGES_RESPONSE_FRIENDMESSAGE = _descriptor.Descript
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='accountid', full_name='CFriendMessages_GetRecentMessages_Response.FriendMessage.accountid', index=0,
@@ -205,35 +212,35 @@ _CFRIENDMESSAGES_GETRECENTMESSAGES_RESPONSE_FRIENDMESSAGE = _descriptor.Descript
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='timestamp', full_name='CFriendMessages_GetRecentMessages_Response.FriendMessage.timestamp', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='message', full_name='CFriendMessages_GetRecentMessages_Response.FriendMessage.message', index=2,
       number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='ordinal', full_name='CFriendMessages_GetRecentMessages_Response.FriendMessage.ordinal', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='reactions', full_name='CFriendMessages_GetRecentMessages_Response.FriendMessage.reactions', index=4,
       number=5, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -246,8 +253,8 @@ _CFRIENDMESSAGES_GETRECENTMESSAGES_RESPONSE_FRIENDMESSAGE = _descriptor.Descript
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1028,
-  serialized_end=1343,
+  serialized_start=1054,
+  serialized_end=1369,
 )
 
 _CFRIENDMESSAGES_GETRECENTMESSAGES_RESPONSE = _descriptor.Descriptor(
@@ -256,6 +263,7 @@ _CFRIENDMESSAGES_GETRECENTMESSAGES_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='messages', full_name='CFriendMessages_GetRecentMessages_Response.messages', index=0,
@@ -263,14 +271,14 @@ _CFRIENDMESSAGES_GETRECENTMESSAGES_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030-Array of messages, returned newest to oldest.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030-Array of messages, returned newest to oldest.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='more_available', full_name='CFriendMessages_GetRecentMessages_Response.more_available', index=1,
       number=4, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -283,8 +291,8 @@ _CFRIENDMESSAGES_GETRECENTMESSAGES_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=829,
-  serialized_end=1343,
+  serialized_start=855,
+  serialized_end=1369,
 )
 
 
@@ -294,6 +302,7 @@ _CFRIENDSMESSAGES_GETACTIVEMESSAGESESSIONS_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='lastmessage_since', full_name='CFriendsMessages_GetActiveMessageSessions_Request.lastmessage_since', index=0,
@@ -301,14 +310,14 @@ _CFRIENDSMESSAGES_GETACTIVEMESSAGESESSIONS_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030`return only session information where a chat message has been sent since this time (for polling)'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030`return only session information where a chat message has been sent since this time (for polling)', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='only_sessions_with_messages', full_name='CFriendsMessages_GetActiveMessageSessions_Request.only_sessions_with_messages', index=1,
       number=2, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030~If non-zero, return only message sessions that have messages since our message cutoff. If zero, we return all active sessions.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030~If non-zero, return only message sessions that have messages since our message cutoff. If zero, we return all active sessions.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -321,8 +330,8 @@ _CFRIENDSMESSAGES_GETACTIVEMESSAGESESSIONS_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1346,
-  serialized_end=1697,
+  serialized_start=1372,
+  serialized_end=1723,
 )
 
 
@@ -332,6 +341,7 @@ _CFRIENDSMESSAGES_GETACTIVEMESSAGESESSIONS_RESPONSE_FRIENDMESSAGESESSION = _desc
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='accountid_friend', full_name='CFriendsMessages_GetActiveMessageSessions_Response.FriendMessageSession.accountid_friend', index=0,
@@ -339,28 +349,28 @@ _CFRIENDSMESSAGES_GETACTIVEMESSAGESESSIONS_RESPONSE_FRIENDMESSAGESESSION = _desc
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='last_message', full_name='CFriendsMessages_GetActiveMessageSessions_Response.FriendMessageSession.last_message', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='last_view', full_name='CFriendsMessages_GetActiveMessageSessions_Response.FriendMessageSession.last_view', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='unread_message_count', full_name='CFriendsMessages_GetActiveMessageSessions_Response.FriendMessageSession.unread_message_count', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -373,8 +383,8 @@ _CFRIENDSMESSAGES_GETACTIVEMESSAGESESSIONS_RESPONSE_FRIENDMESSAGESESSION = _desc
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1961,
-  serialized_end=2080,
+  serialized_start=1987,
+  serialized_end=2106,
 )
 
 _CFRIENDSMESSAGES_GETACTIVEMESSAGESESSIONS_RESPONSE = _descriptor.Descriptor(
@@ -383,6 +393,7 @@ _CFRIENDSMESSAGES_GETACTIVEMESSAGESESSIONS_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='message_sessions', full_name='CFriendsMessages_GetActiveMessageSessions_Response.message_sessions', index=0,
@@ -390,14 +401,14 @@ _CFRIENDSMESSAGES_GETACTIVEMESSAGESESSIONS_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='timestamp', full_name='CFriendsMessages_GetActiveMessageSessions_Response.timestamp', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030RThis should be passed in the next request as lastmessage_since to poll for updates'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030RThis should be passed in the next request as lastmessage_since to poll for updates', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -410,8 +421,8 @@ _CFRIENDSMESSAGES_GETACTIVEMESSAGESESSIONS_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1700,
-  serialized_end=2080,
+  serialized_start=1726,
+  serialized_end=2106,
 )
 
 
@@ -421,6 +432,7 @@ _CFRIENDMESSAGES_SENDMESSAGE_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CFriendMessages_SendMessage_Request.steamid', index=0,
@@ -428,49 +440,49 @@ _CFRIENDMESSAGES_SENDMESSAGE_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='chat_entry_type', full_name='CFriendMessages_SendMessage_Request.chat_entry_type', index=1,
       number=2, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='message', full_name='CFriendMessages_SendMessage_Request.message', index=2,
       number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='contains_bbcode', full_name='CFriendMessages_SendMessage_Request.contains_bbcode', index=3,
       number=4, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='echo_to_sender', full_name='CFriendMessages_SendMessage_Request.echo_to_sender', index=4,
       number=5, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='low_priority', full_name='CFriendMessages_SendMessage_Request.low_priority', index=5,
       number=6, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='client_message_id', full_name='CFriendMessages_SendMessage_Request.client_message_id', index=6,
       number=8, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -483,8 +495,8 @@ _CFRIENDMESSAGES_SENDMESSAGE_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=2083,
-  serialized_end=2277,
+  serialized_start=2109,
+  serialized_end=2303,
 )
 
 
@@ -494,35 +506,36 @@ _CFRIENDMESSAGES_SENDMESSAGE_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='modified_message', full_name='CFriendMessages_SendMessage_Response.modified_message', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='server_timestamp', full_name='CFriendMessages_SendMessage_Response.server_timestamp', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='ordinal', full_name='CFriendMessages_SendMessage_Response.ordinal', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='message_without_bb_code', full_name='CFriendMessages_SendMessage_Response.message_without_bb_code', index=3,
       number=4, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -535,8 +548,8 @@ _CFRIENDMESSAGES_SENDMESSAGE_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=2280,
-  serialized_end=2420,
+  serialized_start=2306,
+  serialized_end=2446,
 )
 
 
@@ -546,6 +559,7 @@ _CFRIENDMESSAGES_ACKMESSAGE_NOTIFICATION = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid_partner', full_name='CFriendMessages_AckMessage_Notification.steamid_partner', index=0,
@@ -553,14 +567,14 @@ _CFRIENDMESSAGES_ACKMESSAGE_NOTIFICATION = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='timestamp', full_name='CFriendMessages_AckMessage_Notification.timestamp', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -573,8 +587,8 @@ _CFRIENDMESSAGES_ACKMESSAGE_NOTIFICATION = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=2422,
-  serialized_end=2507,
+  serialized_start=2448,
+  serialized_end=2533,
 )
 
 
@@ -584,6 +598,7 @@ _CFRIENDMESSAGES_ISINFRIENDSUIBETA_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CFriendMessages_IsInFriendsUIBeta_Request.steamid', index=0,
@@ -591,7 +606,7 @@ _CFRIENDMESSAGES_ISINFRIENDSUIBETA_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -604,8 +619,8 @@ _CFRIENDMESSAGES_ISINFRIENDSUIBETA_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=2509,
-  serialized_end=2569,
+  serialized_start=2535,
+  serialized_end=2595,
 )
 
 
@@ -615,6 +630,7 @@ _CFRIENDMESSAGES_ISINFRIENDSUIBETA_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='online_in_friendsui', full_name='CFriendMessages_IsInFriendsUIBeta_Response.online_in_friendsui', index=0,
@@ -622,14 +638,14 @@ _CFRIENDMESSAGES_ISINFRIENDSUIBETA_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='has_used_friendsui', full_name='CFriendMessages_IsInFriendsUIBeta_Response.has_used_friendsui', index=1,
       number=2, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -642,8 +658,8 @@ _CFRIENDMESSAGES_ISINFRIENDSUIBETA_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=2571,
-  serialized_end=2672,
+  serialized_start=2597,
+  serialized_end=2698,
 )
 
 
@@ -653,6 +669,7 @@ _CFRIENDMESSAGES_UPDATEMESSAGEREACTION_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CFriendMessages_UpdateMessageReaction_Request.steamid', index=0,
@@ -660,42 +677,42 @@ _CFRIENDMESSAGES_UPDATEMESSAGEREACTION_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='server_timestamp', full_name='CFriendMessages_UpdateMessageReaction_Request.server_timestamp', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='ordinal', full_name='CFriendMessages_UpdateMessageReaction_Request.ordinal', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='reaction_type', full_name='CFriendMessages_UpdateMessageReaction_Request.reaction_type', index=3,
       number=4, type=14, cpp_type=8, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='reaction', full_name='CFriendMessages_UpdateMessageReaction_Request.reaction', index=4,
       number=5, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='is_add', full_name='CFriendMessages_UpdateMessageReaction_Request.is_add', index=5,
       number=6, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -708,8 +725,8 @@ _CFRIENDMESSAGES_UPDATEMESSAGEREACTION_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=2675,
-  serialized_end=2894,
+  serialized_start=2701,
+  serialized_end=2920,
 )
 
 
@@ -719,6 +736,7 @@ _CFRIENDMESSAGES_UPDATEMESSAGEREACTION_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='reactors', full_name='CFriendMessages_UpdateMessageReaction_Response.reactors', index=0,
@@ -726,7 +744,7 @@ _CFRIENDMESSAGES_UPDATEMESSAGEREACTION_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -739,8 +757,8 @@ _CFRIENDMESSAGES_UPDATEMESSAGEREACTION_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=2896,
-  serialized_end=2962,
+  serialized_start=2922,
+  serialized_end=2988,
 )
 
 
@@ -750,6 +768,7 @@ _CFRIENDMESSAGES_INCOMINGMESSAGE_NOTIFICATION = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid_friend', full_name='CFriendMessages_IncomingMessage_Notification.steamid_friend', index=0,
@@ -757,63 +776,63 @@ _CFRIENDMESSAGES_INCOMINGMESSAGE_NOTIFICATION = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='chat_entry_type', full_name='CFriendMessages_IncomingMessage_Notification.chat_entry_type', index=1,
       number=2, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='from_limited_account', full_name='CFriendMessages_IncomingMessage_Notification.from_limited_account', index=2,
       number=3, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='message', full_name='CFriendMessages_IncomingMessage_Notification.message', index=3,
       number=4, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='rtime32_server_timestamp', full_name='CFriendMessages_IncomingMessage_Notification.rtime32_server_timestamp', index=4,
       number=5, type=7, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='ordinal', full_name='CFriendMessages_IncomingMessage_Notification.ordinal', index=5,
       number=6, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='local_echo', full_name='CFriendMessages_IncomingMessage_Notification.local_echo', index=6,
       number=7, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='message_no_bbcode', full_name='CFriendMessages_IncomingMessage_Notification.message_no_bbcode', index=7,
       number=8, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='low_priority', full_name='CFriendMessages_IncomingMessage_Notification.low_priority', index=8,
       number=9, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -826,8 +845,8 @@ _CFRIENDMESSAGES_INCOMINGMESSAGE_NOTIFICATION = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=2965,
-  serialized_end=3227,
+  serialized_start=2991,
+  serialized_end=3253,
 )
 
 
@@ -837,6 +856,7 @@ _CFRIENDMESSAGES_MESSAGEREACTION_NOTIFICATION = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid_friend', full_name='CFriendMessages_MessageReaction_Notification.steamid_friend', index=0,
@@ -844,49 +864,49 @@ _CFRIENDMESSAGES_MESSAGEREACTION_NOTIFICATION = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='server_timestamp', full_name='CFriendMessages_MessageReaction_Notification.server_timestamp', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='ordinal', full_name='CFriendMessages_MessageReaction_Notification.ordinal', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='reactor', full_name='CFriendMessages_MessageReaction_Notification.reactor', index=3,
       number=4, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='reaction_type', full_name='CFriendMessages_MessageReaction_Notification.reaction_type', index=4,
       number=5, type=14, cpp_type=8, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='reaction', full_name='CFriendMessages_MessageReaction_Notification.reaction', index=5,
       number=6, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='is_add', full_name='CFriendMessages_MessageReaction_Notification.is_add', index=6,
       number=7, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -899,8 +919,8 @@ _CFRIENDMESSAGES_MESSAGEREACTION_NOTIFICATION = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=3230,
-  serialized_end=3472,
+  serialized_start=3256,
+  serialized_end=3498,
 )
 
 _CFRIENDMESSAGES_GETRECENTMESSAGES_RESPONSE_FRIENDMESSAGE_MESSAGEREACTION.fields_by_name['reaction_type'].enum_type = _EMESSAGEREACTIONTYPE
@@ -928,119 +948,119 @@ DESCRIPTOR.message_types_by_name['CFriendMessages_MessageReaction_Notification']
 DESCRIPTOR.enum_types_by_name['EMessageReactionType'] = _EMESSAGEREACTIONTYPE
 _sym_db.RegisterFileDescriptor(DESCRIPTOR)
 
-CFriendMessages_GetRecentMessages_Request = _reflection.GeneratedProtocolMessageType('CFriendMessages_GetRecentMessages_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CFRIENDMESSAGES_GETRECENTMESSAGES_REQUEST,
-  __module__ = 'steammessages_friendmessages_pb2'
+CFriendMessages_GetRecentMessages_Request = _reflection.GeneratedProtocolMessageType('CFriendMessages_GetRecentMessages_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CFRIENDMESSAGES_GETRECENTMESSAGES_REQUEST,
+  '__module__' : 'steammessages_friendmessages_pb2'
   # @@protoc_insertion_point(class_scope:CFriendMessages_GetRecentMessages_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CFriendMessages_GetRecentMessages_Request)
 
-CFriendMessages_GetRecentMessages_Response = _reflection.GeneratedProtocolMessageType('CFriendMessages_GetRecentMessages_Response', (_message.Message,), dict(
+CFriendMessages_GetRecentMessages_Response = _reflection.GeneratedProtocolMessageType('CFriendMessages_GetRecentMessages_Response', (_message.Message,), {
 
-  FriendMessage = _reflection.GeneratedProtocolMessageType('FriendMessage', (_message.Message,), dict(
+  'FriendMessage' : _reflection.GeneratedProtocolMessageType('FriendMessage', (_message.Message,), {
 
-    MessageReaction = _reflection.GeneratedProtocolMessageType('MessageReaction', (_message.Message,), dict(
-      DESCRIPTOR = _CFRIENDMESSAGES_GETRECENTMESSAGES_RESPONSE_FRIENDMESSAGE_MESSAGEREACTION,
-      __module__ = 'steammessages_friendmessages_pb2'
+    'MessageReaction' : _reflection.GeneratedProtocolMessageType('MessageReaction', (_message.Message,), {
+      'DESCRIPTOR' : _CFRIENDMESSAGES_GETRECENTMESSAGES_RESPONSE_FRIENDMESSAGE_MESSAGEREACTION,
+      '__module__' : 'steammessages_friendmessages_pb2'
       # @@protoc_insertion_point(class_scope:CFriendMessages_GetRecentMessages_Response.FriendMessage.MessageReaction)
-      ))
+      })
     ,
-    DESCRIPTOR = _CFRIENDMESSAGES_GETRECENTMESSAGES_RESPONSE_FRIENDMESSAGE,
-    __module__ = 'steammessages_friendmessages_pb2'
+    'DESCRIPTOR' : _CFRIENDMESSAGES_GETRECENTMESSAGES_RESPONSE_FRIENDMESSAGE,
+    '__module__' : 'steammessages_friendmessages_pb2'
     # @@protoc_insertion_point(class_scope:CFriendMessages_GetRecentMessages_Response.FriendMessage)
-    ))
+    })
   ,
-  DESCRIPTOR = _CFRIENDMESSAGES_GETRECENTMESSAGES_RESPONSE,
-  __module__ = 'steammessages_friendmessages_pb2'
+  'DESCRIPTOR' : _CFRIENDMESSAGES_GETRECENTMESSAGES_RESPONSE,
+  '__module__' : 'steammessages_friendmessages_pb2'
   # @@protoc_insertion_point(class_scope:CFriendMessages_GetRecentMessages_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CFriendMessages_GetRecentMessages_Response)
 _sym_db.RegisterMessage(CFriendMessages_GetRecentMessages_Response.FriendMessage)
 _sym_db.RegisterMessage(CFriendMessages_GetRecentMessages_Response.FriendMessage.MessageReaction)
 
-CFriendsMessages_GetActiveMessageSessions_Request = _reflection.GeneratedProtocolMessageType('CFriendsMessages_GetActiveMessageSessions_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CFRIENDSMESSAGES_GETACTIVEMESSAGESESSIONS_REQUEST,
-  __module__ = 'steammessages_friendmessages_pb2'
+CFriendsMessages_GetActiveMessageSessions_Request = _reflection.GeneratedProtocolMessageType('CFriendsMessages_GetActiveMessageSessions_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CFRIENDSMESSAGES_GETACTIVEMESSAGESESSIONS_REQUEST,
+  '__module__' : 'steammessages_friendmessages_pb2'
   # @@protoc_insertion_point(class_scope:CFriendsMessages_GetActiveMessageSessions_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CFriendsMessages_GetActiveMessageSessions_Request)
 
-CFriendsMessages_GetActiveMessageSessions_Response = _reflection.GeneratedProtocolMessageType('CFriendsMessages_GetActiveMessageSessions_Response', (_message.Message,), dict(
+CFriendsMessages_GetActiveMessageSessions_Response = _reflection.GeneratedProtocolMessageType('CFriendsMessages_GetActiveMessageSessions_Response', (_message.Message,), {
 
-  FriendMessageSession = _reflection.GeneratedProtocolMessageType('FriendMessageSession', (_message.Message,), dict(
-    DESCRIPTOR = _CFRIENDSMESSAGES_GETACTIVEMESSAGESESSIONS_RESPONSE_FRIENDMESSAGESESSION,
-    __module__ = 'steammessages_friendmessages_pb2'
+  'FriendMessageSession' : _reflection.GeneratedProtocolMessageType('FriendMessageSession', (_message.Message,), {
+    'DESCRIPTOR' : _CFRIENDSMESSAGES_GETACTIVEMESSAGESESSIONS_RESPONSE_FRIENDMESSAGESESSION,
+    '__module__' : 'steammessages_friendmessages_pb2'
     # @@protoc_insertion_point(class_scope:CFriendsMessages_GetActiveMessageSessions_Response.FriendMessageSession)
-    ))
+    })
   ,
-  DESCRIPTOR = _CFRIENDSMESSAGES_GETACTIVEMESSAGESESSIONS_RESPONSE,
-  __module__ = 'steammessages_friendmessages_pb2'
+  'DESCRIPTOR' : _CFRIENDSMESSAGES_GETACTIVEMESSAGESESSIONS_RESPONSE,
+  '__module__' : 'steammessages_friendmessages_pb2'
   # @@protoc_insertion_point(class_scope:CFriendsMessages_GetActiveMessageSessions_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CFriendsMessages_GetActiveMessageSessions_Response)
 _sym_db.RegisterMessage(CFriendsMessages_GetActiveMessageSessions_Response.FriendMessageSession)
 
-CFriendMessages_SendMessage_Request = _reflection.GeneratedProtocolMessageType('CFriendMessages_SendMessage_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CFRIENDMESSAGES_SENDMESSAGE_REQUEST,
-  __module__ = 'steammessages_friendmessages_pb2'
+CFriendMessages_SendMessage_Request = _reflection.GeneratedProtocolMessageType('CFriendMessages_SendMessage_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CFRIENDMESSAGES_SENDMESSAGE_REQUEST,
+  '__module__' : 'steammessages_friendmessages_pb2'
   # @@protoc_insertion_point(class_scope:CFriendMessages_SendMessage_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CFriendMessages_SendMessage_Request)
 
-CFriendMessages_SendMessage_Response = _reflection.GeneratedProtocolMessageType('CFriendMessages_SendMessage_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CFRIENDMESSAGES_SENDMESSAGE_RESPONSE,
-  __module__ = 'steammessages_friendmessages_pb2'
+CFriendMessages_SendMessage_Response = _reflection.GeneratedProtocolMessageType('CFriendMessages_SendMessage_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CFRIENDMESSAGES_SENDMESSAGE_RESPONSE,
+  '__module__' : 'steammessages_friendmessages_pb2'
   # @@protoc_insertion_point(class_scope:CFriendMessages_SendMessage_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CFriendMessages_SendMessage_Response)
 
-CFriendMessages_AckMessage_Notification = _reflection.GeneratedProtocolMessageType('CFriendMessages_AckMessage_Notification', (_message.Message,), dict(
-  DESCRIPTOR = _CFRIENDMESSAGES_ACKMESSAGE_NOTIFICATION,
-  __module__ = 'steammessages_friendmessages_pb2'
+CFriendMessages_AckMessage_Notification = _reflection.GeneratedProtocolMessageType('CFriendMessages_AckMessage_Notification', (_message.Message,), {
+  'DESCRIPTOR' : _CFRIENDMESSAGES_ACKMESSAGE_NOTIFICATION,
+  '__module__' : 'steammessages_friendmessages_pb2'
   # @@protoc_insertion_point(class_scope:CFriendMessages_AckMessage_Notification)
-  ))
+  })
 _sym_db.RegisterMessage(CFriendMessages_AckMessage_Notification)
 
-CFriendMessages_IsInFriendsUIBeta_Request = _reflection.GeneratedProtocolMessageType('CFriendMessages_IsInFriendsUIBeta_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CFRIENDMESSAGES_ISINFRIENDSUIBETA_REQUEST,
-  __module__ = 'steammessages_friendmessages_pb2'
+CFriendMessages_IsInFriendsUIBeta_Request = _reflection.GeneratedProtocolMessageType('CFriendMessages_IsInFriendsUIBeta_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CFRIENDMESSAGES_ISINFRIENDSUIBETA_REQUEST,
+  '__module__' : 'steammessages_friendmessages_pb2'
   # @@protoc_insertion_point(class_scope:CFriendMessages_IsInFriendsUIBeta_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CFriendMessages_IsInFriendsUIBeta_Request)
 
-CFriendMessages_IsInFriendsUIBeta_Response = _reflection.GeneratedProtocolMessageType('CFriendMessages_IsInFriendsUIBeta_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CFRIENDMESSAGES_ISINFRIENDSUIBETA_RESPONSE,
-  __module__ = 'steammessages_friendmessages_pb2'
+CFriendMessages_IsInFriendsUIBeta_Response = _reflection.GeneratedProtocolMessageType('CFriendMessages_IsInFriendsUIBeta_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CFRIENDMESSAGES_ISINFRIENDSUIBETA_RESPONSE,
+  '__module__' : 'steammessages_friendmessages_pb2'
   # @@protoc_insertion_point(class_scope:CFriendMessages_IsInFriendsUIBeta_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CFriendMessages_IsInFriendsUIBeta_Response)
 
-CFriendMessages_UpdateMessageReaction_Request = _reflection.GeneratedProtocolMessageType('CFriendMessages_UpdateMessageReaction_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CFRIENDMESSAGES_UPDATEMESSAGEREACTION_REQUEST,
-  __module__ = 'steammessages_friendmessages_pb2'
+CFriendMessages_UpdateMessageReaction_Request = _reflection.GeneratedProtocolMessageType('CFriendMessages_UpdateMessageReaction_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CFRIENDMESSAGES_UPDATEMESSAGEREACTION_REQUEST,
+  '__module__' : 'steammessages_friendmessages_pb2'
   # @@protoc_insertion_point(class_scope:CFriendMessages_UpdateMessageReaction_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CFriendMessages_UpdateMessageReaction_Request)
 
-CFriendMessages_UpdateMessageReaction_Response = _reflection.GeneratedProtocolMessageType('CFriendMessages_UpdateMessageReaction_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CFRIENDMESSAGES_UPDATEMESSAGEREACTION_RESPONSE,
-  __module__ = 'steammessages_friendmessages_pb2'
+CFriendMessages_UpdateMessageReaction_Response = _reflection.GeneratedProtocolMessageType('CFriendMessages_UpdateMessageReaction_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CFRIENDMESSAGES_UPDATEMESSAGEREACTION_RESPONSE,
+  '__module__' : 'steammessages_friendmessages_pb2'
   # @@protoc_insertion_point(class_scope:CFriendMessages_UpdateMessageReaction_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CFriendMessages_UpdateMessageReaction_Response)
 
-CFriendMessages_IncomingMessage_Notification = _reflection.GeneratedProtocolMessageType('CFriendMessages_IncomingMessage_Notification', (_message.Message,), dict(
-  DESCRIPTOR = _CFRIENDMESSAGES_INCOMINGMESSAGE_NOTIFICATION,
-  __module__ = 'steammessages_friendmessages_pb2'
+CFriendMessages_IncomingMessage_Notification = _reflection.GeneratedProtocolMessageType('CFriendMessages_IncomingMessage_Notification', (_message.Message,), {
+  'DESCRIPTOR' : _CFRIENDMESSAGES_INCOMINGMESSAGE_NOTIFICATION,
+  '__module__' : 'steammessages_friendmessages_pb2'
   # @@protoc_insertion_point(class_scope:CFriendMessages_IncomingMessage_Notification)
-  ))
+  })
 _sym_db.RegisterMessage(CFriendMessages_IncomingMessage_Notification)
 
-CFriendMessages_MessageReaction_Notification = _reflection.GeneratedProtocolMessageType('CFriendMessages_MessageReaction_Notification', (_message.Message,), dict(
-  DESCRIPTOR = _CFRIENDMESSAGES_MESSAGEREACTION_NOTIFICATION,
-  __module__ = 'steammessages_friendmessages_pb2'
+CFriendMessages_MessageReaction_Notification = _reflection.GeneratedProtocolMessageType('CFriendMessages_MessageReaction_Notification', (_message.Message,), {
+  'DESCRIPTOR' : _CFRIENDMESSAGES_MESSAGEREACTION_NOTIFICATION,
+  '__module__' : 'steammessages_friendmessages_pb2'
   # @@protoc_insertion_point(class_scope:CFriendMessages_MessageReaction_Notification)
-  ))
+  })
 _sym_db.RegisterMessage(CFriendMessages_MessageReaction_Notification)
 
 
@@ -1061,9 +1081,10 @@ _FRIENDMESSAGES = _descriptor.ServiceDescriptor(
   full_name='FriendMessages',
   file=DESCRIPTOR,
   index=0,
-  serialized_options=_b('\202\265\030]A service for relaying and logging friend messages (user-to-user chats and offline messaging)'),
-  serialized_start=3609,
-  serialized_end=4694,
+  serialized_options=b'\202\265\030]A service for relaying and logging friend messages (user-to-user chats and offline messaging)',
+  create_key=_descriptor._internal_create_key,
+  serialized_start=3635,
+  serialized_end=4720,
   methods=[
   _descriptor.MethodDescriptor(
     name='GetRecentMessages',
@@ -1072,7 +1093,8 @@ _FRIENDMESSAGES = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CFRIENDMESSAGES_GETRECENTMESSAGES_REQUEST,
     output_type=_CFRIENDMESSAGES_GETRECENTMESSAGES_RESPONSE,
-    serialized_options=_b('\202\265\0303Get a log of recent chat messages between two users'),
+    serialized_options=b'\202\265\0303Get a log of recent chat messages between two users',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetActiveMessageSessions',
@@ -1081,7 +1103,8 @@ _FRIENDMESSAGES = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CFRIENDSMESSAGES_GETACTIVEMESSAGESESSIONS_REQUEST,
     output_type=_CFRIENDSMESSAGES_GETACTIVEMESSAGESESSIONS_RESPONSE,
-    serialized_options=_b('\202\265\0307Get information about recent offline messages and chats'),
+    serialized_options=b'\202\265\0307Get information about recent offline messages and chats',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='SendMessage',
@@ -1090,7 +1113,8 @@ _FRIENDMESSAGES = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CFRIENDMESSAGES_SENDMESSAGE_REQUEST,
     output_type=_CFRIENDMESSAGES_SENDMESSAGE_RESPONSE,
-    serialized_options=_b('\202\265\030\037Send a chat message to a friend'),
+    serialized_options=b'\202\265\030\037Send a chat message to a friend',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='AckMessage',
@@ -1099,7 +1123,8 @@ _FRIENDMESSAGES = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CFRIENDMESSAGES_ACKMESSAGE_NOTIFICATION,
     output_type=steammessages__unified__base__pb2._NORESPONSE,
-    serialized_options=_b('\202\265\030CAcknowledge that we have seen the most recent message from a friend'),
+    serialized_options=b'\202\265\030CAcknowledge that we have seen the most recent message from a friend',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='IsInFriendsUIBeta',
@@ -1108,7 +1133,8 @@ _FRIENDMESSAGES = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CFRIENDMESSAGES_ISINFRIENDSUIBETA_REQUEST,
     output_type=_CFRIENDMESSAGES_ISINFRIENDSUIBETA_RESPONSE,
-    serialized_options=_b('\202\265\030)See if a friend is in the friendsui beta.'),
+    serialized_options=b'\202\265\030)See if a friend is in the friendsui beta.',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='UpdateMessageReaction',
@@ -1117,7 +1143,8 @@ _FRIENDMESSAGES = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CFRIENDMESSAGES_UPDATEMESSAGEREACTION_REQUEST,
     output_type=_CFRIENDMESSAGES_UPDATEMESSAGEREACTION_RESPONSE,
-    serialized_options=_b('\202\265\0300Adds/removes a reaction to/from a friend message'),
+    serialized_options=b'\202\265\0300Adds/removes a reaction to/from a friend message',
+    create_key=_descriptor._internal_create_key,
   ),
 ])
 _sym_db.RegisterServiceDescriptor(_FRIENDMESSAGES)
@@ -1130,9 +1157,10 @@ _FRIENDMESSAGESCLIENT = _descriptor.ServiceDescriptor(
   full_name='FriendMessagesClient',
   file=DESCRIPTOR,
   index=1,
-  serialized_options=_b('\300\265\030\002'),
-  serialized_start=4697,
-  serialized_end=5105,
+  serialized_options=b'\300\265\030\002',
+  create_key=_descriptor._internal_create_key,
+  serialized_start=4723,
+  serialized_end=5131,
   methods=[
   _descriptor.MethodDescriptor(
     name='IncomingMessage',
@@ -1141,7 +1169,8 @@ _FRIENDMESSAGESCLIENT = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CFRIENDMESSAGES_INCOMINGMESSAGE_NOTIFICATION,
     output_type=steammessages__unified__base__pb2._NORESPONSE,
-    serialized_options=_b('\202\265\030\037New chat message from a friend.'),
+    serialized_options=b'\202\265\030\037New chat message from a friend.',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='NotifyAckMessageEcho',
@@ -1150,7 +1179,8 @@ _FRIENDMESSAGESCLIENT = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CFRIENDMESSAGES_ACKMESSAGE_NOTIFICATION,
     output_type=steammessages__unified__base__pb2._NORESPONSE,
-    serialized_options=_b('\202\265\030:A session acked an unread message, echo to other sessions.'),
+    serialized_options=b'\202\265\030:A session acked an unread message, echo to other sessions.',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='MessageReaction',
@@ -1159,7 +1189,8 @@ _FRIENDMESSAGESCLIENT = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CFRIENDMESSAGES_MESSAGEREACTION_NOTIFICATION,
     output_type=steammessages__unified__base__pb2._NORESPONSE,
-    serialized_options=_b('\202\265\030#New message reaction from a friend.'),
+    serialized_options=b'\202\265\030#New message reaction from a friend.',
+    create_key=_descriptor._internal_create_key,
   ),
 ])
 _sym_db.RegisterServiceDescriptor(_FRIENDMESSAGESCLIENT)
diff --git a/steam/protobufs/steammessages_gamenotifications_pb2.py b/steam/protobufs/steammessages_gamenotifications_pb2.py
index ede8e48..999501f 100644
--- a/steam/protobufs/steammessages_gamenotifications_pb2.py
+++ b/steam/protobufs/steammessages_gamenotifications_pb2.py
@@ -1,9 +1,7 @@
 # -*- coding: utf-8 -*-
 # Generated by the protocol buffer compiler.  DO NOT EDIT!
 # source: steammessages_gamenotifications.proto
-
-import sys
-_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1'))
+"""Generated protocol buffer code."""
 from google.protobuf import descriptor as _descriptor
 from google.protobuf import message as _message
 from google.protobuf import reflection as _reflection
@@ -15,6 +13,7 @@ from google.protobuf import service_reflection
 _sym_db = _symbol_database.Default()
 
 
+import steam.protobufs.steammessages_base_pb2 as steammessages__base__pb2
 import steam.protobufs.steammessages_unified_base_pb2 as steammessages__unified__base__pb2
 
 
@@ -22,10 +21,11 @@ DESCRIPTOR = _descriptor.FileDescriptor(
   name='steammessages_gamenotifications.proto',
   package='',
   syntax='proto2',
-  serialized_options=_b('\220\001\001'),
-  serialized_pb=_b('\n%steammessages_gamenotifications.proto\x1a steammessages_unified_base.proto\"\xe0\x02\n\x1b\x43GameNotifications_Variable\x12\xa6\x01\n\x03key\x18\x01 \x01(\tB\x98\x01\x82\xb5\x18\x93\x01The name of the variable in the localized text -- anywhere that %variablename% is found within the text it will be substituded with the given value\x12\x97\x01\n\x05value\x18\x02 \x01(\tB\x87\x01\x82\xb5\x18\x82\x01The value of the variable to substitute in the localized text in place of the given variable.  Can itself be a localization token.\"\x85\x03\n CGameNotifications_LocalizedText\x12H\n\x05token\x18\x01 \x01(\tB9\x82\xb5\x18\x35\x41 localization token that maps to the desired string.\x12\x8d\x01\n\tvariables\x18\x02 \x03(\x0b\x32\x1c.CGameNotifications_VariableB\\\x82\xb5\x18XA list of variables values to substitute in any variables found in the localized string.\x12\x86\x01\n\rrendered_text\x18\x03 \x01(\tBo\x82\xb5\x18kText rendered in the requested language, complete with variable substitutions, if a language was specified.\"\x95\x04\n\x1d\x43GameNotifications_UserStatus\x12\x31\n\x07steamid\x18\x01 \x01(\x06\x42 \x82\xb5\x18\x1cThe specific user\'s steamid.\x12\xa4\x01\n\x05state\x18\x02 \x01(\tB\x94\x01\x82\xb5\x18\x8f\x01The user\'s state.  ready -- the user is ready to play.  waiting -- The game is waiting on an action from the user. completed, the game is over.\x12\x84\x01\n\x05title\x18\x03 \x01(\x0b\x32!.CGameNotifications_LocalizedTextBR\x82\xb5\x18NTitle of the session to display to this user in their list of active sessions.\x12\x92\x01\n\x07message\x18\x04 \x01(\x0b\x32!.CGameNotifications_LocalizedTextB^\x82\xb5\x18ZSubtitle of the session to display to this user user within their list of active sessions.\"\x93\x05\n(CGameNotifications_CreateSession_Request\x12\x37\n\x05\x61ppid\x18\x01 \x01(\rB(\x82\xb5\x18$The appid to create the session for.\x12\x7f\n\x07\x63ontext\x18\x02 \x01(\x04\x42n\x82\xb5\x18jGame-specified context value the game can used to associate the session with some object on their backend.\x12\x83\x01\n\x05title\x18\x03 \x01(\x0b\x32!.CGameNotifications_LocalizedTextBQ\x82\xb5\x18MThe title of the session to be displayed within each user\'s list of sessions.\x12\x61\n\x05users\x18\x04 \x03(\x0b\x32\x1e.CGameNotifications_UserStatusB2\x82\xb5\x18.The initial state of all users in the session.\x12\xc3\x01\n\x07steamid\x18\x05 \x01(\x06\x42\xb1\x01\x82\xb5\x18\xac\x01(Optional) steamid to make the request on behalf of -- if specified, the user must be in the session and all users being added to the session must be friends with the user.\"i\n)CGameNotifications_CreateSession_Response\x12<\n\tsessionid\x18\x01 \x01(\x04\x42)\x82\xb5\x18%The sessionid of the created session.\"\x8f\x02\n(CGameNotifications_DeleteSession_Request\x12/\n\tsessionid\x18\x01 \x01(\x04\x42\x1c\x82\xb5\x18\x18The sessionid to delete.\x12\x36\n\x05\x61ppid\x18\x02 \x01(\rB\'\x82\xb5\x18#The appid of the session to delete.\x12z\n\x07steamid\x18\x03 \x01(\x06\x42i\x82\xb5\x18\x65(Optional) steamid to make the request on behalf of -- if specified, the user must be in the session.\"+\n)CGameNotifications_DeleteSession_Response\"\xbd\x05\n(CGameNotifications_UpdateSession_Request\x12/\n\tsessionid\x18\x01 \x01(\x04\x42\x1c\x82\xb5\x18\x18The sessionid to update.\x12\x36\n\x05\x61ppid\x18\x02 \x01(\rB\'\x82\xb5\x18#The appid of the session to update.\x12\x90\x01\n\x05title\x18\x03 \x01(\x0b\x32!.CGameNotifications_LocalizedTextB^\x82\xb5\x18Z(Optional) The new title of the session.  If not specified, the title will not be changed.\x12\xce\x01\n\x05users\x18\x04 \x03(\x0b\x32\x1e.CGameNotifications_UserStatusB\x9e\x01\x82\xb5\x18\x99\x01(Optional) A list of users whose state will be updated to reflect the given state. If the users are not already in the session, they will be added to it.\x12\xc3\x01\n\x07steamid\x18\x06 \x01(\x06\x42\xb1\x01\x82\xb5\x18\xac\x01(Optional) steamid to make the request on behalf of -- if specified, the user must be in the session and all users being added to the session must be friends with the user.\"+\n)CGameNotifications_UpdateSession_Response\"\xa1\x04\n,CGameNotifications_EnumerateSessions_Request\x12~\n\x05\x61ppid\x18\x01 \x01(\rBo\x82\xb5\x18kThe sessionid to request details for. Optional. If not specified, all the user\'s sessions will be returned.\x12\x8e\x01\n\x19include_all_user_messages\x18\x03 \x01(\x08\x42k\x82\xb5\x18g(Optional) Boolean determining whether the message for all users should be included. Defaults to false.\x12\x9b\x01\n\x19include_auth_user_message\x18\x04 \x01(\x08\x42x\x82\xb5\x18t(Optional) Boolean determining whether the message for the authenticated user should be included. Defaults to false.\x12\x42\n\x08language\x18\x05 \x01(\tB0\x82\xb5\x18,(Optional) Language to localize the text in.\"\xc3\x04\n\x1a\x43GameNotifications_Session\x12\x36\n\tsessionid\x18\x01 \x01(\x04\x42#\x82\xb5\x18\x1fThe sessionid for this session.\x12-\n\x05\x61ppid\x18\x02 \x01(\x04\x42\x1e\x82\xb5\x18\x1aThe appid for the session.\x12\x7f\n\x07\x63ontext\x18\x03 \x01(\x04\x42n\x82\xb5\x18jGame-specified context value the game can used to associate the session with some object on their backend.\x12X\n\x05title\x18\x04 \x01(\x0b\x32!.CGameNotifications_LocalizedTextB&\x82\xb5\x18\"The current title for the session.\x12;\n\x0ctime_created\x18\x05 \x01(\rB%\x82\xb5\x18!The time the session was created.\x12@\n\x0ctime_updated\x18\x06 \x01(\rB*\x82\xb5\x18&The last time the session was updated.\x12\x64\n\x0buser_status\x18\x07 \x03(\x0b\x32\x1e.CGameNotifications_UserStatusB/\x82\xb5\x18+The status of all the users in the session.\"\x82\x01\n-CGameNotifications_EnumerateSessions_Response\x12Q\n\x08sessions\x18\x01 \x03(\x0b\x32\x1b.CGameNotifications_SessionB\"\x82\xb5\x18\x1e\x41 list of the user\'s sessions.\"\xd6\x03\n,CGameNotifications_GetSessionDetails_Request\x12P\n\x08sessions\x18\x01 \x03(\x0b\x32>.CGameNotifications_GetSessionDetails_Request.RequestedSession\x12.\n\x05\x61ppid\x18\x02 \x01(\rB\x1f\x82\xb5\x18\x1bThe appid for the sessions.\x12\x37\n\x08language\x18\x03 \x01(\tB%\x82\xb5\x18!Language to localize the text in.\x1a\xea\x01\n\x10RequestedSession\x12\x38\n\tsessionid\x18\x01 \x01(\x04\x42%\x82\xb5\x18!The sessionid to get details for.\x12\x9b\x01\n\x19include_auth_user_message\x18\x03 \x01(\x08\x42x\x82\xb5\x18t(Optional) Boolean determining whether the message for the authenticated user should be included. Defaults to false.\"\x7f\n-CGameNotifications_GetSessionDetails_Response\x12N\n\x08sessions\x18\x01 \x03(\x0b\x32\x1b.CGameNotifications_SessionB\x1f\x82\xb5\x18\x1bThe details of the session.\"\xa8\x01\n\x18GameNotificationSettings\x12\x37\n\x05\x61ppid\x18\x01 \x01(\rB(\x82\xb5\x18$The appid to create the session for.\x12S\n\x13\x61llow_notifications\x18\x02 \x01(\x08\x42\x36\x82\xb5\x18\x32Whether the user allows notification for this app.\"v\n5CGameNotifications_UpdateNotificationSettings_Request\x12=\n\x1agame_notification_settings\x18\x01 \x03(\x0b\x32\x19.GameNotificationSettings\"8\n6CGameNotifications_UpdateNotificationSettings_Response\"\xc6\x01\n8CGameNotifications_OnNotificationsRequested_Notification\x12N\n\x07steamid\x18\x01 \x01(\x06\x42=\x82\xb5\x18\x39steamid of the user who notifications were requested for.\x12:\n\x05\x61ppid\x18\x02 \x01(\rB+\x82\xb5\x18\'The appid that requested notifications.\"\xbe\x03\n3CGameNotifications_OnUserStatusChanged_Notification\x12>\n\x07steamid\x18\x01 \x01(\x06\x42-\x82\xb5\x18)steamid of the user whose status changed.\x12X\n\tsessionid\x18\x02 \x01(\x04\x42\x45\x82\xb5\x18\x41The sessionid of the session where the user\'s status was changed.\x12L\n\x05\x61ppid\x18\x03 \x01(\rB=\x82\xb5\x18\x39The appid of the session where the user\'s status changed.\x12V\n\x06status\x18\x04 \x01(\x0b\x32\x1e.CGameNotifications_UserStatusB&\x82\xb5\x18\"(Optional) New status of the user.\x12G\n\x07removed\x18\x05 \x01(\x08\x42\x36\x82\xb5\x18\x32(Optional) User has been removed from the session.2\xa6\x08\n\x11GameNotifications\x12\x8d\x01\n\x11UserCreateSession\x12).CGameNotifications_CreateSession_Request\x1a*.CGameNotifications_CreateSession_Response\"!\x82\xb5\x18\x1d\x43reates an async game session\x12\x8d\x01\n\x11UserDeleteSession\x12).CGameNotifications_DeleteSession_Request\x1a*.CGameNotifications_DeleteSession_Response\"!\x82\xb5\x18\x1d\x44\x65letes an async game session\x12\x8d\x01\n\x11UserUpdateSession\x12).CGameNotifications_UpdateSession_Request\x1a*.CGameNotifications_UpdateSession_Response\"!\x82\xb5\x18\x1dUpdates an async game session\x12\x94\x01\n\x11\x45numerateSessions\x12-.CGameNotifications_EnumerateSessions_Request\x1a..CGameNotifications_EnumerateSessions_Response\" \x82\xb5\x18\x1c\x45numerates a user\'s sessions\x12\x9e\x01\n\x11GetSessionDetails\x12-.CGameNotifications_GetSessionDetails_Request\x1a..CGameNotifications_GetSessionDetails_Response\"*\x82\xb5\x18&Get the details for a specific session\x12\xd6\x01\n\x1aUpdateNotificationSettings\x12\x36.CGameNotifications_UpdateNotificationSettings_Request\x1a\x37.CGameNotifications_UpdateNotificationSettings_Response\"G\x82\xb5\x18\x43Updates whether a user allows game notifications for a specific app\x1aP\x82\xb5\x18LA service for functions related to the asyncronous game notification server.2\xdf\x02\n\x17GameNotificationsClient\x12\x95\x01\n\x18OnNotificationsRequested\x12\x39.CGameNotifications_OnNotificationsRequested_Notification\x1a\x0b.NoResponse\"1\x82\xb5\x18-Requests that the user opt into notifications\x12\x8d\x01\n\x13OnUserStatusChanged\x12\x34.CGameNotifications_OnUserStatusChanged_Notification\x1a\x0b.NoResponse\"3\x82\xb5\x18/Notification that the user\'s status has changed\x1a\x1c\x82\xb5\x18\x14\x43lient notifications\xc0\xb5\x18\x02\x42\x03\x90\x01\x01')
+  serialized_options=b'\220\001\001',
+  create_key=_descriptor._internal_create_key,
+  serialized_pb=b'\n%steammessages_gamenotifications.proto\x1a\x18steammessages_base.proto\x1a steammessages_unified_base.proto\"\xe0\x02\n\x1b\x43GameNotifications_Variable\x12\xa6\x01\n\x03key\x18\x01 \x01(\tB\x98\x01\x82\xb5\x18\x93\x01The name of the variable in the localized text -- anywhere that %variablename% is found within the text it will be substituded with the given value\x12\x97\x01\n\x05value\x18\x02 \x01(\tB\x87\x01\x82\xb5\x18\x82\x01The value of the variable to substitute in the localized text in place of the given variable.  Can itself be a localization token.\"\x85\x03\n CGameNotifications_LocalizedText\x12H\n\x05token\x18\x01 \x01(\tB9\x82\xb5\x18\x35\x41 localization token that maps to the desired string.\x12\x8d\x01\n\tvariables\x18\x02 \x03(\x0b\x32\x1c.CGameNotifications_VariableB\\\x82\xb5\x18XA list of variables values to substitute in any variables found in the localized string.\x12\x86\x01\n\rrendered_text\x18\x03 \x01(\tBo\x82\xb5\x18kText rendered in the requested language, complete with variable substitutions, if a language was specified.\"\x95\x04\n\x1d\x43GameNotifications_UserStatus\x12\x31\n\x07steamid\x18\x01 \x01(\x06\x42 \x82\xb5\x18\x1cThe specific user\'s steamid.\x12\xa4\x01\n\x05state\x18\x02 \x01(\tB\x94\x01\x82\xb5\x18\x8f\x01The user\'s state.  ready -- the user is ready to play.  waiting -- The game is waiting on an action from the user. completed, the game is over.\x12\x84\x01\n\x05title\x18\x03 \x01(\x0b\x32!.CGameNotifications_LocalizedTextBR\x82\xb5\x18NTitle of the session to display to this user in their list of active sessions.\x12\x92\x01\n\x07message\x18\x04 \x01(\x0b\x32!.CGameNotifications_LocalizedTextB^\x82\xb5\x18ZSubtitle of the session to display to this user user within their list of active sessions.\"\x93\x05\n(CGameNotifications_CreateSession_Request\x12\x37\n\x05\x61ppid\x18\x01 \x01(\rB(\x82\xb5\x18$The appid to create the session for.\x12\x7f\n\x07\x63ontext\x18\x02 \x01(\x04\x42n\x82\xb5\x18jGame-specified context value the game can used to associate the session with some object on their backend.\x12\x83\x01\n\x05title\x18\x03 \x01(\x0b\x32!.CGameNotifications_LocalizedTextBQ\x82\xb5\x18MThe title of the session to be displayed within each user\'s list of sessions.\x12\x61\n\x05users\x18\x04 \x03(\x0b\x32\x1e.CGameNotifications_UserStatusB2\x82\xb5\x18.The initial state of all users in the session.\x12\xc3\x01\n\x07steamid\x18\x05 \x01(\x06\x42\xb1\x01\x82\xb5\x18\xac\x01(Optional) steamid to make the request on behalf of -- if specified, the user must be in the session and all users being added to the session must be friends with the user.\"i\n)CGameNotifications_CreateSession_Response\x12<\n\tsessionid\x18\x01 \x01(\x04\x42)\x82\xb5\x18%The sessionid of the created session.\"\x8f\x02\n(CGameNotifications_DeleteSession_Request\x12/\n\tsessionid\x18\x01 \x01(\x04\x42\x1c\x82\xb5\x18\x18The sessionid to delete.\x12\x36\n\x05\x61ppid\x18\x02 \x01(\rB\'\x82\xb5\x18#The appid of the session to delete.\x12z\n\x07steamid\x18\x03 \x01(\x06\x42i\x82\xb5\x18\x65(Optional) steamid to make the request on behalf of -- if specified, the user must be in the session.\"+\n)CGameNotifications_DeleteSession_Response\"\xbd\x05\n(CGameNotifications_UpdateSession_Request\x12/\n\tsessionid\x18\x01 \x01(\x04\x42\x1c\x82\xb5\x18\x18The sessionid to update.\x12\x36\n\x05\x61ppid\x18\x02 \x01(\rB\'\x82\xb5\x18#The appid of the session to update.\x12\x90\x01\n\x05title\x18\x03 \x01(\x0b\x32!.CGameNotifications_LocalizedTextB^\x82\xb5\x18Z(Optional) The new title of the session.  If not specified, the title will not be changed.\x12\xce\x01\n\x05users\x18\x04 \x03(\x0b\x32\x1e.CGameNotifications_UserStatusB\x9e\x01\x82\xb5\x18\x99\x01(Optional) A list of users whose state will be updated to reflect the given state. If the users are not already in the session, they will be added to it.\x12\xc3\x01\n\x07steamid\x18\x06 \x01(\x06\x42\xb1\x01\x82\xb5\x18\xac\x01(Optional) steamid to make the request on behalf of -- if specified, the user must be in the session and all users being added to the session must be friends with the user.\"+\n)CGameNotifications_UpdateSession_Response\"\xa1\x04\n,CGameNotifications_EnumerateSessions_Request\x12~\n\x05\x61ppid\x18\x01 \x01(\rBo\x82\xb5\x18kThe sessionid to request details for. Optional. If not specified, all the user\'s sessions will be returned.\x12\x8e\x01\n\x19include_all_user_messages\x18\x03 \x01(\x08\x42k\x82\xb5\x18g(Optional) Boolean determining whether the message for all users should be included. Defaults to false.\x12\x9b\x01\n\x19include_auth_user_message\x18\x04 \x01(\x08\x42x\x82\xb5\x18t(Optional) Boolean determining whether the message for the authenticated user should be included. Defaults to false.\x12\x42\n\x08language\x18\x05 \x01(\tB0\x82\xb5\x18,(Optional) Language to localize the text in.\"\xc3\x04\n\x1a\x43GameNotifications_Session\x12\x36\n\tsessionid\x18\x01 \x01(\x04\x42#\x82\xb5\x18\x1fThe sessionid for this session.\x12-\n\x05\x61ppid\x18\x02 \x01(\x04\x42\x1e\x82\xb5\x18\x1aThe appid for the session.\x12\x7f\n\x07\x63ontext\x18\x03 \x01(\x04\x42n\x82\xb5\x18jGame-specified context value the game can used to associate the session with some object on their backend.\x12X\n\x05title\x18\x04 \x01(\x0b\x32!.CGameNotifications_LocalizedTextB&\x82\xb5\x18\"The current title for the session.\x12;\n\x0ctime_created\x18\x05 \x01(\rB%\x82\xb5\x18!The time the session was created.\x12@\n\x0ctime_updated\x18\x06 \x01(\rB*\x82\xb5\x18&The last time the session was updated.\x12\x64\n\x0buser_status\x18\x07 \x03(\x0b\x32\x1e.CGameNotifications_UserStatusB/\x82\xb5\x18+The status of all the users in the session.\"\x82\x01\n-CGameNotifications_EnumerateSessions_Response\x12Q\n\x08sessions\x18\x01 \x03(\x0b\x32\x1b.CGameNotifications_SessionB\"\x82\xb5\x18\x1e\x41 list of the user\'s sessions.\"\xd6\x03\n,CGameNotifications_GetSessionDetails_Request\x12P\n\x08sessions\x18\x01 \x03(\x0b\x32>.CGameNotifications_GetSessionDetails_Request.RequestedSession\x12.\n\x05\x61ppid\x18\x02 \x01(\rB\x1f\x82\xb5\x18\x1bThe appid for the sessions.\x12\x37\n\x08language\x18\x03 \x01(\tB%\x82\xb5\x18!Language to localize the text in.\x1a\xea\x01\n\x10RequestedSession\x12\x38\n\tsessionid\x18\x01 \x01(\x04\x42%\x82\xb5\x18!The sessionid to get details for.\x12\x9b\x01\n\x19include_auth_user_message\x18\x03 \x01(\x08\x42x\x82\xb5\x18t(Optional) Boolean determining whether the message for the authenticated user should be included. Defaults to false.\"\x7f\n-CGameNotifications_GetSessionDetails_Response\x12N\n\x08sessions\x18\x01 \x03(\x0b\x32\x1b.CGameNotifications_SessionB\x1f\x82\xb5\x18\x1bThe details of the session.\"\xa8\x01\n\x18GameNotificationSettings\x12\x37\n\x05\x61ppid\x18\x01 \x01(\rB(\x82\xb5\x18$The appid to create the session for.\x12S\n\x13\x61llow_notifications\x18\x02 \x01(\x08\x42\x36\x82\xb5\x18\x32Whether the user allows notification for this app.\"v\n5CGameNotifications_UpdateNotificationSettings_Request\x12=\n\x1agame_notification_settings\x18\x01 \x03(\x0b\x32\x19.GameNotificationSettings\"8\n6CGameNotifications_UpdateNotificationSettings_Response\"\xc6\x01\n8CGameNotifications_OnNotificationsRequested_Notification\x12N\n\x07steamid\x18\x01 \x01(\x06\x42=\x82\xb5\x18\x39steamid of the user who notifications were requested for.\x12:\n\x05\x61ppid\x18\x02 \x01(\rB+\x82\xb5\x18\'The appid that requested notifications.\"\xbe\x03\n3CGameNotifications_OnUserStatusChanged_Notification\x12>\n\x07steamid\x18\x01 \x01(\x06\x42-\x82\xb5\x18)steamid of the user whose status changed.\x12X\n\tsessionid\x18\x02 \x01(\x04\x42\x45\x82\xb5\x18\x41The sessionid of the session where the user\'s status was changed.\x12L\n\x05\x61ppid\x18\x03 \x01(\rB=\x82\xb5\x18\x39The appid of the session where the user\'s status changed.\x12V\n\x06status\x18\x04 \x01(\x0b\x32\x1e.CGameNotifications_UserStatusB&\x82\xb5\x18\"(Optional) New status of the user.\x12G\n\x07removed\x18\x05 \x01(\x08\x42\x36\x82\xb5\x18\x32(Optional) User has been removed from the session.2\xa6\x08\n\x11GameNotifications\x12\x8d\x01\n\x11UserCreateSession\x12).CGameNotifications_CreateSession_Request\x1a*.CGameNotifications_CreateSession_Response\"!\x82\xb5\x18\x1d\x43reates an async game session\x12\x8d\x01\n\x11UserDeleteSession\x12).CGameNotifications_DeleteSession_Request\x1a*.CGameNotifications_DeleteSession_Response\"!\x82\xb5\x18\x1d\x44\x65letes an async game session\x12\x8d\x01\n\x11UserUpdateSession\x12).CGameNotifications_UpdateSession_Request\x1a*.CGameNotifications_UpdateSession_Response\"!\x82\xb5\x18\x1dUpdates an async game session\x12\x94\x01\n\x11\x45numerateSessions\x12-.CGameNotifications_EnumerateSessions_Request\x1a..CGameNotifications_EnumerateSessions_Response\" \x82\xb5\x18\x1c\x45numerates a user\'s sessions\x12\x9e\x01\n\x11GetSessionDetails\x12-.CGameNotifications_GetSessionDetails_Request\x1a..CGameNotifications_GetSessionDetails_Response\"*\x82\xb5\x18&Get the details for a specific session\x12\xd6\x01\n\x1aUpdateNotificationSettings\x12\x36.CGameNotifications_UpdateNotificationSettings_Request\x1a\x37.CGameNotifications_UpdateNotificationSettings_Response\"G\x82\xb5\x18\x43Updates whether a user allows game notifications for a specific app\x1aP\x82\xb5\x18LA service for functions related to the asyncronous game notification server.2\xdf\x02\n\x17GameNotificationsClient\x12\x95\x01\n\x18OnNotificationsRequested\x12\x39.CGameNotifications_OnNotificationsRequested_Notification\x1a\x0b.NoResponse\"1\x82\xb5\x18-Requests that the user opt into notifications\x12\x8d\x01\n\x13OnUserStatusChanged\x12\x34.CGameNotifications_OnUserStatusChanged_Notification\x1a\x0b.NoResponse\"3\x82\xb5\x18/Notification that the user\'s status has changed\x1a\x1c\x82\xb5\x18\x14\x43lient notifications\xc0\xb5\x18\x02\x42\x03\x90\x01\x01'
   ,
-  dependencies=[steammessages__unified__base__pb2.DESCRIPTOR,])
+  dependencies=[steammessages__base__pb2.DESCRIPTOR,steammessages__unified__base__pb2.DESCRIPTOR,])
 
 
 
@@ -36,21 +36,22 @@ _CGAMENOTIFICATIONS_VARIABLE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='key', full_name='CGameNotifications_Variable.key', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\223\001The name of the variable in the localized text -- anywhere that %variablename% is found within the text it will be substituded with the given value'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\223\001The name of the variable in the localized text -- anywhere that %variablename% is found within the text it will be substituded with the given value', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='value', full_name='CGameNotifications_Variable.value', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\202\001The value of the variable to substitute in the localized text in place of the given variable.  Can itself be a localization token.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\202\001The value of the variable to substitute in the localized text in place of the given variable.  Can itself be a localization token.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -63,8 +64,8 @@ _CGAMENOTIFICATIONS_VARIABLE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=76,
-  serialized_end=428,
+  serialized_start=102,
+  serialized_end=454,
 )
 
 
@@ -74,28 +75,29 @@ _CGAMENOTIFICATIONS_LOCALIZEDTEXT = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='token', full_name='CGameNotifications_LocalizedText.token', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\0305A localization token that maps to the desired string.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\0305A localization token that maps to the desired string.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='variables', full_name='CGameNotifications_LocalizedText.variables', index=1,
       number=2, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030XA list of variables values to substitute in any variables found in the localized string.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030XA list of variables values to substitute in any variables found in the localized string.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='rendered_text', full_name='CGameNotifications_LocalizedText.rendered_text', index=2,
       number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030kText rendered in the requested language, complete with variable substitutions, if a language was specified.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030kText rendered in the requested language, complete with variable substitutions, if a language was specified.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -108,8 +110,8 @@ _CGAMENOTIFICATIONS_LOCALIZEDTEXT = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=431,
-  serialized_end=820,
+  serialized_start=457,
+  serialized_end=846,
 )
 
 
@@ -119,6 +121,7 @@ _CGAMENOTIFICATIONS_USERSTATUS = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CGameNotifications_UserStatus.steamid', index=0,
@@ -126,28 +129,28 @@ _CGAMENOTIFICATIONS_USERSTATUS = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\034The specific user\'s steamid.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\034The specific user\'s steamid.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='state', full_name='CGameNotifications_UserStatus.state', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\217\001The user\'s state.  ready -- the user is ready to play.  waiting -- The game is waiting on an action from the user. completed, the game is over.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\217\001The user\'s state.  ready -- the user is ready to play.  waiting -- The game is waiting on an action from the user. completed, the game is over.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='title', full_name='CGameNotifications_UserStatus.title', index=2,
       number=3, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030NTitle of the session to display to this user in their list of active sessions.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030NTitle of the session to display to this user in their list of active sessions.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='message', full_name='CGameNotifications_UserStatus.message', index=3,
       number=4, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030ZSubtitle of the session to display to this user user within their list of active sessions.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030ZSubtitle of the session to display to this user user within their list of active sessions.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -160,8 +163,8 @@ _CGAMENOTIFICATIONS_USERSTATUS = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=823,
-  serialized_end=1356,
+  serialized_start=849,
+  serialized_end=1382,
 )
 
 
@@ -171,6 +174,7 @@ _CGAMENOTIFICATIONS_CREATESESSION_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CGameNotifications_CreateSession_Request.appid', index=0,
@@ -178,35 +182,35 @@ _CGAMENOTIFICATIONS_CREATESESSION_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030$The appid to create the session for.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030$The appid to create the session for.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='context', full_name='CGameNotifications_CreateSession_Request.context', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030jGame-specified context value the game can used to associate the session with some object on their backend.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030jGame-specified context value the game can used to associate the session with some object on their backend.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='title', full_name='CGameNotifications_CreateSession_Request.title', index=2,
       number=3, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030MThe title of the session to be displayed within each user\'s list of sessions.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030MThe title of the session to be displayed within each user\'s list of sessions.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='users', full_name='CGameNotifications_CreateSession_Request.users', index=3,
       number=4, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030.The initial state of all users in the session.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030.The initial state of all users in the session.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CGameNotifications_CreateSession_Request.steamid', index=4,
       number=5, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\254\001(Optional) steamid to make the request on behalf of -- if specified, the user must be in the session and all users being added to the session must be friends with the user.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\254\001(Optional) steamid to make the request on behalf of -- if specified, the user must be in the session and all users being added to the session must be friends with the user.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -219,8 +223,8 @@ _CGAMENOTIFICATIONS_CREATESESSION_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1359,
-  serialized_end=2018,
+  serialized_start=1385,
+  serialized_end=2044,
 )
 
 
@@ -230,6 +234,7 @@ _CGAMENOTIFICATIONS_CREATESESSION_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='sessionid', full_name='CGameNotifications_CreateSession_Response.sessionid', index=0,
@@ -237,7 +242,7 @@ _CGAMENOTIFICATIONS_CREATESESSION_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030%The sessionid of the created session.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030%The sessionid of the created session.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -250,8 +255,8 @@ _CGAMENOTIFICATIONS_CREATESESSION_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=2020,
-  serialized_end=2125,
+  serialized_start=2046,
+  serialized_end=2151,
 )
 
 
@@ -261,6 +266,7 @@ _CGAMENOTIFICATIONS_DELETESESSION_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='sessionid', full_name='CGameNotifications_DeleteSession_Request.sessionid', index=0,
@@ -268,21 +274,21 @@ _CGAMENOTIFICATIONS_DELETESESSION_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\030The sessionid to delete.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\030The sessionid to delete.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='appid', full_name='CGameNotifications_DeleteSession_Request.appid', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030#The appid of the session to delete.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030#The appid of the session to delete.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CGameNotifications_DeleteSession_Request.steamid', index=2,
       number=3, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030e(Optional) steamid to make the request on behalf of -- if specified, the user must be in the session.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030e(Optional) steamid to make the request on behalf of -- if specified, the user must be in the session.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -295,8 +301,8 @@ _CGAMENOTIFICATIONS_DELETESESSION_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=2128,
-  serialized_end=2399,
+  serialized_start=2154,
+  serialized_end=2425,
 )
 
 
@@ -306,6 +312,7 @@ _CGAMENOTIFICATIONS_DELETESESSION_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -319,8 +326,8 @@ _CGAMENOTIFICATIONS_DELETESESSION_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=2401,
-  serialized_end=2444,
+  serialized_start=2427,
+  serialized_end=2470,
 )
 
 
@@ -330,6 +337,7 @@ _CGAMENOTIFICATIONS_UPDATESESSION_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='sessionid', full_name='CGameNotifications_UpdateSession_Request.sessionid', index=0,
@@ -337,35 +345,35 @@ _CGAMENOTIFICATIONS_UPDATESESSION_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\030The sessionid to update.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\030The sessionid to update.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='appid', full_name='CGameNotifications_UpdateSession_Request.appid', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030#The appid of the session to update.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030#The appid of the session to update.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='title', full_name='CGameNotifications_UpdateSession_Request.title', index=2,
       number=3, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030Z(Optional) The new title of the session.  If not specified, the title will not be changed.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030Z(Optional) The new title of the session.  If not specified, the title will not be changed.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='users', full_name='CGameNotifications_UpdateSession_Request.users', index=3,
       number=4, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\231\001(Optional) A list of users whose state will be updated to reflect the given state. If the users are not already in the session, they will be added to it.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\231\001(Optional) A list of users whose state will be updated to reflect the given state. If the users are not already in the session, they will be added to it.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CGameNotifications_UpdateSession_Request.steamid', index=4,
       number=6, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\254\001(Optional) steamid to make the request on behalf of -- if specified, the user must be in the session and all users being added to the session must be friends with the user.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\254\001(Optional) steamid to make the request on behalf of -- if specified, the user must be in the session and all users being added to the session must be friends with the user.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -378,8 +386,8 @@ _CGAMENOTIFICATIONS_UPDATESESSION_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=2447,
-  serialized_end=3148,
+  serialized_start=2473,
+  serialized_end=3174,
 )
 
 
@@ -389,6 +397,7 @@ _CGAMENOTIFICATIONS_UPDATESESSION_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -402,8 +411,8 @@ _CGAMENOTIFICATIONS_UPDATESESSION_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=3150,
-  serialized_end=3193,
+  serialized_start=3176,
+  serialized_end=3219,
 )
 
 
@@ -413,6 +422,7 @@ _CGAMENOTIFICATIONS_ENUMERATESESSIONS_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CGameNotifications_EnumerateSessions_Request.appid', index=0,
@@ -420,28 +430,28 @@ _CGAMENOTIFICATIONS_ENUMERATESESSIONS_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030kThe sessionid to request details for. Optional. If not specified, all the user\'s sessions will be returned.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030kThe sessionid to request details for. Optional. If not specified, all the user\'s sessions will be returned.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='include_all_user_messages', full_name='CGameNotifications_EnumerateSessions_Request.include_all_user_messages', index=1,
       number=3, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030g(Optional) Boolean determining whether the message for all users should be included. Defaults to false.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030g(Optional) Boolean determining whether the message for all users should be included. Defaults to false.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='include_auth_user_message', full_name='CGameNotifications_EnumerateSessions_Request.include_auth_user_message', index=2,
       number=4, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030t(Optional) Boolean determining whether the message for the authenticated user should be included. Defaults to false.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030t(Optional) Boolean determining whether the message for the authenticated user should be included. Defaults to false.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='language', full_name='CGameNotifications_EnumerateSessions_Request.language', index=3,
       number=5, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030,(Optional) Language to localize the text in.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030,(Optional) Language to localize the text in.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -454,8 +464,8 @@ _CGAMENOTIFICATIONS_ENUMERATESESSIONS_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=3196,
-  serialized_end=3741,
+  serialized_start=3222,
+  serialized_end=3767,
 )
 
 
@@ -465,6 +475,7 @@ _CGAMENOTIFICATIONS_SESSION = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='sessionid', full_name='CGameNotifications_Session.sessionid', index=0,
@@ -472,49 +483,49 @@ _CGAMENOTIFICATIONS_SESSION = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\037The sessionid for this session.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\037The sessionid for this session.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='appid', full_name='CGameNotifications_Session.appid', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\032The appid for the session.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\032The appid for the session.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='context', full_name='CGameNotifications_Session.context', index=2,
       number=3, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030jGame-specified context value the game can used to associate the session with some object on their backend.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030jGame-specified context value the game can used to associate the session with some object on their backend.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='title', full_name='CGameNotifications_Session.title', index=3,
       number=4, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\"The current title for the session.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\"The current title for the session.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='time_created', full_name='CGameNotifications_Session.time_created', index=4,
       number=5, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030!The time the session was created.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030!The time the session was created.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='time_updated', full_name='CGameNotifications_Session.time_updated', index=5,
       number=6, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030&The last time the session was updated.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030&The last time the session was updated.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='user_status', full_name='CGameNotifications_Session.user_status', index=6,
       number=7, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030+The status of all the users in the session.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030+The status of all the users in the session.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -527,8 +538,8 @@ _CGAMENOTIFICATIONS_SESSION = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=3744,
-  serialized_end=4323,
+  serialized_start=3770,
+  serialized_end=4349,
 )
 
 
@@ -538,6 +549,7 @@ _CGAMENOTIFICATIONS_ENUMERATESESSIONS_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='sessions', full_name='CGameNotifications_EnumerateSessions_Response.sessions', index=0,
@@ -545,7 +557,7 @@ _CGAMENOTIFICATIONS_ENUMERATESESSIONS_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\036A list of the user\'s sessions.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\036A list of the user\'s sessions.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -558,8 +570,8 @@ _CGAMENOTIFICATIONS_ENUMERATESESSIONS_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=4326,
-  serialized_end=4456,
+  serialized_start=4352,
+  serialized_end=4482,
 )
 
 
@@ -569,6 +581,7 @@ _CGAMENOTIFICATIONS_GETSESSIONDETAILS_REQUEST_REQUESTEDSESSION = _descriptor.Des
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='sessionid', full_name='CGameNotifications_GetSessionDetails_Request.RequestedSession.sessionid', index=0,
@@ -576,14 +589,14 @@ _CGAMENOTIFICATIONS_GETSESSIONDETAILS_REQUEST_REQUESTEDSESSION = _descriptor.Des
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030!The sessionid to get details for.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030!The sessionid to get details for.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='include_auth_user_message', full_name='CGameNotifications_GetSessionDetails_Request.RequestedSession.include_auth_user_message', index=1,
       number=3, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030t(Optional) Boolean determining whether the message for the authenticated user should be included. Defaults to false.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030t(Optional) Boolean determining whether the message for the authenticated user should be included. Defaults to false.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -596,8 +609,8 @@ _CGAMENOTIFICATIONS_GETSESSIONDETAILS_REQUEST_REQUESTEDSESSION = _descriptor.Des
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=4695,
-  serialized_end=4929,
+  serialized_start=4721,
+  serialized_end=4955,
 )
 
 _CGAMENOTIFICATIONS_GETSESSIONDETAILS_REQUEST = _descriptor.Descriptor(
@@ -606,6 +619,7 @@ _CGAMENOTIFICATIONS_GETSESSIONDETAILS_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='sessions', full_name='CGameNotifications_GetSessionDetails_Request.sessions', index=0,
@@ -613,21 +627,21 @@ _CGAMENOTIFICATIONS_GETSESSIONDETAILS_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='appid', full_name='CGameNotifications_GetSessionDetails_Request.appid', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\033The appid for the sessions.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\033The appid for the sessions.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='language', full_name='CGameNotifications_GetSessionDetails_Request.language', index=2,
       number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030!Language to localize the text in.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030!Language to localize the text in.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -640,8 +654,8 @@ _CGAMENOTIFICATIONS_GETSESSIONDETAILS_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=4459,
-  serialized_end=4929,
+  serialized_start=4485,
+  serialized_end=4955,
 )
 
 
@@ -651,6 +665,7 @@ _CGAMENOTIFICATIONS_GETSESSIONDETAILS_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='sessions', full_name='CGameNotifications_GetSessionDetails_Response.sessions', index=0,
@@ -658,7 +673,7 @@ _CGAMENOTIFICATIONS_GETSESSIONDETAILS_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\033The details of the session.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\033The details of the session.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -671,8 +686,8 @@ _CGAMENOTIFICATIONS_GETSESSIONDETAILS_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=4931,
-  serialized_end=5058,
+  serialized_start=4957,
+  serialized_end=5084,
 )
 
 
@@ -682,6 +697,7 @@ _GAMENOTIFICATIONSETTINGS = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='GameNotificationSettings.appid', index=0,
@@ -689,14 +705,14 @@ _GAMENOTIFICATIONSETTINGS = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030$The appid to create the session for.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030$The appid to create the session for.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='allow_notifications', full_name='GameNotificationSettings.allow_notifications', index=1,
       number=2, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\0302Whether the user allows notification for this app.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\0302Whether the user allows notification for this app.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -709,8 +725,8 @@ _GAMENOTIFICATIONSETTINGS = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=5061,
-  serialized_end=5229,
+  serialized_start=5087,
+  serialized_end=5255,
 )
 
 
@@ -720,6 +736,7 @@ _CGAMENOTIFICATIONS_UPDATENOTIFICATIONSETTINGS_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='game_notification_settings', full_name='CGameNotifications_UpdateNotificationSettings_Request.game_notification_settings', index=0,
@@ -727,7 +744,7 @@ _CGAMENOTIFICATIONS_UPDATENOTIFICATIONSETTINGS_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -740,8 +757,8 @@ _CGAMENOTIFICATIONS_UPDATENOTIFICATIONSETTINGS_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=5231,
-  serialized_end=5349,
+  serialized_start=5257,
+  serialized_end=5375,
 )
 
 
@@ -751,6 +768,7 @@ _CGAMENOTIFICATIONS_UPDATENOTIFICATIONSETTINGS_RESPONSE = _descriptor.Descriptor
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -764,8 +782,8 @@ _CGAMENOTIFICATIONS_UPDATENOTIFICATIONSETTINGS_RESPONSE = _descriptor.Descriptor
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=5351,
-  serialized_end=5407,
+  serialized_start=5377,
+  serialized_end=5433,
 )
 
 
@@ -775,6 +793,7 @@ _CGAMENOTIFICATIONS_ONNOTIFICATIONSREQUESTED_NOTIFICATION = _descriptor.Descript
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CGameNotifications_OnNotificationsRequested_Notification.steamid', index=0,
@@ -782,14 +801,14 @@ _CGAMENOTIFICATIONS_ONNOTIFICATIONSREQUESTED_NOTIFICATION = _descriptor.Descript
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\0309steamid of the user who notifications were requested for.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\0309steamid of the user who notifications were requested for.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='appid', full_name='CGameNotifications_OnNotificationsRequested_Notification.appid', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\'The appid that requested notifications.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\'The appid that requested notifications.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -802,8 +821,8 @@ _CGAMENOTIFICATIONS_ONNOTIFICATIONSREQUESTED_NOTIFICATION = _descriptor.Descript
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=5410,
-  serialized_end=5608,
+  serialized_start=5436,
+  serialized_end=5634,
 )
 
 
@@ -813,6 +832,7 @@ _CGAMENOTIFICATIONS_ONUSERSTATUSCHANGED_NOTIFICATION = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CGameNotifications_OnUserStatusChanged_Notification.steamid', index=0,
@@ -820,35 +840,35 @@ _CGAMENOTIFICATIONS_ONUSERSTATUSCHANGED_NOTIFICATION = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030)steamid of the user whose status changed.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030)steamid of the user whose status changed.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='sessionid', full_name='CGameNotifications_OnUserStatusChanged_Notification.sessionid', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030AThe sessionid of the session where the user\'s status was changed.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030AThe sessionid of the session where the user\'s status was changed.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='appid', full_name='CGameNotifications_OnUserStatusChanged_Notification.appid', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\0309The appid of the session where the user\'s status changed.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\0309The appid of the session where the user\'s status changed.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='status', full_name='CGameNotifications_OnUserStatusChanged_Notification.status', index=3,
       number=4, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\"(Optional) New status of the user.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\"(Optional) New status of the user.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='removed', full_name='CGameNotifications_OnUserStatusChanged_Notification.removed', index=4,
       number=5, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\0302(Optional) User has been removed from the session.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\0302(Optional) User has been removed from the session.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -861,8 +881,8 @@ _CGAMENOTIFICATIONS_ONUSERSTATUSCHANGED_NOTIFICATION = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=5611,
-  serialized_end=6057,
+  serialized_start=5637,
+  serialized_end=6083,
 )
 
 _CGAMENOTIFICATIONS_LOCALIZEDTEXT.fields_by_name['variables'].message_type = _CGAMENOTIFICATIONS_VARIABLE
@@ -901,145 +921,145 @@ DESCRIPTOR.message_types_by_name['CGameNotifications_OnNotificationsRequested_No
 DESCRIPTOR.message_types_by_name['CGameNotifications_OnUserStatusChanged_Notification'] = _CGAMENOTIFICATIONS_ONUSERSTATUSCHANGED_NOTIFICATION
 _sym_db.RegisterFileDescriptor(DESCRIPTOR)
 
-CGameNotifications_Variable = _reflection.GeneratedProtocolMessageType('CGameNotifications_Variable', (_message.Message,), dict(
-  DESCRIPTOR = _CGAMENOTIFICATIONS_VARIABLE,
-  __module__ = 'steammessages_gamenotifications_pb2'
+CGameNotifications_Variable = _reflection.GeneratedProtocolMessageType('CGameNotifications_Variable', (_message.Message,), {
+  'DESCRIPTOR' : _CGAMENOTIFICATIONS_VARIABLE,
+  '__module__' : 'steammessages_gamenotifications_pb2'
   # @@protoc_insertion_point(class_scope:CGameNotifications_Variable)
-  ))
+  })
 _sym_db.RegisterMessage(CGameNotifications_Variable)
 
-CGameNotifications_LocalizedText = _reflection.GeneratedProtocolMessageType('CGameNotifications_LocalizedText', (_message.Message,), dict(
-  DESCRIPTOR = _CGAMENOTIFICATIONS_LOCALIZEDTEXT,
-  __module__ = 'steammessages_gamenotifications_pb2'
+CGameNotifications_LocalizedText = _reflection.GeneratedProtocolMessageType('CGameNotifications_LocalizedText', (_message.Message,), {
+  'DESCRIPTOR' : _CGAMENOTIFICATIONS_LOCALIZEDTEXT,
+  '__module__' : 'steammessages_gamenotifications_pb2'
   # @@protoc_insertion_point(class_scope:CGameNotifications_LocalizedText)
-  ))
+  })
 _sym_db.RegisterMessage(CGameNotifications_LocalizedText)
 
-CGameNotifications_UserStatus = _reflection.GeneratedProtocolMessageType('CGameNotifications_UserStatus', (_message.Message,), dict(
-  DESCRIPTOR = _CGAMENOTIFICATIONS_USERSTATUS,
-  __module__ = 'steammessages_gamenotifications_pb2'
+CGameNotifications_UserStatus = _reflection.GeneratedProtocolMessageType('CGameNotifications_UserStatus', (_message.Message,), {
+  'DESCRIPTOR' : _CGAMENOTIFICATIONS_USERSTATUS,
+  '__module__' : 'steammessages_gamenotifications_pb2'
   # @@protoc_insertion_point(class_scope:CGameNotifications_UserStatus)
-  ))
+  })
 _sym_db.RegisterMessage(CGameNotifications_UserStatus)
 
-CGameNotifications_CreateSession_Request = _reflection.GeneratedProtocolMessageType('CGameNotifications_CreateSession_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CGAMENOTIFICATIONS_CREATESESSION_REQUEST,
-  __module__ = 'steammessages_gamenotifications_pb2'
+CGameNotifications_CreateSession_Request = _reflection.GeneratedProtocolMessageType('CGameNotifications_CreateSession_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CGAMENOTIFICATIONS_CREATESESSION_REQUEST,
+  '__module__' : 'steammessages_gamenotifications_pb2'
   # @@protoc_insertion_point(class_scope:CGameNotifications_CreateSession_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CGameNotifications_CreateSession_Request)
 
-CGameNotifications_CreateSession_Response = _reflection.GeneratedProtocolMessageType('CGameNotifications_CreateSession_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CGAMENOTIFICATIONS_CREATESESSION_RESPONSE,
-  __module__ = 'steammessages_gamenotifications_pb2'
+CGameNotifications_CreateSession_Response = _reflection.GeneratedProtocolMessageType('CGameNotifications_CreateSession_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CGAMENOTIFICATIONS_CREATESESSION_RESPONSE,
+  '__module__' : 'steammessages_gamenotifications_pb2'
   # @@protoc_insertion_point(class_scope:CGameNotifications_CreateSession_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CGameNotifications_CreateSession_Response)
 
-CGameNotifications_DeleteSession_Request = _reflection.GeneratedProtocolMessageType('CGameNotifications_DeleteSession_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CGAMENOTIFICATIONS_DELETESESSION_REQUEST,
-  __module__ = 'steammessages_gamenotifications_pb2'
+CGameNotifications_DeleteSession_Request = _reflection.GeneratedProtocolMessageType('CGameNotifications_DeleteSession_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CGAMENOTIFICATIONS_DELETESESSION_REQUEST,
+  '__module__' : 'steammessages_gamenotifications_pb2'
   # @@protoc_insertion_point(class_scope:CGameNotifications_DeleteSession_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CGameNotifications_DeleteSession_Request)
 
-CGameNotifications_DeleteSession_Response = _reflection.GeneratedProtocolMessageType('CGameNotifications_DeleteSession_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CGAMENOTIFICATIONS_DELETESESSION_RESPONSE,
-  __module__ = 'steammessages_gamenotifications_pb2'
+CGameNotifications_DeleteSession_Response = _reflection.GeneratedProtocolMessageType('CGameNotifications_DeleteSession_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CGAMENOTIFICATIONS_DELETESESSION_RESPONSE,
+  '__module__' : 'steammessages_gamenotifications_pb2'
   # @@protoc_insertion_point(class_scope:CGameNotifications_DeleteSession_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CGameNotifications_DeleteSession_Response)
 
-CGameNotifications_UpdateSession_Request = _reflection.GeneratedProtocolMessageType('CGameNotifications_UpdateSession_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CGAMENOTIFICATIONS_UPDATESESSION_REQUEST,
-  __module__ = 'steammessages_gamenotifications_pb2'
+CGameNotifications_UpdateSession_Request = _reflection.GeneratedProtocolMessageType('CGameNotifications_UpdateSession_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CGAMENOTIFICATIONS_UPDATESESSION_REQUEST,
+  '__module__' : 'steammessages_gamenotifications_pb2'
   # @@protoc_insertion_point(class_scope:CGameNotifications_UpdateSession_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CGameNotifications_UpdateSession_Request)
 
-CGameNotifications_UpdateSession_Response = _reflection.GeneratedProtocolMessageType('CGameNotifications_UpdateSession_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CGAMENOTIFICATIONS_UPDATESESSION_RESPONSE,
-  __module__ = 'steammessages_gamenotifications_pb2'
+CGameNotifications_UpdateSession_Response = _reflection.GeneratedProtocolMessageType('CGameNotifications_UpdateSession_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CGAMENOTIFICATIONS_UPDATESESSION_RESPONSE,
+  '__module__' : 'steammessages_gamenotifications_pb2'
   # @@protoc_insertion_point(class_scope:CGameNotifications_UpdateSession_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CGameNotifications_UpdateSession_Response)
 
-CGameNotifications_EnumerateSessions_Request = _reflection.GeneratedProtocolMessageType('CGameNotifications_EnumerateSessions_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CGAMENOTIFICATIONS_ENUMERATESESSIONS_REQUEST,
-  __module__ = 'steammessages_gamenotifications_pb2'
+CGameNotifications_EnumerateSessions_Request = _reflection.GeneratedProtocolMessageType('CGameNotifications_EnumerateSessions_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CGAMENOTIFICATIONS_ENUMERATESESSIONS_REQUEST,
+  '__module__' : 'steammessages_gamenotifications_pb2'
   # @@protoc_insertion_point(class_scope:CGameNotifications_EnumerateSessions_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CGameNotifications_EnumerateSessions_Request)
 
-CGameNotifications_Session = _reflection.GeneratedProtocolMessageType('CGameNotifications_Session', (_message.Message,), dict(
-  DESCRIPTOR = _CGAMENOTIFICATIONS_SESSION,
-  __module__ = 'steammessages_gamenotifications_pb2'
+CGameNotifications_Session = _reflection.GeneratedProtocolMessageType('CGameNotifications_Session', (_message.Message,), {
+  'DESCRIPTOR' : _CGAMENOTIFICATIONS_SESSION,
+  '__module__' : 'steammessages_gamenotifications_pb2'
   # @@protoc_insertion_point(class_scope:CGameNotifications_Session)
-  ))
+  })
 _sym_db.RegisterMessage(CGameNotifications_Session)
 
-CGameNotifications_EnumerateSessions_Response = _reflection.GeneratedProtocolMessageType('CGameNotifications_EnumerateSessions_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CGAMENOTIFICATIONS_ENUMERATESESSIONS_RESPONSE,
-  __module__ = 'steammessages_gamenotifications_pb2'
+CGameNotifications_EnumerateSessions_Response = _reflection.GeneratedProtocolMessageType('CGameNotifications_EnumerateSessions_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CGAMENOTIFICATIONS_ENUMERATESESSIONS_RESPONSE,
+  '__module__' : 'steammessages_gamenotifications_pb2'
   # @@protoc_insertion_point(class_scope:CGameNotifications_EnumerateSessions_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CGameNotifications_EnumerateSessions_Response)
 
-CGameNotifications_GetSessionDetails_Request = _reflection.GeneratedProtocolMessageType('CGameNotifications_GetSessionDetails_Request', (_message.Message,), dict(
+CGameNotifications_GetSessionDetails_Request = _reflection.GeneratedProtocolMessageType('CGameNotifications_GetSessionDetails_Request', (_message.Message,), {
 
-  RequestedSession = _reflection.GeneratedProtocolMessageType('RequestedSession', (_message.Message,), dict(
-    DESCRIPTOR = _CGAMENOTIFICATIONS_GETSESSIONDETAILS_REQUEST_REQUESTEDSESSION,
-    __module__ = 'steammessages_gamenotifications_pb2'
+  'RequestedSession' : _reflection.GeneratedProtocolMessageType('RequestedSession', (_message.Message,), {
+    'DESCRIPTOR' : _CGAMENOTIFICATIONS_GETSESSIONDETAILS_REQUEST_REQUESTEDSESSION,
+    '__module__' : 'steammessages_gamenotifications_pb2'
     # @@protoc_insertion_point(class_scope:CGameNotifications_GetSessionDetails_Request.RequestedSession)
-    ))
+    })
   ,
-  DESCRIPTOR = _CGAMENOTIFICATIONS_GETSESSIONDETAILS_REQUEST,
-  __module__ = 'steammessages_gamenotifications_pb2'
+  'DESCRIPTOR' : _CGAMENOTIFICATIONS_GETSESSIONDETAILS_REQUEST,
+  '__module__' : 'steammessages_gamenotifications_pb2'
   # @@protoc_insertion_point(class_scope:CGameNotifications_GetSessionDetails_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CGameNotifications_GetSessionDetails_Request)
 _sym_db.RegisterMessage(CGameNotifications_GetSessionDetails_Request.RequestedSession)
 
-CGameNotifications_GetSessionDetails_Response = _reflection.GeneratedProtocolMessageType('CGameNotifications_GetSessionDetails_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CGAMENOTIFICATIONS_GETSESSIONDETAILS_RESPONSE,
-  __module__ = 'steammessages_gamenotifications_pb2'
+CGameNotifications_GetSessionDetails_Response = _reflection.GeneratedProtocolMessageType('CGameNotifications_GetSessionDetails_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CGAMENOTIFICATIONS_GETSESSIONDETAILS_RESPONSE,
+  '__module__' : 'steammessages_gamenotifications_pb2'
   # @@protoc_insertion_point(class_scope:CGameNotifications_GetSessionDetails_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CGameNotifications_GetSessionDetails_Response)
 
-GameNotificationSettings = _reflection.GeneratedProtocolMessageType('GameNotificationSettings', (_message.Message,), dict(
-  DESCRIPTOR = _GAMENOTIFICATIONSETTINGS,
-  __module__ = 'steammessages_gamenotifications_pb2'
+GameNotificationSettings = _reflection.GeneratedProtocolMessageType('GameNotificationSettings', (_message.Message,), {
+  'DESCRIPTOR' : _GAMENOTIFICATIONSETTINGS,
+  '__module__' : 'steammessages_gamenotifications_pb2'
   # @@protoc_insertion_point(class_scope:GameNotificationSettings)
-  ))
+  })
 _sym_db.RegisterMessage(GameNotificationSettings)
 
-CGameNotifications_UpdateNotificationSettings_Request = _reflection.GeneratedProtocolMessageType('CGameNotifications_UpdateNotificationSettings_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CGAMENOTIFICATIONS_UPDATENOTIFICATIONSETTINGS_REQUEST,
-  __module__ = 'steammessages_gamenotifications_pb2'
+CGameNotifications_UpdateNotificationSettings_Request = _reflection.GeneratedProtocolMessageType('CGameNotifications_UpdateNotificationSettings_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CGAMENOTIFICATIONS_UPDATENOTIFICATIONSETTINGS_REQUEST,
+  '__module__' : 'steammessages_gamenotifications_pb2'
   # @@protoc_insertion_point(class_scope:CGameNotifications_UpdateNotificationSettings_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CGameNotifications_UpdateNotificationSettings_Request)
 
-CGameNotifications_UpdateNotificationSettings_Response = _reflection.GeneratedProtocolMessageType('CGameNotifications_UpdateNotificationSettings_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CGAMENOTIFICATIONS_UPDATENOTIFICATIONSETTINGS_RESPONSE,
-  __module__ = 'steammessages_gamenotifications_pb2'
+CGameNotifications_UpdateNotificationSettings_Response = _reflection.GeneratedProtocolMessageType('CGameNotifications_UpdateNotificationSettings_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CGAMENOTIFICATIONS_UPDATENOTIFICATIONSETTINGS_RESPONSE,
+  '__module__' : 'steammessages_gamenotifications_pb2'
   # @@protoc_insertion_point(class_scope:CGameNotifications_UpdateNotificationSettings_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CGameNotifications_UpdateNotificationSettings_Response)
 
-CGameNotifications_OnNotificationsRequested_Notification = _reflection.GeneratedProtocolMessageType('CGameNotifications_OnNotificationsRequested_Notification', (_message.Message,), dict(
-  DESCRIPTOR = _CGAMENOTIFICATIONS_ONNOTIFICATIONSREQUESTED_NOTIFICATION,
-  __module__ = 'steammessages_gamenotifications_pb2'
+CGameNotifications_OnNotificationsRequested_Notification = _reflection.GeneratedProtocolMessageType('CGameNotifications_OnNotificationsRequested_Notification', (_message.Message,), {
+  'DESCRIPTOR' : _CGAMENOTIFICATIONS_ONNOTIFICATIONSREQUESTED_NOTIFICATION,
+  '__module__' : 'steammessages_gamenotifications_pb2'
   # @@protoc_insertion_point(class_scope:CGameNotifications_OnNotificationsRequested_Notification)
-  ))
+  })
 _sym_db.RegisterMessage(CGameNotifications_OnNotificationsRequested_Notification)
 
-CGameNotifications_OnUserStatusChanged_Notification = _reflection.GeneratedProtocolMessageType('CGameNotifications_OnUserStatusChanged_Notification', (_message.Message,), dict(
-  DESCRIPTOR = _CGAMENOTIFICATIONS_ONUSERSTATUSCHANGED_NOTIFICATION,
-  __module__ = 'steammessages_gamenotifications_pb2'
+CGameNotifications_OnUserStatusChanged_Notification = _reflection.GeneratedProtocolMessageType('CGameNotifications_OnUserStatusChanged_Notification', (_message.Message,), {
+  'DESCRIPTOR' : _CGAMENOTIFICATIONS_ONUSERSTATUSCHANGED_NOTIFICATION,
+  '__module__' : 'steammessages_gamenotifications_pb2'
   # @@protoc_insertion_point(class_scope:CGameNotifications_OnUserStatusChanged_Notification)
-  ))
+  })
 _sym_db.RegisterMessage(CGameNotifications_OnUserStatusChanged_Notification)
 
 
@@ -1099,9 +1119,10 @@ _GAMENOTIFICATIONS = _descriptor.ServiceDescriptor(
   full_name='GameNotifications',
   file=DESCRIPTOR,
   index=0,
-  serialized_options=_b('\202\265\030LA service for functions related to the asyncronous game notification server.'),
-  serialized_start=6060,
-  serialized_end=7122,
+  serialized_options=b'\202\265\030LA service for functions related to the asyncronous game notification server.',
+  create_key=_descriptor._internal_create_key,
+  serialized_start=6086,
+  serialized_end=7148,
   methods=[
   _descriptor.MethodDescriptor(
     name='UserCreateSession',
@@ -1110,7 +1131,8 @@ _GAMENOTIFICATIONS = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CGAMENOTIFICATIONS_CREATESESSION_REQUEST,
     output_type=_CGAMENOTIFICATIONS_CREATESESSION_RESPONSE,
-    serialized_options=_b('\202\265\030\035Creates an async game session'),
+    serialized_options=b'\202\265\030\035Creates an async game session',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='UserDeleteSession',
@@ -1119,7 +1141,8 @@ _GAMENOTIFICATIONS = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CGAMENOTIFICATIONS_DELETESESSION_REQUEST,
     output_type=_CGAMENOTIFICATIONS_DELETESESSION_RESPONSE,
-    serialized_options=_b('\202\265\030\035Deletes an async game session'),
+    serialized_options=b'\202\265\030\035Deletes an async game session',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='UserUpdateSession',
@@ -1128,7 +1151,8 @@ _GAMENOTIFICATIONS = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CGAMENOTIFICATIONS_UPDATESESSION_REQUEST,
     output_type=_CGAMENOTIFICATIONS_UPDATESESSION_RESPONSE,
-    serialized_options=_b('\202\265\030\035Updates an async game session'),
+    serialized_options=b'\202\265\030\035Updates an async game session',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='EnumerateSessions',
@@ -1137,7 +1161,8 @@ _GAMENOTIFICATIONS = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CGAMENOTIFICATIONS_ENUMERATESESSIONS_REQUEST,
     output_type=_CGAMENOTIFICATIONS_ENUMERATESESSIONS_RESPONSE,
-    serialized_options=_b('\202\265\030\034Enumerates a user\'s sessions'),
+    serialized_options=b'\202\265\030\034Enumerates a user\'s sessions',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetSessionDetails',
@@ -1146,7 +1171,8 @@ _GAMENOTIFICATIONS = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CGAMENOTIFICATIONS_GETSESSIONDETAILS_REQUEST,
     output_type=_CGAMENOTIFICATIONS_GETSESSIONDETAILS_RESPONSE,
-    serialized_options=_b('\202\265\030&Get the details for a specific session'),
+    serialized_options=b'\202\265\030&Get the details for a specific session',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='UpdateNotificationSettings',
@@ -1155,7 +1181,8 @@ _GAMENOTIFICATIONS = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CGAMENOTIFICATIONS_UPDATENOTIFICATIONSETTINGS_REQUEST,
     output_type=_CGAMENOTIFICATIONS_UPDATENOTIFICATIONSETTINGS_RESPONSE,
-    serialized_options=_b('\202\265\030CUpdates whether a user allows game notifications for a specific app'),
+    serialized_options=b'\202\265\030CUpdates whether a user allows game notifications for a specific app',
+    create_key=_descriptor._internal_create_key,
   ),
 ])
 _sym_db.RegisterServiceDescriptor(_GAMENOTIFICATIONS)
@@ -1168,9 +1195,10 @@ _GAMENOTIFICATIONSCLIENT = _descriptor.ServiceDescriptor(
   full_name='GameNotificationsClient',
   file=DESCRIPTOR,
   index=1,
-  serialized_options=_b('\202\265\030\024Client notifications\300\265\030\002'),
-  serialized_start=7125,
-  serialized_end=7476,
+  serialized_options=b'\202\265\030\024Client notifications\300\265\030\002',
+  create_key=_descriptor._internal_create_key,
+  serialized_start=7151,
+  serialized_end=7502,
   methods=[
   _descriptor.MethodDescriptor(
     name='OnNotificationsRequested',
@@ -1179,7 +1207,8 @@ _GAMENOTIFICATIONSCLIENT = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CGAMENOTIFICATIONS_ONNOTIFICATIONSREQUESTED_NOTIFICATION,
     output_type=steammessages__unified__base__pb2._NORESPONSE,
-    serialized_options=_b('\202\265\030-Requests that the user opt into notifications'),
+    serialized_options=b'\202\265\030-Requests that the user opt into notifications',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='OnUserStatusChanged',
@@ -1188,7 +1217,8 @@ _GAMENOTIFICATIONSCLIENT = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CGAMENOTIFICATIONS_ONUSERSTATUSCHANGED_NOTIFICATION,
     output_type=steammessages__unified__base__pb2._NORESPONSE,
-    serialized_options=_b('\202\265\030/Notification that the user\'s status has changed'),
+    serialized_options=b'\202\265\030/Notification that the user\'s status has changed',
+    create_key=_descriptor._internal_create_key,
   ),
 ])
 _sym_db.RegisterServiceDescriptor(_GAMENOTIFICATIONSCLIENT)
diff --git a/steam/protobufs/steammessages_gameservers_pb2.py b/steam/protobufs/steammessages_gameservers_pb2.py
index cb42d4d..c40b15e 100644
--- a/steam/protobufs/steammessages_gameservers_pb2.py
+++ b/steam/protobufs/steammessages_gameservers_pb2.py
@@ -1,9 +1,7 @@
 # -*- coding: utf-8 -*-
 # Generated by the protocol buffer compiler.  DO NOT EDIT!
 # source: steammessages_gameservers.proto
-
-import sys
-_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1'))
+"""Generated protocol buffer code."""
 from google.protobuf import descriptor as _descriptor
 from google.protobuf import message as _message
 from google.protobuf import reflection as _reflection
@@ -15,6 +13,7 @@ from google.protobuf import service_reflection
 _sym_db = _symbol_database.Default()
 
 
+import steam.protobufs.steammessages_base_pb2 as steammessages__base__pb2
 import steam.protobufs.steammessages_unified_base_pb2 as steammessages__unified__base__pb2
 
 
@@ -22,12 +21,48 @@ DESCRIPTOR = _descriptor.FileDescriptor(
   name='steammessages_gameservers.proto',
   package='',
   syntax='proto2',
-  serialized_options=_b('\220\001\001'),
-  serialized_pb=_b('\n\x1fsteammessages_gameservers.proto\x1a steammessages_unified_base.proto\"\x9f\x01\n\"CGameServers_GetServerList_Request\x12(\n\x06\x66ilter\x18\x01 \x01(\tB\x18\x82\xb5\x18\x14Query filter string.\x12O\n\x05limit\x18\x02 \x01(\r:\x03\x31\x30\x30\x42;\x82\xb5\x18\x37The maximum number of servers to return in the response\"\xe0\x03\n#CGameServers_GetServerList_Response\x12\x65\n\x07servers\x18\x01 \x03(\x0b\x32+.CGameServers_GetServerList_Response.ServerB\'\x82\xb5\x18#List of servers matching the filter\x1a\xd1\x02\n\x06Server\x12\x30\n\x04\x61\x64\x64r\x18\x01 \x01(\tB\"\x82\xb5\x18\x1eThe server\'s IP and query port\x12\x10\n\x08gameport\x18\x02 \x01(\r\x12\x10\n\x08specport\x18\x03 \x01(\r\x12\x0f\n\x07steamid\x18\x04 \x01(\x06\x12\x0c\n\x04name\x18\x05 \x01(\t\x12\r\n\x05\x61ppid\x18\x06 \x01(\r\x12\x0f\n\x07gamedir\x18\x07 \x01(\t\x12\x0f\n\x07version\x18\x08 \x01(\t\x12\x0f\n\x07product\x18\t \x01(\t\x12\x0e\n\x06region\x18\n \x01(\x05\x12\x0f\n\x07players\x18\x0b \x01(\x05\x12\x13\n\x0bmax_players\x18\x0c \x01(\x05\x12\x0c\n\x04\x62ots\x18\r \x01(\x05\x12\x0b\n\x03map\x18\x0e \x01(\t\x12\x0e\n\x06secure\x18\x0f \x01(\x08\x12\x11\n\tdedicated\x18\x10 \x01(\x08\x12\n\n\x02os\x18\x11 \x01(\t\x12\x10\n\x08gametype\x18\x12 \x01(\t\"@\n*CGameServers_GetServerSteamIDsByIP_Request\x12\x12\n\nserver_ips\x18\x01 \x03(\t\"\x90\x01\n%CGameServers_IPsWithSteamIDs_Response\x12>\n\x07servers\x18\x01 \x03(\x0b\x32-.CGameServers_IPsWithSteamIDs_Response.Server\x1a\'\n\x06Server\x12\x0c\n\x04\x61\x64\x64r\x18\x01 \x01(\t\x12\x0f\n\x07steamid\x18\x02 \x01(\x06\"E\n*CGameServers_GetServerIPsBySteamID_Request\x12\x17\n\x0fserver_steamids\x18\x01 \x03(\x06\x32\xab\x04\n\x0bGameServers\x12\x8c\x01\n\rGetServerList\x12#.CGameServers_GetServerList_Request\x1a$.CGameServers_GetServerList_Response\"0\x82\xb5\x18,Gets a list of servers given a filter string\x12\xa4\x01\n\x15GetServerSteamIDsByIP\x12+.CGameServers_GetServerSteamIDsByIP_Request\x1a&.CGameServers_IPsWithSteamIDs_Response\"6\x82\xb5\x18\x32Gets a list of server SteamIDs given a list of IPs\x12\xad\x01\n\x15GetServerIPsBySteamID\x12+.CGameServers_GetServerIPsBySteamID_Request\x1a&.CGameServers_IPsWithSteamIDs_Response\"?\x82\xb5\x18;Gets a list of server IP addresses given a list of SteamIDs\x1a\x36\x82\xb5\x18\x32\x41 service for searching and managing game servers.B\x03\x90\x01\x01')
+  serialized_options=b'\220\001\001',
+  create_key=_descriptor._internal_create_key,
+  serialized_pb=b'\n\x1fsteammessages_gameservers.proto\x1a\x18steammessages_base.proto\x1a steammessages_unified_base.proto\"\x9f\x01\n\"CGameServers_GetServerList_Request\x12(\n\x06\x66ilter\x18\x01 \x01(\tB\x18\x82\xb5\x18\x14Query filter string.\x12O\n\x05limit\x18\x02 \x01(\r:\x03\x31\x30\x30\x42;\x82\xb5\x18\x37The maximum number of servers to return in the response\"\xe0\x03\n#CGameServers_GetServerList_Response\x12\x65\n\x07servers\x18\x01 \x03(\x0b\x32+.CGameServers_GetServerList_Response.ServerB\'\x82\xb5\x18#List of servers matching the filter\x1a\xd1\x02\n\x06Server\x12\x30\n\x04\x61\x64\x64r\x18\x01 \x01(\tB\"\x82\xb5\x18\x1eThe server\'s IP and query port\x12\x10\n\x08gameport\x18\x02 \x01(\r\x12\x10\n\x08specport\x18\x03 \x01(\r\x12\x0f\n\x07steamid\x18\x04 \x01(\x06\x12\x0c\n\x04name\x18\x05 \x01(\t\x12\r\n\x05\x61ppid\x18\x06 \x01(\r\x12\x0f\n\x07gamedir\x18\x07 \x01(\t\x12\x0f\n\x07version\x18\x08 \x01(\t\x12\x0f\n\x07product\x18\t \x01(\t\x12\x0e\n\x06region\x18\n \x01(\x05\x12\x0f\n\x07players\x18\x0b \x01(\x05\x12\x13\n\x0bmax_players\x18\x0c \x01(\x05\x12\x0c\n\x04\x62ots\x18\r \x01(\x05\x12\x0b\n\x03map\x18\x0e \x01(\t\x12\x0e\n\x06secure\x18\x0f \x01(\x08\x12\x11\n\tdedicated\x18\x10 \x01(\x08\x12\n\n\x02os\x18\x11 \x01(\t\x12\x10\n\x08gametype\x18\x12 \x01(\t\"@\n*CGameServers_GetServerSteamIDsByIP_Request\x12\x12\n\nserver_ips\x18\x01 \x03(\t\"\x90\x01\n%CGameServers_IPsWithSteamIDs_Response\x12>\n\x07servers\x18\x01 \x03(\x0b\x32-.CGameServers_IPsWithSteamIDs_Response.Server\x1a\'\n\x06Server\x12\x0c\n\x04\x61\x64\x64r\x18\x01 \x01(\t\x12\x0f\n\x07steamid\x18\x02 \x01(\x06\"E\n*CGameServers_GetServerIPsBySteamID_Request\x12\x17\n\x0fserver_steamids\x18\x01 \x03(\x06\"\x97\x03\n\"CGameServers_QueryByFakeIP_Request\x12/\n\x07\x66\x61ke_ip\x18\x01 \x01(\rB\x1e\x82\xb5\x18\x1a\x46\x61keIP of server to query.\x12\x34\n\tfake_port\x18\x02 \x01(\rB!\x82\xb5\x18\x1d\x46\x61ke port of server to query.\x12I\n\x06\x61pp_id\x18\x03 \x01(\rB9\x82\xb5\x18\x35\x41ppID to use.  Each AppID has its own FakeIP address.\x12j\n\nquery_type\x18\x04 \x01(\x0e\x32..CGameServers_QueryByFakeIP_Request.EQueryType:\rQuery_InvalidB\x17\x82\xb5\x18\x13What type of query?\"S\n\nEQueryType\x12\x11\n\rQuery_Invalid\x10\x00\x12\x0e\n\nQuery_Ping\x10\x01\x12\x11\n\rQuery_Players\x10\x02\x12\x0f\n\x0bQuery_Rules\x10\x03\"\xd0\x03\n\x1b\x43MsgGameServerPingQueryData\x12!\n\tserver_ip\x18\x01 \x01(\x0b\x32\x0e.CMsgIPAddress\x12\x12\n\nquery_port\x18\x02 \x01(\r\x12\x11\n\tgame_port\x18\x03 \x01(\r\x12\x16\n\x0espectator_port\x18\x04 \x01(\r\x12\x1d\n\x15spectator_server_name\x18\x05 \x01(\t\x12\x13\n\x0bserver_name\x18\x06 \x01(\t\x12\x0f\n\x07steamid\x18\x07 \x01(\x06\x12\x0e\n\x06\x61pp_id\x18\x08 \x01(\r\x12\x0f\n\x07gamedir\x18\t \x01(\t\x12\x0b\n\x03map\x18\n \x01(\t\x12\x18\n\x10game_description\x18\x0b \x01(\t\x12\x10\n\x08gametype\x18\x0c \x01(\t\x12\x13\n\x0bnum_players\x18\r \x01(\r\x12\x13\n\x0bmax_players\x18\x0e \x01(\r\x12\x10\n\x08num_bots\x18\x0f \x01(\r\x12\x10\n\x08password\x18\x10 \x01(\x08\x12\x0e\n\x06secure\x18\x11 \x01(\x08\x12\x11\n\tdedicated\x18\x12 \x01(\x08\x12\x0f\n\x07version\x18\x13 \x01(\t\x12\x11\n\tsdr_popid\x18\x14 \x01(\x07\x12\x1b\n\x13sdr_location_string\x18\x15 \x01(\t\"\x95\x01\n\x1e\x43MsgGameServerPlayersQueryData\x12\x37\n\x07players\x18\x01 \x03(\x0b\x32&.CMsgGameServerPlayersQueryData.Player\x1a:\n\x06Player\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\r\n\x05score\x18\x02 \x01(\r\x12\x13\n\x0btime_played\x18\x03 \x01(\r\"v\n\x1c\x43MsgGameServerRulesQueryData\x12\x31\n\x05rules\x18\x01 \x03(\x0b\x32\".CMsgGameServerRulesQueryData.Rule\x1a#\n\x04Rule\x12\x0c\n\x04rule\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t\"\xc2\x01\n%CGameServers_GameServerQuery_Response\x12/\n\tping_data\x18\x01 \x01(\x0b\x32\x1c.CMsgGameServerPingQueryData\x12\x35\n\x0cplayers_data\x18\x02 \x01(\x0b\x32\x1f.CMsgGameServerPlayersQueryData\x12\x31\n\nrules_data\x18\x03 \x01(\x0b\x32\x1d.CMsgGameServerRulesQueryData\"*\n(GameServerClient_QueryServerData_Request\"\xc6\x01\n)GameServerClient_QueryServerData_Response\x12/\n\tping_data\x18\x01 \x01(\x0b\x32\x1c.CMsgGameServerPingQueryData\x12\x35\n\x0cplayers_data\x18\x02 \x01(\x0b\x32\x1f.CMsgGameServerPlayersQueryData\x12\x31\n\nrules_data\x18\x03 \x01(\x0b\x32\x1d.CMsgGameServerRulesQueryData2\xbe\x05\n\x0bGameServers\x12\x8c\x01\n\rGetServerList\x12#.CGameServers_GetServerList_Request\x1a$.CGameServers_GetServerList_Response\"0\x82\xb5\x18,Gets a list of servers given a filter string\x12\xa4\x01\n\x15GetServerSteamIDsByIP\x12+.CGameServers_GetServerSteamIDsByIP_Request\x1a&.CGameServers_IPsWithSteamIDs_Response\"6\x82\xb5\x18\x32Gets a list of server SteamIDs given a list of IPs\x12\xad\x01\n\x15GetServerIPsBySteamID\x12+.CGameServers_GetServerIPsBySteamID_Request\x1a&.CGameServers_IPsWithSteamIDs_Response\"?\x82\xb5\x18;Gets a list of server IP addresses given a list of SteamIDs\x12\x90\x01\n\rQueryByFakeIP\x12#.CGameServers_QueryByFakeIP_Request\x1a&.CGameServers_GameServerQuery_Response\"2\x82\xb5\x18.Perform a query on a specific server by FakeIP\x1a\x36\x82\xb5\x18\x32\x41 service for searching and managing game servers.2\xe9\x01\n\x10GameServerClient\x12\x97\x01\n\x0fQueryServerData\x12).GameServerClient_QueryServerData_Request\x1a*.GameServerClient_QueryServerData_Response\"-\x82\xb5\x18)Steam is asking a gameserver for its data\x1a;\x82\xb5\x18\x33Service methods exposed by GameServer Steam clients\xc0\xb5\x18\x02\x42\x03\x90\x01\x01'
   ,
-  dependencies=[steammessages__unified__base__pb2.DESCRIPTOR,])
+  dependencies=[steammessages__base__pb2.DESCRIPTOR,steammessages__unified__base__pb2.DESCRIPTOR,])
+
 
 
+_CGAMESERVERS_QUERYBYFAKEIP_REQUEST_EQUERYTYPE = _descriptor.EnumDescriptor(
+  name='EQueryType',
+  full_name='CGameServers_QueryByFakeIP_Request.EQueryType',
+  filename=None,
+  file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
+  values=[
+    _descriptor.EnumValueDescriptor(
+      name='Query_Invalid', index=0, number=0,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='Query_Ping', index=1, number=1,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='Query_Players', index=2, number=2,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='Query_Rules', index=3, number=3,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+  ],
+  containing_type=None,
+  serialized_options=None,
+  serialized_start=1349,
+  serialized_end=1432,
+)
+_sym_db.RegisterEnumDescriptor(_CGAMESERVERS_QUERYBYFAKEIP_REQUEST_EQUERYTYPE)
 
 
 _CGAMESERVERS_GETSERVERLIST_REQUEST = _descriptor.Descriptor(
@@ -36,21 +71,22 @@ _CGAMESERVERS_GETSERVERLIST_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='filter', full_name='CGameServers_GetServerList_Request.filter', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\024Query filter string.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\024Query filter string.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='limit', full_name='CGameServers_GetServerList_Request.limit', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=True, default_value=100,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\0307The maximum number of servers to return in the response'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\0307The maximum number of servers to return in the response', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -63,8 +99,8 @@ _CGAMESERVERS_GETSERVERLIST_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=70,
-  serialized_end=229,
+  serialized_start=96,
+  serialized_end=255,
 )
 
 
@@ -74,133 +110,134 @@ _CGAMESERVERS_GETSERVERLIST_RESPONSE_SERVER = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='addr', full_name='CGameServers_GetServerList_Response.Server.addr', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\036The server\'s IP and query port'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\036The server\'s IP and query port', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='gameport', full_name='CGameServers_GetServerList_Response.Server.gameport', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='specport', full_name='CGameServers_GetServerList_Response.Server.specport', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CGameServers_GetServerList_Response.Server.steamid', index=3,
       number=4, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='name', full_name='CGameServers_GetServerList_Response.Server.name', index=4,
       number=5, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='appid', full_name='CGameServers_GetServerList_Response.Server.appid', index=5,
       number=6, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='gamedir', full_name='CGameServers_GetServerList_Response.Server.gamedir', index=6,
       number=7, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='version', full_name='CGameServers_GetServerList_Response.Server.version', index=7,
       number=8, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='product', full_name='CGameServers_GetServerList_Response.Server.product', index=8,
       number=9, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='region', full_name='CGameServers_GetServerList_Response.Server.region', index=9,
       number=10, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='players', full_name='CGameServers_GetServerList_Response.Server.players', index=10,
       number=11, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='max_players', full_name='CGameServers_GetServerList_Response.Server.max_players', index=11,
       number=12, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='bots', full_name='CGameServers_GetServerList_Response.Server.bots', index=12,
       number=13, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='map', full_name='CGameServers_GetServerList_Response.Server.map', index=13,
       number=14, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='secure', full_name='CGameServers_GetServerList_Response.Server.secure', index=14,
       number=15, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='dedicated', full_name='CGameServers_GetServerList_Response.Server.dedicated', index=15,
       number=16, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='os', full_name='CGameServers_GetServerList_Response.Server.os', index=16,
       number=17, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='gametype', full_name='CGameServers_GetServerList_Response.Server.gametype', index=17,
       number=18, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -213,8 +250,8 @@ _CGAMESERVERS_GETSERVERLIST_RESPONSE_SERVER = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=375,
-  serialized_end=712,
+  serialized_start=401,
+  serialized_end=738,
 )
 
 _CGAMESERVERS_GETSERVERLIST_RESPONSE = _descriptor.Descriptor(
@@ -223,6 +260,7 @@ _CGAMESERVERS_GETSERVERLIST_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='servers', full_name='CGameServers_GetServerList_Response.servers', index=0,
@@ -230,7 +268,7 @@ _CGAMESERVERS_GETSERVERLIST_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030#List of servers matching the filter'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030#List of servers matching the filter', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -243,8 +281,8 @@ _CGAMESERVERS_GETSERVERLIST_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=232,
-  serialized_end=712,
+  serialized_start=258,
+  serialized_end=738,
 )
 
 
@@ -254,6 +292,7 @@ _CGAMESERVERS_GETSERVERSTEAMIDSBYIP_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='server_ips', full_name='CGameServers_GetServerSteamIDsByIP_Request.server_ips', index=0,
@@ -261,7 +300,7 @@ _CGAMESERVERS_GETSERVERSTEAMIDSBYIP_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -274,8 +313,8 @@ _CGAMESERVERS_GETSERVERSTEAMIDSBYIP_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=714,
-  serialized_end=778,
+  serialized_start=740,
+  serialized_end=804,
 )
 
 
@@ -285,21 +324,22 @@ _CGAMESERVERS_IPSWITHSTEAMIDS_RESPONSE_SERVER = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='addr', full_name='CGameServers_IPsWithSteamIDs_Response.Server.addr', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CGameServers_IPsWithSteamIDs_Response.Server.steamid', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -312,8 +352,8 @@ _CGAMESERVERS_IPSWITHSTEAMIDS_RESPONSE_SERVER = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=886,
-  serialized_end=925,
+  serialized_start=912,
+  serialized_end=951,
 )
 
 _CGAMESERVERS_IPSWITHSTEAMIDS_RESPONSE = _descriptor.Descriptor(
@@ -322,6 +362,7 @@ _CGAMESERVERS_IPSWITHSTEAMIDS_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='servers', full_name='CGameServers_IPsWithSteamIDs_Response.servers', index=0,
@@ -329,7 +370,7 @@ _CGAMESERVERS_IPSWITHSTEAMIDS_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -342,8 +383,8 @@ _CGAMESERVERS_IPSWITHSTEAMIDS_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=781,
-  serialized_end=925,
+  serialized_start=807,
+  serialized_end=951,
 )
 
 
@@ -353,6 +394,7 @@ _CGAMESERVERS_GETSERVERIPSBYSTEAMID_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='server_steamids', full_name='CGameServers_GetServerIPsBySteamID_Request.server_steamids', index=0,
@@ -360,7 +402,349 @@ _CGAMESERVERS_GETSERVERIPSBYSTEAMID_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=953,
+  serialized_end=1022,
+)
+
+
+_CGAMESERVERS_QUERYBYFAKEIP_REQUEST = _descriptor.Descriptor(
+  name='CGameServers_QueryByFakeIP_Request',
+  full_name='CGameServers_QueryByFakeIP_Request',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='fake_ip', full_name='CGameServers_QueryByFakeIP_Request.fake_ip', index=0,
+      number=1, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\032FakeIP of server to query.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='fake_port', full_name='CGameServers_QueryByFakeIP_Request.fake_port', index=1,
+      number=2, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\035Fake port of server to query.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='app_id', full_name='CGameServers_QueryByFakeIP_Request.app_id', index=2,
+      number=3, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\0305AppID to use.  Each AppID has its own FakeIP address.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='query_type', full_name='CGameServers_QueryByFakeIP_Request.query_type', index=3,
+      number=4, type=14, cpp_type=8, label=1,
+      has_default_value=True, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\023What type of query?', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+    _CGAMESERVERS_QUERYBYFAKEIP_REQUEST_EQUERYTYPE,
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=1025,
+  serialized_end=1432,
+)
+
+
+_CMSGGAMESERVERPINGQUERYDATA = _descriptor.Descriptor(
+  name='CMsgGameServerPingQueryData',
+  full_name='CMsgGameServerPingQueryData',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='server_ip', full_name='CMsgGameServerPingQueryData.server_ip', index=0,
+      number=1, type=11, cpp_type=10, label=1,
+      has_default_value=False, default_value=None,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='query_port', full_name='CMsgGameServerPingQueryData.query_port', index=1,
+      number=2, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='game_port', full_name='CMsgGameServerPingQueryData.game_port', index=2,
+      number=3, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='spectator_port', full_name='CMsgGameServerPingQueryData.spectator_port', index=3,
+      number=4, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='spectator_server_name', full_name='CMsgGameServerPingQueryData.spectator_server_name', index=4,
+      number=5, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='server_name', full_name='CMsgGameServerPingQueryData.server_name', index=5,
+      number=6, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='steamid', full_name='CMsgGameServerPingQueryData.steamid', index=6,
+      number=7, type=6, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='app_id', full_name='CMsgGameServerPingQueryData.app_id', index=7,
+      number=8, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='gamedir', full_name='CMsgGameServerPingQueryData.gamedir', index=8,
+      number=9, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='map', full_name='CMsgGameServerPingQueryData.map', index=9,
+      number=10, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='game_description', full_name='CMsgGameServerPingQueryData.game_description', index=10,
+      number=11, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='gametype', full_name='CMsgGameServerPingQueryData.gametype', index=11,
+      number=12, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='num_players', full_name='CMsgGameServerPingQueryData.num_players', index=12,
+      number=13, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='max_players', full_name='CMsgGameServerPingQueryData.max_players', index=13,
+      number=14, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='num_bots', full_name='CMsgGameServerPingQueryData.num_bots', index=14,
+      number=15, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='password', full_name='CMsgGameServerPingQueryData.password', index=15,
+      number=16, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='secure', full_name='CMsgGameServerPingQueryData.secure', index=16,
+      number=17, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='dedicated', full_name='CMsgGameServerPingQueryData.dedicated', index=17,
+      number=18, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='version', full_name='CMsgGameServerPingQueryData.version', index=18,
+      number=19, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='sdr_popid', full_name='CMsgGameServerPingQueryData.sdr_popid', index=19,
+      number=20, type=7, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='sdr_location_string', full_name='CMsgGameServerPingQueryData.sdr_location_string', index=20,
+      number=21, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=1435,
+  serialized_end=1899,
+)
+
+
+_CMSGGAMESERVERPLAYERSQUERYDATA_PLAYER = _descriptor.Descriptor(
+  name='Player',
+  full_name='CMsgGameServerPlayersQueryData.Player',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='name', full_name='CMsgGameServerPlayersQueryData.Player.name', index=0,
+      number=1, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='score', full_name='CMsgGameServerPlayersQueryData.Player.score', index=1,
+      number=2, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='time_played', full_name='CMsgGameServerPlayersQueryData.Player.time_played', index=2,
+      number=3, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=1993,
+  serialized_end=2051,
+)
+
+_CMSGGAMESERVERPLAYERSQUERYDATA = _descriptor.Descriptor(
+  name='CMsgGameServerPlayersQueryData',
+  full_name='CMsgGameServerPlayersQueryData',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='players', full_name='CMsgGameServerPlayersQueryData.players', index=0,
+      number=1, type=11, cpp_type=10, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[_CMSGGAMESERVERPLAYERSQUERYDATA_PLAYER, ],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=1902,
+  serialized_end=2051,
+)
+
+
+_CMSGGAMESERVERRULESQUERYDATA_RULE = _descriptor.Descriptor(
+  name='Rule',
+  full_name='CMsgGameServerRulesQueryData.Rule',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='rule', full_name='CMsgGameServerRulesQueryData.Rule.rule', index=0,
+      number=1, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='value', full_name='CMsgGameServerRulesQueryData.Rule.value', index=1,
+      number=2, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -373,87 +757,325 @@ _CGAMESERVERS_GETSERVERIPSBYSTEAMID_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=927,
-  serialized_end=996,
+  serialized_start=2136,
+  serialized_end=2171,
+)
+
+_CMSGGAMESERVERRULESQUERYDATA = _descriptor.Descriptor(
+  name='CMsgGameServerRulesQueryData',
+  full_name='CMsgGameServerRulesQueryData',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='rules', full_name='CMsgGameServerRulesQueryData.rules', index=0,
+      number=1, type=11, cpp_type=10, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[_CMSGGAMESERVERRULESQUERYDATA_RULE, ],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=2053,
+  serialized_end=2171,
+)
+
+
+_CGAMESERVERS_GAMESERVERQUERY_RESPONSE = _descriptor.Descriptor(
+  name='CGameServers_GameServerQuery_Response',
+  full_name='CGameServers_GameServerQuery_Response',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='ping_data', full_name='CGameServers_GameServerQuery_Response.ping_data', index=0,
+      number=1, type=11, cpp_type=10, label=1,
+      has_default_value=False, default_value=None,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='players_data', full_name='CGameServers_GameServerQuery_Response.players_data', index=1,
+      number=2, type=11, cpp_type=10, label=1,
+      has_default_value=False, default_value=None,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='rules_data', full_name='CGameServers_GameServerQuery_Response.rules_data', index=2,
+      number=3, type=11, cpp_type=10, label=1,
+      has_default_value=False, default_value=None,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=2174,
+  serialized_end=2368,
+)
+
+
+_GAMESERVERCLIENT_QUERYSERVERDATA_REQUEST = _descriptor.Descriptor(
+  name='GameServerClient_QueryServerData_Request',
+  full_name='GameServerClient_QueryServerData_Request',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=2370,
+  serialized_end=2412,
+)
+
+
+_GAMESERVERCLIENT_QUERYSERVERDATA_RESPONSE = _descriptor.Descriptor(
+  name='GameServerClient_QueryServerData_Response',
+  full_name='GameServerClient_QueryServerData_Response',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='ping_data', full_name='GameServerClient_QueryServerData_Response.ping_data', index=0,
+      number=1, type=11, cpp_type=10, label=1,
+      has_default_value=False, default_value=None,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='players_data', full_name='GameServerClient_QueryServerData_Response.players_data', index=1,
+      number=2, type=11, cpp_type=10, label=1,
+      has_default_value=False, default_value=None,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='rules_data', full_name='GameServerClient_QueryServerData_Response.rules_data', index=2,
+      number=3, type=11, cpp_type=10, label=1,
+      has_default_value=False, default_value=None,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=2415,
+  serialized_end=2613,
 )
 
 _CGAMESERVERS_GETSERVERLIST_RESPONSE_SERVER.containing_type = _CGAMESERVERS_GETSERVERLIST_RESPONSE
 _CGAMESERVERS_GETSERVERLIST_RESPONSE.fields_by_name['servers'].message_type = _CGAMESERVERS_GETSERVERLIST_RESPONSE_SERVER
 _CGAMESERVERS_IPSWITHSTEAMIDS_RESPONSE_SERVER.containing_type = _CGAMESERVERS_IPSWITHSTEAMIDS_RESPONSE
 _CGAMESERVERS_IPSWITHSTEAMIDS_RESPONSE.fields_by_name['servers'].message_type = _CGAMESERVERS_IPSWITHSTEAMIDS_RESPONSE_SERVER
+_CGAMESERVERS_QUERYBYFAKEIP_REQUEST.fields_by_name['query_type'].enum_type = _CGAMESERVERS_QUERYBYFAKEIP_REQUEST_EQUERYTYPE
+_CGAMESERVERS_QUERYBYFAKEIP_REQUEST_EQUERYTYPE.containing_type = _CGAMESERVERS_QUERYBYFAKEIP_REQUEST
+_CMSGGAMESERVERPINGQUERYDATA.fields_by_name['server_ip'].message_type = steammessages__base__pb2._CMSGIPADDRESS
+_CMSGGAMESERVERPLAYERSQUERYDATA_PLAYER.containing_type = _CMSGGAMESERVERPLAYERSQUERYDATA
+_CMSGGAMESERVERPLAYERSQUERYDATA.fields_by_name['players'].message_type = _CMSGGAMESERVERPLAYERSQUERYDATA_PLAYER
+_CMSGGAMESERVERRULESQUERYDATA_RULE.containing_type = _CMSGGAMESERVERRULESQUERYDATA
+_CMSGGAMESERVERRULESQUERYDATA.fields_by_name['rules'].message_type = _CMSGGAMESERVERRULESQUERYDATA_RULE
+_CGAMESERVERS_GAMESERVERQUERY_RESPONSE.fields_by_name['ping_data'].message_type = _CMSGGAMESERVERPINGQUERYDATA
+_CGAMESERVERS_GAMESERVERQUERY_RESPONSE.fields_by_name['players_data'].message_type = _CMSGGAMESERVERPLAYERSQUERYDATA
+_CGAMESERVERS_GAMESERVERQUERY_RESPONSE.fields_by_name['rules_data'].message_type = _CMSGGAMESERVERRULESQUERYDATA
+_GAMESERVERCLIENT_QUERYSERVERDATA_RESPONSE.fields_by_name['ping_data'].message_type = _CMSGGAMESERVERPINGQUERYDATA
+_GAMESERVERCLIENT_QUERYSERVERDATA_RESPONSE.fields_by_name['players_data'].message_type = _CMSGGAMESERVERPLAYERSQUERYDATA
+_GAMESERVERCLIENT_QUERYSERVERDATA_RESPONSE.fields_by_name['rules_data'].message_type = _CMSGGAMESERVERRULESQUERYDATA
 DESCRIPTOR.message_types_by_name['CGameServers_GetServerList_Request'] = _CGAMESERVERS_GETSERVERLIST_REQUEST
 DESCRIPTOR.message_types_by_name['CGameServers_GetServerList_Response'] = _CGAMESERVERS_GETSERVERLIST_RESPONSE
 DESCRIPTOR.message_types_by_name['CGameServers_GetServerSteamIDsByIP_Request'] = _CGAMESERVERS_GETSERVERSTEAMIDSBYIP_REQUEST
 DESCRIPTOR.message_types_by_name['CGameServers_IPsWithSteamIDs_Response'] = _CGAMESERVERS_IPSWITHSTEAMIDS_RESPONSE
 DESCRIPTOR.message_types_by_name['CGameServers_GetServerIPsBySteamID_Request'] = _CGAMESERVERS_GETSERVERIPSBYSTEAMID_REQUEST
+DESCRIPTOR.message_types_by_name['CGameServers_QueryByFakeIP_Request'] = _CGAMESERVERS_QUERYBYFAKEIP_REQUEST
+DESCRIPTOR.message_types_by_name['CMsgGameServerPingQueryData'] = _CMSGGAMESERVERPINGQUERYDATA
+DESCRIPTOR.message_types_by_name['CMsgGameServerPlayersQueryData'] = _CMSGGAMESERVERPLAYERSQUERYDATA
+DESCRIPTOR.message_types_by_name['CMsgGameServerRulesQueryData'] = _CMSGGAMESERVERRULESQUERYDATA
+DESCRIPTOR.message_types_by_name['CGameServers_GameServerQuery_Response'] = _CGAMESERVERS_GAMESERVERQUERY_RESPONSE
+DESCRIPTOR.message_types_by_name['GameServerClient_QueryServerData_Request'] = _GAMESERVERCLIENT_QUERYSERVERDATA_REQUEST
+DESCRIPTOR.message_types_by_name['GameServerClient_QueryServerData_Response'] = _GAMESERVERCLIENT_QUERYSERVERDATA_RESPONSE
 _sym_db.RegisterFileDescriptor(DESCRIPTOR)
 
-CGameServers_GetServerList_Request = _reflection.GeneratedProtocolMessageType('CGameServers_GetServerList_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CGAMESERVERS_GETSERVERLIST_REQUEST,
-  __module__ = 'steammessages_gameservers_pb2'
+CGameServers_GetServerList_Request = _reflection.GeneratedProtocolMessageType('CGameServers_GetServerList_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CGAMESERVERS_GETSERVERLIST_REQUEST,
+  '__module__' : 'steammessages_gameservers_pb2'
   # @@protoc_insertion_point(class_scope:CGameServers_GetServerList_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CGameServers_GetServerList_Request)
 
-CGameServers_GetServerList_Response = _reflection.GeneratedProtocolMessageType('CGameServers_GetServerList_Response', (_message.Message,), dict(
+CGameServers_GetServerList_Response = _reflection.GeneratedProtocolMessageType('CGameServers_GetServerList_Response', (_message.Message,), {
 
-  Server = _reflection.GeneratedProtocolMessageType('Server', (_message.Message,), dict(
-    DESCRIPTOR = _CGAMESERVERS_GETSERVERLIST_RESPONSE_SERVER,
-    __module__ = 'steammessages_gameservers_pb2'
+  'Server' : _reflection.GeneratedProtocolMessageType('Server', (_message.Message,), {
+    'DESCRIPTOR' : _CGAMESERVERS_GETSERVERLIST_RESPONSE_SERVER,
+    '__module__' : 'steammessages_gameservers_pb2'
     # @@protoc_insertion_point(class_scope:CGameServers_GetServerList_Response.Server)
-    ))
+    })
   ,
-  DESCRIPTOR = _CGAMESERVERS_GETSERVERLIST_RESPONSE,
-  __module__ = 'steammessages_gameservers_pb2'
+  'DESCRIPTOR' : _CGAMESERVERS_GETSERVERLIST_RESPONSE,
+  '__module__' : 'steammessages_gameservers_pb2'
   # @@protoc_insertion_point(class_scope:CGameServers_GetServerList_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CGameServers_GetServerList_Response)
 _sym_db.RegisterMessage(CGameServers_GetServerList_Response.Server)
 
-CGameServers_GetServerSteamIDsByIP_Request = _reflection.GeneratedProtocolMessageType('CGameServers_GetServerSteamIDsByIP_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CGAMESERVERS_GETSERVERSTEAMIDSBYIP_REQUEST,
-  __module__ = 'steammessages_gameservers_pb2'
+CGameServers_GetServerSteamIDsByIP_Request = _reflection.GeneratedProtocolMessageType('CGameServers_GetServerSteamIDsByIP_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CGAMESERVERS_GETSERVERSTEAMIDSBYIP_REQUEST,
+  '__module__' : 'steammessages_gameservers_pb2'
   # @@protoc_insertion_point(class_scope:CGameServers_GetServerSteamIDsByIP_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CGameServers_GetServerSteamIDsByIP_Request)
 
-CGameServers_IPsWithSteamIDs_Response = _reflection.GeneratedProtocolMessageType('CGameServers_IPsWithSteamIDs_Response', (_message.Message,), dict(
+CGameServers_IPsWithSteamIDs_Response = _reflection.GeneratedProtocolMessageType('CGameServers_IPsWithSteamIDs_Response', (_message.Message,), {
 
-  Server = _reflection.GeneratedProtocolMessageType('Server', (_message.Message,), dict(
-    DESCRIPTOR = _CGAMESERVERS_IPSWITHSTEAMIDS_RESPONSE_SERVER,
-    __module__ = 'steammessages_gameservers_pb2'
+  'Server' : _reflection.GeneratedProtocolMessageType('Server', (_message.Message,), {
+    'DESCRIPTOR' : _CGAMESERVERS_IPSWITHSTEAMIDS_RESPONSE_SERVER,
+    '__module__' : 'steammessages_gameservers_pb2'
     # @@protoc_insertion_point(class_scope:CGameServers_IPsWithSteamIDs_Response.Server)
-    ))
+    })
   ,
-  DESCRIPTOR = _CGAMESERVERS_IPSWITHSTEAMIDS_RESPONSE,
-  __module__ = 'steammessages_gameservers_pb2'
+  'DESCRIPTOR' : _CGAMESERVERS_IPSWITHSTEAMIDS_RESPONSE,
+  '__module__' : 'steammessages_gameservers_pb2'
   # @@protoc_insertion_point(class_scope:CGameServers_IPsWithSteamIDs_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CGameServers_IPsWithSteamIDs_Response)
 _sym_db.RegisterMessage(CGameServers_IPsWithSteamIDs_Response.Server)
 
-CGameServers_GetServerIPsBySteamID_Request = _reflection.GeneratedProtocolMessageType('CGameServers_GetServerIPsBySteamID_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CGAMESERVERS_GETSERVERIPSBYSTEAMID_REQUEST,
-  __module__ = 'steammessages_gameservers_pb2'
+CGameServers_GetServerIPsBySteamID_Request = _reflection.GeneratedProtocolMessageType('CGameServers_GetServerIPsBySteamID_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CGAMESERVERS_GETSERVERIPSBYSTEAMID_REQUEST,
+  '__module__' : 'steammessages_gameservers_pb2'
   # @@protoc_insertion_point(class_scope:CGameServers_GetServerIPsBySteamID_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CGameServers_GetServerIPsBySteamID_Request)
 
+CGameServers_QueryByFakeIP_Request = _reflection.GeneratedProtocolMessageType('CGameServers_QueryByFakeIP_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CGAMESERVERS_QUERYBYFAKEIP_REQUEST,
+  '__module__' : 'steammessages_gameservers_pb2'
+  # @@protoc_insertion_point(class_scope:CGameServers_QueryByFakeIP_Request)
+  })
+_sym_db.RegisterMessage(CGameServers_QueryByFakeIP_Request)
+
+CMsgGameServerPingQueryData = _reflection.GeneratedProtocolMessageType('CMsgGameServerPingQueryData', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGGAMESERVERPINGQUERYDATA,
+  '__module__' : 'steammessages_gameservers_pb2'
+  # @@protoc_insertion_point(class_scope:CMsgGameServerPingQueryData)
+  })
+_sym_db.RegisterMessage(CMsgGameServerPingQueryData)
+
+CMsgGameServerPlayersQueryData = _reflection.GeneratedProtocolMessageType('CMsgGameServerPlayersQueryData', (_message.Message,), {
+
+  'Player' : _reflection.GeneratedProtocolMessageType('Player', (_message.Message,), {
+    'DESCRIPTOR' : _CMSGGAMESERVERPLAYERSQUERYDATA_PLAYER,
+    '__module__' : 'steammessages_gameservers_pb2'
+    # @@protoc_insertion_point(class_scope:CMsgGameServerPlayersQueryData.Player)
+    })
+  ,
+  'DESCRIPTOR' : _CMSGGAMESERVERPLAYERSQUERYDATA,
+  '__module__' : 'steammessages_gameservers_pb2'
+  # @@protoc_insertion_point(class_scope:CMsgGameServerPlayersQueryData)
+  })
+_sym_db.RegisterMessage(CMsgGameServerPlayersQueryData)
+_sym_db.RegisterMessage(CMsgGameServerPlayersQueryData.Player)
+
+CMsgGameServerRulesQueryData = _reflection.GeneratedProtocolMessageType('CMsgGameServerRulesQueryData', (_message.Message,), {
+
+  'Rule' : _reflection.GeneratedProtocolMessageType('Rule', (_message.Message,), {
+    'DESCRIPTOR' : _CMSGGAMESERVERRULESQUERYDATA_RULE,
+    '__module__' : 'steammessages_gameservers_pb2'
+    # @@protoc_insertion_point(class_scope:CMsgGameServerRulesQueryData.Rule)
+    })
+  ,
+  'DESCRIPTOR' : _CMSGGAMESERVERRULESQUERYDATA,
+  '__module__' : 'steammessages_gameservers_pb2'
+  # @@protoc_insertion_point(class_scope:CMsgGameServerRulesQueryData)
+  })
+_sym_db.RegisterMessage(CMsgGameServerRulesQueryData)
+_sym_db.RegisterMessage(CMsgGameServerRulesQueryData.Rule)
+
+CGameServers_GameServerQuery_Response = _reflection.GeneratedProtocolMessageType('CGameServers_GameServerQuery_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CGAMESERVERS_GAMESERVERQUERY_RESPONSE,
+  '__module__' : 'steammessages_gameservers_pb2'
+  # @@protoc_insertion_point(class_scope:CGameServers_GameServerQuery_Response)
+  })
+_sym_db.RegisterMessage(CGameServers_GameServerQuery_Response)
+
+GameServerClient_QueryServerData_Request = _reflection.GeneratedProtocolMessageType('GameServerClient_QueryServerData_Request', (_message.Message,), {
+  'DESCRIPTOR' : _GAMESERVERCLIENT_QUERYSERVERDATA_REQUEST,
+  '__module__' : 'steammessages_gameservers_pb2'
+  # @@protoc_insertion_point(class_scope:GameServerClient_QueryServerData_Request)
+  })
+_sym_db.RegisterMessage(GameServerClient_QueryServerData_Request)
+
+GameServerClient_QueryServerData_Response = _reflection.GeneratedProtocolMessageType('GameServerClient_QueryServerData_Response', (_message.Message,), {
+  'DESCRIPTOR' : _GAMESERVERCLIENT_QUERYSERVERDATA_RESPONSE,
+  '__module__' : 'steammessages_gameservers_pb2'
+  # @@protoc_insertion_point(class_scope:GameServerClient_QueryServerData_Response)
+  })
+_sym_db.RegisterMessage(GameServerClient_QueryServerData_Response)
+
 
 DESCRIPTOR._options = None
 _CGAMESERVERS_GETSERVERLIST_REQUEST.fields_by_name['filter']._options = None
 _CGAMESERVERS_GETSERVERLIST_REQUEST.fields_by_name['limit']._options = None
 _CGAMESERVERS_GETSERVERLIST_RESPONSE_SERVER.fields_by_name['addr']._options = None
 _CGAMESERVERS_GETSERVERLIST_RESPONSE.fields_by_name['servers']._options = None
+_CGAMESERVERS_QUERYBYFAKEIP_REQUEST.fields_by_name['fake_ip']._options = None
+_CGAMESERVERS_QUERYBYFAKEIP_REQUEST.fields_by_name['fake_port']._options = None
+_CGAMESERVERS_QUERYBYFAKEIP_REQUEST.fields_by_name['app_id']._options = None
+_CGAMESERVERS_QUERYBYFAKEIP_REQUEST.fields_by_name['query_type']._options = None
 
 _GAMESERVERS = _descriptor.ServiceDescriptor(
   name='GameServers',
   full_name='GameServers',
   file=DESCRIPTOR,
   index=0,
-  serialized_options=_b('\202\265\0302A service for searching and managing game servers.'),
-  serialized_start=999,
-  serialized_end=1554,
+  serialized_options=b'\202\265\0302A service for searching and managing game servers.',
+  create_key=_descriptor._internal_create_key,
+  serialized_start=2616,
+  serialized_end=3318,
   methods=[
   _descriptor.MethodDescriptor(
     name='GetServerList',
@@ -462,7 +1084,8 @@ _GAMESERVERS = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CGAMESERVERS_GETSERVERLIST_REQUEST,
     output_type=_CGAMESERVERS_GETSERVERLIST_RESPONSE,
-    serialized_options=_b('\202\265\030,Gets a list of servers given a filter string'),
+    serialized_options=b'\202\265\030,Gets a list of servers given a filter string',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetServerSteamIDsByIP',
@@ -471,7 +1094,8 @@ _GAMESERVERS = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CGAMESERVERS_GETSERVERSTEAMIDSBYIP_REQUEST,
     output_type=_CGAMESERVERS_IPSWITHSTEAMIDS_RESPONSE,
-    serialized_options=_b('\202\265\0302Gets a list of server SteamIDs given a list of IPs'),
+    serialized_options=b'\202\265\0302Gets a list of server SteamIDs given a list of IPs',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetServerIPsBySteamID',
@@ -480,13 +1104,50 @@ _GAMESERVERS = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CGAMESERVERS_GETSERVERIPSBYSTEAMID_REQUEST,
     output_type=_CGAMESERVERS_IPSWITHSTEAMIDS_RESPONSE,
-    serialized_options=_b('\202\265\030;Gets a list of server IP addresses given a list of SteamIDs'),
+    serialized_options=b'\202\265\030;Gets a list of server IP addresses given a list of SteamIDs',
+    create_key=_descriptor._internal_create_key,
+  ),
+  _descriptor.MethodDescriptor(
+    name='QueryByFakeIP',
+    full_name='GameServers.QueryByFakeIP',
+    index=3,
+    containing_service=None,
+    input_type=_CGAMESERVERS_QUERYBYFAKEIP_REQUEST,
+    output_type=_CGAMESERVERS_GAMESERVERQUERY_RESPONSE,
+    serialized_options=b'\202\265\030.Perform a query on a specific server by FakeIP',
+    create_key=_descriptor._internal_create_key,
   ),
 ])
 _sym_db.RegisterServiceDescriptor(_GAMESERVERS)
 
 DESCRIPTOR.services_by_name['GameServers'] = _GAMESERVERS
 
+
+_GAMESERVERCLIENT = _descriptor.ServiceDescriptor(
+  name='GameServerClient',
+  full_name='GameServerClient',
+  file=DESCRIPTOR,
+  index=1,
+  serialized_options=b'\202\265\0303Service methods exposed by GameServer Steam clients\300\265\030\002',
+  create_key=_descriptor._internal_create_key,
+  serialized_start=3321,
+  serialized_end=3554,
+  methods=[
+  _descriptor.MethodDescriptor(
+    name='QueryServerData',
+    full_name='GameServerClient.QueryServerData',
+    index=0,
+    containing_service=None,
+    input_type=_GAMESERVERCLIENT_QUERYSERVERDATA_REQUEST,
+    output_type=_GAMESERVERCLIENT_QUERYSERVERDATA_RESPONSE,
+    serialized_options=b'\202\265\030)Steam is asking a gameserver for its data',
+    create_key=_descriptor._internal_create_key,
+  ),
+])
+_sym_db.RegisterServiceDescriptor(_GAMESERVERCLIENT)
+
+DESCRIPTOR.services_by_name['GameServerClient'] = _GAMESERVERCLIENT
+
 GameServers = service_reflection.GeneratedServiceType('GameServers', (_service.Service,), dict(
   DESCRIPTOR = _GAMESERVERS,
   __module__ = 'steammessages_gameservers_pb2'
@@ -498,4 +1159,15 @@ GameServers_Stub = service_reflection.GeneratedServiceStubType('GameServers_Stub
   ))
 
 
+GameServerClient = service_reflection.GeneratedServiceType('GameServerClient', (_service.Service,), dict(
+  DESCRIPTOR = _GAMESERVERCLIENT,
+  __module__ = 'steammessages_gameservers_pb2'
+  ))
+
+GameServerClient_Stub = service_reflection.GeneratedServiceStubType('GameServerClient_Stub', (GameServerClient,), dict(
+  DESCRIPTOR = _GAMESERVERCLIENT,
+  __module__ = 'steammessages_gameservers_pb2'
+  ))
+
+
 # @@protoc_insertion_point(module_scope)
diff --git a/steam/protobufs/steammessages_inventory_pb2.py b/steam/protobufs/steammessages_inventory_pb2.py
index 84cddf9..5c273fc 100644
--- a/steam/protobufs/steammessages_inventory_pb2.py
+++ b/steam/protobufs/steammessages_inventory_pb2.py
@@ -1,9 +1,7 @@
 # -*- coding: utf-8 -*-
 # Generated by the protocol buffer compiler.  DO NOT EDIT!
 # source: steammessages_inventory.proto
-
-import sys
-_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1'))
+"""Generated protocol buffer code."""
 from google.protobuf import descriptor as _descriptor
 from google.protobuf import message as _message
 from google.protobuf import reflection as _reflection
@@ -15,6 +13,7 @@ from google.protobuf import service_reflection
 _sym_db = _symbol_database.Default()
 
 
+import steam.protobufs.steammessages_base_pb2 as steammessages__base__pb2
 import steam.protobufs.steammessages_unified_base_pb2 as steammessages__unified__base__pb2
 
 
@@ -22,10 +21,11 @@ DESCRIPTOR = _descriptor.FileDescriptor(
   name='steammessages_inventory.proto',
   package='',
   syntax='proto2',
-  serialized_options=_b('\220\001\001'),
-  serialized_pb=_b('\n\x1dsteammessages_inventory.proto\x1a steammessages_unified_base.proto\"A\n\x1f\x43Inventory_GetInventory_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x0f\n\x07steamid\x18\x02 \x01(\x04\"\xbf\x01\n\x13\x43Inventory_Response\x12\x0c\n\x04\x65tag\x18\x01 \x01(\t\x12\x16\n\x0eremoveditemids\x18\x02 \x03(\x04\x12\x11\n\titem_json\x18\x03 \x01(\t\x12\x14\n\x0citemdef_json\x18\x04 \x01(\t\x12\x0e\n\x06ticket\x18\x05 \x01(\x0c\x12I\n\x08replayed\x18\x06 \x01(\x08\x42\x37\x82\xb5\x18\x33If true, the requestid given was processed earlier.\"\x8e\x01\n\x1f\x43Inventory_ExchangeItem_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x0f\n\x07steamid\x18\x02 \x01(\x04\x12\x17\n\x0fmaterialsitemid\x18\x03 \x03(\x04\x12\x19\n\x11materialsquantity\x18\x04 \x03(\r\x12\x17\n\x0foutputitemdefid\x18\x05 \x01(\x04\"O\n-CInventory_GetEligiblePromoItemDefIDs_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x0f\n\x07steamid\x18\x02 \x01(\x04\"D\n.CInventory_GetEligiblePromoItemDefIDs_Response\x12\x12\n\nitemdefids\x18\x01 \x03(\x04\"\xcc\x03\n\x1a\x43Inventory_AddItem_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x11\n\titemdefid\x18\x02 \x03(\x04\x12\x15\n\ritempropsjson\x18\x03 \x03(\t\x12\x0f\n\x07steamid\x18\x04 \x01(\x04\x12\\\n\x06notify\x18\x05 \x01(\x08\x42L\x82\xb5\x18HShould notify the user that the item was added to their Steam Inventory.\x12\x11\n\trequestid\x18\x06 \x01(\x04\x12j\n\x11trade_restriction\x18\x07 \x01(\x08\x42O\x82\xb5\x18KIf true, apply the default trade and market restriction times to this item.\x12\x86\x01\n\x0bis_purchase\x18\x08 \x01(\x08:\x05\x66\x61lseBj\x82\xb5\x18\x66If set, treat requestid as a txnid and create this item as a result of user microtransaction purchase.\"\xe5\x02\n\x1e\x43Inventory_ModifyItems_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x0f\n\x07steamid\x18\x02 \x01(\x04\x12\x43\n\x07updates\x18\x03 \x03(\x0b\x32\x32.CInventory_ModifyItems_Request.ItemPropertyUpdate\x12\x11\n\ttimestamp\x18\x04 \x01(\r\x1a\xca\x01\n\x12ItemPropertyUpdate\x12\x0e\n\x06itemid\x18\x01 \x01(\x04\x12\x17\n\x0fremove_property\x18\x02 \x01(\x08\x12\x15\n\rproperty_name\x18\x03 \x01(\t\x12\x1b\n\x13property_value_bool\x18\x04 \x01(\x08\x12\x1a\n\x12property_value_int\x18\x05 \x01(\x03\x12\x1d\n\x15property_value_string\x18\x06 \x01(\t\x12\x1c\n\x14property_value_float\x18\x07 \x01(\x02\"F\n\"CInventory_ConsumePlaytime_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x11\n\titemdefid\x18\x02 \x01(\x04\"\x88\x01\n\x1e\x43Inventory_ConsumeItem_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x0e\n\x06itemid\x18\x02 \x01(\x04\x12\x10\n\x08quantity\x18\x03 \x01(\r\x12\x11\n\ttimestamp\x18\x04 \x01(\t\x12\x0f\n\x07steamid\x18\x05 \x01(\x04\x12\x11\n\trequestid\x18\x06 \x01(\x04\"W\n!CInventory_DevSetNextDrop_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x11\n\titemdefid\x18\x02 \x01(\x04\x12\x10\n\x08\x64roptime\x18\x03 \x01(\t\"e\n!CInventory_SplitItemStack_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x0e\n\x06itemid\x18\x02 \x01(\x04\x12\x10\n\x08quantity\x18\x03 \x01(\r\x12\x0f\n\x07steamid\x18\x05 \x01(\x04\"\x80\x01\n$CInventory_CombineItemStacks_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x12\n\nfromitemid\x18\x02 \x01(\x04\x12\x12\n\ndestitemid\x18\x03 \x01(\x04\x12\x10\n\x08quantity\x18\x04 \x01(\r\x12\x0f\n\x07steamid\x18\x07 \x01(\x06\"2\n!CInventory_GetItemDefMeta_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\"F\n\"CInventory_GetItemDefMeta_Response\x12\x10\n\x08modified\x18\x01 \x01(\r\x12\x0e\n\x06\x64igest\x18\x02 \x01(\t\"(\n&CInventory_GetUserPurchaseInfo_Request\"<\n\'CInventory_GetUserPurchaseInfo_Response\x12\x11\n\tecurrency\x18\x01 \x01(\x05\"\xb2\x01\n\x1f\x43Inventory_PurchaseInit_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x10\n\x08language\x18\x02 \x01(\x05\x12=\n\nline_items\x18\x03 \x03(\x0b\x32).CInventory_PurchaseInit_Request.LineItem\x1a/\n\x08LineItem\x12\x11\n\titemdefid\x18\x01 \x01(\x04\x12\x10\n\x08quantity\x18\x02 \x01(\r\"D\n CInventory_PurchaseInit_Response\x12\x0f\n\x07orderid\x18\x01 \x01(\x04\x12\x0f\n\x07transid\x18\x02 \x01(\x04\"W\n#CInventory_PurchaseFinalize_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x10\n\x08language\x18\x02 \x01(\x05\x12\x0f\n\x07orderid\x18\x03 \x01(\x04\"Q\n\x1e\x43Inventory_InspectItem_Request\x12\x11\n\titemdefid\x18\x01 \x01(\x04\x12\x0e\n\x06itemid\x18\x02 \x01(\x06\x12\x0c\n\x04tags\x18\x03 \x01(\t\"i\n&CInventoryClient_NewItems_Notification\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x30\n\x12inventory_response\x18\x02 \x01(\x0b\x32\x14.CInventory_Response2\xbb\x10\n\tInventory\x12z\n\x0cGetInventory\x12 .CInventory_GetInventory_Request\x1a\x14.CInventory_Response\"2\x82\xb5\x18.Retrieves a users inventory as a big JSON blob\x12o\n\x0c\x45xchangeItem\x12 .CInventory_ExchangeItem_Request\x1a\x14.CInventory_Response\"\'\x82\xb5\x18#Craft an item in a user\'s inventory\x12\xbd\x01\n\x1aGetEligiblePromoItemDefIDs\x12..CInventory_GetEligiblePromoItemDefIDs_Request\x1a/.CInventory_GetEligiblePromoItemDefIDs_Response\">\x82\xb5\x18:Returns a list of promo item defs the user is eligible for\x12n\n\x0c\x41\x64\x64PromoItem\x12\x1b.CInventory_AddItem_Request\x1a\x14.CInventory_Response\"+\x82\xb5\x18\'Adds a promo item to a user\'s inventory\x12\x89\x01\n\x0fSafeModifyItems\x12\x1f.CInventory_ModifyItems_Request\x1a\x14.CInventory_Response\"?\x82\xb5\x18;Modify an item in a user\'s inventory (safe properties only)\x12\x87\x01\n\x0f\x43onsumePlaytime\x12#.CInventory_ConsumePlaytime_Request\x1a\x14.CInventory_Response\"9\x82\xb5\x18\x35\x43onsumes playtime and possibly returns a granted item\x12Y\n\x0b\x43onsumeItem\x12\x1f.CInventory_ConsumeItem_Request\x1a\x14.CInventory_Response\"\x13\x82\xb5\x18\x0f\x43onsume an item\x12n\n\x0f\x44\x65vGenerateItem\x12\x1b.CInventory_AddItem_Request\x1a\x14.CInventory_Response\"(\x82\xb5\x18$Grant an item when in developer mode\x12_\n\x0e\x44\x65vSetNextDrop\x12\".CInventory_DevSetNextDrop_Request\x1a\x14.CInventory_Response\"\x13\x82\xb5\x18\x0f\x43onsume an item\x12s\n\x0eSplitItemStack\x12\".CInventory_SplitItemStack_Request\x1a\x14.CInventory_Response\"\'\x82\xb5\x18#Split an item stack into two stacks\x12q\n\x11\x43ombineItemStacks\x12%.CInventory_CombineItemStacks_Request\x1a\x14.CInventory_Response\"\x1f\x82\xb5\x18\x1b\x43ombine two stacks of items\x12\x9c\x01\n\x0eGetItemDefMeta\x12\".CInventory_GetItemDefMeta_Request\x1a#.CInventory_GetItemDefMeta_Response\"A\x82\xb5\x18=Get metadata about the current item definition for this game.\x12\xa7\x01\n\x13GetUserPurchaseInfo\x12\'.CInventory_GetUserPurchaseInfo_Request\x1a(.CInventory_GetUserPurchaseInfo_Response\"=\x82\xb5\x18\x39Returns information about the user such as their currency\x12|\n\x0cPurchaseInit\x12 .CInventory_PurchaseInit_Request\x1a!.CInventory_PurchaseInit_Response\"\'\x82\xb5\x18#Initializes a purchase for the user\x12u\n\x10PurchaseFinalize\x12$.CInventory_PurchaseFinalize_Request\x1a\x14.CInventory_Response\"%\x82\xb5\x18!Finalizes a purchase for the user\x12x\n\x0bInspectItem\x12\x1f.CInventory_InspectItem_Request\x1a\x14.CInventory_Response\"2\x82\xb5\x18.Get item detail given a valid inspection token\x1a/\x82\xb5\x18+A service that provides access to inventory2\xc4\x01\n\x0fInventoryClient\x12z\n\x0eNotifyNewItems\x12\'.CInventoryClient_NewItems_Notification\x1a\x0b.NoResponse\"2\x82\xb5\x18.Notify client that the user received new items\x1a\x35\x82\xb5\x18-Client notifications inventory service events\xc0\xb5\x18\x02\x42\x03\x90\x01\x01')
+  serialized_options=b'\220\001\001',
+  create_key=_descriptor._internal_create_key,
+  serialized_pb=b'\n\x1dsteammessages_inventory.proto\x1a\x18steammessages_base.proto\x1a steammessages_unified_base.proto\"A\n\x1f\x43Inventory_GetInventory_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x0f\n\x07steamid\x18\x02 \x01(\x04\"\xbf\x01\n\x13\x43Inventory_Response\x12\x0c\n\x04\x65tag\x18\x01 \x01(\t\x12\x16\n\x0eremoveditemids\x18\x02 \x03(\x04\x12\x11\n\titem_json\x18\x03 \x01(\t\x12\x14\n\x0citemdef_json\x18\x04 \x01(\t\x12\x0e\n\x06ticket\x18\x05 \x01(\x0c\x12I\n\x08replayed\x18\x06 \x01(\x08\x42\x37\x82\xb5\x18\x33If true, the requestid given was processed earlier.\"\x8e\x01\n\x1f\x43Inventory_ExchangeItem_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x0f\n\x07steamid\x18\x02 \x01(\x04\x12\x17\n\x0fmaterialsitemid\x18\x03 \x03(\x04\x12\x19\n\x11materialsquantity\x18\x04 \x03(\r\x12\x17\n\x0foutputitemdefid\x18\x05 \x01(\x04\"O\n-CInventory_GetEligiblePromoItemDefIDs_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x0f\n\x07steamid\x18\x02 \x01(\x04\"D\n.CInventory_GetEligiblePromoItemDefIDs_Response\x12\x12\n\nitemdefids\x18\x01 \x03(\x04\"\xcc\x03\n\x1a\x43Inventory_AddItem_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x11\n\titemdefid\x18\x02 \x03(\x04\x12\x15\n\ritempropsjson\x18\x03 \x03(\t\x12\x0f\n\x07steamid\x18\x04 \x01(\x04\x12\\\n\x06notify\x18\x05 \x01(\x08\x42L\x82\xb5\x18HShould notify the user that the item was added to their Steam Inventory.\x12\x11\n\trequestid\x18\x06 \x01(\x04\x12j\n\x11trade_restriction\x18\x07 \x01(\x08\x42O\x82\xb5\x18KIf true, apply the default trade and market restriction times to this item.\x12\x86\x01\n\x0bis_purchase\x18\x08 \x01(\x08:\x05\x66\x61lseBj\x82\xb5\x18\x66If set, treat requestid as a txnid and create this item as a result of user microtransaction purchase.\"\xe5\x02\n\x1e\x43Inventory_ModifyItems_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x0f\n\x07steamid\x18\x02 \x01(\x04\x12\x43\n\x07updates\x18\x03 \x03(\x0b\x32\x32.CInventory_ModifyItems_Request.ItemPropertyUpdate\x12\x11\n\ttimestamp\x18\x04 \x01(\r\x1a\xca\x01\n\x12ItemPropertyUpdate\x12\x0e\n\x06itemid\x18\x01 \x01(\x04\x12\x17\n\x0fremove_property\x18\x02 \x01(\x08\x12\x15\n\rproperty_name\x18\x03 \x01(\t\x12\x1b\n\x13property_value_bool\x18\x04 \x01(\x08\x12\x1a\n\x12property_value_int\x18\x05 \x01(\x03\x12\x1d\n\x15property_value_string\x18\x06 \x01(\t\x12\x1c\n\x14property_value_float\x18\x07 \x01(\x02\"F\n\"CInventory_ConsumePlaytime_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x11\n\titemdefid\x18\x02 \x01(\x04\"\x88\x01\n\x1e\x43Inventory_ConsumeItem_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x0e\n\x06itemid\x18\x02 \x01(\x04\x12\x10\n\x08quantity\x18\x03 \x01(\r\x12\x11\n\ttimestamp\x18\x04 \x01(\t\x12\x0f\n\x07steamid\x18\x05 \x01(\x04\x12\x11\n\trequestid\x18\x06 \x01(\x04\"W\n!CInventory_DevSetNextDrop_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x11\n\titemdefid\x18\x02 \x01(\x04\x12\x10\n\x08\x64roptime\x18\x03 \x01(\t\"e\n!CInventory_SplitItemStack_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x0e\n\x06itemid\x18\x02 \x01(\x04\x12\x10\n\x08quantity\x18\x03 \x01(\r\x12\x0f\n\x07steamid\x18\x05 \x01(\x04\"\x80\x01\n$CInventory_CombineItemStacks_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x12\n\nfromitemid\x18\x02 \x01(\x04\x12\x12\n\ndestitemid\x18\x03 \x01(\x04\x12\x10\n\x08quantity\x18\x04 \x01(\r\x12\x0f\n\x07steamid\x18\x07 \x01(\x06\"2\n!CInventory_GetItemDefMeta_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\"F\n\"CInventory_GetItemDefMeta_Response\x12\x10\n\x08modified\x18\x01 \x01(\r\x12\x0e\n\x06\x64igest\x18\x02 \x01(\t\"(\n&CInventory_GetUserPurchaseInfo_Request\"<\n\'CInventory_GetUserPurchaseInfo_Response\x12\x11\n\tecurrency\x18\x01 \x01(\x05\"\xb2\x01\n\x1f\x43Inventory_PurchaseInit_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x10\n\x08language\x18\x02 \x01(\x05\x12=\n\nline_items\x18\x03 \x03(\x0b\x32).CInventory_PurchaseInit_Request.LineItem\x1a/\n\x08LineItem\x12\x11\n\titemdefid\x18\x01 \x01(\x04\x12\x10\n\x08quantity\x18\x02 \x01(\r\"D\n CInventory_PurchaseInit_Response\x12\x0f\n\x07orderid\x18\x01 \x01(\x04\x12\x0f\n\x07transid\x18\x02 \x01(\x04\"W\n#CInventory_PurchaseFinalize_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x10\n\x08language\x18\x02 \x01(\x05\x12\x0f\n\x07orderid\x18\x03 \x01(\x04\"Q\n\x1e\x43Inventory_InspectItem_Request\x12\x11\n\titemdefid\x18\x01 \x01(\x04\x12\x0e\n\x06itemid\x18\x02 \x01(\x06\x12\x0c\n\x04tags\x18\x03 \x01(\t\"i\n&CInventoryClient_NewItems_Notification\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x30\n\x12inventory_response\x18\x02 \x01(\x0b\x32\x14.CInventory_Response2\xbb\x10\n\tInventory\x12z\n\x0cGetInventory\x12 .CInventory_GetInventory_Request\x1a\x14.CInventory_Response\"2\x82\xb5\x18.Retrieves a users inventory as a big JSON blob\x12o\n\x0c\x45xchangeItem\x12 .CInventory_ExchangeItem_Request\x1a\x14.CInventory_Response\"\'\x82\xb5\x18#Craft an item in a user\'s inventory\x12\xbd\x01\n\x1aGetEligiblePromoItemDefIDs\x12..CInventory_GetEligiblePromoItemDefIDs_Request\x1a/.CInventory_GetEligiblePromoItemDefIDs_Response\">\x82\xb5\x18:Returns a list of promo item defs the user is eligible for\x12n\n\x0c\x41\x64\x64PromoItem\x12\x1b.CInventory_AddItem_Request\x1a\x14.CInventory_Response\"+\x82\xb5\x18\'Adds a promo item to a user\'s inventory\x12\x89\x01\n\x0fSafeModifyItems\x12\x1f.CInventory_ModifyItems_Request\x1a\x14.CInventory_Response\"?\x82\xb5\x18;Modify an item in a user\'s inventory (safe properties only)\x12\x87\x01\n\x0f\x43onsumePlaytime\x12#.CInventory_ConsumePlaytime_Request\x1a\x14.CInventory_Response\"9\x82\xb5\x18\x35\x43onsumes playtime and possibly returns a granted item\x12Y\n\x0b\x43onsumeItem\x12\x1f.CInventory_ConsumeItem_Request\x1a\x14.CInventory_Response\"\x13\x82\xb5\x18\x0f\x43onsume an item\x12n\n\x0f\x44\x65vGenerateItem\x12\x1b.CInventory_AddItem_Request\x1a\x14.CInventory_Response\"(\x82\xb5\x18$Grant an item when in developer mode\x12_\n\x0e\x44\x65vSetNextDrop\x12\".CInventory_DevSetNextDrop_Request\x1a\x14.CInventory_Response\"\x13\x82\xb5\x18\x0f\x43onsume an item\x12s\n\x0eSplitItemStack\x12\".CInventory_SplitItemStack_Request\x1a\x14.CInventory_Response\"\'\x82\xb5\x18#Split an item stack into two stacks\x12q\n\x11\x43ombineItemStacks\x12%.CInventory_CombineItemStacks_Request\x1a\x14.CInventory_Response\"\x1f\x82\xb5\x18\x1b\x43ombine two stacks of items\x12\x9c\x01\n\x0eGetItemDefMeta\x12\".CInventory_GetItemDefMeta_Request\x1a#.CInventory_GetItemDefMeta_Response\"A\x82\xb5\x18=Get metadata about the current item definition for this game.\x12\xa7\x01\n\x13GetUserPurchaseInfo\x12\'.CInventory_GetUserPurchaseInfo_Request\x1a(.CInventory_GetUserPurchaseInfo_Response\"=\x82\xb5\x18\x39Returns information about the user such as their currency\x12|\n\x0cPurchaseInit\x12 .CInventory_PurchaseInit_Request\x1a!.CInventory_PurchaseInit_Response\"\'\x82\xb5\x18#Initializes a purchase for the user\x12u\n\x10PurchaseFinalize\x12$.CInventory_PurchaseFinalize_Request\x1a\x14.CInventory_Response\"%\x82\xb5\x18!Finalizes a purchase for the user\x12x\n\x0bInspectItem\x12\x1f.CInventory_InspectItem_Request\x1a\x14.CInventory_Response\"2\x82\xb5\x18.Get item detail given a valid inspection token\x1a/\x82\xb5\x18+A service that provides access to inventory2\xc4\x01\n\x0fInventoryClient\x12z\n\x0eNotifyNewItems\x12\'.CInventoryClient_NewItems_Notification\x1a\x0b.NoResponse\"2\x82\xb5\x18.Notify client that the user received new items\x1a\x35\x82\xb5\x18-Client notifications inventory service events\xc0\xb5\x18\x02\x42\x03\x90\x01\x01'
   ,
-  dependencies=[steammessages__unified__base__pb2.DESCRIPTOR,])
+  dependencies=[steammessages__base__pb2.DESCRIPTOR,steammessages__unified__base__pb2.DESCRIPTOR,])
 
 
 
@@ -36,6 +36,7 @@ _CINVENTORY_GETINVENTORY_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CInventory_GetInventory_Request.appid', index=0,
@@ -43,14 +44,14 @@ _CINVENTORY_GETINVENTORY_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CInventory_GetInventory_Request.steamid', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -63,8 +64,8 @@ _CINVENTORY_GETINVENTORY_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=67,
-  serialized_end=132,
+  serialized_start=93,
+  serialized_end=158,
 )
 
 
@@ -74,49 +75,50 @@ _CINVENTORY_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='etag', full_name='CInventory_Response.etag', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='removeditemids', full_name='CInventory_Response.removeditemids', index=1,
       number=2, type=4, cpp_type=4, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='item_json', full_name='CInventory_Response.item_json', index=2,
       number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='itemdef_json', full_name='CInventory_Response.itemdef_json', index=3,
       number=4, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='ticket', full_name='CInventory_Response.ticket', index=4,
       number=5, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='replayed', full_name='CInventory_Response.replayed', index=5,
       number=6, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\0303If true, the requestid given was processed earlier.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\0303If true, the requestid given was processed earlier.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -129,8 +131,8 @@ _CINVENTORY_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=135,
-  serialized_end=326,
+  serialized_start=161,
+  serialized_end=352,
 )
 
 
@@ -140,6 +142,7 @@ _CINVENTORY_EXCHANGEITEM_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CInventory_ExchangeItem_Request.appid', index=0,
@@ -147,35 +150,35 @@ _CINVENTORY_EXCHANGEITEM_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CInventory_ExchangeItem_Request.steamid', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='materialsitemid', full_name='CInventory_ExchangeItem_Request.materialsitemid', index=2,
       number=3, type=4, cpp_type=4, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='materialsquantity', full_name='CInventory_ExchangeItem_Request.materialsquantity', index=3,
       number=4, type=13, cpp_type=3, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='outputitemdefid', full_name='CInventory_ExchangeItem_Request.outputitemdefid', index=4,
       number=5, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -188,8 +191,8 @@ _CINVENTORY_EXCHANGEITEM_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=329,
-  serialized_end=471,
+  serialized_start=355,
+  serialized_end=497,
 )
 
 
@@ -199,6 +202,7 @@ _CINVENTORY_GETELIGIBLEPROMOITEMDEFIDS_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CInventory_GetEligiblePromoItemDefIDs_Request.appid', index=0,
@@ -206,14 +210,14 @@ _CINVENTORY_GETELIGIBLEPROMOITEMDEFIDS_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CInventory_GetEligiblePromoItemDefIDs_Request.steamid', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -226,8 +230,8 @@ _CINVENTORY_GETELIGIBLEPROMOITEMDEFIDS_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=473,
-  serialized_end=552,
+  serialized_start=499,
+  serialized_end=578,
 )
 
 
@@ -237,6 +241,7 @@ _CINVENTORY_GETELIGIBLEPROMOITEMDEFIDS_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='itemdefids', full_name='CInventory_GetEligiblePromoItemDefIDs_Response.itemdefids', index=0,
@@ -244,7 +249,7 @@ _CINVENTORY_GETELIGIBLEPROMOITEMDEFIDS_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -257,8 +262,8 @@ _CINVENTORY_GETELIGIBLEPROMOITEMDEFIDS_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=554,
-  serialized_end=622,
+  serialized_start=580,
+  serialized_end=648,
 )
 
 
@@ -268,6 +273,7 @@ _CINVENTORY_ADDITEM_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CInventory_AddItem_Request.appid', index=0,
@@ -275,56 +281,56 @@ _CINVENTORY_ADDITEM_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='itemdefid', full_name='CInventory_AddItem_Request.itemdefid', index=1,
       number=2, type=4, cpp_type=4, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='itempropsjson', full_name='CInventory_AddItem_Request.itempropsjson', index=2,
       number=3, type=9, cpp_type=9, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CInventory_AddItem_Request.steamid', index=3,
       number=4, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='notify', full_name='CInventory_AddItem_Request.notify', index=4,
       number=5, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030HShould notify the user that the item was added to their Steam Inventory.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030HShould notify the user that the item was added to their Steam Inventory.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='requestid', full_name='CInventory_AddItem_Request.requestid', index=5,
       number=6, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='trade_restriction', full_name='CInventory_AddItem_Request.trade_restriction', index=6,
       number=7, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030KIf true, apply the default trade and market restriction times to this item.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030KIf true, apply the default trade and market restriction times to this item.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='is_purchase', full_name='CInventory_AddItem_Request.is_purchase', index=7,
       number=8, type=8, cpp_type=7, label=1,
       has_default_value=True, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030fIf set, treat requestid as a txnid and create this item as a result of user microtransaction purchase.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030fIf set, treat requestid as a txnid and create this item as a result of user microtransaction purchase.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -337,8 +343,8 @@ _CINVENTORY_ADDITEM_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=625,
-  serialized_end=1085,
+  serialized_start=651,
+  serialized_end=1111,
 )
 
 
@@ -348,6 +354,7 @@ _CINVENTORY_MODIFYITEMS_REQUEST_ITEMPROPERTYUPDATE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='itemid', full_name='CInventory_ModifyItems_Request.ItemPropertyUpdate.itemid', index=0,
@@ -355,49 +362,49 @@ _CINVENTORY_MODIFYITEMS_REQUEST_ITEMPROPERTYUPDATE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='remove_property', full_name='CInventory_ModifyItems_Request.ItemPropertyUpdate.remove_property', index=1,
       number=2, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='property_name', full_name='CInventory_ModifyItems_Request.ItemPropertyUpdate.property_name', index=2,
       number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='property_value_bool', full_name='CInventory_ModifyItems_Request.ItemPropertyUpdate.property_value_bool', index=3,
       number=4, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='property_value_int', full_name='CInventory_ModifyItems_Request.ItemPropertyUpdate.property_value_int', index=4,
       number=5, type=3, cpp_type=2, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='property_value_string', full_name='CInventory_ModifyItems_Request.ItemPropertyUpdate.property_value_string', index=5,
       number=6, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='property_value_float', full_name='CInventory_ModifyItems_Request.ItemPropertyUpdate.property_value_float', index=6,
       number=7, type=2, cpp_type=6, label=1,
       has_default_value=False, default_value=float(0),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -410,8 +417,8 @@ _CINVENTORY_MODIFYITEMS_REQUEST_ITEMPROPERTYUPDATE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1243,
-  serialized_end=1445,
+  serialized_start=1269,
+  serialized_end=1471,
 )
 
 _CINVENTORY_MODIFYITEMS_REQUEST = _descriptor.Descriptor(
@@ -420,6 +427,7 @@ _CINVENTORY_MODIFYITEMS_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CInventory_ModifyItems_Request.appid', index=0,
@@ -427,28 +435,28 @@ _CINVENTORY_MODIFYITEMS_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CInventory_ModifyItems_Request.steamid', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='updates', full_name='CInventory_ModifyItems_Request.updates', index=2,
       number=3, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='timestamp', full_name='CInventory_ModifyItems_Request.timestamp', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -461,8 +469,8 @@ _CINVENTORY_MODIFYITEMS_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1088,
-  serialized_end=1445,
+  serialized_start=1114,
+  serialized_end=1471,
 )
 
 
@@ -472,6 +480,7 @@ _CINVENTORY_CONSUMEPLAYTIME_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CInventory_ConsumePlaytime_Request.appid', index=0,
@@ -479,14 +488,14 @@ _CINVENTORY_CONSUMEPLAYTIME_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='itemdefid', full_name='CInventory_ConsumePlaytime_Request.itemdefid', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -499,8 +508,8 @@ _CINVENTORY_CONSUMEPLAYTIME_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1447,
-  serialized_end=1517,
+  serialized_start=1473,
+  serialized_end=1543,
 )
 
 
@@ -510,6 +519,7 @@ _CINVENTORY_CONSUMEITEM_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CInventory_ConsumeItem_Request.appid', index=0,
@@ -517,42 +527,42 @@ _CINVENTORY_CONSUMEITEM_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='itemid', full_name='CInventory_ConsumeItem_Request.itemid', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='quantity', full_name='CInventory_ConsumeItem_Request.quantity', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='timestamp', full_name='CInventory_ConsumeItem_Request.timestamp', index=3,
       number=4, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CInventory_ConsumeItem_Request.steamid', index=4,
       number=5, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='requestid', full_name='CInventory_ConsumeItem_Request.requestid', index=5,
       number=6, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -565,8 +575,8 @@ _CINVENTORY_CONSUMEITEM_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1520,
-  serialized_end=1656,
+  serialized_start=1546,
+  serialized_end=1682,
 )
 
 
@@ -576,6 +586,7 @@ _CINVENTORY_DEVSETNEXTDROP_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CInventory_DevSetNextDrop_Request.appid', index=0,
@@ -583,21 +594,21 @@ _CINVENTORY_DEVSETNEXTDROP_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='itemdefid', full_name='CInventory_DevSetNextDrop_Request.itemdefid', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='droptime', full_name='CInventory_DevSetNextDrop_Request.droptime', index=2,
       number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -610,8 +621,8 @@ _CINVENTORY_DEVSETNEXTDROP_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1658,
-  serialized_end=1745,
+  serialized_start=1684,
+  serialized_end=1771,
 )
 
 
@@ -621,6 +632,7 @@ _CINVENTORY_SPLITITEMSTACK_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CInventory_SplitItemStack_Request.appid', index=0,
@@ -628,28 +640,28 @@ _CINVENTORY_SPLITITEMSTACK_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='itemid', full_name='CInventory_SplitItemStack_Request.itemid', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='quantity', full_name='CInventory_SplitItemStack_Request.quantity', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CInventory_SplitItemStack_Request.steamid', index=3,
       number=5, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -662,8 +674,8 @@ _CINVENTORY_SPLITITEMSTACK_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1747,
-  serialized_end=1848,
+  serialized_start=1773,
+  serialized_end=1874,
 )
 
 
@@ -673,6 +685,7 @@ _CINVENTORY_COMBINEITEMSTACKS_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CInventory_CombineItemStacks_Request.appid', index=0,
@@ -680,35 +693,35 @@ _CINVENTORY_COMBINEITEMSTACKS_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='fromitemid', full_name='CInventory_CombineItemStacks_Request.fromitemid', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='destitemid', full_name='CInventory_CombineItemStacks_Request.destitemid', index=2,
       number=3, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='quantity', full_name='CInventory_CombineItemStacks_Request.quantity', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CInventory_CombineItemStacks_Request.steamid', index=4,
       number=7, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -721,8 +734,8 @@ _CINVENTORY_COMBINEITEMSTACKS_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1851,
-  serialized_end=1979,
+  serialized_start=1877,
+  serialized_end=2005,
 )
 
 
@@ -732,6 +745,7 @@ _CINVENTORY_GETITEMDEFMETA_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CInventory_GetItemDefMeta_Request.appid', index=0,
@@ -739,7 +753,7 @@ _CINVENTORY_GETITEMDEFMETA_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -752,8 +766,8 @@ _CINVENTORY_GETITEMDEFMETA_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1981,
-  serialized_end=2031,
+  serialized_start=2007,
+  serialized_end=2057,
 )
 
 
@@ -763,6 +777,7 @@ _CINVENTORY_GETITEMDEFMETA_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='modified', full_name='CInventory_GetItemDefMeta_Response.modified', index=0,
@@ -770,14 +785,14 @@ _CINVENTORY_GETITEMDEFMETA_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='digest', full_name='CInventory_GetItemDefMeta_Response.digest', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -790,8 +805,8 @@ _CINVENTORY_GETITEMDEFMETA_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=2033,
-  serialized_end=2103,
+  serialized_start=2059,
+  serialized_end=2129,
 )
 
 
@@ -801,6 +816,7 @@ _CINVENTORY_GETUSERPURCHASEINFO_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -814,8 +830,8 @@ _CINVENTORY_GETUSERPURCHASEINFO_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=2105,
-  serialized_end=2145,
+  serialized_start=2131,
+  serialized_end=2171,
 )
 
 
@@ -825,6 +841,7 @@ _CINVENTORY_GETUSERPURCHASEINFO_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='ecurrency', full_name='CInventory_GetUserPurchaseInfo_Response.ecurrency', index=0,
@@ -832,7 +849,7 @@ _CINVENTORY_GETUSERPURCHASEINFO_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -845,8 +862,8 @@ _CINVENTORY_GETUSERPURCHASEINFO_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=2147,
-  serialized_end=2207,
+  serialized_start=2173,
+  serialized_end=2233,
 )
 
 
@@ -856,6 +873,7 @@ _CINVENTORY_PURCHASEINIT_REQUEST_LINEITEM = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='itemdefid', full_name='CInventory_PurchaseInit_Request.LineItem.itemdefid', index=0,
@@ -863,14 +881,14 @@ _CINVENTORY_PURCHASEINIT_REQUEST_LINEITEM = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='quantity', full_name='CInventory_PurchaseInit_Request.LineItem.quantity', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -883,8 +901,8 @@ _CINVENTORY_PURCHASEINIT_REQUEST_LINEITEM = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=2341,
-  serialized_end=2388,
+  serialized_start=2367,
+  serialized_end=2414,
 )
 
 _CINVENTORY_PURCHASEINIT_REQUEST = _descriptor.Descriptor(
@@ -893,6 +911,7 @@ _CINVENTORY_PURCHASEINIT_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CInventory_PurchaseInit_Request.appid', index=0,
@@ -900,21 +919,21 @@ _CINVENTORY_PURCHASEINIT_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='language', full_name='CInventory_PurchaseInit_Request.language', index=1,
       number=2, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='line_items', full_name='CInventory_PurchaseInit_Request.line_items', index=2,
       number=3, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -927,8 +946,8 @@ _CINVENTORY_PURCHASEINIT_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=2210,
-  serialized_end=2388,
+  serialized_start=2236,
+  serialized_end=2414,
 )
 
 
@@ -938,6 +957,7 @@ _CINVENTORY_PURCHASEINIT_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='orderid', full_name='CInventory_PurchaseInit_Response.orderid', index=0,
@@ -945,14 +965,14 @@ _CINVENTORY_PURCHASEINIT_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='transid', full_name='CInventory_PurchaseInit_Response.transid', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -965,8 +985,8 @@ _CINVENTORY_PURCHASEINIT_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=2390,
-  serialized_end=2458,
+  serialized_start=2416,
+  serialized_end=2484,
 )
 
 
@@ -976,6 +996,7 @@ _CINVENTORY_PURCHASEFINALIZE_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CInventory_PurchaseFinalize_Request.appid', index=0,
@@ -983,21 +1004,21 @@ _CINVENTORY_PURCHASEFINALIZE_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='language', full_name='CInventory_PurchaseFinalize_Request.language', index=1,
       number=2, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='orderid', full_name='CInventory_PurchaseFinalize_Request.orderid', index=2,
       number=3, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1010,8 +1031,8 @@ _CINVENTORY_PURCHASEFINALIZE_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=2460,
-  serialized_end=2547,
+  serialized_start=2486,
+  serialized_end=2573,
 )
 
 
@@ -1021,6 +1042,7 @@ _CINVENTORY_INSPECTITEM_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='itemdefid', full_name='CInventory_InspectItem_Request.itemdefid', index=0,
@@ -1028,21 +1050,21 @@ _CINVENTORY_INSPECTITEM_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='itemid', full_name='CInventory_InspectItem_Request.itemid', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='tags', full_name='CInventory_InspectItem_Request.tags', index=2,
       number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1055,8 +1077,8 @@ _CINVENTORY_INSPECTITEM_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=2549,
-  serialized_end=2630,
+  serialized_start=2575,
+  serialized_end=2656,
 )
 
 
@@ -1066,6 +1088,7 @@ _CINVENTORYCLIENT_NEWITEMS_NOTIFICATION = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CInventoryClient_NewItems_Notification.appid', index=0,
@@ -1073,14 +1096,14 @@ _CINVENTORYCLIENT_NEWITEMS_NOTIFICATION = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='inventory_response', full_name='CInventoryClient_NewItems_Notification.inventory_response', index=1,
       number=2, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1093,8 +1116,8 @@ _CINVENTORYCLIENT_NEWITEMS_NOTIFICATION = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=2632,
-  serialized_end=2737,
+  serialized_start=2658,
+  serialized_end=2763,
 )
 
 _CINVENTORY_MODIFYITEMS_REQUEST_ITEMPROPERTYUPDATE.containing_type = _CINVENTORY_MODIFYITEMS_REQUEST
@@ -1125,167 +1148,167 @@ DESCRIPTOR.message_types_by_name['CInventory_InspectItem_Request'] = _CINVENTORY
 DESCRIPTOR.message_types_by_name['CInventoryClient_NewItems_Notification'] = _CINVENTORYCLIENT_NEWITEMS_NOTIFICATION
 _sym_db.RegisterFileDescriptor(DESCRIPTOR)
 
-CInventory_GetInventory_Request = _reflection.GeneratedProtocolMessageType('CInventory_GetInventory_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CINVENTORY_GETINVENTORY_REQUEST,
-  __module__ = 'steammessages_inventory_pb2'
+CInventory_GetInventory_Request = _reflection.GeneratedProtocolMessageType('CInventory_GetInventory_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CINVENTORY_GETINVENTORY_REQUEST,
+  '__module__' : 'steammessages_inventory_pb2'
   # @@protoc_insertion_point(class_scope:CInventory_GetInventory_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CInventory_GetInventory_Request)
 
-CInventory_Response = _reflection.GeneratedProtocolMessageType('CInventory_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CINVENTORY_RESPONSE,
-  __module__ = 'steammessages_inventory_pb2'
+CInventory_Response = _reflection.GeneratedProtocolMessageType('CInventory_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CINVENTORY_RESPONSE,
+  '__module__' : 'steammessages_inventory_pb2'
   # @@protoc_insertion_point(class_scope:CInventory_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CInventory_Response)
 
-CInventory_ExchangeItem_Request = _reflection.GeneratedProtocolMessageType('CInventory_ExchangeItem_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CINVENTORY_EXCHANGEITEM_REQUEST,
-  __module__ = 'steammessages_inventory_pb2'
+CInventory_ExchangeItem_Request = _reflection.GeneratedProtocolMessageType('CInventory_ExchangeItem_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CINVENTORY_EXCHANGEITEM_REQUEST,
+  '__module__' : 'steammessages_inventory_pb2'
   # @@protoc_insertion_point(class_scope:CInventory_ExchangeItem_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CInventory_ExchangeItem_Request)
 
-CInventory_GetEligiblePromoItemDefIDs_Request = _reflection.GeneratedProtocolMessageType('CInventory_GetEligiblePromoItemDefIDs_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CINVENTORY_GETELIGIBLEPROMOITEMDEFIDS_REQUEST,
-  __module__ = 'steammessages_inventory_pb2'
+CInventory_GetEligiblePromoItemDefIDs_Request = _reflection.GeneratedProtocolMessageType('CInventory_GetEligiblePromoItemDefIDs_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CINVENTORY_GETELIGIBLEPROMOITEMDEFIDS_REQUEST,
+  '__module__' : 'steammessages_inventory_pb2'
   # @@protoc_insertion_point(class_scope:CInventory_GetEligiblePromoItemDefIDs_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CInventory_GetEligiblePromoItemDefIDs_Request)
 
-CInventory_GetEligiblePromoItemDefIDs_Response = _reflection.GeneratedProtocolMessageType('CInventory_GetEligiblePromoItemDefIDs_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CINVENTORY_GETELIGIBLEPROMOITEMDEFIDS_RESPONSE,
-  __module__ = 'steammessages_inventory_pb2'
+CInventory_GetEligiblePromoItemDefIDs_Response = _reflection.GeneratedProtocolMessageType('CInventory_GetEligiblePromoItemDefIDs_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CINVENTORY_GETELIGIBLEPROMOITEMDEFIDS_RESPONSE,
+  '__module__' : 'steammessages_inventory_pb2'
   # @@protoc_insertion_point(class_scope:CInventory_GetEligiblePromoItemDefIDs_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CInventory_GetEligiblePromoItemDefIDs_Response)
 
-CInventory_AddItem_Request = _reflection.GeneratedProtocolMessageType('CInventory_AddItem_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CINVENTORY_ADDITEM_REQUEST,
-  __module__ = 'steammessages_inventory_pb2'
+CInventory_AddItem_Request = _reflection.GeneratedProtocolMessageType('CInventory_AddItem_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CINVENTORY_ADDITEM_REQUEST,
+  '__module__' : 'steammessages_inventory_pb2'
   # @@protoc_insertion_point(class_scope:CInventory_AddItem_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CInventory_AddItem_Request)
 
-CInventory_ModifyItems_Request = _reflection.GeneratedProtocolMessageType('CInventory_ModifyItems_Request', (_message.Message,), dict(
+CInventory_ModifyItems_Request = _reflection.GeneratedProtocolMessageType('CInventory_ModifyItems_Request', (_message.Message,), {
 
-  ItemPropertyUpdate = _reflection.GeneratedProtocolMessageType('ItemPropertyUpdate', (_message.Message,), dict(
-    DESCRIPTOR = _CINVENTORY_MODIFYITEMS_REQUEST_ITEMPROPERTYUPDATE,
-    __module__ = 'steammessages_inventory_pb2'
+  'ItemPropertyUpdate' : _reflection.GeneratedProtocolMessageType('ItemPropertyUpdate', (_message.Message,), {
+    'DESCRIPTOR' : _CINVENTORY_MODIFYITEMS_REQUEST_ITEMPROPERTYUPDATE,
+    '__module__' : 'steammessages_inventory_pb2'
     # @@protoc_insertion_point(class_scope:CInventory_ModifyItems_Request.ItemPropertyUpdate)
-    ))
+    })
   ,
-  DESCRIPTOR = _CINVENTORY_MODIFYITEMS_REQUEST,
-  __module__ = 'steammessages_inventory_pb2'
+  'DESCRIPTOR' : _CINVENTORY_MODIFYITEMS_REQUEST,
+  '__module__' : 'steammessages_inventory_pb2'
   # @@protoc_insertion_point(class_scope:CInventory_ModifyItems_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CInventory_ModifyItems_Request)
 _sym_db.RegisterMessage(CInventory_ModifyItems_Request.ItemPropertyUpdate)
 
-CInventory_ConsumePlaytime_Request = _reflection.GeneratedProtocolMessageType('CInventory_ConsumePlaytime_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CINVENTORY_CONSUMEPLAYTIME_REQUEST,
-  __module__ = 'steammessages_inventory_pb2'
+CInventory_ConsumePlaytime_Request = _reflection.GeneratedProtocolMessageType('CInventory_ConsumePlaytime_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CINVENTORY_CONSUMEPLAYTIME_REQUEST,
+  '__module__' : 'steammessages_inventory_pb2'
   # @@protoc_insertion_point(class_scope:CInventory_ConsumePlaytime_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CInventory_ConsumePlaytime_Request)
 
-CInventory_ConsumeItem_Request = _reflection.GeneratedProtocolMessageType('CInventory_ConsumeItem_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CINVENTORY_CONSUMEITEM_REQUEST,
-  __module__ = 'steammessages_inventory_pb2'
+CInventory_ConsumeItem_Request = _reflection.GeneratedProtocolMessageType('CInventory_ConsumeItem_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CINVENTORY_CONSUMEITEM_REQUEST,
+  '__module__' : 'steammessages_inventory_pb2'
   # @@protoc_insertion_point(class_scope:CInventory_ConsumeItem_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CInventory_ConsumeItem_Request)
 
-CInventory_DevSetNextDrop_Request = _reflection.GeneratedProtocolMessageType('CInventory_DevSetNextDrop_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CINVENTORY_DEVSETNEXTDROP_REQUEST,
-  __module__ = 'steammessages_inventory_pb2'
+CInventory_DevSetNextDrop_Request = _reflection.GeneratedProtocolMessageType('CInventory_DevSetNextDrop_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CINVENTORY_DEVSETNEXTDROP_REQUEST,
+  '__module__' : 'steammessages_inventory_pb2'
   # @@protoc_insertion_point(class_scope:CInventory_DevSetNextDrop_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CInventory_DevSetNextDrop_Request)
 
-CInventory_SplitItemStack_Request = _reflection.GeneratedProtocolMessageType('CInventory_SplitItemStack_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CINVENTORY_SPLITITEMSTACK_REQUEST,
-  __module__ = 'steammessages_inventory_pb2'
+CInventory_SplitItemStack_Request = _reflection.GeneratedProtocolMessageType('CInventory_SplitItemStack_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CINVENTORY_SPLITITEMSTACK_REQUEST,
+  '__module__' : 'steammessages_inventory_pb2'
   # @@protoc_insertion_point(class_scope:CInventory_SplitItemStack_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CInventory_SplitItemStack_Request)
 
-CInventory_CombineItemStacks_Request = _reflection.GeneratedProtocolMessageType('CInventory_CombineItemStacks_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CINVENTORY_COMBINEITEMSTACKS_REQUEST,
-  __module__ = 'steammessages_inventory_pb2'
+CInventory_CombineItemStacks_Request = _reflection.GeneratedProtocolMessageType('CInventory_CombineItemStacks_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CINVENTORY_COMBINEITEMSTACKS_REQUEST,
+  '__module__' : 'steammessages_inventory_pb2'
   # @@protoc_insertion_point(class_scope:CInventory_CombineItemStacks_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CInventory_CombineItemStacks_Request)
 
-CInventory_GetItemDefMeta_Request = _reflection.GeneratedProtocolMessageType('CInventory_GetItemDefMeta_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CINVENTORY_GETITEMDEFMETA_REQUEST,
-  __module__ = 'steammessages_inventory_pb2'
+CInventory_GetItemDefMeta_Request = _reflection.GeneratedProtocolMessageType('CInventory_GetItemDefMeta_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CINVENTORY_GETITEMDEFMETA_REQUEST,
+  '__module__' : 'steammessages_inventory_pb2'
   # @@protoc_insertion_point(class_scope:CInventory_GetItemDefMeta_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CInventory_GetItemDefMeta_Request)
 
-CInventory_GetItemDefMeta_Response = _reflection.GeneratedProtocolMessageType('CInventory_GetItemDefMeta_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CINVENTORY_GETITEMDEFMETA_RESPONSE,
-  __module__ = 'steammessages_inventory_pb2'
+CInventory_GetItemDefMeta_Response = _reflection.GeneratedProtocolMessageType('CInventory_GetItemDefMeta_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CINVENTORY_GETITEMDEFMETA_RESPONSE,
+  '__module__' : 'steammessages_inventory_pb2'
   # @@protoc_insertion_point(class_scope:CInventory_GetItemDefMeta_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CInventory_GetItemDefMeta_Response)
 
-CInventory_GetUserPurchaseInfo_Request = _reflection.GeneratedProtocolMessageType('CInventory_GetUserPurchaseInfo_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CINVENTORY_GETUSERPURCHASEINFO_REQUEST,
-  __module__ = 'steammessages_inventory_pb2'
+CInventory_GetUserPurchaseInfo_Request = _reflection.GeneratedProtocolMessageType('CInventory_GetUserPurchaseInfo_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CINVENTORY_GETUSERPURCHASEINFO_REQUEST,
+  '__module__' : 'steammessages_inventory_pb2'
   # @@protoc_insertion_point(class_scope:CInventory_GetUserPurchaseInfo_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CInventory_GetUserPurchaseInfo_Request)
 
-CInventory_GetUserPurchaseInfo_Response = _reflection.GeneratedProtocolMessageType('CInventory_GetUserPurchaseInfo_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CINVENTORY_GETUSERPURCHASEINFO_RESPONSE,
-  __module__ = 'steammessages_inventory_pb2'
+CInventory_GetUserPurchaseInfo_Response = _reflection.GeneratedProtocolMessageType('CInventory_GetUserPurchaseInfo_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CINVENTORY_GETUSERPURCHASEINFO_RESPONSE,
+  '__module__' : 'steammessages_inventory_pb2'
   # @@protoc_insertion_point(class_scope:CInventory_GetUserPurchaseInfo_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CInventory_GetUserPurchaseInfo_Response)
 
-CInventory_PurchaseInit_Request = _reflection.GeneratedProtocolMessageType('CInventory_PurchaseInit_Request', (_message.Message,), dict(
+CInventory_PurchaseInit_Request = _reflection.GeneratedProtocolMessageType('CInventory_PurchaseInit_Request', (_message.Message,), {
 
-  LineItem = _reflection.GeneratedProtocolMessageType('LineItem', (_message.Message,), dict(
-    DESCRIPTOR = _CINVENTORY_PURCHASEINIT_REQUEST_LINEITEM,
-    __module__ = 'steammessages_inventory_pb2'
+  'LineItem' : _reflection.GeneratedProtocolMessageType('LineItem', (_message.Message,), {
+    'DESCRIPTOR' : _CINVENTORY_PURCHASEINIT_REQUEST_LINEITEM,
+    '__module__' : 'steammessages_inventory_pb2'
     # @@protoc_insertion_point(class_scope:CInventory_PurchaseInit_Request.LineItem)
-    ))
+    })
   ,
-  DESCRIPTOR = _CINVENTORY_PURCHASEINIT_REQUEST,
-  __module__ = 'steammessages_inventory_pb2'
+  'DESCRIPTOR' : _CINVENTORY_PURCHASEINIT_REQUEST,
+  '__module__' : 'steammessages_inventory_pb2'
   # @@protoc_insertion_point(class_scope:CInventory_PurchaseInit_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CInventory_PurchaseInit_Request)
 _sym_db.RegisterMessage(CInventory_PurchaseInit_Request.LineItem)
 
-CInventory_PurchaseInit_Response = _reflection.GeneratedProtocolMessageType('CInventory_PurchaseInit_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CINVENTORY_PURCHASEINIT_RESPONSE,
-  __module__ = 'steammessages_inventory_pb2'
+CInventory_PurchaseInit_Response = _reflection.GeneratedProtocolMessageType('CInventory_PurchaseInit_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CINVENTORY_PURCHASEINIT_RESPONSE,
+  '__module__' : 'steammessages_inventory_pb2'
   # @@protoc_insertion_point(class_scope:CInventory_PurchaseInit_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CInventory_PurchaseInit_Response)
 
-CInventory_PurchaseFinalize_Request = _reflection.GeneratedProtocolMessageType('CInventory_PurchaseFinalize_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CINVENTORY_PURCHASEFINALIZE_REQUEST,
-  __module__ = 'steammessages_inventory_pb2'
+CInventory_PurchaseFinalize_Request = _reflection.GeneratedProtocolMessageType('CInventory_PurchaseFinalize_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CINVENTORY_PURCHASEFINALIZE_REQUEST,
+  '__module__' : 'steammessages_inventory_pb2'
   # @@protoc_insertion_point(class_scope:CInventory_PurchaseFinalize_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CInventory_PurchaseFinalize_Request)
 
-CInventory_InspectItem_Request = _reflection.GeneratedProtocolMessageType('CInventory_InspectItem_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CINVENTORY_INSPECTITEM_REQUEST,
-  __module__ = 'steammessages_inventory_pb2'
+CInventory_InspectItem_Request = _reflection.GeneratedProtocolMessageType('CInventory_InspectItem_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CINVENTORY_INSPECTITEM_REQUEST,
+  '__module__' : 'steammessages_inventory_pb2'
   # @@protoc_insertion_point(class_scope:CInventory_InspectItem_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CInventory_InspectItem_Request)
 
-CInventoryClient_NewItems_Notification = _reflection.GeneratedProtocolMessageType('CInventoryClient_NewItems_Notification', (_message.Message,), dict(
-  DESCRIPTOR = _CINVENTORYCLIENT_NEWITEMS_NOTIFICATION,
-  __module__ = 'steammessages_inventory_pb2'
+CInventoryClient_NewItems_Notification = _reflection.GeneratedProtocolMessageType('CInventoryClient_NewItems_Notification', (_message.Message,), {
+  'DESCRIPTOR' : _CINVENTORYCLIENT_NEWITEMS_NOTIFICATION,
+  '__module__' : 'steammessages_inventory_pb2'
   # @@protoc_insertion_point(class_scope:CInventoryClient_NewItems_Notification)
-  ))
+  })
 _sym_db.RegisterMessage(CInventoryClient_NewItems_Notification)
 
 
@@ -1300,9 +1323,10 @@ _INVENTORY = _descriptor.ServiceDescriptor(
   full_name='Inventory',
   file=DESCRIPTOR,
   index=0,
-  serialized_options=_b('\202\265\030+A service that provides access to inventory'),
-  serialized_start=2740,
-  serialized_end=4847,
+  serialized_options=b'\202\265\030+A service that provides access to inventory',
+  create_key=_descriptor._internal_create_key,
+  serialized_start=2766,
+  serialized_end=4873,
   methods=[
   _descriptor.MethodDescriptor(
     name='GetInventory',
@@ -1311,7 +1335,8 @@ _INVENTORY = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CINVENTORY_GETINVENTORY_REQUEST,
     output_type=_CINVENTORY_RESPONSE,
-    serialized_options=_b('\202\265\030.Retrieves a users inventory as a big JSON blob'),
+    serialized_options=b'\202\265\030.Retrieves a users inventory as a big JSON blob',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='ExchangeItem',
@@ -1320,7 +1345,8 @@ _INVENTORY = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CINVENTORY_EXCHANGEITEM_REQUEST,
     output_type=_CINVENTORY_RESPONSE,
-    serialized_options=_b('\202\265\030#Craft an item in a user\'s inventory'),
+    serialized_options=b'\202\265\030#Craft an item in a user\'s inventory',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetEligiblePromoItemDefIDs',
@@ -1329,7 +1355,8 @@ _INVENTORY = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CINVENTORY_GETELIGIBLEPROMOITEMDEFIDS_REQUEST,
     output_type=_CINVENTORY_GETELIGIBLEPROMOITEMDEFIDS_RESPONSE,
-    serialized_options=_b('\202\265\030:Returns a list of promo item defs the user is eligible for'),
+    serialized_options=b'\202\265\030:Returns a list of promo item defs the user is eligible for',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='AddPromoItem',
@@ -1338,7 +1365,8 @@ _INVENTORY = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CINVENTORY_ADDITEM_REQUEST,
     output_type=_CINVENTORY_RESPONSE,
-    serialized_options=_b('\202\265\030\'Adds a promo item to a user\'s inventory'),
+    serialized_options=b'\202\265\030\'Adds a promo item to a user\'s inventory',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='SafeModifyItems',
@@ -1347,7 +1375,8 @@ _INVENTORY = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CINVENTORY_MODIFYITEMS_REQUEST,
     output_type=_CINVENTORY_RESPONSE,
-    serialized_options=_b('\202\265\030;Modify an item in a user\'s inventory (safe properties only)'),
+    serialized_options=b'\202\265\030;Modify an item in a user\'s inventory (safe properties only)',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='ConsumePlaytime',
@@ -1356,7 +1385,8 @@ _INVENTORY = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CINVENTORY_CONSUMEPLAYTIME_REQUEST,
     output_type=_CINVENTORY_RESPONSE,
-    serialized_options=_b('\202\265\0305Consumes playtime and possibly returns a granted item'),
+    serialized_options=b'\202\265\0305Consumes playtime and possibly returns a granted item',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='ConsumeItem',
@@ -1365,7 +1395,8 @@ _INVENTORY = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CINVENTORY_CONSUMEITEM_REQUEST,
     output_type=_CINVENTORY_RESPONSE,
-    serialized_options=_b('\202\265\030\017Consume an item'),
+    serialized_options=b'\202\265\030\017Consume an item',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='DevGenerateItem',
@@ -1374,7 +1405,8 @@ _INVENTORY = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CINVENTORY_ADDITEM_REQUEST,
     output_type=_CINVENTORY_RESPONSE,
-    serialized_options=_b('\202\265\030$Grant an item when in developer mode'),
+    serialized_options=b'\202\265\030$Grant an item when in developer mode',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='DevSetNextDrop',
@@ -1383,7 +1415,8 @@ _INVENTORY = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CINVENTORY_DEVSETNEXTDROP_REQUEST,
     output_type=_CINVENTORY_RESPONSE,
-    serialized_options=_b('\202\265\030\017Consume an item'),
+    serialized_options=b'\202\265\030\017Consume an item',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='SplitItemStack',
@@ -1392,7 +1425,8 @@ _INVENTORY = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CINVENTORY_SPLITITEMSTACK_REQUEST,
     output_type=_CINVENTORY_RESPONSE,
-    serialized_options=_b('\202\265\030#Split an item stack into two stacks'),
+    serialized_options=b'\202\265\030#Split an item stack into two stacks',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='CombineItemStacks',
@@ -1401,7 +1435,8 @@ _INVENTORY = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CINVENTORY_COMBINEITEMSTACKS_REQUEST,
     output_type=_CINVENTORY_RESPONSE,
-    serialized_options=_b('\202\265\030\033Combine two stacks of items'),
+    serialized_options=b'\202\265\030\033Combine two stacks of items',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetItemDefMeta',
@@ -1410,7 +1445,8 @@ _INVENTORY = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CINVENTORY_GETITEMDEFMETA_REQUEST,
     output_type=_CINVENTORY_GETITEMDEFMETA_RESPONSE,
-    serialized_options=_b('\202\265\030=Get metadata about the current item definition for this game.'),
+    serialized_options=b'\202\265\030=Get metadata about the current item definition for this game.',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetUserPurchaseInfo',
@@ -1419,7 +1455,8 @@ _INVENTORY = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CINVENTORY_GETUSERPURCHASEINFO_REQUEST,
     output_type=_CINVENTORY_GETUSERPURCHASEINFO_RESPONSE,
-    serialized_options=_b('\202\265\0309Returns information about the user such as their currency'),
+    serialized_options=b'\202\265\0309Returns information about the user such as their currency',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='PurchaseInit',
@@ -1428,7 +1465,8 @@ _INVENTORY = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CINVENTORY_PURCHASEINIT_REQUEST,
     output_type=_CINVENTORY_PURCHASEINIT_RESPONSE,
-    serialized_options=_b('\202\265\030#Initializes a purchase for the user'),
+    serialized_options=b'\202\265\030#Initializes a purchase for the user',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='PurchaseFinalize',
@@ -1437,7 +1475,8 @@ _INVENTORY = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CINVENTORY_PURCHASEFINALIZE_REQUEST,
     output_type=_CINVENTORY_RESPONSE,
-    serialized_options=_b('\202\265\030!Finalizes a purchase for the user'),
+    serialized_options=b'\202\265\030!Finalizes a purchase for the user',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='InspectItem',
@@ -1446,7 +1485,8 @@ _INVENTORY = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CINVENTORY_INSPECTITEM_REQUEST,
     output_type=_CINVENTORY_RESPONSE,
-    serialized_options=_b('\202\265\030.Get item detail given a valid inspection token'),
+    serialized_options=b'\202\265\030.Get item detail given a valid inspection token',
+    create_key=_descriptor._internal_create_key,
   ),
 ])
 _sym_db.RegisterServiceDescriptor(_INVENTORY)
@@ -1459,9 +1499,10 @@ _INVENTORYCLIENT = _descriptor.ServiceDescriptor(
   full_name='InventoryClient',
   file=DESCRIPTOR,
   index=1,
-  serialized_options=_b('\202\265\030-Client notifications inventory service events\300\265\030\002'),
-  serialized_start=4850,
-  serialized_end=5046,
+  serialized_options=b'\202\265\030-Client notifications inventory service events\300\265\030\002',
+  create_key=_descriptor._internal_create_key,
+  serialized_start=4876,
+  serialized_end=5072,
   methods=[
   _descriptor.MethodDescriptor(
     name='NotifyNewItems',
@@ -1470,7 +1511,8 @@ _INVENTORYCLIENT = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CINVENTORYCLIENT_NEWITEMS_NOTIFICATION,
     output_type=steammessages__unified__base__pb2._NORESPONSE,
-    serialized_options=_b('\202\265\030.Notify client that the user received new items'),
+    serialized_options=b'\202\265\030.Notify client that the user received new items',
+    create_key=_descriptor._internal_create_key,
   ),
 ])
 _sym_db.RegisterServiceDescriptor(_INVENTORYCLIENT)
diff --git a/steam/protobufs/steammessages_linkfilter_pb2.py b/steam/protobufs/steammessages_linkfilter_pb2.py
index aa0960a..72bf088 100644
--- a/steam/protobufs/steammessages_linkfilter_pb2.py
+++ b/steam/protobufs/steammessages_linkfilter_pb2.py
@@ -1,9 +1,7 @@
 # -*- coding: utf-8 -*-
 # Generated by the protocol buffer compiler.  DO NOT EDIT!
 # source: steammessages_linkfilter.proto
-
-import sys
-_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1'))
+"""Generated protocol buffer code."""
 from google.protobuf import descriptor as _descriptor
 from google.protobuf import message as _message
 from google.protobuf import reflection as _reflection
@@ -15,6 +13,7 @@ from google.protobuf import service_reflection
 _sym_db = _symbol_database.Default()
 
 
+import steam.protobufs.steammessages_base_pb2 as steammessages__base__pb2
 import steam.protobufs.steammessages_unified_base_pb2 as steammessages__unified__base__pb2
 
 
@@ -22,10 +21,11 @@ DESCRIPTOR = _descriptor.FileDescriptor(
   name='steammessages_linkfilter.proto',
   package='',
   syntax='proto2',
-  serialized_options=_b('\220\001\001'),
-  serialized_pb=_b('\n\x1esteammessages_linkfilter.proto\x1a steammessages_unified_base.proto\"\x9d\x02\n,CCommunity_GetLinkFilterHashPrefixes_Request\x12G\n\x08hit_type\x18\x01 \x01(\rB5\x82\xb5\x18\x31The retrieved hits will be filtered to this type.\x12\\\n\x05\x63ount\x18\x02 \x01(\rBM\x82\xb5\x18IThe number of hits to retrieve in a single batch. Specify 0 for no limit.\x12\x46\n\x05start\x18\x03 \x01(\x04\x42\x37\x82\xb5\x18\x33The starting count when retrieving hits in batches.\"\x87\x01\n-CCommunity_GetLinkFilterHashPrefixes_Response\x12V\n\rhash_prefixes\x18\x01 \x03(\rB?\x82\xb5\x18;The first 32 bits of the SHA1 hashes of each hit requested.\"\x97\x02\n&CCommunity_GetLinkFilterHashes_Request\x12G\n\x08hit_type\x18\x01 \x01(\rB5\x82\xb5\x18\x31The retrieved hits will be filtered to this type.\x12\\\n\x05\x63ount\x18\x02 \x01(\rBM\x82\xb5\x18IThe number of hits to retrieve in a single batch. Specify 0 for no limit.\x12\x46\n\x05start\x18\x03 \x01(\x04\x42\x37\x82\xb5\x18\x33The starting count when retrieving hits in batches.\"j\n\'CCommunity_GetLinkFilterHashes_Response\x12?\n\x06hashes\x18\x01 \x03(\x0c\x42/\x82\xb5\x18+A list of hashes returned from our request.\"\x80\x01\n+CCommunity_GetLinkFilterListVersion_Request\x12Q\n\x08hit_type\x18\x01 \x01(\rB?\x82\xb5\x18;The version hashes for this type\'s chunks will be returned.\"\xaa\x01\n,CCommunity_GetLinkFilterListVersion_Response\x12\x46\n\x07version\x18\x01 \x01(\tB5\x82\xb5\x18\x31\x41 hash built using the IDs of the contained hits.\x12\x32\n\x05\x63ount\x18\x02 \x01(\x04\x42#\x82\xb5\x18\x1fThe number of hits of this type2\xc6\x05\n\x13\x43ommunityLinkFilter\x12\xd2\x01\n\x19GetLinkFilterHashPrefixes\x12-.CCommunity_GetLinkFilterHashPrefixes_Request\x1a..CCommunity_GetLinkFilterHashPrefixes_Response\"V\x82\xb5\x18RGet a list of hash prefixes for the specified hit type, to use for client caching.\x12\xb9\x01\n\x13GetLinkFilterHashes\x12\'.CCommunity_GetLinkFilterHashes_Request\x1a(.CCommunity_GetLinkFilterHashes_Response\"O\x82\xb5\x18KGet a list of hashes for the specified hit type, to use for client caching.\x12\xcd\x01\n\x18GetLinkFilterListVersion\x12,.CCommunity_GetLinkFilterListVersion_Request\x1a-.CCommunity_GetLinkFilterListVersion_Response\"T\x82\xb5\x18PGet a list of hashes describing the version of each chunk of the requested size.\x1aN\x82\xb5\x18JA service for recording data about Steam Community phishing link filteringB\x03\x90\x01\x01')
+  serialized_options=b'\220\001\001',
+  create_key=_descriptor._internal_create_key,
+  serialized_pb=b'\n\x1esteammessages_linkfilter.proto\x1a\x18steammessages_base.proto\x1a steammessages_unified_base.proto\"\x9d\x02\n,CCommunity_GetLinkFilterHashPrefixes_Request\x12G\n\x08hit_type\x18\x01 \x01(\rB5\x82\xb5\x18\x31The retrieved hits will be filtered to this type.\x12\\\n\x05\x63ount\x18\x02 \x01(\rBM\x82\xb5\x18IThe number of hits to retrieve in a single batch. Specify 0 for no limit.\x12\x46\n\x05start\x18\x03 \x01(\x04\x42\x37\x82\xb5\x18\x33The starting count when retrieving hits in batches.\"\x87\x01\n-CCommunity_GetLinkFilterHashPrefixes_Response\x12V\n\rhash_prefixes\x18\x01 \x03(\rB?\x82\xb5\x18;The first 32 bits of the SHA1 hashes of each hit requested.\"\x97\x02\n&CCommunity_GetLinkFilterHashes_Request\x12G\n\x08hit_type\x18\x01 \x01(\rB5\x82\xb5\x18\x31The retrieved hits will be filtered to this type.\x12\\\n\x05\x63ount\x18\x02 \x01(\rBM\x82\xb5\x18IThe number of hits to retrieve in a single batch. Specify 0 for no limit.\x12\x46\n\x05start\x18\x03 \x01(\x04\x42\x37\x82\xb5\x18\x33The starting count when retrieving hits in batches.\"j\n\'CCommunity_GetLinkFilterHashes_Response\x12?\n\x06hashes\x18\x01 \x03(\x0c\x42/\x82\xb5\x18+A list of hashes returned from our request.\"\x80\x01\n+CCommunity_GetLinkFilterListVersion_Request\x12Q\n\x08hit_type\x18\x01 \x01(\rB?\x82\xb5\x18;The version hashes for this type\'s chunks will be returned.\"\xaa\x01\n,CCommunity_GetLinkFilterListVersion_Response\x12\x46\n\x07version\x18\x01 \x01(\tB5\x82\xb5\x18\x31\x41 hash built using the IDs of the contained hits.\x12\x32\n\x05\x63ount\x18\x02 \x01(\x04\x42#\x82\xb5\x18\x1fThe number of hits of this type2\xc6\x05\n\x13\x43ommunityLinkFilter\x12\xd2\x01\n\x19GetLinkFilterHashPrefixes\x12-.CCommunity_GetLinkFilterHashPrefixes_Request\x1a..CCommunity_GetLinkFilterHashPrefixes_Response\"V\x82\xb5\x18RGet a list of hash prefixes for the specified hit type, to use for client caching.\x12\xb9\x01\n\x13GetLinkFilterHashes\x12\'.CCommunity_GetLinkFilterHashes_Request\x1a(.CCommunity_GetLinkFilterHashes_Response\"O\x82\xb5\x18KGet a list of hashes for the specified hit type, to use for client caching.\x12\xcd\x01\n\x18GetLinkFilterListVersion\x12,.CCommunity_GetLinkFilterListVersion_Request\x1a-.CCommunity_GetLinkFilterListVersion_Response\"T\x82\xb5\x18PGet a list of hashes describing the version of each chunk of the requested size.\x1aN\x82\xb5\x18JA service for recording data about Steam Community phishing link filteringB\x03\x90\x01\x01'
   ,
-  dependencies=[steammessages__unified__base__pb2.DESCRIPTOR,])
+  dependencies=[steammessages__base__pb2.DESCRIPTOR,steammessages__unified__base__pb2.DESCRIPTOR,])
 
 
 
@@ -36,6 +36,7 @@ _CCOMMUNITY_GETLINKFILTERHASHPREFIXES_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='hit_type', full_name='CCommunity_GetLinkFilterHashPrefixes_Request.hit_type', index=0,
@@ -43,21 +44,21 @@ _CCOMMUNITY_GETLINKFILTERHASHPREFIXES_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\0301The retrieved hits will be filtered to this type.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\0301The retrieved hits will be filtered to this type.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='count', full_name='CCommunity_GetLinkFilterHashPrefixes_Request.count', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030IThe number of hits to retrieve in a single batch. Specify 0 for no limit.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030IThe number of hits to retrieve in a single batch. Specify 0 for no limit.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='start', full_name='CCommunity_GetLinkFilterHashPrefixes_Request.start', index=2,
       number=3, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\0303The starting count when retrieving hits in batches.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\0303The starting count when retrieving hits in batches.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -70,8 +71,8 @@ _CCOMMUNITY_GETLINKFILTERHASHPREFIXES_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=69,
-  serialized_end=354,
+  serialized_start=95,
+  serialized_end=380,
 )
 
 
@@ -81,6 +82,7 @@ _CCOMMUNITY_GETLINKFILTERHASHPREFIXES_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='hash_prefixes', full_name='CCommunity_GetLinkFilterHashPrefixes_Response.hash_prefixes', index=0,
@@ -88,7 +90,7 @@ _CCOMMUNITY_GETLINKFILTERHASHPREFIXES_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030;The first 32 bits of the SHA1 hashes of each hit requested.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030;The first 32 bits of the SHA1 hashes of each hit requested.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -101,8 +103,8 @@ _CCOMMUNITY_GETLINKFILTERHASHPREFIXES_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=357,
-  serialized_end=492,
+  serialized_start=383,
+  serialized_end=518,
 )
 
 
@@ -112,6 +114,7 @@ _CCOMMUNITY_GETLINKFILTERHASHES_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='hit_type', full_name='CCommunity_GetLinkFilterHashes_Request.hit_type', index=0,
@@ -119,21 +122,21 @@ _CCOMMUNITY_GETLINKFILTERHASHES_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\0301The retrieved hits will be filtered to this type.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\0301The retrieved hits will be filtered to this type.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='count', full_name='CCommunity_GetLinkFilterHashes_Request.count', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030IThe number of hits to retrieve in a single batch. Specify 0 for no limit.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030IThe number of hits to retrieve in a single batch. Specify 0 for no limit.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='start', full_name='CCommunity_GetLinkFilterHashes_Request.start', index=2,
       number=3, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\0303The starting count when retrieving hits in batches.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\0303The starting count when retrieving hits in batches.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -146,8 +149,8 @@ _CCOMMUNITY_GETLINKFILTERHASHES_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=495,
-  serialized_end=774,
+  serialized_start=521,
+  serialized_end=800,
 )
 
 
@@ -157,6 +160,7 @@ _CCOMMUNITY_GETLINKFILTERHASHES_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='hashes', full_name='CCommunity_GetLinkFilterHashes_Response.hashes', index=0,
@@ -164,7 +168,7 @@ _CCOMMUNITY_GETLINKFILTERHASHES_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030+A list of hashes returned from our request.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030+A list of hashes returned from our request.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -177,8 +181,8 @@ _CCOMMUNITY_GETLINKFILTERHASHES_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=776,
-  serialized_end=882,
+  serialized_start=802,
+  serialized_end=908,
 )
 
 
@@ -188,6 +192,7 @@ _CCOMMUNITY_GETLINKFILTERLISTVERSION_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='hit_type', full_name='CCommunity_GetLinkFilterListVersion_Request.hit_type', index=0,
@@ -195,7 +200,7 @@ _CCOMMUNITY_GETLINKFILTERLISTVERSION_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030;The version hashes for this type\'s chunks will be returned.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030;The version hashes for this type\'s chunks will be returned.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -208,8 +213,8 @@ _CCOMMUNITY_GETLINKFILTERLISTVERSION_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=885,
-  serialized_end=1013,
+  serialized_start=911,
+  serialized_end=1039,
 )
 
 
@@ -219,21 +224,22 @@ _CCOMMUNITY_GETLINKFILTERLISTVERSION_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='version', full_name='CCommunity_GetLinkFilterListVersion_Response.version', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\0301A hash built using the IDs of the contained hits.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\0301A hash built using the IDs of the contained hits.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='count', full_name='CCommunity_GetLinkFilterListVersion_Response.count', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\037The number of hits of this type'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\037The number of hits of this type', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -246,8 +252,8 @@ _CCOMMUNITY_GETLINKFILTERLISTVERSION_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1016,
-  serialized_end=1186,
+  serialized_start=1042,
+  serialized_end=1212,
 )
 
 DESCRIPTOR.message_types_by_name['CCommunity_GetLinkFilterHashPrefixes_Request'] = _CCOMMUNITY_GETLINKFILTERHASHPREFIXES_REQUEST
@@ -258,46 +264,46 @@ DESCRIPTOR.message_types_by_name['CCommunity_GetLinkFilterListVersion_Request']
 DESCRIPTOR.message_types_by_name['CCommunity_GetLinkFilterListVersion_Response'] = _CCOMMUNITY_GETLINKFILTERLISTVERSION_RESPONSE
 _sym_db.RegisterFileDescriptor(DESCRIPTOR)
 
-CCommunity_GetLinkFilterHashPrefixes_Request = _reflection.GeneratedProtocolMessageType('CCommunity_GetLinkFilterHashPrefixes_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCOMMUNITY_GETLINKFILTERHASHPREFIXES_REQUEST,
-  __module__ = 'steammessages_linkfilter_pb2'
+CCommunity_GetLinkFilterHashPrefixes_Request = _reflection.GeneratedProtocolMessageType('CCommunity_GetLinkFilterHashPrefixes_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCOMMUNITY_GETLINKFILTERHASHPREFIXES_REQUEST,
+  '__module__' : 'steammessages_linkfilter_pb2'
   # @@protoc_insertion_point(class_scope:CCommunity_GetLinkFilterHashPrefixes_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CCommunity_GetLinkFilterHashPrefixes_Request)
 
-CCommunity_GetLinkFilterHashPrefixes_Response = _reflection.GeneratedProtocolMessageType('CCommunity_GetLinkFilterHashPrefixes_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCOMMUNITY_GETLINKFILTERHASHPREFIXES_RESPONSE,
-  __module__ = 'steammessages_linkfilter_pb2'
+CCommunity_GetLinkFilterHashPrefixes_Response = _reflection.GeneratedProtocolMessageType('CCommunity_GetLinkFilterHashPrefixes_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCOMMUNITY_GETLINKFILTERHASHPREFIXES_RESPONSE,
+  '__module__' : 'steammessages_linkfilter_pb2'
   # @@protoc_insertion_point(class_scope:CCommunity_GetLinkFilterHashPrefixes_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CCommunity_GetLinkFilterHashPrefixes_Response)
 
-CCommunity_GetLinkFilterHashes_Request = _reflection.GeneratedProtocolMessageType('CCommunity_GetLinkFilterHashes_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCOMMUNITY_GETLINKFILTERHASHES_REQUEST,
-  __module__ = 'steammessages_linkfilter_pb2'
+CCommunity_GetLinkFilterHashes_Request = _reflection.GeneratedProtocolMessageType('CCommunity_GetLinkFilterHashes_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCOMMUNITY_GETLINKFILTERHASHES_REQUEST,
+  '__module__' : 'steammessages_linkfilter_pb2'
   # @@protoc_insertion_point(class_scope:CCommunity_GetLinkFilterHashes_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CCommunity_GetLinkFilterHashes_Request)
 
-CCommunity_GetLinkFilterHashes_Response = _reflection.GeneratedProtocolMessageType('CCommunity_GetLinkFilterHashes_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCOMMUNITY_GETLINKFILTERHASHES_RESPONSE,
-  __module__ = 'steammessages_linkfilter_pb2'
+CCommunity_GetLinkFilterHashes_Response = _reflection.GeneratedProtocolMessageType('CCommunity_GetLinkFilterHashes_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCOMMUNITY_GETLINKFILTERHASHES_RESPONSE,
+  '__module__' : 'steammessages_linkfilter_pb2'
   # @@protoc_insertion_point(class_scope:CCommunity_GetLinkFilterHashes_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CCommunity_GetLinkFilterHashes_Response)
 
-CCommunity_GetLinkFilterListVersion_Request = _reflection.GeneratedProtocolMessageType('CCommunity_GetLinkFilterListVersion_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCOMMUNITY_GETLINKFILTERLISTVERSION_REQUEST,
-  __module__ = 'steammessages_linkfilter_pb2'
+CCommunity_GetLinkFilterListVersion_Request = _reflection.GeneratedProtocolMessageType('CCommunity_GetLinkFilterListVersion_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCOMMUNITY_GETLINKFILTERLISTVERSION_REQUEST,
+  '__module__' : 'steammessages_linkfilter_pb2'
   # @@protoc_insertion_point(class_scope:CCommunity_GetLinkFilterListVersion_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CCommunity_GetLinkFilterListVersion_Request)
 
-CCommunity_GetLinkFilterListVersion_Response = _reflection.GeneratedProtocolMessageType('CCommunity_GetLinkFilterListVersion_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCOMMUNITY_GETLINKFILTERLISTVERSION_RESPONSE,
-  __module__ = 'steammessages_linkfilter_pb2'
+CCommunity_GetLinkFilterListVersion_Response = _reflection.GeneratedProtocolMessageType('CCommunity_GetLinkFilterListVersion_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCOMMUNITY_GETLINKFILTERLISTVERSION_RESPONSE,
+  '__module__' : 'steammessages_linkfilter_pb2'
   # @@protoc_insertion_point(class_scope:CCommunity_GetLinkFilterListVersion_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CCommunity_GetLinkFilterListVersion_Response)
 
 
@@ -319,9 +325,10 @@ _COMMUNITYLINKFILTER = _descriptor.ServiceDescriptor(
   full_name='CommunityLinkFilter',
   file=DESCRIPTOR,
   index=0,
-  serialized_options=_b('\202\265\030JA service for recording data about Steam Community phishing link filtering'),
-  serialized_start=1189,
-  serialized_end=1899,
+  serialized_options=b'\202\265\030JA service for recording data about Steam Community phishing link filtering',
+  create_key=_descriptor._internal_create_key,
+  serialized_start=1215,
+  serialized_end=1925,
   methods=[
   _descriptor.MethodDescriptor(
     name='GetLinkFilterHashPrefixes',
@@ -330,7 +337,8 @@ _COMMUNITYLINKFILTER = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CCOMMUNITY_GETLINKFILTERHASHPREFIXES_REQUEST,
     output_type=_CCOMMUNITY_GETLINKFILTERHASHPREFIXES_RESPONSE,
-    serialized_options=_b('\202\265\030RGet a list of hash prefixes for the specified hit type, to use for client caching.'),
+    serialized_options=b'\202\265\030RGet a list of hash prefixes for the specified hit type, to use for client caching.',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetLinkFilterHashes',
@@ -339,7 +347,8 @@ _COMMUNITYLINKFILTER = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CCOMMUNITY_GETLINKFILTERHASHES_REQUEST,
     output_type=_CCOMMUNITY_GETLINKFILTERHASHES_RESPONSE,
-    serialized_options=_b('\202\265\030KGet a list of hashes for the specified hit type, to use for client caching.'),
+    serialized_options=b'\202\265\030KGet a list of hashes for the specified hit type, to use for client caching.',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetLinkFilterListVersion',
@@ -348,7 +357,8 @@ _COMMUNITYLINKFILTER = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CCOMMUNITY_GETLINKFILTERLISTVERSION_REQUEST,
     output_type=_CCOMMUNITY_GETLINKFILTERLISTVERSION_RESPONSE,
-    serialized_options=_b('\202\265\030PGet a list of hashes describing the version of each chunk of the requested size.'),
+    serialized_options=b'\202\265\030PGet a list of hashes describing the version of each chunk of the requested size.',
+    create_key=_descriptor._internal_create_key,
   ),
 ])
 _sym_db.RegisterServiceDescriptor(_COMMUNITYLINKFILTER)
diff --git a/steam/protobufs/steammessages_lobbymatchmaking_pb2.py b/steam/protobufs/steammessages_lobbymatchmaking_pb2.py
index 00aa08d..f4d9691 100644
--- a/steam/protobufs/steammessages_lobbymatchmaking_pb2.py
+++ b/steam/protobufs/steammessages_lobbymatchmaking_pb2.py
@@ -1,9 +1,7 @@
 # -*- coding: utf-8 -*-
 # Generated by the protocol buffer compiler.  DO NOT EDIT!
 # source: steammessages_lobbymatchmaking.proto
-
-import sys
-_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1'))
+"""Generated protocol buffer code."""
 from google.protobuf.internal import enum_type_wrapper
 from google.protobuf import descriptor as _descriptor
 from google.protobuf import message as _message
@@ -16,6 +14,7 @@ from google.protobuf import service_reflection
 _sym_db = _symbol_database.Default()
 
 
+import steam.protobufs.steammessages_base_pb2 as steammessages__base__pb2
 import steam.protobufs.steammessages_unified_base_pb2 as steammessages__unified__base__pb2
 
 
@@ -23,38 +22,44 @@ DESCRIPTOR = _descriptor.FileDescriptor(
   name='steammessages_lobbymatchmaking.proto',
   package='',
   syntax='proto2',
-  serialized_options=_b('\220\001\001'),
-  serialized_pb=_b('\n$steammessages_lobbymatchmaking.proto\x1a steammessages_unified_base.proto\"\x9e\x01\n-LobbyMatchmakingLegacy_GetLobbyStatus_Request\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x15\n\rsteamid_lobby\x18\x02 \x01(\x06\x12\x17\n\x0f\x63laim_ownership\x18\x03 \x01(\x08\x12\x18\n\x10\x63laim_membership\x18\x04 \x01(\x08\x12\x13\n\x0bversion_num\x18\x05 \x01(\r\"\x93\x01\n.LobbyMatchmakingLegacy_GetLobbyStatus_Response\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x15\n\rsteamid_lobby\x18\x02 \x01(\x06\x12:\n\x0clobby_status\x18\x03 \x01(\x0e\x32\r.ELobbyStatus:\x15k_ELobbyStatusInvalid*\x81\x01\n\x0c\x45LobbyStatus\x12\x19\n\x15k_ELobbyStatusInvalid\x10\x00\x12\x18\n\x14k_ELobbyStatusExists\x10\x01\x12\x1e\n\x1ak_ELobbyStatusDoesNotExist\x10\x02\x12\x1c\n\x18k_ELobbyStatusNotAMember\x10\x03\x32\xc6\x01\n\x16LobbyMatchmakingLegacy\x12\x85\x01\n\x0eGetLobbyStatus\x12..LobbyMatchmakingLegacy_GetLobbyStatus_Request\x1a/.LobbyMatchmakingLegacy_GetLobbyStatus_Response\"\x12\x82\xb5\x18\x0eGetLobbyStatus\x1a$\x82\xb5\x18 Lobby matchmaking legacy serviceB\x03\x90\x01\x01')
+  serialized_options=b'\220\001\001',
+  create_key=_descriptor._internal_create_key,
+  serialized_pb=b'\n$steammessages_lobbymatchmaking.proto\x1a\x18steammessages_base.proto\x1a steammessages_unified_base.proto\"\x9e\x01\n-LobbyMatchmakingLegacy_GetLobbyStatus_Request\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x15\n\rsteamid_lobby\x18\x02 \x01(\x06\x12\x17\n\x0f\x63laim_ownership\x18\x03 \x01(\x08\x12\x18\n\x10\x63laim_membership\x18\x04 \x01(\x08\x12\x13\n\x0bversion_num\x18\x05 \x01(\r\"\x93\x01\n.LobbyMatchmakingLegacy_GetLobbyStatus_Response\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x15\n\rsteamid_lobby\x18\x02 \x01(\x06\x12:\n\x0clobby_status\x18\x03 \x01(\x0e\x32\r.ELobbyStatus:\x15k_ELobbyStatusInvalid*\x81\x01\n\x0c\x45LobbyStatus\x12\x19\n\x15k_ELobbyStatusInvalid\x10\x00\x12\x18\n\x14k_ELobbyStatusExists\x10\x01\x12\x1e\n\x1ak_ELobbyStatusDoesNotExist\x10\x02\x12\x1c\n\x18k_ELobbyStatusNotAMember\x10\x03\x32\xc6\x01\n\x16LobbyMatchmakingLegacy\x12\x85\x01\n\x0eGetLobbyStatus\x12..LobbyMatchmakingLegacy_GetLobbyStatus_Request\x1a/.LobbyMatchmakingLegacy_GetLobbyStatus_Response\"\x12\x82\xb5\x18\x0eGetLobbyStatus\x1a$\x82\xb5\x18 Lobby matchmaking legacy serviceB\x03\x90\x01\x01'
   ,
-  dependencies=[steammessages__unified__base__pb2.DESCRIPTOR,])
+  dependencies=[steammessages__base__pb2.DESCRIPTOR,steammessages__unified__base__pb2.DESCRIPTOR,])
 
 _ELOBBYSTATUS = _descriptor.EnumDescriptor(
   name='ELobbyStatus',
   full_name='ELobbyStatus',
   filename=None,
   file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
   values=[
     _descriptor.EnumValueDescriptor(
       name='k_ELobbyStatusInvalid', index=0, number=0,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_ELobbyStatusExists', index=1, number=1,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_ELobbyStatusDoesNotExist', index=2, number=2,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_ELobbyStatusNotAMember', index=3, number=3,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
   ],
   containing_type=None,
   serialized_options=None,
-  serialized_start=386,
-  serialized_end=515,
+  serialized_start=412,
+  serialized_end=541,
 )
 _sym_db.RegisterEnumDescriptor(_ELOBBYSTATUS)
 
@@ -72,6 +77,7 @@ _LOBBYMATCHMAKINGLEGACY_GETLOBBYSTATUS_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='app_id', full_name='LobbyMatchmakingLegacy_GetLobbyStatus_Request.app_id', index=0,
@@ -79,35 +85,35 @@ _LOBBYMATCHMAKINGLEGACY_GETLOBBYSTATUS_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steamid_lobby', full_name='LobbyMatchmakingLegacy_GetLobbyStatus_Request.steamid_lobby', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='claim_ownership', full_name='LobbyMatchmakingLegacy_GetLobbyStatus_Request.claim_ownership', index=2,
       number=3, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='claim_membership', full_name='LobbyMatchmakingLegacy_GetLobbyStatus_Request.claim_membership', index=3,
       number=4, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='version_num', full_name='LobbyMatchmakingLegacy_GetLobbyStatus_Request.version_num', index=4,
       number=5, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -120,8 +126,8 @@ _LOBBYMATCHMAKINGLEGACY_GETLOBBYSTATUS_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=75,
-  serialized_end=233,
+  serialized_start=101,
+  serialized_end=259,
 )
 
 
@@ -131,6 +137,7 @@ _LOBBYMATCHMAKINGLEGACY_GETLOBBYSTATUS_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='app_id', full_name='LobbyMatchmakingLegacy_GetLobbyStatus_Response.app_id', index=0,
@@ -138,21 +145,21 @@ _LOBBYMATCHMAKINGLEGACY_GETLOBBYSTATUS_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steamid_lobby', full_name='LobbyMatchmakingLegacy_GetLobbyStatus_Response.steamid_lobby', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='lobby_status', full_name='LobbyMatchmakingLegacy_GetLobbyStatus_Response.lobby_status', index=2,
       number=3, type=14, cpp_type=8, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -165,8 +172,8 @@ _LOBBYMATCHMAKINGLEGACY_GETLOBBYSTATUS_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=236,
-  serialized_end=383,
+  serialized_start=262,
+  serialized_end=409,
 )
 
 _LOBBYMATCHMAKINGLEGACY_GETLOBBYSTATUS_RESPONSE.fields_by_name['lobby_status'].enum_type = _ELOBBYSTATUS
@@ -175,18 +182,18 @@ DESCRIPTOR.message_types_by_name['LobbyMatchmakingLegacy_GetLobbyStatus_Response
 DESCRIPTOR.enum_types_by_name['ELobbyStatus'] = _ELOBBYSTATUS
 _sym_db.RegisterFileDescriptor(DESCRIPTOR)
 
-LobbyMatchmakingLegacy_GetLobbyStatus_Request = _reflection.GeneratedProtocolMessageType('LobbyMatchmakingLegacy_GetLobbyStatus_Request', (_message.Message,), dict(
-  DESCRIPTOR = _LOBBYMATCHMAKINGLEGACY_GETLOBBYSTATUS_REQUEST,
-  __module__ = 'steammessages_lobbymatchmaking_pb2'
+LobbyMatchmakingLegacy_GetLobbyStatus_Request = _reflection.GeneratedProtocolMessageType('LobbyMatchmakingLegacy_GetLobbyStatus_Request', (_message.Message,), {
+  'DESCRIPTOR' : _LOBBYMATCHMAKINGLEGACY_GETLOBBYSTATUS_REQUEST,
+  '__module__' : 'steammessages_lobbymatchmaking_pb2'
   # @@protoc_insertion_point(class_scope:LobbyMatchmakingLegacy_GetLobbyStatus_Request)
-  ))
+  })
 _sym_db.RegisterMessage(LobbyMatchmakingLegacy_GetLobbyStatus_Request)
 
-LobbyMatchmakingLegacy_GetLobbyStatus_Response = _reflection.GeneratedProtocolMessageType('LobbyMatchmakingLegacy_GetLobbyStatus_Response', (_message.Message,), dict(
-  DESCRIPTOR = _LOBBYMATCHMAKINGLEGACY_GETLOBBYSTATUS_RESPONSE,
-  __module__ = 'steammessages_lobbymatchmaking_pb2'
+LobbyMatchmakingLegacy_GetLobbyStatus_Response = _reflection.GeneratedProtocolMessageType('LobbyMatchmakingLegacy_GetLobbyStatus_Response', (_message.Message,), {
+  'DESCRIPTOR' : _LOBBYMATCHMAKINGLEGACY_GETLOBBYSTATUS_RESPONSE,
+  '__module__' : 'steammessages_lobbymatchmaking_pb2'
   # @@protoc_insertion_point(class_scope:LobbyMatchmakingLegacy_GetLobbyStatus_Response)
-  ))
+  })
 _sym_db.RegisterMessage(LobbyMatchmakingLegacy_GetLobbyStatus_Response)
 
 
@@ -197,9 +204,10 @@ _LOBBYMATCHMAKINGLEGACY = _descriptor.ServiceDescriptor(
   full_name='LobbyMatchmakingLegacy',
   file=DESCRIPTOR,
   index=0,
-  serialized_options=_b('\202\265\030 Lobby matchmaking legacy service'),
-  serialized_start=518,
-  serialized_end=716,
+  serialized_options=b'\202\265\030 Lobby matchmaking legacy service',
+  create_key=_descriptor._internal_create_key,
+  serialized_start=544,
+  serialized_end=742,
   methods=[
   _descriptor.MethodDescriptor(
     name='GetLobbyStatus',
@@ -208,7 +216,8 @@ _LOBBYMATCHMAKINGLEGACY = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_LOBBYMATCHMAKINGLEGACY_GETLOBBYSTATUS_REQUEST,
     output_type=_LOBBYMATCHMAKINGLEGACY_GETLOBBYSTATUS_RESPONSE,
-    serialized_options=_b('\202\265\030\016GetLobbyStatus'),
+    serialized_options=b'\202\265\030\016GetLobbyStatus',
+    create_key=_descriptor._internal_create_key,
   ),
 ])
 _sym_db.RegisterServiceDescriptor(_LOBBYMATCHMAKINGLEGACY)
diff --git a/steam/protobufs/steammessages_market_pb2.py b/steam/protobufs/steammessages_market_pb2.py
index d044dc4..9a6b511 100644
--- a/steam/protobufs/steammessages_market_pb2.py
+++ b/steam/protobufs/steammessages_market_pb2.py
@@ -1,9 +1,7 @@
 # -*- coding: utf-8 -*-
 # Generated by the protocol buffer compiler.  DO NOT EDIT!
 # source: steammessages_market.proto
-
-import sys
-_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1'))
+"""Generated protocol buffer code."""
 from google.protobuf import descriptor as _descriptor
 from google.protobuf import message as _message
 from google.protobuf import reflection as _reflection
@@ -15,6 +13,7 @@ from google.protobuf import service_reflection
 _sym_db = _symbol_database.Default()
 
 
+import steam.protobufs.steammessages_base_pb2 as steammessages__base__pb2
 import steam.protobufs.steammessages_unified_base_pb2 as steammessages__unified__base__pb2
 
 
@@ -22,10 +21,11 @@ DESCRIPTOR = _descriptor.FileDescriptor(
   name='steammessages_market.proto',
   package='',
   syntax='proto2',
-  serialized_options=_b('\220\001\001'),
-  serialized_pb=_b('\n\x1asteammessages_market.proto\x1a steammessages_unified_base.proto\"n\n(CEconMarket_IsMarketplaceAllowed_Request\x12\x42\n\twebcookie\x18\x01 \x01(\tB/\x82\xb5\x18+The user\'s Steam Guard machine auth cookie.\"\xf5\x05\n)CEconMarket_IsMarketplaceAllowed_Response\x12I\n\x07\x61llowed\x18\x01 \x01(\x08\x42\x38\x82\xb5\x18\x34Whether or not the user is allowed to use the market\x12K\n\x06reason\x18\x02 \x01(\rB;\x82\xb5\x18\x37The reason the user can\'t use the market, if applicable\x12P\n\x0f\x61llowed_at_time\x18\x03 \x01(\rB7\x82\xb5\x18\x33The time the user will be allowed to use the market\x12\x84\x01\n\x18steamguard_required_days\x18\x04 \x01(\rBb\x82\xb5\x18^The number of days any user is required to have had Steam Guard before they can use the market\x12W\n\x0f\x66orms_requested\x18\x07 \x01(\x08\x42>\x82\xb5\x18:Whether or not we\'ve requested the user fill out tax forms\x12h\n\x1a\x66orms_require_verification\x18\x08 \x01(\x08\x42\x44\x82\xb5\x18@True if we\'ve received forms but they require verification first\x12\x93\x01\n\x18new_device_cooldown_days\x18\t \x01(\rBq\x82\xb5\x18mThe number of days after initial device authorization a user must wait before using the market on that device2\xee\x01\n\nEconMarket\x12\xb8\x01\n\x14IsMarketplaceAllowed\x12).CEconMarket_IsMarketplaceAllowed_Request\x1a*.CEconMarket_IsMarketplaceAllowed_Response\"I\x82\xb5\x18\x45\x43hecks whether or not the authed account is allowed to use the market\x1a%\x82\xb5\x18!A service to use market functionsB\x03\x90\x01\x01')
+  serialized_options=b'\220\001\001',
+  create_key=_descriptor._internal_create_key,
+  serialized_pb=b'\n\x1asteammessages_market.proto\x1a\x18steammessages_base.proto\x1a steammessages_unified_base.proto\"n\n(CEconMarket_IsMarketplaceAllowed_Request\x12\x42\n\twebcookie\x18\x01 \x01(\tB/\x82\xb5\x18+The user\'s Steam Guard machine auth cookie.\"\xf5\x05\n)CEconMarket_IsMarketplaceAllowed_Response\x12I\n\x07\x61llowed\x18\x01 \x01(\x08\x42\x38\x82\xb5\x18\x34Whether or not the user is allowed to use the market\x12K\n\x06reason\x18\x02 \x01(\rB;\x82\xb5\x18\x37The reason the user can\'t use the market, if applicable\x12P\n\x0f\x61llowed_at_time\x18\x03 \x01(\rB7\x82\xb5\x18\x33The time the user will be allowed to use the market\x12\x84\x01\n\x18steamguard_required_days\x18\x04 \x01(\rBb\x82\xb5\x18^The number of days any user is required to have had Steam Guard before they can use the market\x12W\n\x0f\x66orms_requested\x18\x07 \x01(\x08\x42>\x82\xb5\x18:Whether or not we\'ve requested the user fill out tax forms\x12h\n\x1a\x66orms_require_verification\x18\x08 \x01(\x08\x42\x44\x82\xb5\x18@True if we\'ve received forms but they require verification first\x12\x93\x01\n\x18new_device_cooldown_days\x18\t \x01(\rBq\x82\xb5\x18mThe number of days after initial device authorization a user must wait before using the market on that device2\xee\x01\n\nEconMarket\x12\xb8\x01\n\x14IsMarketplaceAllowed\x12).CEconMarket_IsMarketplaceAllowed_Request\x1a*.CEconMarket_IsMarketplaceAllowed_Response\"I\x82\xb5\x18\x45\x43hecks whether or not the authed account is allowed to use the market\x1a%\x82\xb5\x18!A service to use market functionsB\x03\x90\x01\x01'
   ,
-  dependencies=[steammessages__unified__base__pb2.DESCRIPTOR,])
+  dependencies=[steammessages__base__pb2.DESCRIPTOR,steammessages__unified__base__pb2.DESCRIPTOR,])
 
 
 
@@ -36,14 +36,15 @@ _CECONMARKET_ISMARKETPLACEALLOWED_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='webcookie', full_name='CEconMarket_IsMarketplaceAllowed_Request.webcookie', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030+The user\'s Steam Guard machine auth cookie.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030+The user\'s Steam Guard machine auth cookie.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -56,8 +57,8 @@ _CECONMARKET_ISMARKETPLACEALLOWED_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=64,
-  serialized_end=174,
+  serialized_start=90,
+  serialized_end=200,
 )
 
 
@@ -67,6 +68,7 @@ _CECONMARKET_ISMARKETPLACEALLOWED_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='allowed', full_name='CEconMarket_IsMarketplaceAllowed_Response.allowed', index=0,
@@ -74,49 +76,49 @@ _CECONMARKET_ISMARKETPLACEALLOWED_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\0304Whether or not the user is allowed to use the market'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\0304Whether or not the user is allowed to use the market', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='reason', full_name='CEconMarket_IsMarketplaceAllowed_Response.reason', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\0307The reason the user can\'t use the market, if applicable'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\0307The reason the user can\'t use the market, if applicable', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='allowed_at_time', full_name='CEconMarket_IsMarketplaceAllowed_Response.allowed_at_time', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\0303The time the user will be allowed to use the market'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\0303The time the user will be allowed to use the market', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steamguard_required_days', full_name='CEconMarket_IsMarketplaceAllowed_Response.steamguard_required_days', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030^The number of days any user is required to have had Steam Guard before they can use the market'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030^The number of days any user is required to have had Steam Guard before they can use the market', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='forms_requested', full_name='CEconMarket_IsMarketplaceAllowed_Response.forms_requested', index=4,
       number=7, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030:Whether or not we\'ve requested the user fill out tax forms'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030:Whether or not we\'ve requested the user fill out tax forms', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='forms_require_verification', full_name='CEconMarket_IsMarketplaceAllowed_Response.forms_require_verification', index=5,
       number=8, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030@True if we\'ve received forms but they require verification first'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030@True if we\'ve received forms but they require verification first', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='new_device_cooldown_days', full_name='CEconMarket_IsMarketplaceAllowed_Response.new_device_cooldown_days', index=6,
       number=9, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030mThe number of days after initial device authorization a user must wait before using the market on that device'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030mThe number of days after initial device authorization a user must wait before using the market on that device', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -129,26 +131,26 @@ _CECONMARKET_ISMARKETPLACEALLOWED_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=177,
-  serialized_end=934,
+  serialized_start=203,
+  serialized_end=960,
 )
 
 DESCRIPTOR.message_types_by_name['CEconMarket_IsMarketplaceAllowed_Request'] = _CECONMARKET_ISMARKETPLACEALLOWED_REQUEST
 DESCRIPTOR.message_types_by_name['CEconMarket_IsMarketplaceAllowed_Response'] = _CECONMARKET_ISMARKETPLACEALLOWED_RESPONSE
 _sym_db.RegisterFileDescriptor(DESCRIPTOR)
 
-CEconMarket_IsMarketplaceAllowed_Request = _reflection.GeneratedProtocolMessageType('CEconMarket_IsMarketplaceAllowed_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CECONMARKET_ISMARKETPLACEALLOWED_REQUEST,
-  __module__ = 'steammessages_market_pb2'
+CEconMarket_IsMarketplaceAllowed_Request = _reflection.GeneratedProtocolMessageType('CEconMarket_IsMarketplaceAllowed_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CECONMARKET_ISMARKETPLACEALLOWED_REQUEST,
+  '__module__' : 'steammessages_market_pb2'
   # @@protoc_insertion_point(class_scope:CEconMarket_IsMarketplaceAllowed_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CEconMarket_IsMarketplaceAllowed_Request)
 
-CEconMarket_IsMarketplaceAllowed_Response = _reflection.GeneratedProtocolMessageType('CEconMarket_IsMarketplaceAllowed_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CECONMARKET_ISMARKETPLACEALLOWED_RESPONSE,
-  __module__ = 'steammessages_market_pb2'
+CEconMarket_IsMarketplaceAllowed_Response = _reflection.GeneratedProtocolMessageType('CEconMarket_IsMarketplaceAllowed_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CECONMARKET_ISMARKETPLACEALLOWED_RESPONSE,
+  '__module__' : 'steammessages_market_pb2'
   # @@protoc_insertion_point(class_scope:CEconMarket_IsMarketplaceAllowed_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CEconMarket_IsMarketplaceAllowed_Response)
 
 
@@ -167,9 +169,10 @@ _ECONMARKET = _descriptor.ServiceDescriptor(
   full_name='EconMarket',
   file=DESCRIPTOR,
   index=0,
-  serialized_options=_b('\202\265\030!A service to use market functions'),
-  serialized_start=937,
-  serialized_end=1175,
+  serialized_options=b'\202\265\030!A service to use market functions',
+  create_key=_descriptor._internal_create_key,
+  serialized_start=963,
+  serialized_end=1201,
   methods=[
   _descriptor.MethodDescriptor(
     name='IsMarketplaceAllowed',
@@ -178,7 +181,8 @@ _ECONMARKET = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CECONMARKET_ISMARKETPLACEALLOWED_REQUEST,
     output_type=_CECONMARKET_ISMARKETPLACEALLOWED_RESPONSE,
-    serialized_options=_b('\202\265\030EChecks whether or not the authed account is allowed to use the market'),
+    serialized_options=b'\202\265\030EChecks whether or not the authed account is allowed to use the market',
+    create_key=_descriptor._internal_create_key,
   ),
 ])
 _sym_db.RegisterServiceDescriptor(_ECONMARKET)
diff --git a/steam/protobufs/steammessages_marketingmessages_pb2.py b/steam/protobufs/steammessages_marketingmessages_pb2.py
new file mode 100644
index 0000000..46d9b13
--- /dev/null
+++ b/steam/protobufs/steammessages_marketingmessages_pb2.py
@@ -0,0 +1,1479 @@
+# -*- coding: utf-8 -*-
+# Generated by the protocol buffer compiler.  DO NOT EDIT!
+# source: steammessages_marketingmessages.proto
+"""Generated protocol buffer code."""
+from google.protobuf.internal import enum_type_wrapper
+from google.protobuf import descriptor as _descriptor
+from google.protobuf import message as _message
+from google.protobuf import reflection as _reflection
+from google.protobuf import symbol_database as _symbol_database
+from google.protobuf import service as _service
+from google.protobuf import service_reflection
+# @@protoc_insertion_point(imports)
+
+_sym_db = _symbol_database.Default()
+
+
+import steam.protobufs.steammessages_base_pb2 as steammessages__base__pb2
+import steam.protobufs.steammessages_unified_base_pb2 as steammessages__unified__base__pb2
+import steam.protobufs.steammessages_storebrowse_pb2 as steammessages__storebrowse__pb2
+
+
+DESCRIPTOR = _descriptor.FileDescriptor(
+  name='steammessages_marketingmessages.proto',
+  package='',
+  syntax='proto2',
+  serialized_options=b'\220\001\001',
+  create_key=_descriptor._internal_create_key,
+  serialized_pb=b'\n%steammessages_marketingmessages.proto\x1a\x18steammessages_base.proto\x1a steammessages_unified_base.proto\x1a\x1fsteammessages_storebrowse.proto\"H\n5CMarketingMessages_GetActiveMarketingMessages_Request\x12\x0f\n\x07\x63ountry\x18\x01 \x01(\t\"\xed\x05\n\x16\x43MarketingMessageProto\x12\x0b\n\x03gid\x18\x01 \x01(\x06\x12\r\n\x05title\x18\x02 \x01(\t\x12@\n\x04type\x18\x03 \x01(\x0e\x32\x16.EMarketingMessageType:\x1ak_EMarketingMessageInvalid\x12P\n\nvisibility\x18\x04 \x01(\x0e\x32\x1c.EMarketingMessageVisibility:\x1ek_EMarketingMessageVisibleBeta\x12\x10\n\x08priority\x18\x05 \x01(\r\x12]\n\x10\x61ssociation_type\x18\x06 \x01(\x0e\x32!.EMarketingMessageAssociationType: k_EMarketingMessageNoAssociation\x12\x15\n\rassociated_id\x18\x07 \x01(\r\x12\x17\n\x0f\x61ssociated_name\x18\x08 \x01(\t\x12\x12\n\nstart_date\x18\t \x01(\r\x12\x10\n\x08\x65nd_date\x18\n \x01(\r\x12\x15\n\rcountry_allow\x18\x0b \x01(\t\x12\x14\n\x0c\x63ountry_deny\x18\x0c \x01(\t\x12)\n!ownership_restrictions_overridden\x18\r \x01(\x08\x12\x16\n\x0emust_own_appid\x18\x0e \x01(\r\x12\x1a\n\x12must_not_own_appid\x18\x0f \x01(\r\x12\x1a\n\x12must_own_packageid\x18\x10 \x01(\r\x12\x1e\n\x16must_not_own_packageid\x18\x11 \x01(\r\x12 \n\x18must_have_launched_appid\x18\x12 \x01(\r\x12\x1f\n\x17\x61\x64\x64itional_restrictions\x18\x13 \x01(\t\x12\x15\n\rtemplate_type\x18\x14 \x01(\t\x12\x15\n\rtemplate_vars\x18\x15 \x01(\t\x12\r\n\x05\x66lags\x18\x16 \x01(\r\x12\x14\n\x0c\x63reator_name\x18\x17 \x01(\t\"\x82\x01\n6CMarketingMessages_GetActiveMarketingMessages_Response\x12)\n\x08messages\x18\x01 \x03(\x0b\x32\x17.CMarketingMessageProto\x12\x1d\n\x15time_next_message_age\x18\x02 \x01(\r\"\x9f\x03\n6CMarketingMessages_GetMarketingMessagesForUser_Request\x12\x1d\n\x15include_seen_messages\x18\x01 \x01(\x08\x12\x14\n\x0c\x63ountry_code\x18\x02 \x01(\t\x12\x11\n\telanguage\x18\x03 \x01(\x05\x12\x31\n\x10operating_system\x18\x04 \x01(\x05\x42\x17\x82\xb5\x18\x13\x45OSType from client\x12\x1e\n\x16\x63lient_package_version\x18\x05 \x01(\x05\x12l\n\x07\x63ontext\x18\x06 \x01(\x0b\x32\x13.StoreBrowseContextBF\x82\xb5\x18\x42Optional, server can fill in from country code/language if not set\x12\\\n\x0c\x64\x61ta_request\x18\x07 \x01(\x0b\x32\x1b.StoreBrowseItemDataRequestB)\x82\xb5\x18%If passed, item data will be returned\"\x93\x02\n\x18\x43\x44isplayMarketingMessage\x12\x0b\n\x03gid\x18\x01 \x01(\x06\x12\r\n\x05title\x18\x02 \x01(\t\x12@\n\x04type\x18\x03 \x01(\x0e\x32\x16.EMarketingMessageType:\x1ak_EMarketingMessageInvalid\x12(\n\x12\x61ssociated_item_id\x18\x04 \x01(\x0b\x32\x0c.StoreItemID\x12#\n\x0f\x61ssociated_item\x18\x05 \x01(\x0b\x32\n.StoreItem\x12\x17\n\x0f\x61ssociated_name\x18\x06 \x01(\t\x12\x15\n\rtemplate_type\x18\n \x01(\t\x12\x1a\n\x12template_vars_json\x18\x0b \x01(\t\"\xfa\x01\n7CMarketingMessages_GetMarketingMessagesForUser_Response\x12\x62\n\x08messages\x18\x01 \x03(\x0b\x32P.CMarketingMessages_GetMarketingMessagesForUser_Response.MarketingMessageForUser\x1a[\n\x17MarketingMessageForUser\x12\x14\n\x0c\x61lready_seen\x18\x01 \x01(\x08\x12*\n\x07message\x18\x02 \x01(\x0b\x32\x19.CDisplayMarketingMessage\"\xc8\x01\n5CMarketingMessages_GetDisplayMarketingMessage_Request\x12\x0b\n\x03gid\x18\x01 \x01(\x06\x12$\n\x07\x63ontext\x18\x02 \x01(\x0b\x32\x13.StoreBrowseContext\x12\\\n\x0c\x64\x61ta_request\x18\x03 \x01(\x0b\x32\x1b.StoreBrowseItemDataRequestB)\x82\xb5\x18%If passed, item data will be returned\"d\n6CMarketingMessages_GetDisplayMarketingMessage_Response\x12*\n\x07message\x18\x01 \x01(\x0b\x32\x19.CDisplayMarketingMessage\">\n/CMarketingMessages_MarkMessageSeen_Notification\x12\x0b\n\x03gid\x18\x01 \x01(\x06\"=\n.CMarketingMessages_GetMarketingMessage_Request\x12\x0b\n\x03gid\x18\x01 \x01(\x06\"[\n/CMarketingMessages_GetMarketingMessage_Response\x12(\n\x07message\x18\x01 \x01(\x0b\x32\x17.CMarketingMessageProto\"]\n1CMarketingMessages_CreateMarketingMessage_Request\x12(\n\x07message\x18\x01 \x01(\x0b\x32\x17.CMarketingMessageProto\"A\n2CMarketingMessages_CreateMarketingMessage_Response\x12\x0b\n\x03gid\x18\x01 \x01(\x06\"j\n1CMarketingMessages_UpdateMarketingMessage_Request\x12\x0b\n\x03gid\x18\x01 \x01(\x06\x12(\n\x07message\x18\x02 \x01(\x0b\x32\x17.CMarketingMessageProto\"4\n2CMarketingMessages_UpdateMarketingMessage_Response\"@\n1CMarketingMessages_DeleteMarketingMessage_Request\x12\x0b\n\x03gid\x18\x01 \x01(\x06\"4\n2CMarketingMessages_DeleteMarketingMessage_Response\"\xfe\x01\n0CMarketingMessages_FindMarketingMessages_Request\x12S\n\x0blookup_type\x18\x01 \x01(\x0e\x32\x1c.EMarketingMessageLookupType: k_EMarketingMessageLookupInvalid\x12\x0b\n\x03gid\x18\x02 \x01(\x06\x12H\n\x0cmessage_type\x18\x03 \x01(\x0e\x32\x16.EMarketingMessageType:\x1ak_EMarketingMessageInvalid\x12\x0f\n\x07gidlist\x18\x04 \x03(\x06\x12\r\n\x05title\x18\x05 \x01(\t\"^\n1CMarketingMessages_FindMarketingMessages_Response\x12)\n\x08messages\x18\x01 \x03(\x0b\x32\x17.CMarketingMessageProto*\xea\x02\n\x15\x45MarketingMessageType\x12\x1e\n\x1ak_EMarketingMessageInvalid\x10\x00\x12#\n\x1fk_EMarketingMessageNowAvailable\x10\x01\x12\"\n\x1ek_EMarketingMessageWeekendDeal\x10\x02\x12\"\n\x1ek_EMarketingMessagePrePurchase\x10\x03\x12\x1e\n\x1ak_EMarketingMessagePlayNow\x10\x04\x12!\n\x1dk_EMarketingMessagePreloadNow\x10\x05\x12\x1e\n\x1ak_EMarketingMessageGeneral\x10\x06\x12\x1f\n\x1bk_EMarketingMessageDemoQuit\x10\x07\x12\x1e\n\x1ak_EMarketingMessageGifting\x10\x08\x12 \n\x1ck_EMarketingMessageEJsKorner\x10\t*g\n\x1b\x45MarketingMessageVisibility\x12\"\n\x1ek_EMarketingMessageVisibleBeta\x10\x01\x12$\n k_EMarketingMessageVisiblePublic\x10\x02*\x9f\x02\n EMarketingMessageAssociationType\x12$\n k_EMarketingMessageNoAssociation\x10\x00\x12%\n!k_EMarketingMessageAppAssociation\x10\x01\x12.\n*k_EMarketingMessageSubscriptionAssociation\x10\x02\x12+\n\'k_EMarketingMessagePublisherAssociation\x10\x03\x12\'\n#k_EMarketingMessageGenreAssociation\x10\x04\x12(\n$k_EMarketingMessageBundleAssociation\x10\x05*\xe2\x01\n\x1b\x45MarketingMessageLookupType\x12$\n k_EMarketingMessageLookupInvalid\x10\x00\x12\"\n\x1ek_EMarketingMessageLookupByGID\x10\x01\x12#\n\x1fk_EMarketingMessageLookupActive\x10\x02\x12,\n(k_EMarketingMessageLookupByTitleWithType\x10\x03\x12&\n\"k_EMarketingMessageLookupByGIDList\x10\x04\x32\xca\r\n\x11MarketingMessages\x12\xbb\x01\n\x1aGetActiveMarketingMessages\x12\x36.CMarketingMessages_GetActiveMarketingMessages_Request\x1a\x37.CMarketingMessages_GetActiveMarketingMessages_Response\",\x82\xb5\x18(Get a list of active marketing messages.\x12\xdb\x01\n\x1bGetMarketingMessagesForUser\x12\x37.CMarketingMessages_GetMarketingMessagesForUser_Request\x1a\x38.CMarketingMessages_GetMarketingMessagesForUser_Response\"I\x82\xb5\x18\x45Get a list of active marketing messages filtered for a specific user.\x12\xbd\x01\n\x1aGetDisplayMarketingMessage\x12\x36.CMarketingMessages_GetDisplayMarketingMessage_Request\x1a\x37.CMarketingMessages_GetDisplayMarketingMessage_Response\".\x82\xb5\x18*Get a single marketing message, cacheable.\x12\x99\x01\n\x0fMarkMessageSeen\x12\x30.CMarketingMessages_MarkMessageSeen_Notification\x1a\x0b.NoResponse\"G\x82\xb5\x18\x43Mark that a user has viewed a message (so we won\'t show it again)\'.\x12\xcb\x01\n\x13GetMarketingMessage\x12/.CMarketingMessages_GetMarketingMessage_Request\x1a\x30.CMarketingMessages_GetMarketingMessage_Response\"Q\x82\xb5\x18MGet a single marketing message.  Admin account needed for non-active messages\x12\xa6\x01\n\x16\x43reateMarketingMessage\x12\x32.CMarketingMessages_CreateMarketingMessage_Request\x1a\x33.CMarketingMessages_CreateMarketingMessage_Response\"#\x82\xb5\x18\x1f\x43reate a new marketing message.\x12\xa2\x01\n\x16UpdateMarketingMessage\x12\x32.CMarketingMessages_UpdateMarketingMessage_Request\x1a\x33.CMarketingMessages_UpdateMarketingMessage_Response\"\x1f\x82\xb5\x18\x1bModify a marketing message.\x12\xa2\x01\n\x16\x44\x65leteMarketingMessage\x12\x32.CMarketingMessages_DeleteMarketingMessage_Request\x1a\x33.CMarketingMessages_DeleteMarketingMessage_Response\"\x1f\x82\xb5\x18\x1b\x44\x65lete a marketing message.\x12\xb5\x01\n\x15\x46indMarketingMessages\x12\x31.CMarketingMessages_FindMarketingMessages_Request\x1a\x32.CMarketingMessages_FindMarketingMessages_Response\"5\x82\xb5\x18\x31Search for marketing messages by name, type, etc.\x1a\x44\x82\xb5\x18@Marketing message data (\"Steam News\" updates at client startup).B\x03\x90\x01\x01'
+  ,
+  dependencies=[steammessages__base__pb2.DESCRIPTOR,steammessages__unified__base__pb2.DESCRIPTOR,steammessages__storebrowse__pb2.DESCRIPTOR,])
+
+_EMARKETINGMESSAGETYPE = _descriptor.EnumDescriptor(
+  name='EMarketingMessageType',
+  full_name='EMarketingMessageType',
+  filename=None,
+  file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
+  values=[
+    _descriptor.EnumValueDescriptor(
+      name='k_EMarketingMessageInvalid', index=0, number=0,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EMarketingMessageNowAvailable', index=1, number=1,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EMarketingMessageWeekendDeal', index=2, number=2,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EMarketingMessagePrePurchase', index=3, number=3,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EMarketingMessagePlayNow', index=4, number=4,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EMarketingMessagePreloadNow', index=5, number=5,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EMarketingMessageGeneral', index=6, number=6,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EMarketingMessageDemoQuit', index=7, number=7,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EMarketingMessageGifting', index=8, number=8,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EMarketingMessageEJsKorner', index=9, number=9,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+  ],
+  containing_type=None,
+  serialized_options=None,
+  serialized_start=3365,
+  serialized_end=3727,
+)
+_sym_db.RegisterEnumDescriptor(_EMARKETINGMESSAGETYPE)
+
+EMarketingMessageType = enum_type_wrapper.EnumTypeWrapper(_EMARKETINGMESSAGETYPE)
+_EMARKETINGMESSAGEVISIBILITY = _descriptor.EnumDescriptor(
+  name='EMarketingMessageVisibility',
+  full_name='EMarketingMessageVisibility',
+  filename=None,
+  file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
+  values=[
+    _descriptor.EnumValueDescriptor(
+      name='k_EMarketingMessageVisibleBeta', index=0, number=1,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EMarketingMessageVisiblePublic', index=1, number=2,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+  ],
+  containing_type=None,
+  serialized_options=None,
+  serialized_start=3729,
+  serialized_end=3832,
+)
+_sym_db.RegisterEnumDescriptor(_EMARKETINGMESSAGEVISIBILITY)
+
+EMarketingMessageVisibility = enum_type_wrapper.EnumTypeWrapper(_EMARKETINGMESSAGEVISIBILITY)
+_EMARKETINGMESSAGEASSOCIATIONTYPE = _descriptor.EnumDescriptor(
+  name='EMarketingMessageAssociationType',
+  full_name='EMarketingMessageAssociationType',
+  filename=None,
+  file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
+  values=[
+    _descriptor.EnumValueDescriptor(
+      name='k_EMarketingMessageNoAssociation', index=0, number=0,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EMarketingMessageAppAssociation', index=1, number=1,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EMarketingMessageSubscriptionAssociation', index=2, number=2,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EMarketingMessagePublisherAssociation', index=3, number=3,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EMarketingMessageGenreAssociation', index=4, number=4,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EMarketingMessageBundleAssociation', index=5, number=5,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+  ],
+  containing_type=None,
+  serialized_options=None,
+  serialized_start=3835,
+  serialized_end=4122,
+)
+_sym_db.RegisterEnumDescriptor(_EMARKETINGMESSAGEASSOCIATIONTYPE)
+
+EMarketingMessageAssociationType = enum_type_wrapper.EnumTypeWrapper(_EMARKETINGMESSAGEASSOCIATIONTYPE)
+_EMARKETINGMESSAGELOOKUPTYPE = _descriptor.EnumDescriptor(
+  name='EMarketingMessageLookupType',
+  full_name='EMarketingMessageLookupType',
+  filename=None,
+  file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
+  values=[
+    _descriptor.EnumValueDescriptor(
+      name='k_EMarketingMessageLookupInvalid', index=0, number=0,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EMarketingMessageLookupByGID', index=1, number=1,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EMarketingMessageLookupActive', index=2, number=2,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EMarketingMessageLookupByTitleWithType', index=3, number=3,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EMarketingMessageLookupByGIDList', index=4, number=4,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+  ],
+  containing_type=None,
+  serialized_options=None,
+  serialized_start=4125,
+  serialized_end=4351,
+)
+_sym_db.RegisterEnumDescriptor(_EMARKETINGMESSAGELOOKUPTYPE)
+
+EMarketingMessageLookupType = enum_type_wrapper.EnumTypeWrapper(_EMARKETINGMESSAGELOOKUPTYPE)
+k_EMarketingMessageInvalid = 0
+k_EMarketingMessageNowAvailable = 1
+k_EMarketingMessageWeekendDeal = 2
+k_EMarketingMessagePrePurchase = 3
+k_EMarketingMessagePlayNow = 4
+k_EMarketingMessagePreloadNow = 5
+k_EMarketingMessageGeneral = 6
+k_EMarketingMessageDemoQuit = 7
+k_EMarketingMessageGifting = 8
+k_EMarketingMessageEJsKorner = 9
+k_EMarketingMessageVisibleBeta = 1
+k_EMarketingMessageVisiblePublic = 2
+k_EMarketingMessageNoAssociation = 0
+k_EMarketingMessageAppAssociation = 1
+k_EMarketingMessageSubscriptionAssociation = 2
+k_EMarketingMessagePublisherAssociation = 3
+k_EMarketingMessageGenreAssociation = 4
+k_EMarketingMessageBundleAssociation = 5
+k_EMarketingMessageLookupInvalid = 0
+k_EMarketingMessageLookupByGID = 1
+k_EMarketingMessageLookupActive = 2
+k_EMarketingMessageLookupByTitleWithType = 3
+k_EMarketingMessageLookupByGIDList = 4
+
+
+
+_CMARKETINGMESSAGES_GETACTIVEMARKETINGMESSAGES_REQUEST = _descriptor.Descriptor(
+  name='CMarketingMessages_GetActiveMarketingMessages_Request',
+  full_name='CMarketingMessages_GetActiveMarketingMessages_Request',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='country', full_name='CMarketingMessages_GetActiveMarketingMessages_Request.country', index=0,
+      number=1, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=134,
+  serialized_end=206,
+)
+
+
+_CMARKETINGMESSAGEPROTO = _descriptor.Descriptor(
+  name='CMarketingMessageProto',
+  full_name='CMarketingMessageProto',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='gid', full_name='CMarketingMessageProto.gid', index=0,
+      number=1, type=6, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='title', full_name='CMarketingMessageProto.title', index=1,
+      number=2, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='type', full_name='CMarketingMessageProto.type', index=2,
+      number=3, type=14, cpp_type=8, label=1,
+      has_default_value=True, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='visibility', full_name='CMarketingMessageProto.visibility', index=3,
+      number=4, type=14, cpp_type=8, label=1,
+      has_default_value=True, default_value=1,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='priority', full_name='CMarketingMessageProto.priority', index=4,
+      number=5, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='association_type', full_name='CMarketingMessageProto.association_type', index=5,
+      number=6, type=14, cpp_type=8, label=1,
+      has_default_value=True, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='associated_id', full_name='CMarketingMessageProto.associated_id', index=6,
+      number=7, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='associated_name', full_name='CMarketingMessageProto.associated_name', index=7,
+      number=8, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='start_date', full_name='CMarketingMessageProto.start_date', index=8,
+      number=9, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='end_date', full_name='CMarketingMessageProto.end_date', index=9,
+      number=10, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='country_allow', full_name='CMarketingMessageProto.country_allow', index=10,
+      number=11, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='country_deny', full_name='CMarketingMessageProto.country_deny', index=11,
+      number=12, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='ownership_restrictions_overridden', full_name='CMarketingMessageProto.ownership_restrictions_overridden', index=12,
+      number=13, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='must_own_appid', full_name='CMarketingMessageProto.must_own_appid', index=13,
+      number=14, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='must_not_own_appid', full_name='CMarketingMessageProto.must_not_own_appid', index=14,
+      number=15, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='must_own_packageid', full_name='CMarketingMessageProto.must_own_packageid', index=15,
+      number=16, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='must_not_own_packageid', full_name='CMarketingMessageProto.must_not_own_packageid', index=16,
+      number=17, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='must_have_launched_appid', full_name='CMarketingMessageProto.must_have_launched_appid', index=17,
+      number=18, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='additional_restrictions', full_name='CMarketingMessageProto.additional_restrictions', index=18,
+      number=19, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='template_type', full_name='CMarketingMessageProto.template_type', index=19,
+      number=20, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='template_vars', full_name='CMarketingMessageProto.template_vars', index=20,
+      number=21, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='flags', full_name='CMarketingMessageProto.flags', index=21,
+      number=22, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='creator_name', full_name='CMarketingMessageProto.creator_name', index=22,
+      number=23, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=209,
+  serialized_end=958,
+)
+
+
+_CMARKETINGMESSAGES_GETACTIVEMARKETINGMESSAGES_RESPONSE = _descriptor.Descriptor(
+  name='CMarketingMessages_GetActiveMarketingMessages_Response',
+  full_name='CMarketingMessages_GetActiveMarketingMessages_Response',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='messages', full_name='CMarketingMessages_GetActiveMarketingMessages_Response.messages', index=0,
+      number=1, type=11, cpp_type=10, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='time_next_message_age', full_name='CMarketingMessages_GetActiveMarketingMessages_Response.time_next_message_age', index=1,
+      number=2, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=961,
+  serialized_end=1091,
+)
+
+
+_CMARKETINGMESSAGES_GETMARKETINGMESSAGESFORUSER_REQUEST = _descriptor.Descriptor(
+  name='CMarketingMessages_GetMarketingMessagesForUser_Request',
+  full_name='CMarketingMessages_GetMarketingMessagesForUser_Request',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='include_seen_messages', full_name='CMarketingMessages_GetMarketingMessagesForUser_Request.include_seen_messages', index=0,
+      number=1, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='country_code', full_name='CMarketingMessages_GetMarketingMessagesForUser_Request.country_code', index=1,
+      number=2, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='elanguage', full_name='CMarketingMessages_GetMarketingMessagesForUser_Request.elanguage', index=2,
+      number=3, type=5, cpp_type=1, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='operating_system', full_name='CMarketingMessages_GetMarketingMessagesForUser_Request.operating_system', index=3,
+      number=4, type=5, cpp_type=1, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\023EOSType from client', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='client_package_version', full_name='CMarketingMessages_GetMarketingMessagesForUser_Request.client_package_version', index=4,
+      number=5, type=5, cpp_type=1, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='context', full_name='CMarketingMessages_GetMarketingMessagesForUser_Request.context', index=5,
+      number=6, type=11, cpp_type=10, label=1,
+      has_default_value=False, default_value=None,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030BOptional, server can fill in from country code/language if not set', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='data_request', full_name='CMarketingMessages_GetMarketingMessagesForUser_Request.data_request', index=6,
+      number=7, type=11, cpp_type=10, label=1,
+      has_default_value=False, default_value=None,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030%If passed, item data will be returned', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=1094,
+  serialized_end=1509,
+)
+
+
+_CDISPLAYMARKETINGMESSAGE = _descriptor.Descriptor(
+  name='CDisplayMarketingMessage',
+  full_name='CDisplayMarketingMessage',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='gid', full_name='CDisplayMarketingMessage.gid', index=0,
+      number=1, type=6, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='title', full_name='CDisplayMarketingMessage.title', index=1,
+      number=2, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='type', full_name='CDisplayMarketingMessage.type', index=2,
+      number=3, type=14, cpp_type=8, label=1,
+      has_default_value=True, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='associated_item_id', full_name='CDisplayMarketingMessage.associated_item_id', index=3,
+      number=4, type=11, cpp_type=10, label=1,
+      has_default_value=False, default_value=None,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='associated_item', full_name='CDisplayMarketingMessage.associated_item', index=4,
+      number=5, type=11, cpp_type=10, label=1,
+      has_default_value=False, default_value=None,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='associated_name', full_name='CDisplayMarketingMessage.associated_name', index=5,
+      number=6, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='template_type', full_name='CDisplayMarketingMessage.template_type', index=6,
+      number=10, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='template_vars_json', full_name='CDisplayMarketingMessage.template_vars_json', index=7,
+      number=11, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=1512,
+  serialized_end=1787,
+)
+
+
+_CMARKETINGMESSAGES_GETMARKETINGMESSAGESFORUSER_RESPONSE_MARKETINGMESSAGEFORUSER = _descriptor.Descriptor(
+  name='MarketingMessageForUser',
+  full_name='CMarketingMessages_GetMarketingMessagesForUser_Response.MarketingMessageForUser',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='already_seen', full_name='CMarketingMessages_GetMarketingMessagesForUser_Response.MarketingMessageForUser.already_seen', index=0,
+      number=1, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='message', full_name='CMarketingMessages_GetMarketingMessagesForUser_Response.MarketingMessageForUser.message', index=1,
+      number=2, type=11, cpp_type=10, label=1,
+      has_default_value=False, default_value=None,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=1949,
+  serialized_end=2040,
+)
+
+_CMARKETINGMESSAGES_GETMARKETINGMESSAGESFORUSER_RESPONSE = _descriptor.Descriptor(
+  name='CMarketingMessages_GetMarketingMessagesForUser_Response',
+  full_name='CMarketingMessages_GetMarketingMessagesForUser_Response',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='messages', full_name='CMarketingMessages_GetMarketingMessagesForUser_Response.messages', index=0,
+      number=1, type=11, cpp_type=10, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[_CMARKETINGMESSAGES_GETMARKETINGMESSAGESFORUSER_RESPONSE_MARKETINGMESSAGEFORUSER, ],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=1790,
+  serialized_end=2040,
+)
+
+
+_CMARKETINGMESSAGES_GETDISPLAYMARKETINGMESSAGE_REQUEST = _descriptor.Descriptor(
+  name='CMarketingMessages_GetDisplayMarketingMessage_Request',
+  full_name='CMarketingMessages_GetDisplayMarketingMessage_Request',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='gid', full_name='CMarketingMessages_GetDisplayMarketingMessage_Request.gid', index=0,
+      number=1, type=6, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='context', full_name='CMarketingMessages_GetDisplayMarketingMessage_Request.context', index=1,
+      number=2, type=11, cpp_type=10, label=1,
+      has_default_value=False, default_value=None,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='data_request', full_name='CMarketingMessages_GetDisplayMarketingMessage_Request.data_request', index=2,
+      number=3, type=11, cpp_type=10, label=1,
+      has_default_value=False, default_value=None,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030%If passed, item data will be returned', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=2043,
+  serialized_end=2243,
+)
+
+
+_CMARKETINGMESSAGES_GETDISPLAYMARKETINGMESSAGE_RESPONSE = _descriptor.Descriptor(
+  name='CMarketingMessages_GetDisplayMarketingMessage_Response',
+  full_name='CMarketingMessages_GetDisplayMarketingMessage_Response',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='message', full_name='CMarketingMessages_GetDisplayMarketingMessage_Response.message', index=0,
+      number=1, type=11, cpp_type=10, label=1,
+      has_default_value=False, default_value=None,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=2245,
+  serialized_end=2345,
+)
+
+
+_CMARKETINGMESSAGES_MARKMESSAGESEEN_NOTIFICATION = _descriptor.Descriptor(
+  name='CMarketingMessages_MarkMessageSeen_Notification',
+  full_name='CMarketingMessages_MarkMessageSeen_Notification',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='gid', full_name='CMarketingMessages_MarkMessageSeen_Notification.gid', index=0,
+      number=1, type=6, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=2347,
+  serialized_end=2409,
+)
+
+
+_CMARKETINGMESSAGES_GETMARKETINGMESSAGE_REQUEST = _descriptor.Descriptor(
+  name='CMarketingMessages_GetMarketingMessage_Request',
+  full_name='CMarketingMessages_GetMarketingMessage_Request',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='gid', full_name='CMarketingMessages_GetMarketingMessage_Request.gid', index=0,
+      number=1, type=6, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=2411,
+  serialized_end=2472,
+)
+
+
+_CMARKETINGMESSAGES_GETMARKETINGMESSAGE_RESPONSE = _descriptor.Descriptor(
+  name='CMarketingMessages_GetMarketingMessage_Response',
+  full_name='CMarketingMessages_GetMarketingMessage_Response',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='message', full_name='CMarketingMessages_GetMarketingMessage_Response.message', index=0,
+      number=1, type=11, cpp_type=10, label=1,
+      has_default_value=False, default_value=None,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=2474,
+  serialized_end=2565,
+)
+
+
+_CMARKETINGMESSAGES_CREATEMARKETINGMESSAGE_REQUEST = _descriptor.Descriptor(
+  name='CMarketingMessages_CreateMarketingMessage_Request',
+  full_name='CMarketingMessages_CreateMarketingMessage_Request',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='message', full_name='CMarketingMessages_CreateMarketingMessage_Request.message', index=0,
+      number=1, type=11, cpp_type=10, label=1,
+      has_default_value=False, default_value=None,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=2567,
+  serialized_end=2660,
+)
+
+
+_CMARKETINGMESSAGES_CREATEMARKETINGMESSAGE_RESPONSE = _descriptor.Descriptor(
+  name='CMarketingMessages_CreateMarketingMessage_Response',
+  full_name='CMarketingMessages_CreateMarketingMessage_Response',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='gid', full_name='CMarketingMessages_CreateMarketingMessage_Response.gid', index=0,
+      number=1, type=6, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=2662,
+  serialized_end=2727,
+)
+
+
+_CMARKETINGMESSAGES_UPDATEMARKETINGMESSAGE_REQUEST = _descriptor.Descriptor(
+  name='CMarketingMessages_UpdateMarketingMessage_Request',
+  full_name='CMarketingMessages_UpdateMarketingMessage_Request',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='gid', full_name='CMarketingMessages_UpdateMarketingMessage_Request.gid', index=0,
+      number=1, type=6, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='message', full_name='CMarketingMessages_UpdateMarketingMessage_Request.message', index=1,
+      number=2, type=11, cpp_type=10, label=1,
+      has_default_value=False, default_value=None,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=2729,
+  serialized_end=2835,
+)
+
+
+_CMARKETINGMESSAGES_UPDATEMARKETINGMESSAGE_RESPONSE = _descriptor.Descriptor(
+  name='CMarketingMessages_UpdateMarketingMessage_Response',
+  full_name='CMarketingMessages_UpdateMarketingMessage_Response',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=2837,
+  serialized_end=2889,
+)
+
+
+_CMARKETINGMESSAGES_DELETEMARKETINGMESSAGE_REQUEST = _descriptor.Descriptor(
+  name='CMarketingMessages_DeleteMarketingMessage_Request',
+  full_name='CMarketingMessages_DeleteMarketingMessage_Request',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='gid', full_name='CMarketingMessages_DeleteMarketingMessage_Request.gid', index=0,
+      number=1, type=6, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=2891,
+  serialized_end=2955,
+)
+
+
+_CMARKETINGMESSAGES_DELETEMARKETINGMESSAGE_RESPONSE = _descriptor.Descriptor(
+  name='CMarketingMessages_DeleteMarketingMessage_Response',
+  full_name='CMarketingMessages_DeleteMarketingMessage_Response',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=2957,
+  serialized_end=3009,
+)
+
+
+_CMARKETINGMESSAGES_FINDMARKETINGMESSAGES_REQUEST = _descriptor.Descriptor(
+  name='CMarketingMessages_FindMarketingMessages_Request',
+  full_name='CMarketingMessages_FindMarketingMessages_Request',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='lookup_type', full_name='CMarketingMessages_FindMarketingMessages_Request.lookup_type', index=0,
+      number=1, type=14, cpp_type=8, label=1,
+      has_default_value=True, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='gid', full_name='CMarketingMessages_FindMarketingMessages_Request.gid', index=1,
+      number=2, type=6, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='message_type', full_name='CMarketingMessages_FindMarketingMessages_Request.message_type', index=2,
+      number=3, type=14, cpp_type=8, label=1,
+      has_default_value=True, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='gidlist', full_name='CMarketingMessages_FindMarketingMessages_Request.gidlist', index=3,
+      number=4, type=6, cpp_type=4, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='title', full_name='CMarketingMessages_FindMarketingMessages_Request.title', index=4,
+      number=5, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=3012,
+  serialized_end=3266,
+)
+
+
+_CMARKETINGMESSAGES_FINDMARKETINGMESSAGES_RESPONSE = _descriptor.Descriptor(
+  name='CMarketingMessages_FindMarketingMessages_Response',
+  full_name='CMarketingMessages_FindMarketingMessages_Response',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='messages', full_name='CMarketingMessages_FindMarketingMessages_Response.messages', index=0,
+      number=1, type=11, cpp_type=10, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=3268,
+  serialized_end=3362,
+)
+
+_CMARKETINGMESSAGEPROTO.fields_by_name['type'].enum_type = _EMARKETINGMESSAGETYPE
+_CMARKETINGMESSAGEPROTO.fields_by_name['visibility'].enum_type = _EMARKETINGMESSAGEVISIBILITY
+_CMARKETINGMESSAGEPROTO.fields_by_name['association_type'].enum_type = _EMARKETINGMESSAGEASSOCIATIONTYPE
+_CMARKETINGMESSAGES_GETACTIVEMARKETINGMESSAGES_RESPONSE.fields_by_name['messages'].message_type = _CMARKETINGMESSAGEPROTO
+_CMARKETINGMESSAGES_GETMARKETINGMESSAGESFORUSER_REQUEST.fields_by_name['context'].message_type = steammessages__storebrowse__pb2._STOREBROWSECONTEXT
+_CMARKETINGMESSAGES_GETMARKETINGMESSAGESFORUSER_REQUEST.fields_by_name['data_request'].message_type = steammessages__storebrowse__pb2._STOREBROWSEITEMDATAREQUEST
+_CDISPLAYMARKETINGMESSAGE.fields_by_name['type'].enum_type = _EMARKETINGMESSAGETYPE
+_CDISPLAYMARKETINGMESSAGE.fields_by_name['associated_item_id'].message_type = steammessages__storebrowse__pb2._STOREITEMID
+_CDISPLAYMARKETINGMESSAGE.fields_by_name['associated_item'].message_type = steammessages__storebrowse__pb2._STOREITEM
+_CMARKETINGMESSAGES_GETMARKETINGMESSAGESFORUSER_RESPONSE_MARKETINGMESSAGEFORUSER.fields_by_name['message'].message_type = _CDISPLAYMARKETINGMESSAGE
+_CMARKETINGMESSAGES_GETMARKETINGMESSAGESFORUSER_RESPONSE_MARKETINGMESSAGEFORUSER.containing_type = _CMARKETINGMESSAGES_GETMARKETINGMESSAGESFORUSER_RESPONSE
+_CMARKETINGMESSAGES_GETMARKETINGMESSAGESFORUSER_RESPONSE.fields_by_name['messages'].message_type = _CMARKETINGMESSAGES_GETMARKETINGMESSAGESFORUSER_RESPONSE_MARKETINGMESSAGEFORUSER
+_CMARKETINGMESSAGES_GETDISPLAYMARKETINGMESSAGE_REQUEST.fields_by_name['context'].message_type = steammessages__storebrowse__pb2._STOREBROWSECONTEXT
+_CMARKETINGMESSAGES_GETDISPLAYMARKETINGMESSAGE_REQUEST.fields_by_name['data_request'].message_type = steammessages__storebrowse__pb2._STOREBROWSEITEMDATAREQUEST
+_CMARKETINGMESSAGES_GETDISPLAYMARKETINGMESSAGE_RESPONSE.fields_by_name['message'].message_type = _CDISPLAYMARKETINGMESSAGE
+_CMARKETINGMESSAGES_GETMARKETINGMESSAGE_RESPONSE.fields_by_name['message'].message_type = _CMARKETINGMESSAGEPROTO
+_CMARKETINGMESSAGES_CREATEMARKETINGMESSAGE_REQUEST.fields_by_name['message'].message_type = _CMARKETINGMESSAGEPROTO
+_CMARKETINGMESSAGES_UPDATEMARKETINGMESSAGE_REQUEST.fields_by_name['message'].message_type = _CMARKETINGMESSAGEPROTO
+_CMARKETINGMESSAGES_FINDMARKETINGMESSAGES_REQUEST.fields_by_name['lookup_type'].enum_type = _EMARKETINGMESSAGELOOKUPTYPE
+_CMARKETINGMESSAGES_FINDMARKETINGMESSAGES_REQUEST.fields_by_name['message_type'].enum_type = _EMARKETINGMESSAGETYPE
+_CMARKETINGMESSAGES_FINDMARKETINGMESSAGES_RESPONSE.fields_by_name['messages'].message_type = _CMARKETINGMESSAGEPROTO
+DESCRIPTOR.message_types_by_name['CMarketingMessages_GetActiveMarketingMessages_Request'] = _CMARKETINGMESSAGES_GETACTIVEMARKETINGMESSAGES_REQUEST
+DESCRIPTOR.message_types_by_name['CMarketingMessageProto'] = _CMARKETINGMESSAGEPROTO
+DESCRIPTOR.message_types_by_name['CMarketingMessages_GetActiveMarketingMessages_Response'] = _CMARKETINGMESSAGES_GETACTIVEMARKETINGMESSAGES_RESPONSE
+DESCRIPTOR.message_types_by_name['CMarketingMessages_GetMarketingMessagesForUser_Request'] = _CMARKETINGMESSAGES_GETMARKETINGMESSAGESFORUSER_REQUEST
+DESCRIPTOR.message_types_by_name['CDisplayMarketingMessage'] = _CDISPLAYMARKETINGMESSAGE
+DESCRIPTOR.message_types_by_name['CMarketingMessages_GetMarketingMessagesForUser_Response'] = _CMARKETINGMESSAGES_GETMARKETINGMESSAGESFORUSER_RESPONSE
+DESCRIPTOR.message_types_by_name['CMarketingMessages_GetDisplayMarketingMessage_Request'] = _CMARKETINGMESSAGES_GETDISPLAYMARKETINGMESSAGE_REQUEST
+DESCRIPTOR.message_types_by_name['CMarketingMessages_GetDisplayMarketingMessage_Response'] = _CMARKETINGMESSAGES_GETDISPLAYMARKETINGMESSAGE_RESPONSE
+DESCRIPTOR.message_types_by_name['CMarketingMessages_MarkMessageSeen_Notification'] = _CMARKETINGMESSAGES_MARKMESSAGESEEN_NOTIFICATION
+DESCRIPTOR.message_types_by_name['CMarketingMessages_GetMarketingMessage_Request'] = _CMARKETINGMESSAGES_GETMARKETINGMESSAGE_REQUEST
+DESCRIPTOR.message_types_by_name['CMarketingMessages_GetMarketingMessage_Response'] = _CMARKETINGMESSAGES_GETMARKETINGMESSAGE_RESPONSE
+DESCRIPTOR.message_types_by_name['CMarketingMessages_CreateMarketingMessage_Request'] = _CMARKETINGMESSAGES_CREATEMARKETINGMESSAGE_REQUEST
+DESCRIPTOR.message_types_by_name['CMarketingMessages_CreateMarketingMessage_Response'] = _CMARKETINGMESSAGES_CREATEMARKETINGMESSAGE_RESPONSE
+DESCRIPTOR.message_types_by_name['CMarketingMessages_UpdateMarketingMessage_Request'] = _CMARKETINGMESSAGES_UPDATEMARKETINGMESSAGE_REQUEST
+DESCRIPTOR.message_types_by_name['CMarketingMessages_UpdateMarketingMessage_Response'] = _CMARKETINGMESSAGES_UPDATEMARKETINGMESSAGE_RESPONSE
+DESCRIPTOR.message_types_by_name['CMarketingMessages_DeleteMarketingMessage_Request'] = _CMARKETINGMESSAGES_DELETEMARKETINGMESSAGE_REQUEST
+DESCRIPTOR.message_types_by_name['CMarketingMessages_DeleteMarketingMessage_Response'] = _CMARKETINGMESSAGES_DELETEMARKETINGMESSAGE_RESPONSE
+DESCRIPTOR.message_types_by_name['CMarketingMessages_FindMarketingMessages_Request'] = _CMARKETINGMESSAGES_FINDMARKETINGMESSAGES_REQUEST
+DESCRIPTOR.message_types_by_name['CMarketingMessages_FindMarketingMessages_Response'] = _CMARKETINGMESSAGES_FINDMARKETINGMESSAGES_RESPONSE
+DESCRIPTOR.enum_types_by_name['EMarketingMessageType'] = _EMARKETINGMESSAGETYPE
+DESCRIPTOR.enum_types_by_name['EMarketingMessageVisibility'] = _EMARKETINGMESSAGEVISIBILITY
+DESCRIPTOR.enum_types_by_name['EMarketingMessageAssociationType'] = _EMARKETINGMESSAGEASSOCIATIONTYPE
+DESCRIPTOR.enum_types_by_name['EMarketingMessageLookupType'] = _EMARKETINGMESSAGELOOKUPTYPE
+_sym_db.RegisterFileDescriptor(DESCRIPTOR)
+
+CMarketingMessages_GetActiveMarketingMessages_Request = _reflection.GeneratedProtocolMessageType('CMarketingMessages_GetActiveMarketingMessages_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CMARKETINGMESSAGES_GETACTIVEMARKETINGMESSAGES_REQUEST,
+  '__module__' : 'steammessages_marketingmessages_pb2'
+  # @@protoc_insertion_point(class_scope:CMarketingMessages_GetActiveMarketingMessages_Request)
+  })
+_sym_db.RegisterMessage(CMarketingMessages_GetActiveMarketingMessages_Request)
+
+CMarketingMessageProto = _reflection.GeneratedProtocolMessageType('CMarketingMessageProto', (_message.Message,), {
+  'DESCRIPTOR' : _CMARKETINGMESSAGEPROTO,
+  '__module__' : 'steammessages_marketingmessages_pb2'
+  # @@protoc_insertion_point(class_scope:CMarketingMessageProto)
+  })
+_sym_db.RegisterMessage(CMarketingMessageProto)
+
+CMarketingMessages_GetActiveMarketingMessages_Response = _reflection.GeneratedProtocolMessageType('CMarketingMessages_GetActiveMarketingMessages_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CMARKETINGMESSAGES_GETACTIVEMARKETINGMESSAGES_RESPONSE,
+  '__module__' : 'steammessages_marketingmessages_pb2'
+  # @@protoc_insertion_point(class_scope:CMarketingMessages_GetActiveMarketingMessages_Response)
+  })
+_sym_db.RegisterMessage(CMarketingMessages_GetActiveMarketingMessages_Response)
+
+CMarketingMessages_GetMarketingMessagesForUser_Request = _reflection.GeneratedProtocolMessageType('CMarketingMessages_GetMarketingMessagesForUser_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CMARKETINGMESSAGES_GETMARKETINGMESSAGESFORUSER_REQUEST,
+  '__module__' : 'steammessages_marketingmessages_pb2'
+  # @@protoc_insertion_point(class_scope:CMarketingMessages_GetMarketingMessagesForUser_Request)
+  })
+_sym_db.RegisterMessage(CMarketingMessages_GetMarketingMessagesForUser_Request)
+
+CDisplayMarketingMessage = _reflection.GeneratedProtocolMessageType('CDisplayMarketingMessage', (_message.Message,), {
+  'DESCRIPTOR' : _CDISPLAYMARKETINGMESSAGE,
+  '__module__' : 'steammessages_marketingmessages_pb2'
+  # @@protoc_insertion_point(class_scope:CDisplayMarketingMessage)
+  })
+_sym_db.RegisterMessage(CDisplayMarketingMessage)
+
+CMarketingMessages_GetMarketingMessagesForUser_Response = _reflection.GeneratedProtocolMessageType('CMarketingMessages_GetMarketingMessagesForUser_Response', (_message.Message,), {
+
+  'MarketingMessageForUser' : _reflection.GeneratedProtocolMessageType('MarketingMessageForUser', (_message.Message,), {
+    'DESCRIPTOR' : _CMARKETINGMESSAGES_GETMARKETINGMESSAGESFORUSER_RESPONSE_MARKETINGMESSAGEFORUSER,
+    '__module__' : 'steammessages_marketingmessages_pb2'
+    # @@protoc_insertion_point(class_scope:CMarketingMessages_GetMarketingMessagesForUser_Response.MarketingMessageForUser)
+    })
+  ,
+  'DESCRIPTOR' : _CMARKETINGMESSAGES_GETMARKETINGMESSAGESFORUSER_RESPONSE,
+  '__module__' : 'steammessages_marketingmessages_pb2'
+  # @@protoc_insertion_point(class_scope:CMarketingMessages_GetMarketingMessagesForUser_Response)
+  })
+_sym_db.RegisterMessage(CMarketingMessages_GetMarketingMessagesForUser_Response)
+_sym_db.RegisterMessage(CMarketingMessages_GetMarketingMessagesForUser_Response.MarketingMessageForUser)
+
+CMarketingMessages_GetDisplayMarketingMessage_Request = _reflection.GeneratedProtocolMessageType('CMarketingMessages_GetDisplayMarketingMessage_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CMARKETINGMESSAGES_GETDISPLAYMARKETINGMESSAGE_REQUEST,
+  '__module__' : 'steammessages_marketingmessages_pb2'
+  # @@protoc_insertion_point(class_scope:CMarketingMessages_GetDisplayMarketingMessage_Request)
+  })
+_sym_db.RegisterMessage(CMarketingMessages_GetDisplayMarketingMessage_Request)
+
+CMarketingMessages_GetDisplayMarketingMessage_Response = _reflection.GeneratedProtocolMessageType('CMarketingMessages_GetDisplayMarketingMessage_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CMARKETINGMESSAGES_GETDISPLAYMARKETINGMESSAGE_RESPONSE,
+  '__module__' : 'steammessages_marketingmessages_pb2'
+  # @@protoc_insertion_point(class_scope:CMarketingMessages_GetDisplayMarketingMessage_Response)
+  })
+_sym_db.RegisterMessage(CMarketingMessages_GetDisplayMarketingMessage_Response)
+
+CMarketingMessages_MarkMessageSeen_Notification = _reflection.GeneratedProtocolMessageType('CMarketingMessages_MarkMessageSeen_Notification', (_message.Message,), {
+  'DESCRIPTOR' : _CMARKETINGMESSAGES_MARKMESSAGESEEN_NOTIFICATION,
+  '__module__' : 'steammessages_marketingmessages_pb2'
+  # @@protoc_insertion_point(class_scope:CMarketingMessages_MarkMessageSeen_Notification)
+  })
+_sym_db.RegisterMessage(CMarketingMessages_MarkMessageSeen_Notification)
+
+CMarketingMessages_GetMarketingMessage_Request = _reflection.GeneratedProtocolMessageType('CMarketingMessages_GetMarketingMessage_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CMARKETINGMESSAGES_GETMARKETINGMESSAGE_REQUEST,
+  '__module__' : 'steammessages_marketingmessages_pb2'
+  # @@protoc_insertion_point(class_scope:CMarketingMessages_GetMarketingMessage_Request)
+  })
+_sym_db.RegisterMessage(CMarketingMessages_GetMarketingMessage_Request)
+
+CMarketingMessages_GetMarketingMessage_Response = _reflection.GeneratedProtocolMessageType('CMarketingMessages_GetMarketingMessage_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CMARKETINGMESSAGES_GETMARKETINGMESSAGE_RESPONSE,
+  '__module__' : 'steammessages_marketingmessages_pb2'
+  # @@protoc_insertion_point(class_scope:CMarketingMessages_GetMarketingMessage_Response)
+  })
+_sym_db.RegisterMessage(CMarketingMessages_GetMarketingMessage_Response)
+
+CMarketingMessages_CreateMarketingMessage_Request = _reflection.GeneratedProtocolMessageType('CMarketingMessages_CreateMarketingMessage_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CMARKETINGMESSAGES_CREATEMARKETINGMESSAGE_REQUEST,
+  '__module__' : 'steammessages_marketingmessages_pb2'
+  # @@protoc_insertion_point(class_scope:CMarketingMessages_CreateMarketingMessage_Request)
+  })
+_sym_db.RegisterMessage(CMarketingMessages_CreateMarketingMessage_Request)
+
+CMarketingMessages_CreateMarketingMessage_Response = _reflection.GeneratedProtocolMessageType('CMarketingMessages_CreateMarketingMessage_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CMARKETINGMESSAGES_CREATEMARKETINGMESSAGE_RESPONSE,
+  '__module__' : 'steammessages_marketingmessages_pb2'
+  # @@protoc_insertion_point(class_scope:CMarketingMessages_CreateMarketingMessage_Response)
+  })
+_sym_db.RegisterMessage(CMarketingMessages_CreateMarketingMessage_Response)
+
+CMarketingMessages_UpdateMarketingMessage_Request = _reflection.GeneratedProtocolMessageType('CMarketingMessages_UpdateMarketingMessage_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CMARKETINGMESSAGES_UPDATEMARKETINGMESSAGE_REQUEST,
+  '__module__' : 'steammessages_marketingmessages_pb2'
+  # @@protoc_insertion_point(class_scope:CMarketingMessages_UpdateMarketingMessage_Request)
+  })
+_sym_db.RegisterMessage(CMarketingMessages_UpdateMarketingMessage_Request)
+
+CMarketingMessages_UpdateMarketingMessage_Response = _reflection.GeneratedProtocolMessageType('CMarketingMessages_UpdateMarketingMessage_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CMARKETINGMESSAGES_UPDATEMARKETINGMESSAGE_RESPONSE,
+  '__module__' : 'steammessages_marketingmessages_pb2'
+  # @@protoc_insertion_point(class_scope:CMarketingMessages_UpdateMarketingMessage_Response)
+  })
+_sym_db.RegisterMessage(CMarketingMessages_UpdateMarketingMessage_Response)
+
+CMarketingMessages_DeleteMarketingMessage_Request = _reflection.GeneratedProtocolMessageType('CMarketingMessages_DeleteMarketingMessage_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CMARKETINGMESSAGES_DELETEMARKETINGMESSAGE_REQUEST,
+  '__module__' : 'steammessages_marketingmessages_pb2'
+  # @@protoc_insertion_point(class_scope:CMarketingMessages_DeleteMarketingMessage_Request)
+  })
+_sym_db.RegisterMessage(CMarketingMessages_DeleteMarketingMessage_Request)
+
+CMarketingMessages_DeleteMarketingMessage_Response = _reflection.GeneratedProtocolMessageType('CMarketingMessages_DeleteMarketingMessage_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CMARKETINGMESSAGES_DELETEMARKETINGMESSAGE_RESPONSE,
+  '__module__' : 'steammessages_marketingmessages_pb2'
+  # @@protoc_insertion_point(class_scope:CMarketingMessages_DeleteMarketingMessage_Response)
+  })
+_sym_db.RegisterMessage(CMarketingMessages_DeleteMarketingMessage_Response)
+
+CMarketingMessages_FindMarketingMessages_Request = _reflection.GeneratedProtocolMessageType('CMarketingMessages_FindMarketingMessages_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CMARKETINGMESSAGES_FINDMARKETINGMESSAGES_REQUEST,
+  '__module__' : 'steammessages_marketingmessages_pb2'
+  # @@protoc_insertion_point(class_scope:CMarketingMessages_FindMarketingMessages_Request)
+  })
+_sym_db.RegisterMessage(CMarketingMessages_FindMarketingMessages_Request)
+
+CMarketingMessages_FindMarketingMessages_Response = _reflection.GeneratedProtocolMessageType('CMarketingMessages_FindMarketingMessages_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CMARKETINGMESSAGES_FINDMARKETINGMESSAGES_RESPONSE,
+  '__module__' : 'steammessages_marketingmessages_pb2'
+  # @@protoc_insertion_point(class_scope:CMarketingMessages_FindMarketingMessages_Response)
+  })
+_sym_db.RegisterMessage(CMarketingMessages_FindMarketingMessages_Response)
+
+
+DESCRIPTOR._options = None
+_CMARKETINGMESSAGES_GETMARKETINGMESSAGESFORUSER_REQUEST.fields_by_name['operating_system']._options = None
+_CMARKETINGMESSAGES_GETMARKETINGMESSAGESFORUSER_REQUEST.fields_by_name['context']._options = None
+_CMARKETINGMESSAGES_GETMARKETINGMESSAGESFORUSER_REQUEST.fields_by_name['data_request']._options = None
+_CMARKETINGMESSAGES_GETDISPLAYMARKETINGMESSAGE_REQUEST.fields_by_name['data_request']._options = None
+
+_MARKETINGMESSAGES = _descriptor.ServiceDescriptor(
+  name='MarketingMessages',
+  full_name='MarketingMessages',
+  file=DESCRIPTOR,
+  index=0,
+  serialized_options=b'\202\265\030@Marketing message data (\"Steam News\" updates at client startup).',
+  create_key=_descriptor._internal_create_key,
+  serialized_start=4354,
+  serialized_end=6092,
+  methods=[
+  _descriptor.MethodDescriptor(
+    name='GetActiveMarketingMessages',
+    full_name='MarketingMessages.GetActiveMarketingMessages',
+    index=0,
+    containing_service=None,
+    input_type=_CMARKETINGMESSAGES_GETACTIVEMARKETINGMESSAGES_REQUEST,
+    output_type=_CMARKETINGMESSAGES_GETACTIVEMARKETINGMESSAGES_RESPONSE,
+    serialized_options=b'\202\265\030(Get a list of active marketing messages.',
+    create_key=_descriptor._internal_create_key,
+  ),
+  _descriptor.MethodDescriptor(
+    name='GetMarketingMessagesForUser',
+    full_name='MarketingMessages.GetMarketingMessagesForUser',
+    index=1,
+    containing_service=None,
+    input_type=_CMARKETINGMESSAGES_GETMARKETINGMESSAGESFORUSER_REQUEST,
+    output_type=_CMARKETINGMESSAGES_GETMARKETINGMESSAGESFORUSER_RESPONSE,
+    serialized_options=b'\202\265\030EGet a list of active marketing messages filtered for a specific user.',
+    create_key=_descriptor._internal_create_key,
+  ),
+  _descriptor.MethodDescriptor(
+    name='GetDisplayMarketingMessage',
+    full_name='MarketingMessages.GetDisplayMarketingMessage',
+    index=2,
+    containing_service=None,
+    input_type=_CMARKETINGMESSAGES_GETDISPLAYMARKETINGMESSAGE_REQUEST,
+    output_type=_CMARKETINGMESSAGES_GETDISPLAYMARKETINGMESSAGE_RESPONSE,
+    serialized_options=b'\202\265\030*Get a single marketing message, cacheable.',
+    create_key=_descriptor._internal_create_key,
+  ),
+  _descriptor.MethodDescriptor(
+    name='MarkMessageSeen',
+    full_name='MarketingMessages.MarkMessageSeen',
+    index=3,
+    containing_service=None,
+    input_type=_CMARKETINGMESSAGES_MARKMESSAGESEEN_NOTIFICATION,
+    output_type=steammessages__unified__base__pb2._NORESPONSE,
+    serialized_options=b'\202\265\030CMark that a user has viewed a message (so we won\'t show it again)\'.',
+    create_key=_descriptor._internal_create_key,
+  ),
+  _descriptor.MethodDescriptor(
+    name='GetMarketingMessage',
+    full_name='MarketingMessages.GetMarketingMessage',
+    index=4,
+    containing_service=None,
+    input_type=_CMARKETINGMESSAGES_GETMARKETINGMESSAGE_REQUEST,
+    output_type=_CMARKETINGMESSAGES_GETMARKETINGMESSAGE_RESPONSE,
+    serialized_options=b'\202\265\030MGet a single marketing message.  Admin account needed for non-active messages',
+    create_key=_descriptor._internal_create_key,
+  ),
+  _descriptor.MethodDescriptor(
+    name='CreateMarketingMessage',
+    full_name='MarketingMessages.CreateMarketingMessage',
+    index=5,
+    containing_service=None,
+    input_type=_CMARKETINGMESSAGES_CREATEMARKETINGMESSAGE_REQUEST,
+    output_type=_CMARKETINGMESSAGES_CREATEMARKETINGMESSAGE_RESPONSE,
+    serialized_options=b'\202\265\030\037Create a new marketing message.',
+    create_key=_descriptor._internal_create_key,
+  ),
+  _descriptor.MethodDescriptor(
+    name='UpdateMarketingMessage',
+    full_name='MarketingMessages.UpdateMarketingMessage',
+    index=6,
+    containing_service=None,
+    input_type=_CMARKETINGMESSAGES_UPDATEMARKETINGMESSAGE_REQUEST,
+    output_type=_CMARKETINGMESSAGES_UPDATEMARKETINGMESSAGE_RESPONSE,
+    serialized_options=b'\202\265\030\033Modify a marketing message.',
+    create_key=_descriptor._internal_create_key,
+  ),
+  _descriptor.MethodDescriptor(
+    name='DeleteMarketingMessage',
+    full_name='MarketingMessages.DeleteMarketingMessage',
+    index=7,
+    containing_service=None,
+    input_type=_CMARKETINGMESSAGES_DELETEMARKETINGMESSAGE_REQUEST,
+    output_type=_CMARKETINGMESSAGES_DELETEMARKETINGMESSAGE_RESPONSE,
+    serialized_options=b'\202\265\030\033Delete a marketing message.',
+    create_key=_descriptor._internal_create_key,
+  ),
+  _descriptor.MethodDescriptor(
+    name='FindMarketingMessages',
+    full_name='MarketingMessages.FindMarketingMessages',
+    index=8,
+    containing_service=None,
+    input_type=_CMARKETINGMESSAGES_FINDMARKETINGMESSAGES_REQUEST,
+    output_type=_CMARKETINGMESSAGES_FINDMARKETINGMESSAGES_RESPONSE,
+    serialized_options=b'\202\265\0301Search for marketing messages by name, type, etc.',
+    create_key=_descriptor._internal_create_key,
+  ),
+])
+_sym_db.RegisterServiceDescriptor(_MARKETINGMESSAGES)
+
+DESCRIPTOR.services_by_name['MarketingMessages'] = _MARKETINGMESSAGES
+
+MarketingMessages = service_reflection.GeneratedServiceType('MarketingMessages', (_service.Service,), dict(
+  DESCRIPTOR = _MARKETINGMESSAGES,
+  __module__ = 'steammessages_marketingmessages_pb2'
+  ))
+
+MarketingMessages_Stub = service_reflection.GeneratedServiceStubType('MarketingMessages_Stub', (MarketingMessages,), dict(
+  DESCRIPTOR = _MARKETINGMESSAGES,
+  __module__ = 'steammessages_marketingmessages_pb2'
+  ))
+
+
+# @@protoc_insertion_point(module_scope)
diff --git a/steam/protobufs/steammessages_offline_pb2.py b/steam/protobufs/steammessages_offline_pb2.py
index 31397a2..30333cf 100644
--- a/steam/protobufs/steammessages_offline_pb2.py
+++ b/steam/protobufs/steammessages_offline_pb2.py
@@ -1,9 +1,7 @@
 # -*- coding: utf-8 -*-
 # Generated by the protocol buffer compiler.  DO NOT EDIT!
 # source: steammessages_offline.proto
-
-import sys
-_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1'))
+"""Generated protocol buffer code."""
 from google.protobuf import descriptor as _descriptor
 from google.protobuf import message as _message
 from google.protobuf import reflection as _reflection
@@ -15,17 +13,20 @@ from google.protobuf import service_reflection
 _sym_db = _symbol_database.Default()
 
 
+import steam.protobufs.steammessages_base_pb2 as steammessages__base__pb2
 import steam.protobufs.steammessages_unified_base_pb2 as steammessages__unified__base__pb2
+import steam.protobufs.offline_ticket_pb2 as offline__ticket__pb2
 
 
 DESCRIPTOR = _descriptor.FileDescriptor(
   name='steammessages_offline.proto',
   package='',
   syntax='proto2',
-  serialized_options=_b('\220\001\001'),
-  serialized_pb=_b('\n\x1bsteammessages_offline.proto\x1a steammessages_unified_base.proto\":\n&COffline_GetOfflineLogonTicket_Request\x12\x10\n\x08priority\x18\x01 \x01(\r\"W\n\'COffline_GetOfflineLogonTicket_Response\x12\x19\n\x11serialized_ticket\x18\x01 \x01(\x0c\x12\x11\n\tsignature\x18\x02 \x01(\x0c\"0\n.COffline_GetUnsignedOfflineLogonTicket_Request\"O\n\x1b\x43Offline_OfflineLogonTicket\x12\x11\n\taccountid\x18\x01 \x01(\r\x12\x1d\n\x15rtime32_creation_time\x18\x02 \x01(\x07\"_\n/COffline_GetUnsignedOfflineLogonTicket_Response\x12,\n\x06ticket\x18\x01 \x01(\x0b\x32\x1c.COffline_OfflineLogonTicket2\xa3\x03\n\x07Offline\x12\xb5\x01\n\x15GetOfflineLogonTicket\x12\'.COffline_GetOfflineLogonTicket_Request\x1a(.COffline_GetOfflineLogonTicket_Response\"I\x82\xb5\x18\x45Get a serialized and signed offline logon ticket for the current user\x12\xc1\x01\n\x1dGetUnsignedOfflineLogonTicket\x12/.COffline_GetUnsignedOfflineLogonTicket_Request\x1a\x30.COffline_GetUnsignedOfflineLogonTicket_Response\"=\x82\xb5\x18\x39Get an unsigned offline logon ticket for the current user\x1a\x1c\x82\xb5\x18\x18Offline settings serviceB\x03\x90\x01\x01')
+  serialized_options=b'\220\001\001',
+  create_key=_descriptor._internal_create_key,
+  serialized_pb=b'\n\x1bsteammessages_offline.proto\x1a\x18steammessages_base.proto\x1a steammessages_unified_base.proto\x1a\x14offline_ticket.proto\"V\n&COffline_GetOfflineLogonTicket_Request\x12\x10\n\x08priority\x18\x01 \x01(\r\x12\x1a\n\x12perform_encryption\x18\x02 \x01(\x08\"\x82\x01\n\'COffline_GetOfflineLogonTicket_Response\x12\x19\n\x11serialized_ticket\x18\x01 \x01(\x0c\x12\x11\n\tsignature\x18\x02 \x01(\x0c\x12)\n\x10\x65ncrypted_ticket\x18\x03 \x01(\x0b\x32\x0f.Offline_Ticket\"0\n.COffline_GetUnsignedOfflineLogonTicket_Request\"O\n\x1b\x43Offline_OfflineLogonTicket\x12\x11\n\taccountid\x18\x01 \x01(\r\x12\x1d\n\x15rtime32_creation_time\x18\x02 \x01(\x07\"_\n/COffline_GetUnsignedOfflineLogonTicket_Response\x12,\n\x06ticket\x18\x01 \x01(\x0b\x32\x1c.COffline_OfflineLogonTicket2\xa3\x03\n\x07Offline\x12\xb5\x01\n\x15GetOfflineLogonTicket\x12\'.COffline_GetOfflineLogonTicket_Request\x1a(.COffline_GetOfflineLogonTicket_Response\"I\x82\xb5\x18\x45Get a serialized and signed offline logon ticket for the current user\x12\xc1\x01\n\x1dGetUnsignedOfflineLogonTicket\x12/.COffline_GetUnsignedOfflineLogonTicket_Request\x1a\x30.COffline_GetUnsignedOfflineLogonTicket_Response\"=\x82\xb5\x18\x39Get an unsigned offline logon ticket for the current user\x1a\x1c\x82\xb5\x18\x18Offline settings serviceB\x03\x90\x01\x01'
   ,
-  dependencies=[steammessages__unified__base__pb2.DESCRIPTOR,])
+  dependencies=[steammessages__base__pb2.DESCRIPTOR,steammessages__unified__base__pb2.DESCRIPTOR,offline__ticket__pb2.DESCRIPTOR,])
 
 
 
@@ -36,6 +37,7 @@ _COFFLINE_GETOFFLINELOGONTICKET_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='priority', full_name='COffline_GetOfflineLogonTicket_Request.priority', index=0,
@@ -43,7 +45,14 @@ _COFFLINE_GETOFFLINELOGONTICKET_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='perform_encryption', full_name='COffline_GetOfflineLogonTicket_Request.perform_encryption', index=1,
+      number=2, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -56,8 +65,8 @@ _COFFLINE_GETOFFLINELOGONTICKET_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=65,
-  serialized_end=123,
+  serialized_start=113,
+  serialized_end=199,
 )
 
 
@@ -67,21 +76,29 @@ _COFFLINE_GETOFFLINELOGONTICKET_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='serialized_ticket', full_name='COffline_GetOfflineLogonTicket_Response.serialized_ticket', index=0,
       number=1, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='signature', full_name='COffline_GetOfflineLogonTicket_Response.signature', index=1,
       number=2, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='encrypted_ticket', full_name='COffline_GetOfflineLogonTicket_Response.encrypted_ticket', index=2,
+      number=3, type=11, cpp_type=10, label=1,
+      has_default_value=False, default_value=None,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -94,8 +111,8 @@ _COFFLINE_GETOFFLINELOGONTICKET_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=125,
-  serialized_end=212,
+  serialized_start=202,
+  serialized_end=332,
 )
 
 
@@ -105,6 +122,7 @@ _COFFLINE_GETUNSIGNEDOFFLINELOGONTICKET_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -118,8 +136,8 @@ _COFFLINE_GETUNSIGNEDOFFLINELOGONTICKET_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=214,
-  serialized_end=262,
+  serialized_start=334,
+  serialized_end=382,
 )
 
 
@@ -129,6 +147,7 @@ _COFFLINE_OFFLINELOGONTICKET = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='accountid', full_name='COffline_OfflineLogonTicket.accountid', index=0,
@@ -136,14 +155,14 @@ _COFFLINE_OFFLINELOGONTICKET = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='rtime32_creation_time', full_name='COffline_OfflineLogonTicket.rtime32_creation_time', index=1,
       number=2, type=7, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -156,8 +175,8 @@ _COFFLINE_OFFLINELOGONTICKET = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=264,
-  serialized_end=343,
+  serialized_start=384,
+  serialized_end=463,
 )
 
 
@@ -167,6 +186,7 @@ _COFFLINE_GETUNSIGNEDOFFLINELOGONTICKET_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='ticket', full_name='COffline_GetUnsignedOfflineLogonTicket_Response.ticket', index=0,
@@ -174,7 +194,7 @@ _COFFLINE_GETUNSIGNEDOFFLINELOGONTICKET_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -187,10 +207,11 @@ _COFFLINE_GETUNSIGNEDOFFLINELOGONTICKET_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=345,
-  serialized_end=440,
+  serialized_start=465,
+  serialized_end=560,
 )
 
+_COFFLINE_GETOFFLINELOGONTICKET_RESPONSE.fields_by_name['encrypted_ticket'].message_type = offline__ticket__pb2._OFFLINE_TICKET
 _COFFLINE_GETUNSIGNEDOFFLINELOGONTICKET_RESPONSE.fields_by_name['ticket'].message_type = _COFFLINE_OFFLINELOGONTICKET
 DESCRIPTOR.message_types_by_name['COffline_GetOfflineLogonTicket_Request'] = _COFFLINE_GETOFFLINELOGONTICKET_REQUEST
 DESCRIPTOR.message_types_by_name['COffline_GetOfflineLogonTicket_Response'] = _COFFLINE_GETOFFLINELOGONTICKET_RESPONSE
@@ -199,39 +220,39 @@ DESCRIPTOR.message_types_by_name['COffline_OfflineLogonTicket'] = _COFFLINE_OFFL
 DESCRIPTOR.message_types_by_name['COffline_GetUnsignedOfflineLogonTicket_Response'] = _COFFLINE_GETUNSIGNEDOFFLINELOGONTICKET_RESPONSE
 _sym_db.RegisterFileDescriptor(DESCRIPTOR)
 
-COffline_GetOfflineLogonTicket_Request = _reflection.GeneratedProtocolMessageType('COffline_GetOfflineLogonTicket_Request', (_message.Message,), dict(
-  DESCRIPTOR = _COFFLINE_GETOFFLINELOGONTICKET_REQUEST,
-  __module__ = 'steammessages_offline_pb2'
+COffline_GetOfflineLogonTicket_Request = _reflection.GeneratedProtocolMessageType('COffline_GetOfflineLogonTicket_Request', (_message.Message,), {
+  'DESCRIPTOR' : _COFFLINE_GETOFFLINELOGONTICKET_REQUEST,
+  '__module__' : 'steammessages_offline_pb2'
   # @@protoc_insertion_point(class_scope:COffline_GetOfflineLogonTicket_Request)
-  ))
+  })
 _sym_db.RegisterMessage(COffline_GetOfflineLogonTicket_Request)
 
-COffline_GetOfflineLogonTicket_Response = _reflection.GeneratedProtocolMessageType('COffline_GetOfflineLogonTicket_Response', (_message.Message,), dict(
-  DESCRIPTOR = _COFFLINE_GETOFFLINELOGONTICKET_RESPONSE,
-  __module__ = 'steammessages_offline_pb2'
+COffline_GetOfflineLogonTicket_Response = _reflection.GeneratedProtocolMessageType('COffline_GetOfflineLogonTicket_Response', (_message.Message,), {
+  'DESCRIPTOR' : _COFFLINE_GETOFFLINELOGONTICKET_RESPONSE,
+  '__module__' : 'steammessages_offline_pb2'
   # @@protoc_insertion_point(class_scope:COffline_GetOfflineLogonTicket_Response)
-  ))
+  })
 _sym_db.RegisterMessage(COffline_GetOfflineLogonTicket_Response)
 
-COffline_GetUnsignedOfflineLogonTicket_Request = _reflection.GeneratedProtocolMessageType('COffline_GetUnsignedOfflineLogonTicket_Request', (_message.Message,), dict(
-  DESCRIPTOR = _COFFLINE_GETUNSIGNEDOFFLINELOGONTICKET_REQUEST,
-  __module__ = 'steammessages_offline_pb2'
+COffline_GetUnsignedOfflineLogonTicket_Request = _reflection.GeneratedProtocolMessageType('COffline_GetUnsignedOfflineLogonTicket_Request', (_message.Message,), {
+  'DESCRIPTOR' : _COFFLINE_GETUNSIGNEDOFFLINELOGONTICKET_REQUEST,
+  '__module__' : 'steammessages_offline_pb2'
   # @@protoc_insertion_point(class_scope:COffline_GetUnsignedOfflineLogonTicket_Request)
-  ))
+  })
 _sym_db.RegisterMessage(COffline_GetUnsignedOfflineLogonTicket_Request)
 
-COffline_OfflineLogonTicket = _reflection.GeneratedProtocolMessageType('COffline_OfflineLogonTicket', (_message.Message,), dict(
-  DESCRIPTOR = _COFFLINE_OFFLINELOGONTICKET,
-  __module__ = 'steammessages_offline_pb2'
+COffline_OfflineLogonTicket = _reflection.GeneratedProtocolMessageType('COffline_OfflineLogonTicket', (_message.Message,), {
+  'DESCRIPTOR' : _COFFLINE_OFFLINELOGONTICKET,
+  '__module__' : 'steammessages_offline_pb2'
   # @@protoc_insertion_point(class_scope:COffline_OfflineLogonTicket)
-  ))
+  })
 _sym_db.RegisterMessage(COffline_OfflineLogonTicket)
 
-COffline_GetUnsignedOfflineLogonTicket_Response = _reflection.GeneratedProtocolMessageType('COffline_GetUnsignedOfflineLogonTicket_Response', (_message.Message,), dict(
-  DESCRIPTOR = _COFFLINE_GETUNSIGNEDOFFLINELOGONTICKET_RESPONSE,
-  __module__ = 'steammessages_offline_pb2'
+COffline_GetUnsignedOfflineLogonTicket_Response = _reflection.GeneratedProtocolMessageType('COffline_GetUnsignedOfflineLogonTicket_Response', (_message.Message,), {
+  'DESCRIPTOR' : _COFFLINE_GETUNSIGNEDOFFLINELOGONTICKET_RESPONSE,
+  '__module__' : 'steammessages_offline_pb2'
   # @@protoc_insertion_point(class_scope:COffline_GetUnsignedOfflineLogonTicket_Response)
-  ))
+  })
 _sym_db.RegisterMessage(COffline_GetUnsignedOfflineLogonTicket_Response)
 
 
@@ -242,9 +263,10 @@ _OFFLINE = _descriptor.ServiceDescriptor(
   full_name='Offline',
   file=DESCRIPTOR,
   index=0,
-  serialized_options=_b('\202\265\030\030Offline settings service'),
-  serialized_start=443,
-  serialized_end=862,
+  serialized_options=b'\202\265\030\030Offline settings service',
+  create_key=_descriptor._internal_create_key,
+  serialized_start=563,
+  serialized_end=982,
   methods=[
   _descriptor.MethodDescriptor(
     name='GetOfflineLogonTicket',
@@ -253,7 +275,8 @@ _OFFLINE = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_COFFLINE_GETOFFLINELOGONTICKET_REQUEST,
     output_type=_COFFLINE_GETOFFLINELOGONTICKET_RESPONSE,
-    serialized_options=_b('\202\265\030EGet a serialized and signed offline logon ticket for the current user'),
+    serialized_options=b'\202\265\030EGet a serialized and signed offline logon ticket for the current user',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetUnsignedOfflineLogonTicket',
@@ -262,7 +285,8 @@ _OFFLINE = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_COFFLINE_GETUNSIGNEDOFFLINELOGONTICKET_REQUEST,
     output_type=_COFFLINE_GETUNSIGNEDOFFLINELOGONTICKET_RESPONSE,
-    serialized_options=_b('\202\265\0309Get an unsigned offline logon ticket for the current user'),
+    serialized_options=b'\202\265\0309Get an unsigned offline logon ticket for the current user',
+    create_key=_descriptor._internal_create_key,
   ),
 ])
 _sym_db.RegisterServiceDescriptor(_OFFLINE)
diff --git a/steam/protobufs/steammessages_parental_pb2.py b/steam/protobufs/steammessages_parental_pb2.py
index 9758f3c..73a22c2 100644
--- a/steam/protobufs/steammessages_parental_pb2.py
+++ b/steam/protobufs/steammessages_parental_pb2.py
@@ -1,9 +1,7 @@
 # -*- coding: utf-8 -*-
 # Generated by the protocol buffer compiler.  DO NOT EDIT!
 # source: steammessages_parental.proto
-
-import sys
-_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1'))
+"""Generated protocol buffer code."""
 from google.protobuf import descriptor as _descriptor
 from google.protobuf import message as _message
 from google.protobuf import reflection as _reflection
@@ -15,6 +13,7 @@ from google.protobuf import service_reflection
 _sym_db = _symbol_database.Default()
 
 
+import steam.protobufs.steammessages_base_pb2 as steammessages__base__pb2
 import steam.protobufs.steammessages_unified_base_pb2 as steammessages__unified__base__pb2
 
 
@@ -22,10 +21,11 @@ DESCRIPTOR = _descriptor.FileDescriptor(
   name='steammessages_parental.proto',
   package='',
   syntax='proto2',
-  serialized_options=_b('\220\001\001'),
-  serialized_pb=_b('\n\x1csteammessages_parental.proto\x1a steammessages_unified_base.proto\"0\n\x0bParentalApp\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x12\n\nis_allowed\x18\x02 \x01(\x08\"\xca\x02\n\x10ParentalSettings\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12\x17\n\x0f\x61pplist_base_id\x18\x02 \x01(\r\x12 \n\x18\x61pplist_base_description\x18\x03 \x01(\t\x12\"\n\x0c\x61pplist_base\x18\x04 \x03(\x0b\x32\x0c.ParentalApp\x12$\n\x0e\x61pplist_custom\x18\x05 \x03(\x0b\x32\x0c.ParentalApp\x12\x18\n\x10passwordhashtype\x18\x06 \x01(\r\x12\x0c\n\x04salt\x18\x07 \x01(\x0c\x12\x14\n\x0cpasswordhash\x18\x08 \x01(\x0c\x12\x12\n\nis_enabled\x18\t \x01(\x08\x12\x18\n\x10\x65nabled_features\x18\n \x01(\r\x12\x16\n\x0erecovery_email\x18\x0b \x01(\t\x12\x1c\n\x14is_site_license_lock\x18\x0c \x01(\x08\"\x99\x01\n(CParental_EnableParentalSettings_Request\x12\x10\n\x08password\x18\x01 \x01(\t\x12#\n\x08settings\x18\x02 \x01(\x0b\x32\x11.ParentalSettings\x12\x11\n\tsessionid\x18\x03 \x01(\t\x12\x12\n\nenablecode\x18\x04 \x01(\r\x12\x0f\n\x07steamid\x18\n \x01(\x06\"+\n)CParental_EnableParentalSettings_Response\"N\n)CParental_DisableParentalSettings_Request\x12\x10\n\x08password\x18\x01 \x01(\t\x12\x0f\n\x07steamid\x18\n \x01(\x06\",\n*CParental_DisableParentalSettings_Response\"8\n%CParental_GetParentalSettings_Request\x12\x0f\n\x07steamid\x18\n \x01(\x06\"M\n&CParental_GetParentalSettings_Response\x12#\n\x08settings\x18\x01 \x01(\x0b\x32\x11.ParentalSettings\"?\n+CParental_GetSignedParentalSettings_Request\x12\x10\n\x08priority\x18\x01 \x01(\r\"^\n,CParental_GetSignedParentalSettings_Response\x12\x1b\n\x13serialized_settings\x18\x01 \x01(\x0c\x12\x11\n\tsignature\x18\x02 \x01(\x0c\"\x98\x01\n%CParental_SetParentalSettings_Request\x12\x10\n\x08password\x18\x01 \x01(\t\x12#\n\x08settings\x18\x02 \x01(\x0b\x32\x11.ParentalSettings\x12\x14\n\x0cnew_password\x18\x03 \x01(\t\x12\x11\n\tsessionid\x18\x04 \x01(\t\x12\x0f\n\x07steamid\x18\n \x01(\x06\"(\n&CParental_SetParentalSettings_Response\"7\n\x1f\x43Parental_ValidateToken_Request\x12\x14\n\x0cunlock_token\x18\x01 \x01(\t\"\"\n CParental_ValidateToken_Response\"g\n\"CParental_ValidatePassword_Request\x12\x10\n\x08password\x18\x01 \x01(\t\x12\x0f\n\x07session\x18\x02 \x01(\t\x12\x1e\n\x16send_unlock_on_success\x18\x03 \x01(\x08\"4\n#CParental_ValidatePassword_Response\x12\r\n\x05token\x18\x01 \x01(\t\"/\n\x1c\x43Parental_LockClient_Request\x12\x0f\n\x07session\x18\x01 \x01(\t\"\x1f\n\x1d\x43Parental_LockClient_Response\"\'\n%CParental_RequestRecoveryCode_Request\"(\n&CParental_RequestRecoveryCode_Response\"S\n)CParental_DisableWithRecoveryCode_Request\x12\x15\n\rrecovery_code\x18\x01 \x01(\r\x12\x0f\n\x07steamid\x18\n \x01(\x06\",\n*CParental_DisableWithRecoveryCode_Response\"\x84\x01\n-CParental_ParentalSettingsChange_Notification\x12\x1b\n\x13serialized_settings\x18\x01 \x01(\x0c\x12\x11\n\tsignature\x18\x02 \x01(\x0c\x12\x10\n\x08password\x18\x03 \x01(\t\x12\x11\n\tsessionid\x18\x04 \x01(\t\"L\n%CParental_ParentalUnlock_Notification\x12\x10\n\x08password\x18\x01 \x01(\t\x12\x11\n\tsessionid\x18\x02 \x01(\t\"8\n#CParental_ParentalLock_Notification\x12\x11\n\tsessionid\x18\x01 \x01(\t2\xd2\x0e\n\x08Parental\x12\xd0\x01\n\x16\x45nableParentalSettings\x12).CParental_EnableParentalSettings_Request\x1a*.CParental_EnableParentalSettings_Response\"_\x82\xb5\x18[Enable parental settings for the logged in account, optionally setting the current settings\x12\xab\x01\n\x17\x44isableParentalSettings\x12*.CParental_DisableParentalSettings_Request\x1a+.CParental_DisableParentalSettings_Response\"7\x82\xb5\x18\x33\x44isable parental settings for the logged in account\x12\xa7\x01\n\x13GetParentalSettings\x12&.CParental_GetParentalSettings_Request\x1a\'.CParental_GetParentalSettings_Response\"?\x82\xb5\x18;Get the current parental settings for the logged in account\x12\xe8\x01\n\x19GetSignedParentalSettings\x12,.CParental_GetSignedParentalSettings_Request\x1a-.CParental_GetSignedParentalSettings_Response\"n\x82\xb5\x18jGet the current parental settings for the logged in account in a form that can by verified by the receiver\x12\xa7\x01\n\x13SetParentalSettings\x12&.CParental_SetParentalSettings_Request\x1a\'.CParental_SetParentalSettings_Response\"?\x82\xb5\x18;Set the current parental settings for the logged in account\x12\xa7\x01\n\rValidateToken\x12 .CParental_ValidateToken_Request\x1a!.CParental_ValidateToken_Response\"Q\x82\xb5\x18MCheck if the given parental unlock token is correct for the logged in account\x12\xb7\x01\n\x10ValidatePassword\x12#.CParental_ValidatePassword_Request\x1a$.CParental_ValidatePassword_Response\"X\x82\xb5\x18TValidate the plaintext password for the logged in account and return an unlock token\x12\x8f\x01\n\nLockClient\x12\x1d.CParental_LockClient_Request\x1a\x1e.CParental_LockClient_Response\"B\x82\xb5\x18>Notify connected clients that a lock has occurred in a browser\x12\xc3\x01\n\x13RequestRecoveryCode\x12&.CParental_RequestRecoveryCode_Request\x1a\'.CParental_RequestRecoveryCode_Response\"[\x82\xb5\x18WRequest a recovery code be sent to the recovery email address for the specified account\x12\xaa\x01\n\x17\x44isableWithRecoveryCode\x12*.CParental_DisableWithRecoveryCode_Request\x1a+.CParental_DisableWithRecoveryCode_Response\"6\x82\xb5\x18\x32\x41ttempt a recovery unlock on the specified account\x1a\x1d\x82\xb5\x18\x19Parental settings service2\x86\x04\n\x0eParentalClient\x12\x9c\x01\n\x14NotifySettingsChange\x12..CParental_ParentalSettingsChange_Notification\x1a\x0b.NoResponse\"G\x82\xb5\x18\x43Notification from server to client of a change in parental settings\x12\x94\x01\n\x0cNotifyUnlock\x12&.CParental_ParentalUnlock_Notification\x1a\x0b.NoResponse\"O\x82\xb5\x18KNotification from server to client that an unlock has occurred in a browser\x12\x8d\x01\n\nNotifyLock\x12$.CParental_ParentalLock_Notification\x1a\x0b.NoResponse\"L\x82\xb5\x18HNotification from server to client that a lock has occurred in a browser\x1a.\x82\xb5\x18&Parental settings client notifications\xc0\xb5\x18\x02\x42\x03\x90\x01\x01')
+  serialized_options=b'\220\001\001',
+  create_key=_descriptor._internal_create_key,
+  serialized_pb=b'\n\x1csteammessages_parental.proto\x1a\x18steammessages_base.proto\x1a steammessages_unified_base.proto\"0\n\x0bParentalApp\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x12\n\nis_allowed\x18\x02 \x01(\x08\"\xca\x02\n\x10ParentalSettings\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12\x17\n\x0f\x61pplist_base_id\x18\x02 \x01(\r\x12 \n\x18\x61pplist_base_description\x18\x03 \x01(\t\x12\"\n\x0c\x61pplist_base\x18\x04 \x03(\x0b\x32\x0c.ParentalApp\x12$\n\x0e\x61pplist_custom\x18\x05 \x03(\x0b\x32\x0c.ParentalApp\x12\x18\n\x10passwordhashtype\x18\x06 \x01(\r\x12\x0c\n\x04salt\x18\x07 \x01(\x0c\x12\x14\n\x0cpasswordhash\x18\x08 \x01(\x0c\x12\x12\n\nis_enabled\x18\t \x01(\x08\x12\x18\n\x10\x65nabled_features\x18\n \x01(\r\x12\x16\n\x0erecovery_email\x18\x0b \x01(\t\x12\x1c\n\x14is_site_license_lock\x18\x0c \x01(\x08\"\x99\x01\n(CParental_EnableParentalSettings_Request\x12\x10\n\x08password\x18\x01 \x01(\t\x12#\n\x08settings\x18\x02 \x01(\x0b\x32\x11.ParentalSettings\x12\x11\n\tsessionid\x18\x03 \x01(\t\x12\x12\n\nenablecode\x18\x04 \x01(\r\x12\x0f\n\x07steamid\x18\n \x01(\x06\"+\n)CParental_EnableParentalSettings_Response\"N\n)CParental_DisableParentalSettings_Request\x12\x10\n\x08password\x18\x01 \x01(\t\x12\x0f\n\x07steamid\x18\n \x01(\x06\",\n*CParental_DisableParentalSettings_Response\"8\n%CParental_GetParentalSettings_Request\x12\x0f\n\x07steamid\x18\n \x01(\x06\"M\n&CParental_GetParentalSettings_Response\x12#\n\x08settings\x18\x01 \x01(\x0b\x32\x11.ParentalSettings\"?\n+CParental_GetSignedParentalSettings_Request\x12\x10\n\x08priority\x18\x01 \x01(\r\"^\n,CParental_GetSignedParentalSettings_Response\x12\x1b\n\x13serialized_settings\x18\x01 \x01(\x0c\x12\x11\n\tsignature\x18\x02 \x01(\x0c\"\x98\x01\n%CParental_SetParentalSettings_Request\x12\x10\n\x08password\x18\x01 \x01(\t\x12#\n\x08settings\x18\x02 \x01(\x0b\x32\x11.ParentalSettings\x12\x14\n\x0cnew_password\x18\x03 \x01(\t\x12\x11\n\tsessionid\x18\x04 \x01(\t\x12\x0f\n\x07steamid\x18\n \x01(\x06\"(\n&CParental_SetParentalSettings_Response\"7\n\x1f\x43Parental_ValidateToken_Request\x12\x14\n\x0cunlock_token\x18\x01 \x01(\t\"\"\n CParental_ValidateToken_Response\"g\n\"CParental_ValidatePassword_Request\x12\x10\n\x08password\x18\x01 \x01(\t\x12\x0f\n\x07session\x18\x02 \x01(\t\x12\x1e\n\x16send_unlock_on_success\x18\x03 \x01(\x08\"4\n#CParental_ValidatePassword_Response\x12\r\n\x05token\x18\x01 \x01(\t\"/\n\x1c\x43Parental_LockClient_Request\x12\x0f\n\x07session\x18\x01 \x01(\t\"\x1f\n\x1d\x43Parental_LockClient_Response\"\'\n%CParental_RequestRecoveryCode_Request\"(\n&CParental_RequestRecoveryCode_Response\"S\n)CParental_DisableWithRecoveryCode_Request\x12\x15\n\rrecovery_code\x18\x01 \x01(\r\x12\x0f\n\x07steamid\x18\n \x01(\x06\",\n*CParental_DisableWithRecoveryCode_Response\"\x84\x01\n-CParental_ParentalSettingsChange_Notification\x12\x1b\n\x13serialized_settings\x18\x01 \x01(\x0c\x12\x11\n\tsignature\x18\x02 \x01(\x0c\x12\x10\n\x08password\x18\x03 \x01(\t\x12\x11\n\tsessionid\x18\x04 \x01(\t\"L\n%CParental_ParentalUnlock_Notification\x12\x10\n\x08password\x18\x01 \x01(\t\x12\x11\n\tsessionid\x18\x02 \x01(\t\"8\n#CParental_ParentalLock_Notification\x12\x11\n\tsessionid\x18\x01 \x01(\t2\xd2\x0e\n\x08Parental\x12\xd0\x01\n\x16\x45nableParentalSettings\x12).CParental_EnableParentalSettings_Request\x1a*.CParental_EnableParentalSettings_Response\"_\x82\xb5\x18[Enable parental settings for the logged in account, optionally setting the current settings\x12\xab\x01\n\x17\x44isableParentalSettings\x12*.CParental_DisableParentalSettings_Request\x1a+.CParental_DisableParentalSettings_Response\"7\x82\xb5\x18\x33\x44isable parental settings for the logged in account\x12\xa7\x01\n\x13GetParentalSettings\x12&.CParental_GetParentalSettings_Request\x1a\'.CParental_GetParentalSettings_Response\"?\x82\xb5\x18;Get the current parental settings for the logged in account\x12\xe8\x01\n\x19GetSignedParentalSettings\x12,.CParental_GetSignedParentalSettings_Request\x1a-.CParental_GetSignedParentalSettings_Response\"n\x82\xb5\x18jGet the current parental settings for the logged in account in a form that can by verified by the receiver\x12\xa7\x01\n\x13SetParentalSettings\x12&.CParental_SetParentalSettings_Request\x1a\'.CParental_SetParentalSettings_Response\"?\x82\xb5\x18;Set the current parental settings for the logged in account\x12\xa7\x01\n\rValidateToken\x12 .CParental_ValidateToken_Request\x1a!.CParental_ValidateToken_Response\"Q\x82\xb5\x18MCheck if the given parental unlock token is correct for the logged in account\x12\xb7\x01\n\x10ValidatePassword\x12#.CParental_ValidatePassword_Request\x1a$.CParental_ValidatePassword_Response\"X\x82\xb5\x18TValidate the plaintext password for the logged in account and return an unlock token\x12\x8f\x01\n\nLockClient\x12\x1d.CParental_LockClient_Request\x1a\x1e.CParental_LockClient_Response\"B\x82\xb5\x18>Notify connected clients that a lock has occurred in a browser\x12\xc3\x01\n\x13RequestRecoveryCode\x12&.CParental_RequestRecoveryCode_Request\x1a\'.CParental_RequestRecoveryCode_Response\"[\x82\xb5\x18WRequest a recovery code be sent to the recovery email address for the specified account\x12\xaa\x01\n\x17\x44isableWithRecoveryCode\x12*.CParental_DisableWithRecoveryCode_Request\x1a+.CParental_DisableWithRecoveryCode_Response\"6\x82\xb5\x18\x32\x41ttempt a recovery unlock on the specified account\x1a\x1d\x82\xb5\x18\x19Parental settings service2\x86\x04\n\x0eParentalClient\x12\x9c\x01\n\x14NotifySettingsChange\x12..CParental_ParentalSettingsChange_Notification\x1a\x0b.NoResponse\"G\x82\xb5\x18\x43Notification from server to client of a change in parental settings\x12\x94\x01\n\x0cNotifyUnlock\x12&.CParental_ParentalUnlock_Notification\x1a\x0b.NoResponse\"O\x82\xb5\x18KNotification from server to client that an unlock has occurred in a browser\x12\x8d\x01\n\nNotifyLock\x12$.CParental_ParentalLock_Notification\x1a\x0b.NoResponse\"L\x82\xb5\x18HNotification from server to client that a lock has occurred in a browser\x1a.\x82\xb5\x18&Parental settings client notifications\xc0\xb5\x18\x02\x42\x03\x90\x01\x01'
   ,
-  dependencies=[steammessages__unified__base__pb2.DESCRIPTOR,])
+  dependencies=[steammessages__base__pb2.DESCRIPTOR,steammessages__unified__base__pb2.DESCRIPTOR,])
 
 
 
@@ -36,6 +36,7 @@ _PARENTALAPP = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='ParentalApp.appid', index=0,
@@ -43,14 +44,14 @@ _PARENTALAPP = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='is_allowed', full_name='ParentalApp.is_allowed', index=1,
       number=2, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -63,8 +64,8 @@ _PARENTALAPP = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=66,
-  serialized_end=114,
+  serialized_start=92,
+  serialized_end=140,
 )
 
 
@@ -74,6 +75,7 @@ _PARENTALSETTINGS = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid', full_name='ParentalSettings.steamid', index=0,
@@ -81,84 +83,84 @@ _PARENTALSETTINGS = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='applist_base_id', full_name='ParentalSettings.applist_base_id', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='applist_base_description', full_name='ParentalSettings.applist_base_description', index=2,
       number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='applist_base', full_name='ParentalSettings.applist_base', index=3,
       number=4, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='applist_custom', full_name='ParentalSettings.applist_custom', index=4,
       number=5, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='passwordhashtype', full_name='ParentalSettings.passwordhashtype', index=5,
       number=6, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='salt', full_name='ParentalSettings.salt', index=6,
       number=7, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='passwordhash', full_name='ParentalSettings.passwordhash', index=7,
       number=8, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='is_enabled', full_name='ParentalSettings.is_enabled', index=8,
       number=9, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='enabled_features', full_name='ParentalSettings.enabled_features', index=9,
       number=10, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='recovery_email', full_name='ParentalSettings.recovery_email', index=10,
       number=11, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='is_site_license_lock', full_name='ParentalSettings.is_site_license_lock', index=11,
       number=12, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -171,8 +173,8 @@ _PARENTALSETTINGS = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=117,
-  serialized_end=447,
+  serialized_start=143,
+  serialized_end=473,
 )
 
 
@@ -182,42 +184,43 @@ _CPARENTAL_ENABLEPARENTALSETTINGS_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='password', full_name='CParental_EnableParentalSettings_Request.password', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='settings', full_name='CParental_EnableParentalSettings_Request.settings', index=1,
       number=2, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='sessionid', full_name='CParental_EnableParentalSettings_Request.sessionid', index=2,
       number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='enablecode', full_name='CParental_EnableParentalSettings_Request.enablecode', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CParental_EnableParentalSettings_Request.steamid', index=4,
       number=10, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -230,8 +233,8 @@ _CPARENTAL_ENABLEPARENTALSETTINGS_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=450,
-  serialized_end=603,
+  serialized_start=476,
+  serialized_end=629,
 )
 
 
@@ -241,6 +244,7 @@ _CPARENTAL_ENABLEPARENTALSETTINGS_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -254,8 +258,8 @@ _CPARENTAL_ENABLEPARENTALSETTINGS_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=605,
-  serialized_end=648,
+  serialized_start=631,
+  serialized_end=674,
 )
 
 
@@ -265,21 +269,22 @@ _CPARENTAL_DISABLEPARENTALSETTINGS_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='password', full_name='CParental_DisableParentalSettings_Request.password', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CParental_DisableParentalSettings_Request.steamid', index=1,
       number=10, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -292,8 +297,8 @@ _CPARENTAL_DISABLEPARENTALSETTINGS_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=650,
-  serialized_end=728,
+  serialized_start=676,
+  serialized_end=754,
 )
 
 
@@ -303,6 +308,7 @@ _CPARENTAL_DISABLEPARENTALSETTINGS_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -316,8 +322,8 @@ _CPARENTAL_DISABLEPARENTALSETTINGS_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=730,
-  serialized_end=774,
+  serialized_start=756,
+  serialized_end=800,
 )
 
 
@@ -327,6 +333,7 @@ _CPARENTAL_GETPARENTALSETTINGS_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CParental_GetParentalSettings_Request.steamid', index=0,
@@ -334,7 +341,7 @@ _CPARENTAL_GETPARENTALSETTINGS_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -347,8 +354,8 @@ _CPARENTAL_GETPARENTALSETTINGS_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=776,
-  serialized_end=832,
+  serialized_start=802,
+  serialized_end=858,
 )
 
 
@@ -358,6 +365,7 @@ _CPARENTAL_GETPARENTALSETTINGS_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='settings', full_name='CParental_GetParentalSettings_Response.settings', index=0,
@@ -365,7 +373,7 @@ _CPARENTAL_GETPARENTALSETTINGS_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -378,8 +386,8 @@ _CPARENTAL_GETPARENTALSETTINGS_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=834,
-  serialized_end=911,
+  serialized_start=860,
+  serialized_end=937,
 )
 
 
@@ -389,6 +397,7 @@ _CPARENTAL_GETSIGNEDPARENTALSETTINGS_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='priority', full_name='CParental_GetSignedParentalSettings_Request.priority', index=0,
@@ -396,7 +405,7 @@ _CPARENTAL_GETSIGNEDPARENTALSETTINGS_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -409,8 +418,8 @@ _CPARENTAL_GETSIGNEDPARENTALSETTINGS_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=913,
-  serialized_end=976,
+  serialized_start=939,
+  serialized_end=1002,
 )
 
 
@@ -420,21 +429,22 @@ _CPARENTAL_GETSIGNEDPARENTALSETTINGS_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='serialized_settings', full_name='CParental_GetSignedParentalSettings_Response.serialized_settings', index=0,
       number=1, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='signature', full_name='CParental_GetSignedParentalSettings_Response.signature', index=1,
       number=2, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -447,8 +457,8 @@ _CPARENTAL_GETSIGNEDPARENTALSETTINGS_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=978,
-  serialized_end=1072,
+  serialized_start=1004,
+  serialized_end=1098,
 )
 
 
@@ -458,42 +468,43 @@ _CPARENTAL_SETPARENTALSETTINGS_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='password', full_name='CParental_SetParentalSettings_Request.password', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='settings', full_name='CParental_SetParentalSettings_Request.settings', index=1,
       number=2, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='new_password', full_name='CParental_SetParentalSettings_Request.new_password', index=2,
       number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='sessionid', full_name='CParental_SetParentalSettings_Request.sessionid', index=3,
       number=4, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CParental_SetParentalSettings_Request.steamid', index=4,
       number=10, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -506,8 +517,8 @@ _CPARENTAL_SETPARENTALSETTINGS_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1075,
-  serialized_end=1227,
+  serialized_start=1101,
+  serialized_end=1253,
 )
 
 
@@ -517,6 +528,7 @@ _CPARENTAL_SETPARENTALSETTINGS_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -530,8 +542,8 @@ _CPARENTAL_SETPARENTALSETTINGS_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1229,
-  serialized_end=1269,
+  serialized_start=1255,
+  serialized_end=1295,
 )
 
 
@@ -541,14 +553,15 @@ _CPARENTAL_VALIDATETOKEN_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='unlock_token', full_name='CParental_ValidateToken_Request.unlock_token', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -561,8 +574,8 @@ _CPARENTAL_VALIDATETOKEN_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1271,
-  serialized_end=1326,
+  serialized_start=1297,
+  serialized_end=1352,
 )
 
 
@@ -572,6 +585,7 @@ _CPARENTAL_VALIDATETOKEN_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -585,8 +599,8 @@ _CPARENTAL_VALIDATETOKEN_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1328,
-  serialized_end=1362,
+  serialized_start=1354,
+  serialized_end=1388,
 )
 
 
@@ -596,28 +610,29 @@ _CPARENTAL_VALIDATEPASSWORD_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='password', full_name='CParental_ValidatePassword_Request.password', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='session', full_name='CParental_ValidatePassword_Request.session', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='send_unlock_on_success', full_name='CParental_ValidatePassword_Request.send_unlock_on_success', index=2,
       number=3, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -630,8 +645,8 @@ _CPARENTAL_VALIDATEPASSWORD_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1364,
-  serialized_end=1467,
+  serialized_start=1390,
+  serialized_end=1493,
 )
 
 
@@ -641,14 +656,15 @@ _CPARENTAL_VALIDATEPASSWORD_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='token', full_name='CParental_ValidatePassword_Response.token', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -661,8 +677,8 @@ _CPARENTAL_VALIDATEPASSWORD_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1469,
-  serialized_end=1521,
+  serialized_start=1495,
+  serialized_end=1547,
 )
 
 
@@ -672,14 +688,15 @@ _CPARENTAL_LOCKCLIENT_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='session', full_name='CParental_LockClient_Request.session', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -692,8 +709,8 @@ _CPARENTAL_LOCKCLIENT_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1523,
-  serialized_end=1570,
+  serialized_start=1549,
+  serialized_end=1596,
 )
 
 
@@ -703,6 +720,7 @@ _CPARENTAL_LOCKCLIENT_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -716,8 +734,8 @@ _CPARENTAL_LOCKCLIENT_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1572,
-  serialized_end=1603,
+  serialized_start=1598,
+  serialized_end=1629,
 )
 
 
@@ -727,6 +745,7 @@ _CPARENTAL_REQUESTRECOVERYCODE_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -740,8 +759,8 @@ _CPARENTAL_REQUESTRECOVERYCODE_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1605,
-  serialized_end=1644,
+  serialized_start=1631,
+  serialized_end=1670,
 )
 
 
@@ -751,6 +770,7 @@ _CPARENTAL_REQUESTRECOVERYCODE_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -764,8 +784,8 @@ _CPARENTAL_REQUESTRECOVERYCODE_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1646,
-  serialized_end=1686,
+  serialized_start=1672,
+  serialized_end=1712,
 )
 
 
@@ -775,6 +795,7 @@ _CPARENTAL_DISABLEWITHRECOVERYCODE_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='recovery_code', full_name='CParental_DisableWithRecoveryCode_Request.recovery_code', index=0,
@@ -782,14 +803,14 @@ _CPARENTAL_DISABLEWITHRECOVERYCODE_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CParental_DisableWithRecoveryCode_Request.steamid', index=1,
       number=10, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -802,8 +823,8 @@ _CPARENTAL_DISABLEWITHRECOVERYCODE_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1688,
-  serialized_end=1771,
+  serialized_start=1714,
+  serialized_end=1797,
 )
 
 
@@ -813,6 +834,7 @@ _CPARENTAL_DISABLEWITHRECOVERYCODE_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -826,8 +848,8 @@ _CPARENTAL_DISABLEWITHRECOVERYCODE_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1773,
-  serialized_end=1817,
+  serialized_start=1799,
+  serialized_end=1843,
 )
 
 
@@ -837,35 +859,36 @@ _CPARENTAL_PARENTALSETTINGSCHANGE_NOTIFICATION = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='serialized_settings', full_name='CParental_ParentalSettingsChange_Notification.serialized_settings', index=0,
       number=1, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='signature', full_name='CParental_ParentalSettingsChange_Notification.signature', index=1,
       number=2, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='password', full_name='CParental_ParentalSettingsChange_Notification.password', index=2,
       number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='sessionid', full_name='CParental_ParentalSettingsChange_Notification.sessionid', index=3,
       number=4, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -878,8 +901,8 @@ _CPARENTAL_PARENTALSETTINGSCHANGE_NOTIFICATION = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1820,
-  serialized_end=1952,
+  serialized_start=1846,
+  serialized_end=1978,
 )
 
 
@@ -889,21 +912,22 @@ _CPARENTAL_PARENTALUNLOCK_NOTIFICATION = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='password', full_name='CParental_ParentalUnlock_Notification.password', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='sessionid', full_name='CParental_ParentalUnlock_Notification.sessionid', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -916,8 +940,8 @@ _CPARENTAL_PARENTALUNLOCK_NOTIFICATION = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1954,
-  serialized_end=2030,
+  serialized_start=1980,
+  serialized_end=2056,
 )
 
 
@@ -927,14 +951,15 @@ _CPARENTAL_PARENTALLOCK_NOTIFICATION = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='sessionid', full_name='CParental_ParentalLock_Notification.sessionid', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -947,8 +972,8 @@ _CPARENTAL_PARENTALLOCK_NOTIFICATION = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=2032,
-  serialized_end=2088,
+  serialized_start=2058,
+  serialized_end=2114,
 )
 
 _PARENTALSETTINGS.fields_by_name['applist_base'].message_type = _PARENTALAPP
@@ -983,179 +1008,179 @@ DESCRIPTOR.message_types_by_name['CParental_ParentalUnlock_Notification'] = _CPA
 DESCRIPTOR.message_types_by_name['CParental_ParentalLock_Notification'] = _CPARENTAL_PARENTALLOCK_NOTIFICATION
 _sym_db.RegisterFileDescriptor(DESCRIPTOR)
 
-ParentalApp = _reflection.GeneratedProtocolMessageType('ParentalApp', (_message.Message,), dict(
-  DESCRIPTOR = _PARENTALAPP,
-  __module__ = 'steammessages_parental_pb2'
+ParentalApp = _reflection.GeneratedProtocolMessageType('ParentalApp', (_message.Message,), {
+  'DESCRIPTOR' : _PARENTALAPP,
+  '__module__' : 'steammessages_parental_pb2'
   # @@protoc_insertion_point(class_scope:ParentalApp)
-  ))
+  })
 _sym_db.RegisterMessage(ParentalApp)
 
-ParentalSettings = _reflection.GeneratedProtocolMessageType('ParentalSettings', (_message.Message,), dict(
-  DESCRIPTOR = _PARENTALSETTINGS,
-  __module__ = 'steammessages_parental_pb2'
+ParentalSettings = _reflection.GeneratedProtocolMessageType('ParentalSettings', (_message.Message,), {
+  'DESCRIPTOR' : _PARENTALSETTINGS,
+  '__module__' : 'steammessages_parental_pb2'
   # @@protoc_insertion_point(class_scope:ParentalSettings)
-  ))
+  })
 _sym_db.RegisterMessage(ParentalSettings)
 
-CParental_EnableParentalSettings_Request = _reflection.GeneratedProtocolMessageType('CParental_EnableParentalSettings_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CPARENTAL_ENABLEPARENTALSETTINGS_REQUEST,
-  __module__ = 'steammessages_parental_pb2'
+CParental_EnableParentalSettings_Request = _reflection.GeneratedProtocolMessageType('CParental_EnableParentalSettings_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPARENTAL_ENABLEPARENTALSETTINGS_REQUEST,
+  '__module__' : 'steammessages_parental_pb2'
   # @@protoc_insertion_point(class_scope:CParental_EnableParentalSettings_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CParental_EnableParentalSettings_Request)
 
-CParental_EnableParentalSettings_Response = _reflection.GeneratedProtocolMessageType('CParental_EnableParentalSettings_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CPARENTAL_ENABLEPARENTALSETTINGS_RESPONSE,
-  __module__ = 'steammessages_parental_pb2'
+CParental_EnableParentalSettings_Response = _reflection.GeneratedProtocolMessageType('CParental_EnableParentalSettings_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CPARENTAL_ENABLEPARENTALSETTINGS_RESPONSE,
+  '__module__' : 'steammessages_parental_pb2'
   # @@protoc_insertion_point(class_scope:CParental_EnableParentalSettings_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CParental_EnableParentalSettings_Response)
 
-CParental_DisableParentalSettings_Request = _reflection.GeneratedProtocolMessageType('CParental_DisableParentalSettings_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CPARENTAL_DISABLEPARENTALSETTINGS_REQUEST,
-  __module__ = 'steammessages_parental_pb2'
+CParental_DisableParentalSettings_Request = _reflection.GeneratedProtocolMessageType('CParental_DisableParentalSettings_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPARENTAL_DISABLEPARENTALSETTINGS_REQUEST,
+  '__module__' : 'steammessages_parental_pb2'
   # @@protoc_insertion_point(class_scope:CParental_DisableParentalSettings_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CParental_DisableParentalSettings_Request)
 
-CParental_DisableParentalSettings_Response = _reflection.GeneratedProtocolMessageType('CParental_DisableParentalSettings_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CPARENTAL_DISABLEPARENTALSETTINGS_RESPONSE,
-  __module__ = 'steammessages_parental_pb2'
+CParental_DisableParentalSettings_Response = _reflection.GeneratedProtocolMessageType('CParental_DisableParentalSettings_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CPARENTAL_DISABLEPARENTALSETTINGS_RESPONSE,
+  '__module__' : 'steammessages_parental_pb2'
   # @@protoc_insertion_point(class_scope:CParental_DisableParentalSettings_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CParental_DisableParentalSettings_Response)
 
-CParental_GetParentalSettings_Request = _reflection.GeneratedProtocolMessageType('CParental_GetParentalSettings_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CPARENTAL_GETPARENTALSETTINGS_REQUEST,
-  __module__ = 'steammessages_parental_pb2'
+CParental_GetParentalSettings_Request = _reflection.GeneratedProtocolMessageType('CParental_GetParentalSettings_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPARENTAL_GETPARENTALSETTINGS_REQUEST,
+  '__module__' : 'steammessages_parental_pb2'
   # @@protoc_insertion_point(class_scope:CParental_GetParentalSettings_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CParental_GetParentalSettings_Request)
 
-CParental_GetParentalSettings_Response = _reflection.GeneratedProtocolMessageType('CParental_GetParentalSettings_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CPARENTAL_GETPARENTALSETTINGS_RESPONSE,
-  __module__ = 'steammessages_parental_pb2'
+CParental_GetParentalSettings_Response = _reflection.GeneratedProtocolMessageType('CParental_GetParentalSettings_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CPARENTAL_GETPARENTALSETTINGS_RESPONSE,
+  '__module__' : 'steammessages_parental_pb2'
   # @@protoc_insertion_point(class_scope:CParental_GetParentalSettings_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CParental_GetParentalSettings_Response)
 
-CParental_GetSignedParentalSettings_Request = _reflection.GeneratedProtocolMessageType('CParental_GetSignedParentalSettings_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CPARENTAL_GETSIGNEDPARENTALSETTINGS_REQUEST,
-  __module__ = 'steammessages_parental_pb2'
+CParental_GetSignedParentalSettings_Request = _reflection.GeneratedProtocolMessageType('CParental_GetSignedParentalSettings_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPARENTAL_GETSIGNEDPARENTALSETTINGS_REQUEST,
+  '__module__' : 'steammessages_parental_pb2'
   # @@protoc_insertion_point(class_scope:CParental_GetSignedParentalSettings_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CParental_GetSignedParentalSettings_Request)
 
-CParental_GetSignedParentalSettings_Response = _reflection.GeneratedProtocolMessageType('CParental_GetSignedParentalSettings_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CPARENTAL_GETSIGNEDPARENTALSETTINGS_RESPONSE,
-  __module__ = 'steammessages_parental_pb2'
+CParental_GetSignedParentalSettings_Response = _reflection.GeneratedProtocolMessageType('CParental_GetSignedParentalSettings_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CPARENTAL_GETSIGNEDPARENTALSETTINGS_RESPONSE,
+  '__module__' : 'steammessages_parental_pb2'
   # @@protoc_insertion_point(class_scope:CParental_GetSignedParentalSettings_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CParental_GetSignedParentalSettings_Response)
 
-CParental_SetParentalSettings_Request = _reflection.GeneratedProtocolMessageType('CParental_SetParentalSettings_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CPARENTAL_SETPARENTALSETTINGS_REQUEST,
-  __module__ = 'steammessages_parental_pb2'
+CParental_SetParentalSettings_Request = _reflection.GeneratedProtocolMessageType('CParental_SetParentalSettings_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPARENTAL_SETPARENTALSETTINGS_REQUEST,
+  '__module__' : 'steammessages_parental_pb2'
   # @@protoc_insertion_point(class_scope:CParental_SetParentalSettings_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CParental_SetParentalSettings_Request)
 
-CParental_SetParentalSettings_Response = _reflection.GeneratedProtocolMessageType('CParental_SetParentalSettings_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CPARENTAL_SETPARENTALSETTINGS_RESPONSE,
-  __module__ = 'steammessages_parental_pb2'
+CParental_SetParentalSettings_Response = _reflection.GeneratedProtocolMessageType('CParental_SetParentalSettings_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CPARENTAL_SETPARENTALSETTINGS_RESPONSE,
+  '__module__' : 'steammessages_parental_pb2'
   # @@protoc_insertion_point(class_scope:CParental_SetParentalSettings_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CParental_SetParentalSettings_Response)
 
-CParental_ValidateToken_Request = _reflection.GeneratedProtocolMessageType('CParental_ValidateToken_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CPARENTAL_VALIDATETOKEN_REQUEST,
-  __module__ = 'steammessages_parental_pb2'
+CParental_ValidateToken_Request = _reflection.GeneratedProtocolMessageType('CParental_ValidateToken_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPARENTAL_VALIDATETOKEN_REQUEST,
+  '__module__' : 'steammessages_parental_pb2'
   # @@protoc_insertion_point(class_scope:CParental_ValidateToken_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CParental_ValidateToken_Request)
 
-CParental_ValidateToken_Response = _reflection.GeneratedProtocolMessageType('CParental_ValidateToken_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CPARENTAL_VALIDATETOKEN_RESPONSE,
-  __module__ = 'steammessages_parental_pb2'
+CParental_ValidateToken_Response = _reflection.GeneratedProtocolMessageType('CParental_ValidateToken_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CPARENTAL_VALIDATETOKEN_RESPONSE,
+  '__module__' : 'steammessages_parental_pb2'
   # @@protoc_insertion_point(class_scope:CParental_ValidateToken_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CParental_ValidateToken_Response)
 
-CParental_ValidatePassword_Request = _reflection.GeneratedProtocolMessageType('CParental_ValidatePassword_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CPARENTAL_VALIDATEPASSWORD_REQUEST,
-  __module__ = 'steammessages_parental_pb2'
+CParental_ValidatePassword_Request = _reflection.GeneratedProtocolMessageType('CParental_ValidatePassword_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPARENTAL_VALIDATEPASSWORD_REQUEST,
+  '__module__' : 'steammessages_parental_pb2'
   # @@protoc_insertion_point(class_scope:CParental_ValidatePassword_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CParental_ValidatePassword_Request)
 
-CParental_ValidatePassword_Response = _reflection.GeneratedProtocolMessageType('CParental_ValidatePassword_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CPARENTAL_VALIDATEPASSWORD_RESPONSE,
-  __module__ = 'steammessages_parental_pb2'
+CParental_ValidatePassword_Response = _reflection.GeneratedProtocolMessageType('CParental_ValidatePassword_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CPARENTAL_VALIDATEPASSWORD_RESPONSE,
+  '__module__' : 'steammessages_parental_pb2'
   # @@protoc_insertion_point(class_scope:CParental_ValidatePassword_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CParental_ValidatePassword_Response)
 
-CParental_LockClient_Request = _reflection.GeneratedProtocolMessageType('CParental_LockClient_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CPARENTAL_LOCKCLIENT_REQUEST,
-  __module__ = 'steammessages_parental_pb2'
+CParental_LockClient_Request = _reflection.GeneratedProtocolMessageType('CParental_LockClient_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPARENTAL_LOCKCLIENT_REQUEST,
+  '__module__' : 'steammessages_parental_pb2'
   # @@protoc_insertion_point(class_scope:CParental_LockClient_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CParental_LockClient_Request)
 
-CParental_LockClient_Response = _reflection.GeneratedProtocolMessageType('CParental_LockClient_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CPARENTAL_LOCKCLIENT_RESPONSE,
-  __module__ = 'steammessages_parental_pb2'
+CParental_LockClient_Response = _reflection.GeneratedProtocolMessageType('CParental_LockClient_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CPARENTAL_LOCKCLIENT_RESPONSE,
+  '__module__' : 'steammessages_parental_pb2'
   # @@protoc_insertion_point(class_scope:CParental_LockClient_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CParental_LockClient_Response)
 
-CParental_RequestRecoveryCode_Request = _reflection.GeneratedProtocolMessageType('CParental_RequestRecoveryCode_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CPARENTAL_REQUESTRECOVERYCODE_REQUEST,
-  __module__ = 'steammessages_parental_pb2'
+CParental_RequestRecoveryCode_Request = _reflection.GeneratedProtocolMessageType('CParental_RequestRecoveryCode_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPARENTAL_REQUESTRECOVERYCODE_REQUEST,
+  '__module__' : 'steammessages_parental_pb2'
   # @@protoc_insertion_point(class_scope:CParental_RequestRecoveryCode_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CParental_RequestRecoveryCode_Request)
 
-CParental_RequestRecoveryCode_Response = _reflection.GeneratedProtocolMessageType('CParental_RequestRecoveryCode_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CPARENTAL_REQUESTRECOVERYCODE_RESPONSE,
-  __module__ = 'steammessages_parental_pb2'
+CParental_RequestRecoveryCode_Response = _reflection.GeneratedProtocolMessageType('CParental_RequestRecoveryCode_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CPARENTAL_REQUESTRECOVERYCODE_RESPONSE,
+  '__module__' : 'steammessages_parental_pb2'
   # @@protoc_insertion_point(class_scope:CParental_RequestRecoveryCode_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CParental_RequestRecoveryCode_Response)
 
-CParental_DisableWithRecoveryCode_Request = _reflection.GeneratedProtocolMessageType('CParental_DisableWithRecoveryCode_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CPARENTAL_DISABLEWITHRECOVERYCODE_REQUEST,
-  __module__ = 'steammessages_parental_pb2'
+CParental_DisableWithRecoveryCode_Request = _reflection.GeneratedProtocolMessageType('CParental_DisableWithRecoveryCode_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPARENTAL_DISABLEWITHRECOVERYCODE_REQUEST,
+  '__module__' : 'steammessages_parental_pb2'
   # @@protoc_insertion_point(class_scope:CParental_DisableWithRecoveryCode_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CParental_DisableWithRecoveryCode_Request)
 
-CParental_DisableWithRecoveryCode_Response = _reflection.GeneratedProtocolMessageType('CParental_DisableWithRecoveryCode_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CPARENTAL_DISABLEWITHRECOVERYCODE_RESPONSE,
-  __module__ = 'steammessages_parental_pb2'
+CParental_DisableWithRecoveryCode_Response = _reflection.GeneratedProtocolMessageType('CParental_DisableWithRecoveryCode_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CPARENTAL_DISABLEWITHRECOVERYCODE_RESPONSE,
+  '__module__' : 'steammessages_parental_pb2'
   # @@protoc_insertion_point(class_scope:CParental_DisableWithRecoveryCode_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CParental_DisableWithRecoveryCode_Response)
 
-CParental_ParentalSettingsChange_Notification = _reflection.GeneratedProtocolMessageType('CParental_ParentalSettingsChange_Notification', (_message.Message,), dict(
-  DESCRIPTOR = _CPARENTAL_PARENTALSETTINGSCHANGE_NOTIFICATION,
-  __module__ = 'steammessages_parental_pb2'
+CParental_ParentalSettingsChange_Notification = _reflection.GeneratedProtocolMessageType('CParental_ParentalSettingsChange_Notification', (_message.Message,), {
+  'DESCRIPTOR' : _CPARENTAL_PARENTALSETTINGSCHANGE_NOTIFICATION,
+  '__module__' : 'steammessages_parental_pb2'
   # @@protoc_insertion_point(class_scope:CParental_ParentalSettingsChange_Notification)
-  ))
+  })
 _sym_db.RegisterMessage(CParental_ParentalSettingsChange_Notification)
 
-CParental_ParentalUnlock_Notification = _reflection.GeneratedProtocolMessageType('CParental_ParentalUnlock_Notification', (_message.Message,), dict(
-  DESCRIPTOR = _CPARENTAL_PARENTALUNLOCK_NOTIFICATION,
-  __module__ = 'steammessages_parental_pb2'
+CParental_ParentalUnlock_Notification = _reflection.GeneratedProtocolMessageType('CParental_ParentalUnlock_Notification', (_message.Message,), {
+  'DESCRIPTOR' : _CPARENTAL_PARENTALUNLOCK_NOTIFICATION,
+  '__module__' : 'steammessages_parental_pb2'
   # @@protoc_insertion_point(class_scope:CParental_ParentalUnlock_Notification)
-  ))
+  })
 _sym_db.RegisterMessage(CParental_ParentalUnlock_Notification)
 
-CParental_ParentalLock_Notification = _reflection.GeneratedProtocolMessageType('CParental_ParentalLock_Notification', (_message.Message,), dict(
-  DESCRIPTOR = _CPARENTAL_PARENTALLOCK_NOTIFICATION,
-  __module__ = 'steammessages_parental_pb2'
+CParental_ParentalLock_Notification = _reflection.GeneratedProtocolMessageType('CParental_ParentalLock_Notification', (_message.Message,), {
+  'DESCRIPTOR' : _CPARENTAL_PARENTALLOCK_NOTIFICATION,
+  '__module__' : 'steammessages_parental_pb2'
   # @@protoc_insertion_point(class_scope:CParental_ParentalLock_Notification)
-  ))
+  })
 _sym_db.RegisterMessage(CParental_ParentalLock_Notification)
 
 
@@ -1166,9 +1191,10 @@ _PARENTAL = _descriptor.ServiceDescriptor(
   full_name='Parental',
   file=DESCRIPTOR,
   index=0,
-  serialized_options=_b('\202\265\030\031Parental settings service'),
-  serialized_start=2091,
-  serialized_end=3965,
+  serialized_options=b'\202\265\030\031Parental settings service',
+  create_key=_descriptor._internal_create_key,
+  serialized_start=2117,
+  serialized_end=3991,
   methods=[
   _descriptor.MethodDescriptor(
     name='EnableParentalSettings',
@@ -1177,7 +1203,8 @@ _PARENTAL = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CPARENTAL_ENABLEPARENTALSETTINGS_REQUEST,
     output_type=_CPARENTAL_ENABLEPARENTALSETTINGS_RESPONSE,
-    serialized_options=_b('\202\265\030[Enable parental settings for the logged in account, optionally setting the current settings'),
+    serialized_options=b'\202\265\030[Enable parental settings for the logged in account, optionally setting the current settings',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='DisableParentalSettings',
@@ -1186,7 +1213,8 @@ _PARENTAL = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CPARENTAL_DISABLEPARENTALSETTINGS_REQUEST,
     output_type=_CPARENTAL_DISABLEPARENTALSETTINGS_RESPONSE,
-    serialized_options=_b('\202\265\0303Disable parental settings for the logged in account'),
+    serialized_options=b'\202\265\0303Disable parental settings for the logged in account',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetParentalSettings',
@@ -1195,7 +1223,8 @@ _PARENTAL = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CPARENTAL_GETPARENTALSETTINGS_REQUEST,
     output_type=_CPARENTAL_GETPARENTALSETTINGS_RESPONSE,
-    serialized_options=_b('\202\265\030;Get the current parental settings for the logged in account'),
+    serialized_options=b'\202\265\030;Get the current parental settings for the logged in account',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetSignedParentalSettings',
@@ -1204,7 +1233,8 @@ _PARENTAL = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CPARENTAL_GETSIGNEDPARENTALSETTINGS_REQUEST,
     output_type=_CPARENTAL_GETSIGNEDPARENTALSETTINGS_RESPONSE,
-    serialized_options=_b('\202\265\030jGet the current parental settings for the logged in account in a form that can by verified by the receiver'),
+    serialized_options=b'\202\265\030jGet the current parental settings for the logged in account in a form that can by verified by the receiver',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='SetParentalSettings',
@@ -1213,7 +1243,8 @@ _PARENTAL = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CPARENTAL_SETPARENTALSETTINGS_REQUEST,
     output_type=_CPARENTAL_SETPARENTALSETTINGS_RESPONSE,
-    serialized_options=_b('\202\265\030;Set the current parental settings for the logged in account'),
+    serialized_options=b'\202\265\030;Set the current parental settings for the logged in account',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='ValidateToken',
@@ -1222,7 +1253,8 @@ _PARENTAL = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CPARENTAL_VALIDATETOKEN_REQUEST,
     output_type=_CPARENTAL_VALIDATETOKEN_RESPONSE,
-    serialized_options=_b('\202\265\030MCheck if the given parental unlock token is correct for the logged in account'),
+    serialized_options=b'\202\265\030MCheck if the given parental unlock token is correct for the logged in account',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='ValidatePassword',
@@ -1231,7 +1263,8 @@ _PARENTAL = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CPARENTAL_VALIDATEPASSWORD_REQUEST,
     output_type=_CPARENTAL_VALIDATEPASSWORD_RESPONSE,
-    serialized_options=_b('\202\265\030TValidate the plaintext password for the logged in account and return an unlock token'),
+    serialized_options=b'\202\265\030TValidate the plaintext password for the logged in account and return an unlock token',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='LockClient',
@@ -1240,7 +1273,8 @@ _PARENTAL = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CPARENTAL_LOCKCLIENT_REQUEST,
     output_type=_CPARENTAL_LOCKCLIENT_RESPONSE,
-    serialized_options=_b('\202\265\030>Notify connected clients that a lock has occurred in a browser'),
+    serialized_options=b'\202\265\030>Notify connected clients that a lock has occurred in a browser',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='RequestRecoveryCode',
@@ -1249,7 +1283,8 @@ _PARENTAL = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CPARENTAL_REQUESTRECOVERYCODE_REQUEST,
     output_type=_CPARENTAL_REQUESTRECOVERYCODE_RESPONSE,
-    serialized_options=_b('\202\265\030WRequest a recovery code be sent to the recovery email address for the specified account'),
+    serialized_options=b'\202\265\030WRequest a recovery code be sent to the recovery email address for the specified account',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='DisableWithRecoveryCode',
@@ -1258,7 +1293,8 @@ _PARENTAL = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CPARENTAL_DISABLEWITHRECOVERYCODE_REQUEST,
     output_type=_CPARENTAL_DISABLEWITHRECOVERYCODE_RESPONSE,
-    serialized_options=_b('\202\265\0302Attempt a recovery unlock on the specified account'),
+    serialized_options=b'\202\265\0302Attempt a recovery unlock on the specified account',
+    create_key=_descriptor._internal_create_key,
   ),
 ])
 _sym_db.RegisterServiceDescriptor(_PARENTAL)
@@ -1271,9 +1307,10 @@ _PARENTALCLIENT = _descriptor.ServiceDescriptor(
   full_name='ParentalClient',
   file=DESCRIPTOR,
   index=1,
-  serialized_options=_b('\202\265\030&Parental settings client notifications\300\265\030\002'),
-  serialized_start=3968,
-  serialized_end=4486,
+  serialized_options=b'\202\265\030&Parental settings client notifications\300\265\030\002',
+  create_key=_descriptor._internal_create_key,
+  serialized_start=3994,
+  serialized_end=4512,
   methods=[
   _descriptor.MethodDescriptor(
     name='NotifySettingsChange',
@@ -1282,7 +1319,8 @@ _PARENTALCLIENT = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CPARENTAL_PARENTALSETTINGSCHANGE_NOTIFICATION,
     output_type=steammessages__unified__base__pb2._NORESPONSE,
-    serialized_options=_b('\202\265\030CNotification from server to client of a change in parental settings'),
+    serialized_options=b'\202\265\030CNotification from server to client of a change in parental settings',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='NotifyUnlock',
@@ -1291,7 +1329,8 @@ _PARENTALCLIENT = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CPARENTAL_PARENTALUNLOCK_NOTIFICATION,
     output_type=steammessages__unified__base__pb2._NORESPONSE,
-    serialized_options=_b('\202\265\030KNotification from server to client that an unlock has occurred in a browser'),
+    serialized_options=b'\202\265\030KNotification from server to client that an unlock has occurred in a browser',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='NotifyLock',
@@ -1300,7 +1339,8 @@ _PARENTALCLIENT = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CPARENTAL_PARENTALLOCK_NOTIFICATION,
     output_type=steammessages__unified__base__pb2._NORESPONSE,
-    serialized_options=_b('\202\265\030HNotification from server to client that a lock has occurred in a browser'),
+    serialized_options=b'\202\265\030HNotification from server to client that a lock has occurred in a browser',
+    create_key=_descriptor._internal_create_key,
   ),
 ])
 _sym_db.RegisterServiceDescriptor(_PARENTALCLIENT)
diff --git a/steam/protobufs/steammessages_parties_pb2.py b/steam/protobufs/steammessages_parties_pb2.py
index 7988a71..3577cb8 100644
--- a/steam/protobufs/steammessages_parties_pb2.py
+++ b/steam/protobufs/steammessages_parties_pb2.py
@@ -1,9 +1,7 @@
 # -*- coding: utf-8 -*-
 # Generated by the protocol buffer compiler.  DO NOT EDIT!
 # source: steammessages_parties.proto
-
-import sys
-_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1'))
+"""Generated protocol buffer code."""
 from google.protobuf import descriptor as _descriptor
 from google.protobuf import message as _message
 from google.protobuf import reflection as _reflection
@@ -15,6 +13,7 @@ from google.protobuf import service_reflection
 _sym_db = _symbol_database.Default()
 
 
+import steam.protobufs.steammessages_base_pb2 as steammessages__base__pb2
 import steam.protobufs.steammessages_unified_base_pb2 as steammessages__unified__base__pb2
 
 
@@ -22,10 +21,11 @@ DESCRIPTOR = _descriptor.FileDescriptor(
   name='steammessages_parties.proto',
   package='',
   syntax='proto2',
-  serialized_options=_b('\220\001\001'),
-  serialized_pb=_b('\n\x1bsteammessages_parties.proto\x1a steammessages_unified_base.proto\"@\n\x1a\x43Parties_JoinParty_Request\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12\x11\n\tbeacon_id\x18\x02 \x01(\x04\"H\n\x1b\x43Parties_JoinParty_Response\x12\x11\n\tbeacon_id\x18\x01 \x01(\x04\x12\x16\n\x0e\x63onnect_string\x18\x02 \x01(\t\"E\n\x17\x43Parties_BeaconLocation\x12\x15\n\rlocation_type\x18\x01 \x01(\r\x12\x13\n\x0blocation_id\x18\x02 \x01(\x04\"\x9d\x01\n\x1d\x43Parties_CreateBeacon_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x16\n\x0enum_open_slots\x18\x02 \x01(\r\x12+\n\tlocations\x18\x03 \x03(\x0b\x32\x18.CParties_BeaconLocation\x12\x16\n\x0e\x63onnect_string\x18\x04 \x01(\t\x12\x10\n\x08metadata\x18\x05 \x01(\t\"3\n\x1e\x43Parties_CreateBeacon_Response\x12\x11\n\tbeacon_id\x18\x01 \x01(\x04\"R\n\'CParties_OnReservationCompleted_Request\x12\x11\n\tbeacon_id\x18\x01 \x01(\x04\x12\x14\n\x0cuser_steamid\x18\x02 \x01(\x06\"=\n(CParties_OnReservationCompleted_Response\x12\x11\n\tbeacon_id\x18\x01 \x01(\x04\"M\n\"CParties_CancelReservation_Request\x12\x11\n\tbeacon_id\x18\x01 \x01(\x04\x12\x14\n\x0cuser_steamid\x18\x02 \x01(\x06\"8\n#CParties_CancelReservation_Response\x12\x11\n\tbeacon_id\x18\x01 \x01(\x04\"P\n#CParties_ChangeNumOpenSlots_Request\x12\x11\n\tbeacon_id\x18\x01 \x01(\x04\x12\x16\n\x0enum_open_slots\x18\x02 \x01(\r\"9\n$CParties_ChangeNumOpenSlots_Response\x12\x11\n\tbeacon_id\x18\x01 \x01(\x04\"3\n\x1e\x43Parties_DestroyBeacon_Request\x12\x11\n\tbeacon_id\x18\x01 \x01(\x04\"4\n\x1f\x43Parties_DestroyBeacon_Response\x12\x11\n\tbeacon_id\x18\x01 \x01(\x04\x32\xd9\x07\n\x07Parties\x12\xb9\x01\n\tJoinParty\x12\x1b.CParties_JoinParty_Request\x1a\x1c.CParties_JoinParty_Response\"q\x82\xb5\x18mRequest to join a Party via the given Beacon ID. If successful, will be given the necessary \'connect\' string.\x12\x85\x01\n\x0c\x43reateBeacon\x12\x1e.CParties_CreateBeacon_Request\x1a\x1f.CParties_CreateBeacon_Response\"4\x82\xb5\x18\x30\x43reate a Beacon to attract people to your Party.\x12\xb7\x01\n\x16OnReservationCompleted\x12(.CParties_OnReservationCompleted_Request\x1a).CParties_OnReservationCompleted_Response\"H\x82\xb5\x18\x44Notify Steam that a user with a reservation has successfully joined.\x12\xbe\x01\n\x11\x43\x61ncelReservation\x12#.CParties_CancelReservation_Request\x1a$.CParties_CancelReservation_Response\"^\x82\xb5\x18ZNotify Steam that a user with a reservation either never showed up, or has left the party.\x12\x86\x01\n\x12\x43hangeNumOpenSlots\x12$.CParties_ChangeNumOpenSlots_Request\x1a%.CParties_ChangeNumOpenSlots_Response\"#\x82\xb5\x18\x1f\x43hange the number of open slots\x12j\n\rDestroyBeacon\x12\x1f.CParties_DestroyBeacon_Request\x1a .CParties_DestroyBeacon_Response\"\x16\x82\xb5\x18\x12\x44\x65lete the Beacon.\x1a\x1a\x82\xb5\x18\x16Party-related servicesB\x03\x90\x01\x01')
+  serialized_options=b'\220\001\001',
+  create_key=_descriptor._internal_create_key,
+  serialized_pb=b'\n\x1bsteammessages_parties.proto\x1a\x18steammessages_base.proto\x1a steammessages_unified_base.proto\"@\n\x1a\x43Parties_JoinParty_Request\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12\x11\n\tbeacon_id\x18\x02 \x01(\x04\"H\n\x1b\x43Parties_JoinParty_Response\x12\x11\n\tbeacon_id\x18\x01 \x01(\x04\x12\x16\n\x0e\x63onnect_string\x18\x02 \x01(\t\"E\n\x17\x43Parties_BeaconLocation\x12\x15\n\rlocation_type\x18\x01 \x01(\r\x12\x13\n\x0blocation_id\x18\x02 \x01(\x04\"\x9d\x01\n\x1d\x43Parties_CreateBeacon_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x16\n\x0enum_open_slots\x18\x02 \x01(\r\x12+\n\tlocations\x18\x03 \x03(\x0b\x32\x18.CParties_BeaconLocation\x12\x16\n\x0e\x63onnect_string\x18\x04 \x01(\t\x12\x10\n\x08metadata\x18\x05 \x01(\t\"3\n\x1e\x43Parties_CreateBeacon_Response\x12\x11\n\tbeacon_id\x18\x01 \x01(\x04\"R\n\'CParties_OnReservationCompleted_Request\x12\x11\n\tbeacon_id\x18\x01 \x01(\x04\x12\x14\n\x0cuser_steamid\x18\x02 \x01(\x06\"=\n(CParties_OnReservationCompleted_Response\x12\x11\n\tbeacon_id\x18\x01 \x01(\x04\"M\n\"CParties_CancelReservation_Request\x12\x11\n\tbeacon_id\x18\x01 \x01(\x04\x12\x14\n\x0cuser_steamid\x18\x02 \x01(\x06\"8\n#CParties_CancelReservation_Response\x12\x11\n\tbeacon_id\x18\x01 \x01(\x04\"P\n#CParties_ChangeNumOpenSlots_Request\x12\x11\n\tbeacon_id\x18\x01 \x01(\x04\x12\x16\n\x0enum_open_slots\x18\x02 \x01(\r\"9\n$CParties_ChangeNumOpenSlots_Response\x12\x11\n\tbeacon_id\x18\x01 \x01(\x04\"3\n\x1e\x43Parties_DestroyBeacon_Request\x12\x11\n\tbeacon_id\x18\x01 \x01(\x04\"4\n\x1f\x43Parties_DestroyBeacon_Response\x12\x11\n\tbeacon_id\x18\x01 \x01(\x04\x32\xd9\x07\n\x07Parties\x12\xb9\x01\n\tJoinParty\x12\x1b.CParties_JoinParty_Request\x1a\x1c.CParties_JoinParty_Response\"q\x82\xb5\x18mRequest to join a Party via the given Beacon ID. If successful, will be given the necessary \'connect\' string.\x12\x85\x01\n\x0c\x43reateBeacon\x12\x1e.CParties_CreateBeacon_Request\x1a\x1f.CParties_CreateBeacon_Response\"4\x82\xb5\x18\x30\x43reate a Beacon to attract people to your Party.\x12\xb7\x01\n\x16OnReservationCompleted\x12(.CParties_OnReservationCompleted_Request\x1a).CParties_OnReservationCompleted_Response\"H\x82\xb5\x18\x44Notify Steam that a user with a reservation has successfully joined.\x12\xbe\x01\n\x11\x43\x61ncelReservation\x12#.CParties_CancelReservation_Request\x1a$.CParties_CancelReservation_Response\"^\x82\xb5\x18ZNotify Steam that a user with a reservation either never showed up, or has left the party.\x12\x86\x01\n\x12\x43hangeNumOpenSlots\x12$.CParties_ChangeNumOpenSlots_Request\x1a%.CParties_ChangeNumOpenSlots_Response\"#\x82\xb5\x18\x1f\x43hange the number of open slots\x12j\n\rDestroyBeacon\x12\x1f.CParties_DestroyBeacon_Request\x1a .CParties_DestroyBeacon_Response\"\x16\x82\xb5\x18\x12\x44\x65lete the Beacon.\x1a\x1a\x82\xb5\x18\x16Party-related servicesB\x03\x90\x01\x01'
   ,
-  dependencies=[steammessages__unified__base__pb2.DESCRIPTOR,])
+  dependencies=[steammessages__base__pb2.DESCRIPTOR,steammessages__unified__base__pb2.DESCRIPTOR,])
 
 
 
@@ -36,6 +36,7 @@ _CPARTIES_JOINPARTY_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CParties_JoinParty_Request.steamid', index=0,
@@ -43,14 +44,14 @@ _CPARTIES_JOINPARTY_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='beacon_id', full_name='CParties_JoinParty_Request.beacon_id', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -63,8 +64,8 @@ _CPARTIES_JOINPARTY_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=65,
-  serialized_end=129,
+  serialized_start=91,
+  serialized_end=155,
 )
 
 
@@ -74,6 +75,7 @@ _CPARTIES_JOINPARTY_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='beacon_id', full_name='CParties_JoinParty_Response.beacon_id', index=0,
@@ -81,14 +83,14 @@ _CPARTIES_JOINPARTY_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='connect_string', full_name='CParties_JoinParty_Response.connect_string', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -101,8 +103,8 @@ _CPARTIES_JOINPARTY_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=131,
-  serialized_end=203,
+  serialized_start=157,
+  serialized_end=229,
 )
 
 
@@ -112,6 +114,7 @@ _CPARTIES_BEACONLOCATION = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='location_type', full_name='CParties_BeaconLocation.location_type', index=0,
@@ -119,14 +122,14 @@ _CPARTIES_BEACONLOCATION = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='location_id', full_name='CParties_BeaconLocation.location_id', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -139,8 +142,8 @@ _CPARTIES_BEACONLOCATION = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=205,
-  serialized_end=274,
+  serialized_start=231,
+  serialized_end=300,
 )
 
 
@@ -150,6 +153,7 @@ _CPARTIES_CREATEBEACON_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CParties_CreateBeacon_Request.appid', index=0,
@@ -157,35 +161,35 @@ _CPARTIES_CREATEBEACON_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='num_open_slots', full_name='CParties_CreateBeacon_Request.num_open_slots', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='locations', full_name='CParties_CreateBeacon_Request.locations', index=2,
       number=3, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='connect_string', full_name='CParties_CreateBeacon_Request.connect_string', index=3,
       number=4, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='metadata', full_name='CParties_CreateBeacon_Request.metadata', index=4,
       number=5, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -198,8 +202,8 @@ _CPARTIES_CREATEBEACON_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=277,
-  serialized_end=434,
+  serialized_start=303,
+  serialized_end=460,
 )
 
 
@@ -209,6 +213,7 @@ _CPARTIES_CREATEBEACON_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='beacon_id', full_name='CParties_CreateBeacon_Response.beacon_id', index=0,
@@ -216,7 +221,7 @@ _CPARTIES_CREATEBEACON_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -229,8 +234,8 @@ _CPARTIES_CREATEBEACON_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=436,
-  serialized_end=487,
+  serialized_start=462,
+  serialized_end=513,
 )
 
 
@@ -240,6 +245,7 @@ _CPARTIES_ONRESERVATIONCOMPLETED_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='beacon_id', full_name='CParties_OnReservationCompleted_Request.beacon_id', index=0,
@@ -247,14 +253,14 @@ _CPARTIES_ONRESERVATIONCOMPLETED_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='user_steamid', full_name='CParties_OnReservationCompleted_Request.user_steamid', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -267,8 +273,8 @@ _CPARTIES_ONRESERVATIONCOMPLETED_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=489,
-  serialized_end=571,
+  serialized_start=515,
+  serialized_end=597,
 )
 
 
@@ -278,6 +284,7 @@ _CPARTIES_ONRESERVATIONCOMPLETED_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='beacon_id', full_name='CParties_OnReservationCompleted_Response.beacon_id', index=0,
@@ -285,7 +292,7 @@ _CPARTIES_ONRESERVATIONCOMPLETED_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -298,8 +305,8 @@ _CPARTIES_ONRESERVATIONCOMPLETED_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=573,
-  serialized_end=634,
+  serialized_start=599,
+  serialized_end=660,
 )
 
 
@@ -309,6 +316,7 @@ _CPARTIES_CANCELRESERVATION_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='beacon_id', full_name='CParties_CancelReservation_Request.beacon_id', index=0,
@@ -316,14 +324,14 @@ _CPARTIES_CANCELRESERVATION_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='user_steamid', full_name='CParties_CancelReservation_Request.user_steamid', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -336,8 +344,8 @@ _CPARTIES_CANCELRESERVATION_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=636,
-  serialized_end=713,
+  serialized_start=662,
+  serialized_end=739,
 )
 
 
@@ -347,6 +355,7 @@ _CPARTIES_CANCELRESERVATION_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='beacon_id', full_name='CParties_CancelReservation_Response.beacon_id', index=0,
@@ -354,7 +363,7 @@ _CPARTIES_CANCELRESERVATION_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -367,8 +376,8 @@ _CPARTIES_CANCELRESERVATION_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=715,
-  serialized_end=771,
+  serialized_start=741,
+  serialized_end=797,
 )
 
 
@@ -378,6 +387,7 @@ _CPARTIES_CHANGENUMOPENSLOTS_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='beacon_id', full_name='CParties_ChangeNumOpenSlots_Request.beacon_id', index=0,
@@ -385,14 +395,14 @@ _CPARTIES_CHANGENUMOPENSLOTS_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='num_open_slots', full_name='CParties_ChangeNumOpenSlots_Request.num_open_slots', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -405,8 +415,8 @@ _CPARTIES_CHANGENUMOPENSLOTS_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=773,
-  serialized_end=853,
+  serialized_start=799,
+  serialized_end=879,
 )
 
 
@@ -416,6 +426,7 @@ _CPARTIES_CHANGENUMOPENSLOTS_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='beacon_id', full_name='CParties_ChangeNumOpenSlots_Response.beacon_id', index=0,
@@ -423,7 +434,7 @@ _CPARTIES_CHANGENUMOPENSLOTS_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -436,8 +447,8 @@ _CPARTIES_CHANGENUMOPENSLOTS_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=855,
-  serialized_end=912,
+  serialized_start=881,
+  serialized_end=938,
 )
 
 
@@ -447,6 +458,7 @@ _CPARTIES_DESTROYBEACON_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='beacon_id', full_name='CParties_DestroyBeacon_Request.beacon_id', index=0,
@@ -454,7 +466,7 @@ _CPARTIES_DESTROYBEACON_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -467,8 +479,8 @@ _CPARTIES_DESTROYBEACON_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=914,
-  serialized_end=965,
+  serialized_start=940,
+  serialized_end=991,
 )
 
 
@@ -478,6 +490,7 @@ _CPARTIES_DESTROYBEACON_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='beacon_id', full_name='CParties_DestroyBeacon_Response.beacon_id', index=0,
@@ -485,7 +498,7 @@ _CPARTIES_DESTROYBEACON_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -498,8 +511,8 @@ _CPARTIES_DESTROYBEACON_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=967,
-  serialized_end=1019,
+  serialized_start=993,
+  serialized_end=1045,
 )
 
 _CPARTIES_CREATEBEACON_REQUEST.fields_by_name['locations'].message_type = _CPARTIES_BEACONLOCATION
@@ -518,95 +531,95 @@ DESCRIPTOR.message_types_by_name['CParties_DestroyBeacon_Request'] = _CPARTIES_D
 DESCRIPTOR.message_types_by_name['CParties_DestroyBeacon_Response'] = _CPARTIES_DESTROYBEACON_RESPONSE
 _sym_db.RegisterFileDescriptor(DESCRIPTOR)
 
-CParties_JoinParty_Request = _reflection.GeneratedProtocolMessageType('CParties_JoinParty_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CPARTIES_JOINPARTY_REQUEST,
-  __module__ = 'steammessages_parties_pb2'
+CParties_JoinParty_Request = _reflection.GeneratedProtocolMessageType('CParties_JoinParty_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPARTIES_JOINPARTY_REQUEST,
+  '__module__' : 'steammessages_parties_pb2'
   # @@protoc_insertion_point(class_scope:CParties_JoinParty_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CParties_JoinParty_Request)
 
-CParties_JoinParty_Response = _reflection.GeneratedProtocolMessageType('CParties_JoinParty_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CPARTIES_JOINPARTY_RESPONSE,
-  __module__ = 'steammessages_parties_pb2'
+CParties_JoinParty_Response = _reflection.GeneratedProtocolMessageType('CParties_JoinParty_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CPARTIES_JOINPARTY_RESPONSE,
+  '__module__' : 'steammessages_parties_pb2'
   # @@protoc_insertion_point(class_scope:CParties_JoinParty_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CParties_JoinParty_Response)
 
-CParties_BeaconLocation = _reflection.GeneratedProtocolMessageType('CParties_BeaconLocation', (_message.Message,), dict(
-  DESCRIPTOR = _CPARTIES_BEACONLOCATION,
-  __module__ = 'steammessages_parties_pb2'
+CParties_BeaconLocation = _reflection.GeneratedProtocolMessageType('CParties_BeaconLocation', (_message.Message,), {
+  'DESCRIPTOR' : _CPARTIES_BEACONLOCATION,
+  '__module__' : 'steammessages_parties_pb2'
   # @@protoc_insertion_point(class_scope:CParties_BeaconLocation)
-  ))
+  })
 _sym_db.RegisterMessage(CParties_BeaconLocation)
 
-CParties_CreateBeacon_Request = _reflection.GeneratedProtocolMessageType('CParties_CreateBeacon_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CPARTIES_CREATEBEACON_REQUEST,
-  __module__ = 'steammessages_parties_pb2'
+CParties_CreateBeacon_Request = _reflection.GeneratedProtocolMessageType('CParties_CreateBeacon_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPARTIES_CREATEBEACON_REQUEST,
+  '__module__' : 'steammessages_parties_pb2'
   # @@protoc_insertion_point(class_scope:CParties_CreateBeacon_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CParties_CreateBeacon_Request)
 
-CParties_CreateBeacon_Response = _reflection.GeneratedProtocolMessageType('CParties_CreateBeacon_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CPARTIES_CREATEBEACON_RESPONSE,
-  __module__ = 'steammessages_parties_pb2'
+CParties_CreateBeacon_Response = _reflection.GeneratedProtocolMessageType('CParties_CreateBeacon_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CPARTIES_CREATEBEACON_RESPONSE,
+  '__module__' : 'steammessages_parties_pb2'
   # @@protoc_insertion_point(class_scope:CParties_CreateBeacon_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CParties_CreateBeacon_Response)
 
-CParties_OnReservationCompleted_Request = _reflection.GeneratedProtocolMessageType('CParties_OnReservationCompleted_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CPARTIES_ONRESERVATIONCOMPLETED_REQUEST,
-  __module__ = 'steammessages_parties_pb2'
+CParties_OnReservationCompleted_Request = _reflection.GeneratedProtocolMessageType('CParties_OnReservationCompleted_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPARTIES_ONRESERVATIONCOMPLETED_REQUEST,
+  '__module__' : 'steammessages_parties_pb2'
   # @@protoc_insertion_point(class_scope:CParties_OnReservationCompleted_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CParties_OnReservationCompleted_Request)
 
-CParties_OnReservationCompleted_Response = _reflection.GeneratedProtocolMessageType('CParties_OnReservationCompleted_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CPARTIES_ONRESERVATIONCOMPLETED_RESPONSE,
-  __module__ = 'steammessages_parties_pb2'
+CParties_OnReservationCompleted_Response = _reflection.GeneratedProtocolMessageType('CParties_OnReservationCompleted_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CPARTIES_ONRESERVATIONCOMPLETED_RESPONSE,
+  '__module__' : 'steammessages_parties_pb2'
   # @@protoc_insertion_point(class_scope:CParties_OnReservationCompleted_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CParties_OnReservationCompleted_Response)
 
-CParties_CancelReservation_Request = _reflection.GeneratedProtocolMessageType('CParties_CancelReservation_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CPARTIES_CANCELRESERVATION_REQUEST,
-  __module__ = 'steammessages_parties_pb2'
+CParties_CancelReservation_Request = _reflection.GeneratedProtocolMessageType('CParties_CancelReservation_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPARTIES_CANCELRESERVATION_REQUEST,
+  '__module__' : 'steammessages_parties_pb2'
   # @@protoc_insertion_point(class_scope:CParties_CancelReservation_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CParties_CancelReservation_Request)
 
-CParties_CancelReservation_Response = _reflection.GeneratedProtocolMessageType('CParties_CancelReservation_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CPARTIES_CANCELRESERVATION_RESPONSE,
-  __module__ = 'steammessages_parties_pb2'
+CParties_CancelReservation_Response = _reflection.GeneratedProtocolMessageType('CParties_CancelReservation_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CPARTIES_CANCELRESERVATION_RESPONSE,
+  '__module__' : 'steammessages_parties_pb2'
   # @@protoc_insertion_point(class_scope:CParties_CancelReservation_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CParties_CancelReservation_Response)
 
-CParties_ChangeNumOpenSlots_Request = _reflection.GeneratedProtocolMessageType('CParties_ChangeNumOpenSlots_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CPARTIES_CHANGENUMOPENSLOTS_REQUEST,
-  __module__ = 'steammessages_parties_pb2'
+CParties_ChangeNumOpenSlots_Request = _reflection.GeneratedProtocolMessageType('CParties_ChangeNumOpenSlots_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPARTIES_CHANGENUMOPENSLOTS_REQUEST,
+  '__module__' : 'steammessages_parties_pb2'
   # @@protoc_insertion_point(class_scope:CParties_ChangeNumOpenSlots_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CParties_ChangeNumOpenSlots_Request)
 
-CParties_ChangeNumOpenSlots_Response = _reflection.GeneratedProtocolMessageType('CParties_ChangeNumOpenSlots_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CPARTIES_CHANGENUMOPENSLOTS_RESPONSE,
-  __module__ = 'steammessages_parties_pb2'
+CParties_ChangeNumOpenSlots_Response = _reflection.GeneratedProtocolMessageType('CParties_ChangeNumOpenSlots_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CPARTIES_CHANGENUMOPENSLOTS_RESPONSE,
+  '__module__' : 'steammessages_parties_pb2'
   # @@protoc_insertion_point(class_scope:CParties_ChangeNumOpenSlots_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CParties_ChangeNumOpenSlots_Response)
 
-CParties_DestroyBeacon_Request = _reflection.GeneratedProtocolMessageType('CParties_DestroyBeacon_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CPARTIES_DESTROYBEACON_REQUEST,
-  __module__ = 'steammessages_parties_pb2'
+CParties_DestroyBeacon_Request = _reflection.GeneratedProtocolMessageType('CParties_DestroyBeacon_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPARTIES_DESTROYBEACON_REQUEST,
+  '__module__' : 'steammessages_parties_pb2'
   # @@protoc_insertion_point(class_scope:CParties_DestroyBeacon_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CParties_DestroyBeacon_Request)
 
-CParties_DestroyBeacon_Response = _reflection.GeneratedProtocolMessageType('CParties_DestroyBeacon_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CPARTIES_DESTROYBEACON_RESPONSE,
-  __module__ = 'steammessages_parties_pb2'
+CParties_DestroyBeacon_Response = _reflection.GeneratedProtocolMessageType('CParties_DestroyBeacon_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CPARTIES_DESTROYBEACON_RESPONSE,
+  '__module__' : 'steammessages_parties_pb2'
   # @@protoc_insertion_point(class_scope:CParties_DestroyBeacon_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CParties_DestroyBeacon_Response)
 
 
@@ -617,9 +630,10 @@ _PARTIES = _descriptor.ServiceDescriptor(
   full_name='Parties',
   file=DESCRIPTOR,
   index=0,
-  serialized_options=_b('\202\265\030\026Party-related services'),
-  serialized_start=1022,
-  serialized_end=2007,
+  serialized_options=b'\202\265\030\026Party-related services',
+  create_key=_descriptor._internal_create_key,
+  serialized_start=1048,
+  serialized_end=2033,
   methods=[
   _descriptor.MethodDescriptor(
     name='JoinParty',
@@ -628,7 +642,8 @@ _PARTIES = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CPARTIES_JOINPARTY_REQUEST,
     output_type=_CPARTIES_JOINPARTY_RESPONSE,
-    serialized_options=_b('\202\265\030mRequest to join a Party via the given Beacon ID. If successful, will be given the necessary \'connect\' string.'),
+    serialized_options=b'\202\265\030mRequest to join a Party via the given Beacon ID. If successful, will be given the necessary \'connect\' string.',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='CreateBeacon',
@@ -637,7 +652,8 @@ _PARTIES = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CPARTIES_CREATEBEACON_REQUEST,
     output_type=_CPARTIES_CREATEBEACON_RESPONSE,
-    serialized_options=_b('\202\265\0300Create a Beacon to attract people to your Party.'),
+    serialized_options=b'\202\265\0300Create a Beacon to attract people to your Party.',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='OnReservationCompleted',
@@ -646,7 +662,8 @@ _PARTIES = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CPARTIES_ONRESERVATIONCOMPLETED_REQUEST,
     output_type=_CPARTIES_ONRESERVATIONCOMPLETED_RESPONSE,
-    serialized_options=_b('\202\265\030DNotify Steam that a user with a reservation has successfully joined.'),
+    serialized_options=b'\202\265\030DNotify Steam that a user with a reservation has successfully joined.',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='CancelReservation',
@@ -655,7 +672,8 @@ _PARTIES = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CPARTIES_CANCELRESERVATION_REQUEST,
     output_type=_CPARTIES_CANCELRESERVATION_RESPONSE,
-    serialized_options=_b('\202\265\030ZNotify Steam that a user with a reservation either never showed up, or has left the party.'),
+    serialized_options=b'\202\265\030ZNotify Steam that a user with a reservation either never showed up, or has left the party.',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='ChangeNumOpenSlots',
@@ -664,7 +682,8 @@ _PARTIES = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CPARTIES_CHANGENUMOPENSLOTS_REQUEST,
     output_type=_CPARTIES_CHANGENUMOPENSLOTS_RESPONSE,
-    serialized_options=_b('\202\265\030\037Change the number of open slots'),
+    serialized_options=b'\202\265\030\037Change the number of open slots',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='DestroyBeacon',
@@ -673,7 +692,8 @@ _PARTIES = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CPARTIES_DESTROYBEACON_REQUEST,
     output_type=_CPARTIES_DESTROYBEACON_RESPONSE,
-    serialized_options=_b('\202\265\030\022Delete the Beacon.'),
+    serialized_options=b'\202\265\030\022Delete the Beacon.',
+    create_key=_descriptor._internal_create_key,
   ),
 ])
 _sym_db.RegisterServiceDescriptor(_PARTIES)
diff --git a/steam/protobufs/steammessages_partnerapps_pb2.py b/steam/protobufs/steammessages_partnerapps_pb2.py
index 9ec7d0b..4c9f906 100644
--- a/steam/protobufs/steammessages_partnerapps_pb2.py
+++ b/steam/protobufs/steammessages_partnerapps_pb2.py
@@ -1,9 +1,7 @@
 # -*- coding: utf-8 -*-
 # Generated by the protocol buffer compiler.  DO NOT EDIT!
 # source: steammessages_partnerapps.proto
-
-import sys
-_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1'))
+"""Generated protocol buffer code."""
 from google.protobuf import descriptor as _descriptor
 from google.protobuf import message as _message
 from google.protobuf import reflection as _reflection
@@ -15,6 +13,7 @@ from google.protobuf import service_reflection
 _sym_db = _symbol_database.Default()
 
 
+import steam.protobufs.steammessages_base_pb2 as steammessages__base__pb2
 import steam.protobufs.steammessages_unified_base_pb2 as steammessages__unified__base__pb2
 
 
@@ -22,10 +21,11 @@ DESCRIPTOR = _descriptor.FileDescriptor(
   name='steammessages_partnerapps.proto',
   package='',
   syntax='proto2',
-  serialized_options=_b('\220\001\001'),
-  serialized_pb=_b('\n\x1fsteammessages_partnerapps.proto\x1a steammessages_unified_base.proto\"J\n\'CPartnerApps_RequestUploadToken_Request\x12\x10\n\x08\x66ilename\x18\x01 \x01(\t\x12\r\n\x05\x61ppid\x18\x02 \x01(\r\"f\n(CPartnerApps_RequestUploadToken_Response\x12\x14\n\x0cupload_token\x18\x01 \x01(\x04\x12\x10\n\x08location\x18\x02 \x01(\t\x12\x12\n\nrouting_id\x18\x03 \x01(\x04\"]\n!CPartnerApps_FinishUpload_Request\x12\x14\n\x0cupload_token\x18\x01 \x01(\x04\x12\x12\n\nrouting_id\x18\x02 \x01(\x04\x12\x0e\n\x06\x61pp_id\x18\x03 \x01(\r\"H\n(CPartnerApps_FinishUploadKVSign_Response\x12\x1c\n\x14signed_installscript\x18\x01 \x01(\t\"\x88\x01\n*CPartnerApps_FinishUploadLegacyDRM_Request\x12\x14\n\x0cupload_token\x18\x01 \x01(\x04\x12\x12\n\nrouting_id\x18\x02 \x01(\x04\x12\x0e\n\x06\x61pp_id\x18\x03 \x01(\r\x12\r\n\x05\x66lags\x18\x04 \x01(\r\x12\x11\n\ttool_name\x18\x05 \x01(\t\">\n+CPartnerApps_FinishUploadLegacyDRM_Response\x12\x0f\n\x07\x66ile_id\x18\x01 \x01(\t\"$\n\"CPartnerApps_FinishUpload_Response\"\x89\x01\n&CPartnerApps_FinishUploadDepot_Request\x12\x14\n\x0cupload_token\x18\x01 \x01(\x04\x12\x12\n\nrouting_id\x18\x02 \x01(\x04\x12\x0e\n\x06\x61pp_id\x18\x03 \x01(\r\x12\x10\n\x08\x64\x65pot_id\x18\x04 \x01(\r\x12\x13\n\x0b\x62uild_flags\x18\x05 \x01(\r\")\n\'CPartnerApps_FinishUploadDepot_Response\"T\n(CPartnerApps_GetDepotBuildResult_Request\x12\x14\n\x0cupload_token\x18\x01 \x01(\x04\x12\x12\n\nrouting_id\x18\x02 \x01(\x04\"S\n)CPartnerApps_GetDepotBuildResult_Response\x12\x13\n\x0bmanifest_id\x18\x01 \x01(\x04\x12\x11\n\terror_msg\x18\x02 \x01(\t\"5\n#CPartnerApps_FindDRMUploads_Request\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\x05\"\xb4\x01\n\x1e\x43PartnerApps_ExistingDRMUpload\x12\x0f\n\x07\x66ile_id\x18\x01 \x01(\t\x12\x0e\n\x06\x61pp_id\x18\x02 \x01(\r\x12\x10\n\x08\x61\x63tor_id\x18\x03 \x01(\x05\x12\x15\n\rsupplied_name\x18\x05 \x01(\t\x12\r\n\x05\x66lags\x18\x06 \x01(\r\x12\x10\n\x08mod_type\x18\x07 \x01(\t\x12\x11\n\ttimestamp\x18\x08 \x01(\x07\x12\x14\n\x0corig_file_id\x18\t \x01(\t\"X\n$CPartnerApps_FindDRMUploads_Response\x12\x30\n\x07uploads\x18\x01 \x03(\x0b\x32\x1f.CPartnerApps_ExistingDRMUpload\"@\n\x1d\x43PartnerApps_Download_Request\x12\x0f\n\x07\x66ile_id\x18\x01 \x01(\t\x12\x0e\n\x06\x61pp_id\x18\x02 \x01(\x05\"F\n\x1e\x43PartnerApps_Download_Response\x12\x14\n\x0c\x64ownload_url\x18\x01 \x01(\t\x12\x0e\n\x06\x61pp_id\x18\x02 \x01(\x05\x32\xa1\x0e\n\x0bPartnerApps\x12\xb1\x01\n\x18RequestKVSignUploadToken\x12(.CPartnerApps_RequestUploadToken_Request\x1a).CPartnerApps_RequestUploadToken_Response\"@\x82\xb5\x18<Request upload token for installscript file upload / signing\x12\xae\x01\n\x15RequestDRMUploadToken\x12(.CPartnerApps_RequestUploadToken_Request\x1a).CPartnerApps_RequestUploadToken_Response\"@\x82\xb5\x18<Request upload token for executable file upload / processing\x12\xb5\x01\n\x15RequestCEGUploadToken\x12(.CPartnerApps_RequestUploadToken_Request\x1a).CPartnerApps_RequestUploadToken_Response\"G\x82\xb5\x18\x43Request upload token for custom executable file upload / processing\x12\xa3\x01\n\x17RequestDepotUploadToken\x12(.CPartnerApps_RequestUploadToken_Request\x1a).CPartnerApps_RequestUploadToken_Response\"3\x82\xb5\x18/Request upload token for steampipe depot upload\x12\xab\x01\n\x12\x46inishUploadKVSign\x12\".CPartnerApps_FinishUpload_Request\x1a).CPartnerApps_FinishUploadKVSign_Response\"F\x82\xb5\x18\x42\x43ommit method to sign an installscript after an upload is complete\x12\xa4\x01\n\x15\x46inishUploadDRMUpload\x12+.CPartnerApps_FinishUploadLegacyDRM_Request\x1a,.CPartnerApps_FinishUploadLegacyDRM_Response\"0\x82\xb5\x18,Commit method for executable file processing\x12\x99\x01\n\x15\x46inishUploadCEGUpload\x12\".CPartnerApps_FinishUpload_Request\x1a#.CPartnerApps_FinishUpload_Response\"7\x82\xb5\x18\x33\x43ommit method for custom executable file processing\x12\xa5\x01\n\x17\x46inishUploadDepotUpload\x12\'.CPartnerApps_FinishUploadDepot_Request\x1a(.CPartnerApps_FinishUploadDepot_Response\"7\x82\xb5\x18\x33\x43ommit method for custom executable file processing\x12\xa4\x01\n\x13GetDepotBuildResult\x12).CPartnerApps_GetDepotBuildResult_Request\x1a*.CPartnerApps_GetDepotBuildResult_Response\"6\x82\xb5\x18\x32Get build status for previously uploaded depot ZIP\x12\x8d\x01\n\x0e\x46indDRMUploads\x12$.CPartnerApps_FindDRMUploads_Request\x1a%.CPartnerApps_FindDRMUploads_Response\".\x82\xb5\x18*Finds N most recent prior uploads by appid\x12K\n\x08\x44ownload\x12\x1e.CPartnerApps_Download_Request\x1a\x1f.CPartnerApps_Download_Response\x1a\x32\x82\xb5\x18.Service methods for app management by partnersB\x03\x90\x01\x01')
+  serialized_options=b'\220\001\001',
+  create_key=_descriptor._internal_create_key,
+  serialized_pb=b'\n\x1fsteammessages_partnerapps.proto\x1a\x18steammessages_base.proto\x1a steammessages_unified_base.proto\"J\n\'CPartnerApps_RequestUploadToken_Request\x12\x10\n\x08\x66ilename\x18\x01 \x01(\t\x12\r\n\x05\x61ppid\x18\x02 \x01(\r\"f\n(CPartnerApps_RequestUploadToken_Response\x12\x14\n\x0cupload_token\x18\x01 \x01(\x04\x12\x10\n\x08location\x18\x02 \x01(\t\x12\x12\n\nrouting_id\x18\x03 \x01(\x04\"]\n!CPartnerApps_FinishUpload_Request\x12\x14\n\x0cupload_token\x18\x01 \x01(\x04\x12\x12\n\nrouting_id\x18\x02 \x01(\x04\x12\x0e\n\x06\x61pp_id\x18\x03 \x01(\r\"H\n(CPartnerApps_FinishUploadKVSign_Response\x12\x1c\n\x14signed_installscript\x18\x01 \x01(\t\"\x88\x01\n*CPartnerApps_FinishUploadLegacyDRM_Request\x12\x14\n\x0cupload_token\x18\x01 \x01(\x04\x12\x12\n\nrouting_id\x18\x02 \x01(\x04\x12\x0e\n\x06\x61pp_id\x18\x03 \x01(\r\x12\r\n\x05\x66lags\x18\x04 \x01(\r\x12\x11\n\ttool_name\x18\x05 \x01(\t\">\n+CPartnerApps_FinishUploadLegacyDRM_Response\x12\x0f\n\x07\x66ile_id\x18\x01 \x01(\t\"$\n\"CPartnerApps_FinishUpload_Response\"\x89\x01\n&CPartnerApps_FinishUploadDepot_Request\x12\x14\n\x0cupload_token\x18\x01 \x01(\x04\x12\x12\n\nrouting_id\x18\x02 \x01(\x04\x12\x0e\n\x06\x61pp_id\x18\x03 \x01(\r\x12\x10\n\x08\x64\x65pot_id\x18\x04 \x01(\r\x12\x13\n\x0b\x62uild_flags\x18\x05 \x01(\r\")\n\'CPartnerApps_FinishUploadDepot_Response\"T\n(CPartnerApps_GetDepotBuildResult_Request\x12\x14\n\x0cupload_token\x18\x01 \x01(\x04\x12\x12\n\nrouting_id\x18\x02 \x01(\x04\"S\n)CPartnerApps_GetDepotBuildResult_Response\x12\x13\n\x0bmanifest_id\x18\x01 \x01(\x04\x12\x11\n\terror_msg\x18\x02 \x01(\t\"5\n#CPartnerApps_FindDRMUploads_Request\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\x05\"\xb4\x01\n\x1e\x43PartnerApps_ExistingDRMUpload\x12\x0f\n\x07\x66ile_id\x18\x01 \x01(\t\x12\x0e\n\x06\x61pp_id\x18\x02 \x01(\r\x12\x10\n\x08\x61\x63tor_id\x18\x03 \x01(\x05\x12\x15\n\rsupplied_name\x18\x05 \x01(\t\x12\r\n\x05\x66lags\x18\x06 \x01(\r\x12\x10\n\x08mod_type\x18\x07 \x01(\t\x12\x11\n\ttimestamp\x18\x08 \x01(\x07\x12\x14\n\x0corig_file_id\x18\t \x01(\t\"X\n$CPartnerApps_FindDRMUploads_Response\x12\x30\n\x07uploads\x18\x01 \x03(\x0b\x32\x1f.CPartnerApps_ExistingDRMUpload\"@\n\x1d\x43PartnerApps_Download_Request\x12\x0f\n\x07\x66ile_id\x18\x01 \x01(\t\x12\x0e\n\x06\x61pp_id\x18\x02 \x01(\x05\"F\n\x1e\x43PartnerApps_Download_Response\x12\x14\n\x0c\x64ownload_url\x18\x01 \x01(\t\x12\x0e\n\x06\x61pp_id\x18\x02 \x01(\x05\x32\xa1\x0e\n\x0bPartnerApps\x12\xb1\x01\n\x18RequestKVSignUploadToken\x12(.CPartnerApps_RequestUploadToken_Request\x1a).CPartnerApps_RequestUploadToken_Response\"@\x82\xb5\x18<Request upload token for installscript file upload / signing\x12\xae\x01\n\x15RequestDRMUploadToken\x12(.CPartnerApps_RequestUploadToken_Request\x1a).CPartnerApps_RequestUploadToken_Response\"@\x82\xb5\x18<Request upload token for executable file upload / processing\x12\xb5\x01\n\x15RequestCEGUploadToken\x12(.CPartnerApps_RequestUploadToken_Request\x1a).CPartnerApps_RequestUploadToken_Response\"G\x82\xb5\x18\x43Request upload token for custom executable file upload / processing\x12\xa3\x01\n\x17RequestDepotUploadToken\x12(.CPartnerApps_RequestUploadToken_Request\x1a).CPartnerApps_RequestUploadToken_Response\"3\x82\xb5\x18/Request upload token for steampipe depot upload\x12\xab\x01\n\x12\x46inishUploadKVSign\x12\".CPartnerApps_FinishUpload_Request\x1a).CPartnerApps_FinishUploadKVSign_Response\"F\x82\xb5\x18\x42\x43ommit method to sign an installscript after an upload is complete\x12\xa4\x01\n\x15\x46inishUploadDRMUpload\x12+.CPartnerApps_FinishUploadLegacyDRM_Request\x1a,.CPartnerApps_FinishUploadLegacyDRM_Response\"0\x82\xb5\x18,Commit method for executable file processing\x12\x99\x01\n\x15\x46inishUploadCEGUpload\x12\".CPartnerApps_FinishUpload_Request\x1a#.CPartnerApps_FinishUpload_Response\"7\x82\xb5\x18\x33\x43ommit method for custom executable file processing\x12\xa5\x01\n\x17\x46inishUploadDepotUpload\x12\'.CPartnerApps_FinishUploadDepot_Request\x1a(.CPartnerApps_FinishUploadDepot_Response\"7\x82\xb5\x18\x33\x43ommit method for custom executable file processing\x12\xa4\x01\n\x13GetDepotBuildResult\x12).CPartnerApps_GetDepotBuildResult_Request\x1a*.CPartnerApps_GetDepotBuildResult_Response\"6\x82\xb5\x18\x32Get build status for previously uploaded depot ZIP\x12\x8d\x01\n\x0e\x46indDRMUploads\x12$.CPartnerApps_FindDRMUploads_Request\x1a%.CPartnerApps_FindDRMUploads_Response\".\x82\xb5\x18*Finds N most recent prior uploads by appid\x12K\n\x08\x44ownload\x12\x1e.CPartnerApps_Download_Request\x1a\x1f.CPartnerApps_Download_Response\x1a\x32\x82\xb5\x18.Service methods for app management by partnersB\x03\x90\x01\x01'
   ,
-  dependencies=[steammessages__unified__base__pb2.DESCRIPTOR,])
+  dependencies=[steammessages__base__pb2.DESCRIPTOR,steammessages__unified__base__pb2.DESCRIPTOR,])
 
 
 
@@ -36,21 +36,22 @@ _CPARTNERAPPS_REQUESTUPLOADTOKEN_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='filename', full_name='CPartnerApps_RequestUploadToken_Request.filename', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='appid', full_name='CPartnerApps_RequestUploadToken_Request.appid', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -63,8 +64,8 @@ _CPARTNERAPPS_REQUESTUPLOADTOKEN_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=69,
-  serialized_end=143,
+  serialized_start=95,
+  serialized_end=169,
 )
 
 
@@ -74,6 +75,7 @@ _CPARTNERAPPS_REQUESTUPLOADTOKEN_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='upload_token', full_name='CPartnerApps_RequestUploadToken_Response.upload_token', index=0,
@@ -81,21 +83,21 @@ _CPARTNERAPPS_REQUESTUPLOADTOKEN_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='location', full_name='CPartnerApps_RequestUploadToken_Response.location', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='routing_id', full_name='CPartnerApps_RequestUploadToken_Response.routing_id', index=2,
       number=3, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -108,8 +110,8 @@ _CPARTNERAPPS_REQUESTUPLOADTOKEN_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=145,
-  serialized_end=247,
+  serialized_start=171,
+  serialized_end=273,
 )
 
 
@@ -119,6 +121,7 @@ _CPARTNERAPPS_FINISHUPLOAD_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='upload_token', full_name='CPartnerApps_FinishUpload_Request.upload_token', index=0,
@@ -126,21 +129,21 @@ _CPARTNERAPPS_FINISHUPLOAD_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='routing_id', full_name='CPartnerApps_FinishUpload_Request.routing_id', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CPartnerApps_FinishUpload_Request.app_id', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -153,8 +156,8 @@ _CPARTNERAPPS_FINISHUPLOAD_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=249,
-  serialized_end=342,
+  serialized_start=275,
+  serialized_end=368,
 )
 
 
@@ -164,14 +167,15 @@ _CPARTNERAPPS_FINISHUPLOADKVSIGN_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='signed_installscript', full_name='CPartnerApps_FinishUploadKVSign_Response.signed_installscript', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -184,8 +188,8 @@ _CPARTNERAPPS_FINISHUPLOADKVSIGN_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=344,
-  serialized_end=416,
+  serialized_start=370,
+  serialized_end=442,
 )
 
 
@@ -195,6 +199,7 @@ _CPARTNERAPPS_FINISHUPLOADLEGACYDRM_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='upload_token', full_name='CPartnerApps_FinishUploadLegacyDRM_Request.upload_token', index=0,
@@ -202,35 +207,35 @@ _CPARTNERAPPS_FINISHUPLOADLEGACYDRM_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='routing_id', full_name='CPartnerApps_FinishUploadLegacyDRM_Request.routing_id', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CPartnerApps_FinishUploadLegacyDRM_Request.app_id', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='flags', full_name='CPartnerApps_FinishUploadLegacyDRM_Request.flags', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='tool_name', full_name='CPartnerApps_FinishUploadLegacyDRM_Request.tool_name', index=4,
       number=5, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -243,8 +248,8 @@ _CPARTNERAPPS_FINISHUPLOADLEGACYDRM_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=419,
-  serialized_end=555,
+  serialized_start=445,
+  serialized_end=581,
 )
 
 
@@ -254,14 +259,15 @@ _CPARTNERAPPS_FINISHUPLOADLEGACYDRM_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='file_id', full_name='CPartnerApps_FinishUploadLegacyDRM_Response.file_id', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -274,8 +280,8 @@ _CPARTNERAPPS_FINISHUPLOADLEGACYDRM_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=557,
-  serialized_end=619,
+  serialized_start=583,
+  serialized_end=645,
 )
 
 
@@ -285,6 +291,7 @@ _CPARTNERAPPS_FINISHUPLOAD_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -298,8 +305,8 @@ _CPARTNERAPPS_FINISHUPLOAD_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=621,
-  serialized_end=657,
+  serialized_start=647,
+  serialized_end=683,
 )
 
 
@@ -309,6 +316,7 @@ _CPARTNERAPPS_FINISHUPLOADDEPOT_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='upload_token', full_name='CPartnerApps_FinishUploadDepot_Request.upload_token', index=0,
@@ -316,35 +324,35 @@ _CPARTNERAPPS_FINISHUPLOADDEPOT_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='routing_id', full_name='CPartnerApps_FinishUploadDepot_Request.routing_id', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CPartnerApps_FinishUploadDepot_Request.app_id', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='depot_id', full_name='CPartnerApps_FinishUploadDepot_Request.depot_id', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='build_flags', full_name='CPartnerApps_FinishUploadDepot_Request.build_flags', index=4,
       number=5, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -357,8 +365,8 @@ _CPARTNERAPPS_FINISHUPLOADDEPOT_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=660,
-  serialized_end=797,
+  serialized_start=686,
+  serialized_end=823,
 )
 
 
@@ -368,6 +376,7 @@ _CPARTNERAPPS_FINISHUPLOADDEPOT_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -381,8 +390,8 @@ _CPARTNERAPPS_FINISHUPLOADDEPOT_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=799,
-  serialized_end=840,
+  serialized_start=825,
+  serialized_end=866,
 )
 
 
@@ -392,6 +401,7 @@ _CPARTNERAPPS_GETDEPOTBUILDRESULT_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='upload_token', full_name='CPartnerApps_GetDepotBuildResult_Request.upload_token', index=0,
@@ -399,14 +409,14 @@ _CPARTNERAPPS_GETDEPOTBUILDRESULT_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='routing_id', full_name='CPartnerApps_GetDepotBuildResult_Request.routing_id', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -419,8 +429,8 @@ _CPARTNERAPPS_GETDEPOTBUILDRESULT_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=842,
-  serialized_end=926,
+  serialized_start=868,
+  serialized_end=952,
 )
 
 
@@ -430,6 +440,7 @@ _CPARTNERAPPS_GETDEPOTBUILDRESULT_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='manifest_id', full_name='CPartnerApps_GetDepotBuildResult_Response.manifest_id', index=0,
@@ -437,14 +448,14 @@ _CPARTNERAPPS_GETDEPOTBUILDRESULT_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='error_msg', full_name='CPartnerApps_GetDepotBuildResult_Response.error_msg', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -457,8 +468,8 @@ _CPARTNERAPPS_GETDEPOTBUILDRESULT_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=928,
-  serialized_end=1011,
+  serialized_start=954,
+  serialized_end=1037,
 )
 
 
@@ -468,6 +479,7 @@ _CPARTNERAPPS_FINDDRMUPLOADS_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CPartnerApps_FindDRMUploads_Request.app_id', index=0,
@@ -475,7 +487,7 @@ _CPARTNERAPPS_FINDDRMUPLOADS_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -488,8 +500,8 @@ _CPARTNERAPPS_FINDDRMUPLOADS_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1013,
-  serialized_end=1066,
+  serialized_start=1039,
+  serialized_end=1092,
 )
 
 
@@ -499,63 +511,64 @@ _CPARTNERAPPS_EXISTINGDRMUPLOAD = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='file_id', full_name='CPartnerApps_ExistingDRMUpload.file_id', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CPartnerApps_ExistingDRMUpload.app_id', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='actor_id', full_name='CPartnerApps_ExistingDRMUpload.actor_id', index=2,
       number=3, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='supplied_name', full_name='CPartnerApps_ExistingDRMUpload.supplied_name', index=3,
       number=5, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='flags', full_name='CPartnerApps_ExistingDRMUpload.flags', index=4,
       number=6, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='mod_type', full_name='CPartnerApps_ExistingDRMUpload.mod_type', index=5,
       number=7, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='timestamp', full_name='CPartnerApps_ExistingDRMUpload.timestamp', index=6,
       number=8, type=7, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='orig_file_id', full_name='CPartnerApps_ExistingDRMUpload.orig_file_id', index=7,
       number=9, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -568,8 +581,8 @@ _CPARTNERAPPS_EXISTINGDRMUPLOAD = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1069,
-  serialized_end=1249,
+  serialized_start=1095,
+  serialized_end=1275,
 )
 
 
@@ -579,6 +592,7 @@ _CPARTNERAPPS_FINDDRMUPLOADS_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='uploads', full_name='CPartnerApps_FindDRMUploads_Response.uploads', index=0,
@@ -586,7 +600,7 @@ _CPARTNERAPPS_FINDDRMUPLOADS_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -599,8 +613,8 @@ _CPARTNERAPPS_FINDDRMUPLOADS_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1251,
-  serialized_end=1339,
+  serialized_start=1277,
+  serialized_end=1365,
 )
 
 
@@ -610,21 +624,22 @@ _CPARTNERAPPS_DOWNLOAD_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='file_id', full_name='CPartnerApps_Download_Request.file_id', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CPartnerApps_Download_Request.app_id', index=1,
       number=2, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -637,8 +652,8 @@ _CPARTNERAPPS_DOWNLOAD_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1341,
-  serialized_end=1405,
+  serialized_start=1367,
+  serialized_end=1431,
 )
 
 
@@ -648,21 +663,22 @@ _CPARTNERAPPS_DOWNLOAD_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='download_url', full_name='CPartnerApps_Download_Response.download_url', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CPartnerApps_Download_Response.app_id', index=1,
       number=2, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -675,8 +691,8 @@ _CPARTNERAPPS_DOWNLOAD_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1407,
-  serialized_end=1477,
+  serialized_start=1433,
+  serialized_end=1503,
 )
 
 _CPARTNERAPPS_FINDDRMUPLOADS_RESPONSE.fields_by_name['uploads'].message_type = _CPARTNERAPPS_EXISTINGDRMUPLOAD
@@ -698,116 +714,116 @@ DESCRIPTOR.message_types_by_name['CPartnerApps_Download_Request'] = _CPARTNERAPP
 DESCRIPTOR.message_types_by_name['CPartnerApps_Download_Response'] = _CPARTNERAPPS_DOWNLOAD_RESPONSE
 _sym_db.RegisterFileDescriptor(DESCRIPTOR)
 
-CPartnerApps_RequestUploadToken_Request = _reflection.GeneratedProtocolMessageType('CPartnerApps_RequestUploadToken_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CPARTNERAPPS_REQUESTUPLOADTOKEN_REQUEST,
-  __module__ = 'steammessages_partnerapps_pb2'
+CPartnerApps_RequestUploadToken_Request = _reflection.GeneratedProtocolMessageType('CPartnerApps_RequestUploadToken_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPARTNERAPPS_REQUESTUPLOADTOKEN_REQUEST,
+  '__module__' : 'steammessages_partnerapps_pb2'
   # @@protoc_insertion_point(class_scope:CPartnerApps_RequestUploadToken_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CPartnerApps_RequestUploadToken_Request)
 
-CPartnerApps_RequestUploadToken_Response = _reflection.GeneratedProtocolMessageType('CPartnerApps_RequestUploadToken_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CPARTNERAPPS_REQUESTUPLOADTOKEN_RESPONSE,
-  __module__ = 'steammessages_partnerapps_pb2'
+CPartnerApps_RequestUploadToken_Response = _reflection.GeneratedProtocolMessageType('CPartnerApps_RequestUploadToken_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CPARTNERAPPS_REQUESTUPLOADTOKEN_RESPONSE,
+  '__module__' : 'steammessages_partnerapps_pb2'
   # @@protoc_insertion_point(class_scope:CPartnerApps_RequestUploadToken_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CPartnerApps_RequestUploadToken_Response)
 
-CPartnerApps_FinishUpload_Request = _reflection.GeneratedProtocolMessageType('CPartnerApps_FinishUpload_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CPARTNERAPPS_FINISHUPLOAD_REQUEST,
-  __module__ = 'steammessages_partnerapps_pb2'
+CPartnerApps_FinishUpload_Request = _reflection.GeneratedProtocolMessageType('CPartnerApps_FinishUpload_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPARTNERAPPS_FINISHUPLOAD_REQUEST,
+  '__module__' : 'steammessages_partnerapps_pb2'
   # @@protoc_insertion_point(class_scope:CPartnerApps_FinishUpload_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CPartnerApps_FinishUpload_Request)
 
-CPartnerApps_FinishUploadKVSign_Response = _reflection.GeneratedProtocolMessageType('CPartnerApps_FinishUploadKVSign_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CPARTNERAPPS_FINISHUPLOADKVSIGN_RESPONSE,
-  __module__ = 'steammessages_partnerapps_pb2'
+CPartnerApps_FinishUploadKVSign_Response = _reflection.GeneratedProtocolMessageType('CPartnerApps_FinishUploadKVSign_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CPARTNERAPPS_FINISHUPLOADKVSIGN_RESPONSE,
+  '__module__' : 'steammessages_partnerapps_pb2'
   # @@protoc_insertion_point(class_scope:CPartnerApps_FinishUploadKVSign_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CPartnerApps_FinishUploadKVSign_Response)
 
-CPartnerApps_FinishUploadLegacyDRM_Request = _reflection.GeneratedProtocolMessageType('CPartnerApps_FinishUploadLegacyDRM_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CPARTNERAPPS_FINISHUPLOADLEGACYDRM_REQUEST,
-  __module__ = 'steammessages_partnerapps_pb2'
+CPartnerApps_FinishUploadLegacyDRM_Request = _reflection.GeneratedProtocolMessageType('CPartnerApps_FinishUploadLegacyDRM_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPARTNERAPPS_FINISHUPLOADLEGACYDRM_REQUEST,
+  '__module__' : 'steammessages_partnerapps_pb2'
   # @@protoc_insertion_point(class_scope:CPartnerApps_FinishUploadLegacyDRM_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CPartnerApps_FinishUploadLegacyDRM_Request)
 
-CPartnerApps_FinishUploadLegacyDRM_Response = _reflection.GeneratedProtocolMessageType('CPartnerApps_FinishUploadLegacyDRM_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CPARTNERAPPS_FINISHUPLOADLEGACYDRM_RESPONSE,
-  __module__ = 'steammessages_partnerapps_pb2'
+CPartnerApps_FinishUploadLegacyDRM_Response = _reflection.GeneratedProtocolMessageType('CPartnerApps_FinishUploadLegacyDRM_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CPARTNERAPPS_FINISHUPLOADLEGACYDRM_RESPONSE,
+  '__module__' : 'steammessages_partnerapps_pb2'
   # @@protoc_insertion_point(class_scope:CPartnerApps_FinishUploadLegacyDRM_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CPartnerApps_FinishUploadLegacyDRM_Response)
 
-CPartnerApps_FinishUpload_Response = _reflection.GeneratedProtocolMessageType('CPartnerApps_FinishUpload_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CPARTNERAPPS_FINISHUPLOAD_RESPONSE,
-  __module__ = 'steammessages_partnerapps_pb2'
+CPartnerApps_FinishUpload_Response = _reflection.GeneratedProtocolMessageType('CPartnerApps_FinishUpload_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CPARTNERAPPS_FINISHUPLOAD_RESPONSE,
+  '__module__' : 'steammessages_partnerapps_pb2'
   # @@protoc_insertion_point(class_scope:CPartnerApps_FinishUpload_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CPartnerApps_FinishUpload_Response)
 
-CPartnerApps_FinishUploadDepot_Request = _reflection.GeneratedProtocolMessageType('CPartnerApps_FinishUploadDepot_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CPARTNERAPPS_FINISHUPLOADDEPOT_REQUEST,
-  __module__ = 'steammessages_partnerapps_pb2'
+CPartnerApps_FinishUploadDepot_Request = _reflection.GeneratedProtocolMessageType('CPartnerApps_FinishUploadDepot_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPARTNERAPPS_FINISHUPLOADDEPOT_REQUEST,
+  '__module__' : 'steammessages_partnerapps_pb2'
   # @@protoc_insertion_point(class_scope:CPartnerApps_FinishUploadDepot_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CPartnerApps_FinishUploadDepot_Request)
 
-CPartnerApps_FinishUploadDepot_Response = _reflection.GeneratedProtocolMessageType('CPartnerApps_FinishUploadDepot_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CPARTNERAPPS_FINISHUPLOADDEPOT_RESPONSE,
-  __module__ = 'steammessages_partnerapps_pb2'
+CPartnerApps_FinishUploadDepot_Response = _reflection.GeneratedProtocolMessageType('CPartnerApps_FinishUploadDepot_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CPARTNERAPPS_FINISHUPLOADDEPOT_RESPONSE,
+  '__module__' : 'steammessages_partnerapps_pb2'
   # @@protoc_insertion_point(class_scope:CPartnerApps_FinishUploadDepot_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CPartnerApps_FinishUploadDepot_Response)
 
-CPartnerApps_GetDepotBuildResult_Request = _reflection.GeneratedProtocolMessageType('CPartnerApps_GetDepotBuildResult_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CPARTNERAPPS_GETDEPOTBUILDRESULT_REQUEST,
-  __module__ = 'steammessages_partnerapps_pb2'
+CPartnerApps_GetDepotBuildResult_Request = _reflection.GeneratedProtocolMessageType('CPartnerApps_GetDepotBuildResult_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPARTNERAPPS_GETDEPOTBUILDRESULT_REQUEST,
+  '__module__' : 'steammessages_partnerapps_pb2'
   # @@protoc_insertion_point(class_scope:CPartnerApps_GetDepotBuildResult_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CPartnerApps_GetDepotBuildResult_Request)
 
-CPartnerApps_GetDepotBuildResult_Response = _reflection.GeneratedProtocolMessageType('CPartnerApps_GetDepotBuildResult_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CPARTNERAPPS_GETDEPOTBUILDRESULT_RESPONSE,
-  __module__ = 'steammessages_partnerapps_pb2'
+CPartnerApps_GetDepotBuildResult_Response = _reflection.GeneratedProtocolMessageType('CPartnerApps_GetDepotBuildResult_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CPARTNERAPPS_GETDEPOTBUILDRESULT_RESPONSE,
+  '__module__' : 'steammessages_partnerapps_pb2'
   # @@protoc_insertion_point(class_scope:CPartnerApps_GetDepotBuildResult_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CPartnerApps_GetDepotBuildResult_Response)
 
-CPartnerApps_FindDRMUploads_Request = _reflection.GeneratedProtocolMessageType('CPartnerApps_FindDRMUploads_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CPARTNERAPPS_FINDDRMUPLOADS_REQUEST,
-  __module__ = 'steammessages_partnerapps_pb2'
+CPartnerApps_FindDRMUploads_Request = _reflection.GeneratedProtocolMessageType('CPartnerApps_FindDRMUploads_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPARTNERAPPS_FINDDRMUPLOADS_REQUEST,
+  '__module__' : 'steammessages_partnerapps_pb2'
   # @@protoc_insertion_point(class_scope:CPartnerApps_FindDRMUploads_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CPartnerApps_FindDRMUploads_Request)
 
-CPartnerApps_ExistingDRMUpload = _reflection.GeneratedProtocolMessageType('CPartnerApps_ExistingDRMUpload', (_message.Message,), dict(
-  DESCRIPTOR = _CPARTNERAPPS_EXISTINGDRMUPLOAD,
-  __module__ = 'steammessages_partnerapps_pb2'
+CPartnerApps_ExistingDRMUpload = _reflection.GeneratedProtocolMessageType('CPartnerApps_ExistingDRMUpload', (_message.Message,), {
+  'DESCRIPTOR' : _CPARTNERAPPS_EXISTINGDRMUPLOAD,
+  '__module__' : 'steammessages_partnerapps_pb2'
   # @@protoc_insertion_point(class_scope:CPartnerApps_ExistingDRMUpload)
-  ))
+  })
 _sym_db.RegisterMessage(CPartnerApps_ExistingDRMUpload)
 
-CPartnerApps_FindDRMUploads_Response = _reflection.GeneratedProtocolMessageType('CPartnerApps_FindDRMUploads_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CPARTNERAPPS_FINDDRMUPLOADS_RESPONSE,
-  __module__ = 'steammessages_partnerapps_pb2'
+CPartnerApps_FindDRMUploads_Response = _reflection.GeneratedProtocolMessageType('CPartnerApps_FindDRMUploads_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CPARTNERAPPS_FINDDRMUPLOADS_RESPONSE,
+  '__module__' : 'steammessages_partnerapps_pb2'
   # @@protoc_insertion_point(class_scope:CPartnerApps_FindDRMUploads_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CPartnerApps_FindDRMUploads_Response)
 
-CPartnerApps_Download_Request = _reflection.GeneratedProtocolMessageType('CPartnerApps_Download_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CPARTNERAPPS_DOWNLOAD_REQUEST,
-  __module__ = 'steammessages_partnerapps_pb2'
+CPartnerApps_Download_Request = _reflection.GeneratedProtocolMessageType('CPartnerApps_Download_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPARTNERAPPS_DOWNLOAD_REQUEST,
+  '__module__' : 'steammessages_partnerapps_pb2'
   # @@protoc_insertion_point(class_scope:CPartnerApps_Download_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CPartnerApps_Download_Request)
 
-CPartnerApps_Download_Response = _reflection.GeneratedProtocolMessageType('CPartnerApps_Download_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CPARTNERAPPS_DOWNLOAD_RESPONSE,
-  __module__ = 'steammessages_partnerapps_pb2'
+CPartnerApps_Download_Response = _reflection.GeneratedProtocolMessageType('CPartnerApps_Download_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CPARTNERAPPS_DOWNLOAD_RESPONSE,
+  '__module__' : 'steammessages_partnerapps_pb2'
   # @@protoc_insertion_point(class_scope:CPartnerApps_Download_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CPartnerApps_Download_Response)
 
 
@@ -818,9 +834,10 @@ _PARTNERAPPS = _descriptor.ServiceDescriptor(
   full_name='PartnerApps',
   file=DESCRIPTOR,
   index=0,
-  serialized_options=_b('\202\265\030.Service methods for app management by partners'),
-  serialized_start=1480,
-  serialized_end=3305,
+  serialized_options=b'\202\265\030.Service methods for app management by partners',
+  create_key=_descriptor._internal_create_key,
+  serialized_start=1506,
+  serialized_end=3331,
   methods=[
   _descriptor.MethodDescriptor(
     name='RequestKVSignUploadToken',
@@ -829,7 +846,8 @@ _PARTNERAPPS = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CPARTNERAPPS_REQUESTUPLOADTOKEN_REQUEST,
     output_type=_CPARTNERAPPS_REQUESTUPLOADTOKEN_RESPONSE,
-    serialized_options=_b('\202\265\030<Request upload token for installscript file upload / signing'),
+    serialized_options=b'\202\265\030<Request upload token for installscript file upload / signing',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='RequestDRMUploadToken',
@@ -838,7 +856,8 @@ _PARTNERAPPS = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CPARTNERAPPS_REQUESTUPLOADTOKEN_REQUEST,
     output_type=_CPARTNERAPPS_REQUESTUPLOADTOKEN_RESPONSE,
-    serialized_options=_b('\202\265\030<Request upload token for executable file upload / processing'),
+    serialized_options=b'\202\265\030<Request upload token for executable file upload / processing',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='RequestCEGUploadToken',
@@ -847,7 +866,8 @@ _PARTNERAPPS = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CPARTNERAPPS_REQUESTUPLOADTOKEN_REQUEST,
     output_type=_CPARTNERAPPS_REQUESTUPLOADTOKEN_RESPONSE,
-    serialized_options=_b('\202\265\030CRequest upload token for custom executable file upload / processing'),
+    serialized_options=b'\202\265\030CRequest upload token for custom executable file upload / processing',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='RequestDepotUploadToken',
@@ -856,7 +876,8 @@ _PARTNERAPPS = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CPARTNERAPPS_REQUESTUPLOADTOKEN_REQUEST,
     output_type=_CPARTNERAPPS_REQUESTUPLOADTOKEN_RESPONSE,
-    serialized_options=_b('\202\265\030/Request upload token for steampipe depot upload'),
+    serialized_options=b'\202\265\030/Request upload token for steampipe depot upload',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='FinishUploadKVSign',
@@ -865,7 +886,8 @@ _PARTNERAPPS = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CPARTNERAPPS_FINISHUPLOAD_REQUEST,
     output_type=_CPARTNERAPPS_FINISHUPLOADKVSIGN_RESPONSE,
-    serialized_options=_b('\202\265\030BCommit method to sign an installscript after an upload is complete'),
+    serialized_options=b'\202\265\030BCommit method to sign an installscript after an upload is complete',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='FinishUploadDRMUpload',
@@ -874,7 +896,8 @@ _PARTNERAPPS = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CPARTNERAPPS_FINISHUPLOADLEGACYDRM_REQUEST,
     output_type=_CPARTNERAPPS_FINISHUPLOADLEGACYDRM_RESPONSE,
-    serialized_options=_b('\202\265\030,Commit method for executable file processing'),
+    serialized_options=b'\202\265\030,Commit method for executable file processing',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='FinishUploadCEGUpload',
@@ -883,7 +906,8 @@ _PARTNERAPPS = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CPARTNERAPPS_FINISHUPLOAD_REQUEST,
     output_type=_CPARTNERAPPS_FINISHUPLOAD_RESPONSE,
-    serialized_options=_b('\202\265\0303Commit method for custom executable file processing'),
+    serialized_options=b'\202\265\0303Commit method for custom executable file processing',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='FinishUploadDepotUpload',
@@ -892,7 +916,8 @@ _PARTNERAPPS = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CPARTNERAPPS_FINISHUPLOADDEPOT_REQUEST,
     output_type=_CPARTNERAPPS_FINISHUPLOADDEPOT_RESPONSE,
-    serialized_options=_b('\202\265\0303Commit method for custom executable file processing'),
+    serialized_options=b'\202\265\0303Commit method for custom executable file processing',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetDepotBuildResult',
@@ -901,7 +926,8 @@ _PARTNERAPPS = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CPARTNERAPPS_GETDEPOTBUILDRESULT_REQUEST,
     output_type=_CPARTNERAPPS_GETDEPOTBUILDRESULT_RESPONSE,
-    serialized_options=_b('\202\265\0302Get build status for previously uploaded depot ZIP'),
+    serialized_options=b'\202\265\0302Get build status for previously uploaded depot ZIP',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='FindDRMUploads',
@@ -910,7 +936,8 @@ _PARTNERAPPS = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CPARTNERAPPS_FINDDRMUPLOADS_REQUEST,
     output_type=_CPARTNERAPPS_FINDDRMUPLOADS_RESPONSE,
-    serialized_options=_b('\202\265\030*Finds N most recent prior uploads by appid'),
+    serialized_options=b'\202\265\030*Finds N most recent prior uploads by appid',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='Download',
@@ -920,6 +947,7 @@ _PARTNERAPPS = _descriptor.ServiceDescriptor(
     input_type=_CPARTNERAPPS_DOWNLOAD_REQUEST,
     output_type=_CPARTNERAPPS_DOWNLOAD_RESPONSE,
     serialized_options=None,
+    create_key=_descriptor._internal_create_key,
   ),
 ])
 _sym_db.RegisterServiceDescriptor(_PARTNERAPPS)
diff --git a/steam/protobufs/steammessages_physicalgoods_pb2.py b/steam/protobufs/steammessages_physicalgoods_pb2.py
index 51cf320..1475897 100644
--- a/steam/protobufs/steammessages_physicalgoods_pb2.py
+++ b/steam/protobufs/steammessages_physicalgoods_pb2.py
@@ -1,9 +1,7 @@
 # -*- coding: utf-8 -*-
 # Generated by the protocol buffer compiler.  DO NOT EDIT!
 # source: steammessages_physicalgoods.proto
-
-import sys
-_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1'))
+"""Generated protocol buffer code."""
 from google.protobuf import descriptor as _descriptor
 from google.protobuf import message as _message
 from google.protobuf import reflection as _reflection
@@ -22,8 +20,9 @@ DESCRIPTOR = _descriptor.FileDescriptor(
   name='steammessages_physicalgoods.proto',
   package='',
   syntax='proto2',
-  serialized_options=_b('\220\001\001'),
-  serialized_pb=_b('\n!steammessages_physicalgoods.proto\x1a steammessages_unified_base.proto\"`\n.CPhysicalGoods_RegisterSteamController_Request\x12\x15\n\rserial_number\x18\x01 \x01(\t\x12\x17\n\x0f\x63ontroller_code\x18\x02 \x01(\t\"1\n/CPhysicalGoods_RegisterSteamController_Response\"l\n:CPhysicalGoods_CompleteSteamControllerRegistration_Request\x12\x15\n\rserial_number\x18\x01 \x01(\t\x12\x17\n\x0f\x63ontroller_code\x18\x02 \x01(\t\"=\n;CPhysicalGoods_CompleteSteamControllerRegistration_Response\"h\n6CPhysicalGoods_QueryAccountsRegisteredToSerial_Request\x12\x15\n\rserial_number\x18\x01 \x01(\t\x12\x17\n\x0f\x63ontroller_code\x18\x02 \x01(\t\"k\n7CPhysicalGoods_QueryAccountsRegisteredToSerial_Accounts\x12\x11\n\taccountid\x18\x01 \x01(\r\x12\x1d\n\x15registration_complete\x18\x02 \x01(\x08\"\x85\x01\n7CPhysicalGoods_QueryAccountsRegisteredToSerial_Response\x12J\n\x08\x61\x63\x63ounts\x18\x01 \x03(\x0b\x32\x38.CPhysicalGoods_QueryAccountsRegisteredToSerial_Accounts\"~\n8CPhysicalGoods_SteamControllerSetConfig_ControllerConfig\x12\x13\n\x0b\x61ppidorname\x18\x01 \x01(\t\x12\x17\n\x0fpublishedfileid\x18\x02 \x01(\x04\x12\x14\n\x0ctemplatename\x18\x03 \x01(\t\"\x88\x02\n/CPhysicalGoods_SteamControllerSetConfig_Request\x12\x15\n\rserial_number\x18\x01 \x01(\t\x12\x17\n\x0f\x63ontroller_code\x18\x02 \x01(\t\x12\x11\n\taccountid\x18\x03 \x01(\r\x12Q\n\x0e\x63onfigurations\x18\x04 \x03(\x0b\x32\x39.CPhysicalGoods_SteamControllerSetConfig_ControllerConfig\x12\x1a\n\x0f\x63ontroller_type\x18\x05 \x01(\x05:\x01\x32\x12#\n\x14only_for_this_serial\x18\x06 \x01(\x08:\x05\x66\x61lse\"2\n0CPhysicalGoods_SteamControllerSetConfig_Response\"\xca\x01\n/CPhysicalGoods_SteamControllerGetConfig_Request\x12\x15\n\rserial_number\x18\x01 \x01(\t\x12\x17\n\x0f\x63ontroller_code\x18\x02 \x01(\t\x12\x11\n\taccountid\x18\x03 \x01(\r\x12\x13\n\x0b\x61ppidorname\x18\x04 \x01(\t\x12\x1a\n\x0f\x63ontroller_type\x18\x05 \x01(\x05:\x01\x32\x12#\n\x14only_for_this_serial\x18\x06 \x01(\x08:\x05\x66\x61lse\"\x95\x01\n8CPhysicalGoods_SteamControllerGetConfig_ControllerConfig\x12\x13\n\x0b\x61ppidorname\x18\x01 \x01(\t\x12\x17\n\x0fpublishedfileid\x18\x02 \x01(\x04\x12\x14\n\x0ctemplatename\x18\x03 \x01(\t\x12\x15\n\rserial_number\x18\x04 \x01(\t\"\x85\x01\n0CPhysicalGoods_SteamControllerGetConfig_Response\x12Q\n\x0e\x63onfigurations\x18\x01 \x03(\x0b\x32\x39.CPhysicalGoods_SteamControllerGetConfig_ControllerConfig\"u\n0CPhysicalGoods_DeRegisterSteamController_Request\x12\x15\n\rserial_number\x18\x01 \x01(\t\x12\x17\n\x0f\x63ontroller_code\x18\x02 \x01(\t\x12\x11\n\taccountid\x18\x03 \x01(\r\"3\n1CPhysicalGoods_DeRegisterSteamController_Response\"r\n-CPhysicalGoods_SetPersonalizationFile_Request\x12\x15\n\rserial_number\x18\x01 \x01(\t\x12\x17\n\x0fpublishedfileid\x18\x02 \x01(\x04\x12\x11\n\taccountid\x18\x03 \x01(\r\"0\n.CPhysicalGoods_SetPersonalizationFile_Response\"Y\n-CPhysicalGoods_GetPersonalizationFile_Request\x12\x15\n\rserial_number\x18\x01 \x01(\t\x12\x11\n\taccountid\x18\x02 \x01(\r\"I\n.CPhysicalGoods_GetPersonalizationFile_Response\x12\x17\n\x0fpublishedfileid\x18\x01 \x01(\x04\x32\xd7\x0c\n\rPhysicalGoods\x12\xd4\x01\n\x17RegisterSteamController\x12/.CPhysicalGoods_RegisterSteamController_Request\x1a\x30.CPhysicalGoods_RegisterSteamController_Response\"V\x82\xb5\x18RRecords a serial number and the calling user\'s account info for warranty purposes.\x12\xd3\x01\n#CompleteSteamControllerRegistration\x12;.CPhysicalGoods_CompleteSteamControllerRegistration_Request\x1a<.CPhysicalGoods_CompleteSteamControllerRegistration_Response\"1\x82\xb5\x18-Marks a controller\'s registration as complete\x12\xd7\x01\n#QueryAccountsRegisteredToController\x12\x37.CPhysicalGoods_QueryAccountsRegisteredToSerial_Request\x1a\x38.CPhysicalGoods_QueryAccountsRegisteredToSerial_Response\"=\x82\xb5\x18\x39Sends back a list of accounts registered to a controller.\x12\xb8\x01\n SetDesiredControllerConfigForApp\x12\x30.CPhysicalGoods_SteamControllerSetConfig_Request\x1a\x31.CPhysicalGoods_SteamControllerSetConfig_Response\"/\x82\xb5\x18+Sets a desired controller config for an app\x12\xb8\x01\n GetDesiredControllerConfigForApp\x12\x30.CPhysicalGoods_SteamControllerGetConfig_Request\x1a\x31.CPhysicalGoods_SteamControllerGetConfig_Response\"/\x82\xb5\x18+Gets a desired controller config for an app\x12\xa1\x01\n\x19\x44\x65RegisterSteamController\x12\x31.CPhysicalGoods_DeRegisterSteamController_Request\x1a\x32.CPhysicalGoods_DeRegisterSteamController_Response\"\x1d\x82\xb5\x18\x19\x44\x65 registers a controller\x12\xb7\x01\n SetControllerPersonalizationFile\x12..CPhysicalGoods_SetPersonalizationFile_Request\x1a/.CPhysicalGoods_SetPersonalizationFile_Response\"2\x82\xb5\x18.Stores the file ID of the personalization file\x12\xb5\x01\n GetControllerPersonalizationFile\x12..CPhysicalGoods_GetPersonalizationFile_Request\x1a/.CPhysicalGoods_GetPersonalizationFile_Response\"0\x82\xb5\x18,Gets the file ID of the personalization file\x1a\x33\x82\xb5\x18/A service to use physical goods related methodsB\x03\x90\x01\x01')
+  serialized_options=b'\220\001\001',
+  create_key=_descriptor._internal_create_key,
+  serialized_pb=b'\n!steammessages_physicalgoods.proto\x1a steammessages_unified_base.proto\"`\n.CPhysicalGoods_RegisterSteamController_Request\x12\x15\n\rserial_number\x18\x01 \x01(\t\x12\x17\n\x0f\x63ontroller_code\x18\x02 \x01(\t\"1\n/CPhysicalGoods_RegisterSteamController_Response\"l\n:CPhysicalGoods_CompleteSteamControllerRegistration_Request\x12\x15\n\rserial_number\x18\x01 \x01(\t\x12\x17\n\x0f\x63ontroller_code\x18\x02 \x01(\t\"=\n;CPhysicalGoods_CompleteSteamControllerRegistration_Response\"h\n6CPhysicalGoods_QueryAccountsRegisteredToSerial_Request\x12\x15\n\rserial_number\x18\x01 \x01(\t\x12\x17\n\x0f\x63ontroller_code\x18\x02 \x01(\t\"k\n7CPhysicalGoods_QueryAccountsRegisteredToSerial_Accounts\x12\x11\n\taccountid\x18\x01 \x01(\r\x12\x1d\n\x15registration_complete\x18\x02 \x01(\x08\"\x85\x01\n7CPhysicalGoods_QueryAccountsRegisteredToSerial_Response\x12J\n\x08\x61\x63\x63ounts\x18\x01 \x03(\x0b\x32\x38.CPhysicalGoods_QueryAccountsRegisteredToSerial_Accounts\"~\n8CPhysicalGoods_SteamControllerSetConfig_ControllerConfig\x12\x13\n\x0b\x61ppidorname\x18\x01 \x01(\t\x12\x17\n\x0fpublishedfileid\x18\x02 \x01(\x04\x12\x14\n\x0ctemplatename\x18\x03 \x01(\t\"\x88\x02\n/CPhysicalGoods_SteamControllerSetConfig_Request\x12\x15\n\rserial_number\x18\x01 \x01(\t\x12\x17\n\x0f\x63ontroller_code\x18\x02 \x01(\t\x12\x11\n\taccountid\x18\x03 \x01(\r\x12Q\n\x0e\x63onfigurations\x18\x04 \x03(\x0b\x32\x39.CPhysicalGoods_SteamControllerSetConfig_ControllerConfig\x12\x1a\n\x0f\x63ontroller_type\x18\x05 \x01(\x05:\x01\x32\x12#\n\x14only_for_this_serial\x18\x06 \x01(\x08:\x05\x66\x61lse\"2\n0CPhysicalGoods_SteamControllerSetConfig_Response\"\xca\x01\n/CPhysicalGoods_SteamControllerGetConfig_Request\x12\x15\n\rserial_number\x18\x01 \x01(\t\x12\x17\n\x0f\x63ontroller_code\x18\x02 \x01(\t\x12\x11\n\taccountid\x18\x03 \x01(\r\x12\x13\n\x0b\x61ppidorname\x18\x04 \x01(\t\x12\x1a\n\x0f\x63ontroller_type\x18\x05 \x01(\x05:\x01\x32\x12#\n\x14only_for_this_serial\x18\x06 \x01(\x08:\x05\x66\x61lse\"\x95\x01\n8CPhysicalGoods_SteamControllerGetConfig_ControllerConfig\x12\x13\n\x0b\x61ppidorname\x18\x01 \x01(\t\x12\x17\n\x0fpublishedfileid\x18\x02 \x01(\x04\x12\x14\n\x0ctemplatename\x18\x03 \x01(\t\x12\x15\n\rserial_number\x18\x04 \x01(\t\"\x85\x01\n0CPhysicalGoods_SteamControllerGetConfig_Response\x12Q\n\x0e\x63onfigurations\x18\x01 \x03(\x0b\x32\x39.CPhysicalGoods_SteamControllerGetConfig_ControllerConfig\"u\n0CPhysicalGoods_DeRegisterSteamController_Request\x12\x15\n\rserial_number\x18\x01 \x01(\t\x12\x17\n\x0f\x63ontroller_code\x18\x02 \x01(\t\x12\x11\n\taccountid\x18\x03 \x01(\r\"3\n1CPhysicalGoods_DeRegisterSteamController_Response\"r\n-CPhysicalGoods_SetPersonalizationFile_Request\x12\x15\n\rserial_number\x18\x01 \x01(\t\x12\x17\n\x0fpublishedfileid\x18\x02 \x01(\x04\x12\x11\n\taccountid\x18\x03 \x01(\r\"0\n.CPhysicalGoods_SetPersonalizationFile_Response\"Y\n-CPhysicalGoods_GetPersonalizationFile_Request\x12\x15\n\rserial_number\x18\x01 \x01(\t\x12\x11\n\taccountid\x18\x02 \x01(\r\"I\n.CPhysicalGoods_GetPersonalizationFile_Response\x12\x17\n\x0fpublishedfileid\x18\x01 \x01(\x04\x32\xd7\x0c\n\rPhysicalGoods\x12\xd4\x01\n\x17RegisterSteamController\x12/.CPhysicalGoods_RegisterSteamController_Request\x1a\x30.CPhysicalGoods_RegisterSteamController_Response\"V\x82\xb5\x18RRecords a serial number and the calling user\'s account info for warranty purposes.\x12\xd3\x01\n#CompleteSteamControllerRegistration\x12;.CPhysicalGoods_CompleteSteamControllerRegistration_Request\x1a<.CPhysicalGoods_CompleteSteamControllerRegistration_Response\"1\x82\xb5\x18-Marks a controller\'s registration as complete\x12\xd7\x01\n#QueryAccountsRegisteredToController\x12\x37.CPhysicalGoods_QueryAccountsRegisteredToSerial_Request\x1a\x38.CPhysicalGoods_QueryAccountsRegisteredToSerial_Response\"=\x82\xb5\x18\x39Sends back a list of accounts registered to a controller.\x12\xb8\x01\n SetDesiredControllerConfigForApp\x12\x30.CPhysicalGoods_SteamControllerSetConfig_Request\x1a\x31.CPhysicalGoods_SteamControllerSetConfig_Response\"/\x82\xb5\x18+Sets a desired controller config for an app\x12\xb8\x01\n GetDesiredControllerConfigForApp\x12\x30.CPhysicalGoods_SteamControllerGetConfig_Request\x1a\x31.CPhysicalGoods_SteamControllerGetConfig_Response\"/\x82\xb5\x18+Gets a desired controller config for an app\x12\xa1\x01\n\x19\x44\x65RegisterSteamController\x12\x31.CPhysicalGoods_DeRegisterSteamController_Request\x1a\x32.CPhysicalGoods_DeRegisterSteamController_Response\"\x1d\x82\xb5\x18\x19\x44\x65 registers a controller\x12\xb7\x01\n SetControllerPersonalizationFile\x12..CPhysicalGoods_SetPersonalizationFile_Request\x1a/.CPhysicalGoods_SetPersonalizationFile_Response\"2\x82\xb5\x18.Stores the file ID of the personalization file\x12\xb5\x01\n GetControllerPersonalizationFile\x12..CPhysicalGoods_GetPersonalizationFile_Request\x1a/.CPhysicalGoods_GetPersonalizationFile_Response\"0\x82\xb5\x18,Gets the file ID of the personalization file\x1a\x33\x82\xb5\x18/A service to use physical goods related methodsB\x03\x90\x01\x01'
   ,
   dependencies=[steammessages__unified__base__pb2.DESCRIPTOR,])
 
@@ -36,21 +35,22 @@ _CPHYSICALGOODS_REGISTERSTEAMCONTROLLER_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='serial_number', full_name='CPhysicalGoods_RegisterSteamController_Request.serial_number', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='controller_code', full_name='CPhysicalGoods_RegisterSteamController_Request.controller_code', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -74,6 +74,7 @@ _CPHYSICALGOODS_REGISTERSTEAMCONTROLLER_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -98,21 +99,22 @@ _CPHYSICALGOODS_COMPLETESTEAMCONTROLLERREGISTRATION_REQUEST = _descriptor.Descri
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='serial_number', full_name='CPhysicalGoods_CompleteSteamControllerRegistration_Request.serial_number', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='controller_code', full_name='CPhysicalGoods_CompleteSteamControllerRegistration_Request.controller_code', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -136,6 +138,7 @@ _CPHYSICALGOODS_COMPLETESTEAMCONTROLLERREGISTRATION_RESPONSE = _descriptor.Descr
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -160,21 +163,22 @@ _CPHYSICALGOODS_QUERYACCOUNTSREGISTEREDTOSERIAL_REQUEST = _descriptor.Descriptor
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='serial_number', full_name='CPhysicalGoods_QueryAccountsRegisteredToSerial_Request.serial_number', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='controller_code', full_name='CPhysicalGoods_QueryAccountsRegisteredToSerial_Request.controller_code', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -198,6 +202,7 @@ _CPHYSICALGOODS_QUERYACCOUNTSREGISTEREDTOSERIAL_ACCOUNTS = _descriptor.Descripto
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='accountid', full_name='CPhysicalGoods_QueryAccountsRegisteredToSerial_Accounts.accountid', index=0,
@@ -205,14 +210,14 @@ _CPHYSICALGOODS_QUERYACCOUNTSREGISTEREDTOSERIAL_ACCOUNTS = _descriptor.Descripto
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='registration_complete', full_name='CPhysicalGoods_QueryAccountsRegisteredToSerial_Accounts.registration_complete', index=1,
       number=2, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -236,6 +241,7 @@ _CPHYSICALGOODS_QUERYACCOUNTSREGISTEREDTOSERIAL_RESPONSE = _descriptor.Descripto
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='accounts', full_name='CPhysicalGoods_QueryAccountsRegisteredToSerial_Response.accounts', index=0,
@@ -243,7 +249,7 @@ _CPHYSICALGOODS_QUERYACCOUNTSREGISTEREDTOSERIAL_RESPONSE = _descriptor.Descripto
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -267,28 +273,29 @@ _CPHYSICALGOODS_STEAMCONTROLLERSETCONFIG_CONTROLLERCONFIG = _descriptor.Descript
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appidorname', full_name='CPhysicalGoods_SteamControllerSetConfig_ControllerConfig.appidorname', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='publishedfileid', full_name='CPhysicalGoods_SteamControllerSetConfig_ControllerConfig.publishedfileid', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='templatename', full_name='CPhysicalGoods_SteamControllerSetConfig_ControllerConfig.templatename', index=2,
       number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -312,49 +319,50 @@ _CPHYSICALGOODS_STEAMCONTROLLERSETCONFIG_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='serial_number', full_name='CPhysicalGoods_SteamControllerSetConfig_Request.serial_number', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='controller_code', full_name='CPhysicalGoods_SteamControllerSetConfig_Request.controller_code', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='accountid', full_name='CPhysicalGoods_SteamControllerSetConfig_Request.accountid', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='configurations', full_name='CPhysicalGoods_SteamControllerSetConfig_Request.configurations', index=3,
       number=4, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='controller_type', full_name='CPhysicalGoods_SteamControllerSetConfig_Request.controller_type', index=4,
       number=5, type=5, cpp_type=1, label=1,
       has_default_value=True, default_value=2,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='only_for_this_serial', full_name='CPhysicalGoods_SteamControllerSetConfig_Request.only_for_this_serial', index=5,
       number=6, type=8, cpp_type=7, label=1,
       has_default_value=True, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -378,6 +386,7 @@ _CPHYSICALGOODS_STEAMCONTROLLERSETCONFIG_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -402,49 +411,50 @@ _CPHYSICALGOODS_STEAMCONTROLLERGETCONFIG_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='serial_number', full_name='CPhysicalGoods_SteamControllerGetConfig_Request.serial_number', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='controller_code', full_name='CPhysicalGoods_SteamControllerGetConfig_Request.controller_code', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='accountid', full_name='CPhysicalGoods_SteamControllerGetConfig_Request.accountid', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='appidorname', full_name='CPhysicalGoods_SteamControllerGetConfig_Request.appidorname', index=3,
       number=4, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='controller_type', full_name='CPhysicalGoods_SteamControllerGetConfig_Request.controller_type', index=4,
       number=5, type=5, cpp_type=1, label=1,
       has_default_value=True, default_value=2,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='only_for_this_serial', full_name='CPhysicalGoods_SteamControllerGetConfig_Request.only_for_this_serial', index=5,
       number=6, type=8, cpp_type=7, label=1,
       has_default_value=True, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -468,35 +478,36 @@ _CPHYSICALGOODS_STEAMCONTROLLERGETCONFIG_CONTROLLERCONFIG = _descriptor.Descript
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appidorname', full_name='CPhysicalGoods_SteamControllerGetConfig_ControllerConfig.appidorname', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='publishedfileid', full_name='CPhysicalGoods_SteamControllerGetConfig_ControllerConfig.publishedfileid', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='templatename', full_name='CPhysicalGoods_SteamControllerGetConfig_ControllerConfig.templatename', index=2,
       number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='serial_number', full_name='CPhysicalGoods_SteamControllerGetConfig_ControllerConfig.serial_number', index=3,
       number=4, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -520,6 +531,7 @@ _CPHYSICALGOODS_STEAMCONTROLLERGETCONFIG_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='configurations', full_name='CPhysicalGoods_SteamControllerGetConfig_Response.configurations', index=0,
@@ -527,7 +539,7 @@ _CPHYSICALGOODS_STEAMCONTROLLERGETCONFIG_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -551,28 +563,29 @@ _CPHYSICALGOODS_DEREGISTERSTEAMCONTROLLER_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='serial_number', full_name='CPhysicalGoods_DeRegisterSteamController_Request.serial_number', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='controller_code', full_name='CPhysicalGoods_DeRegisterSteamController_Request.controller_code', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='accountid', full_name='CPhysicalGoods_DeRegisterSteamController_Request.accountid', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -596,6 +609,7 @@ _CPHYSICALGOODS_DEREGISTERSTEAMCONTROLLER_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -620,28 +634,29 @@ _CPHYSICALGOODS_SETPERSONALIZATIONFILE_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='serial_number', full_name='CPhysicalGoods_SetPersonalizationFile_Request.serial_number', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='publishedfileid', full_name='CPhysicalGoods_SetPersonalizationFile_Request.publishedfileid', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='accountid', full_name='CPhysicalGoods_SetPersonalizationFile_Request.accountid', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -665,6 +680,7 @@ _CPHYSICALGOODS_SETPERSONALIZATIONFILE_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -689,21 +705,22 @@ _CPHYSICALGOODS_GETPERSONALIZATIONFILE_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='serial_number', full_name='CPhysicalGoods_GetPersonalizationFile_Request.serial_number', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='accountid', full_name='CPhysicalGoods_GetPersonalizationFile_Request.accountid', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -727,6 +744,7 @@ _CPHYSICALGOODS_GETPERSONALIZATIONFILE_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='publishedfileid', full_name='CPhysicalGoods_GetPersonalizationFile_Response.publishedfileid', index=0,
@@ -734,7 +752,7 @@ _CPHYSICALGOODS_GETPERSONALIZATIONFILE_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -775,137 +793,137 @@ DESCRIPTOR.message_types_by_name['CPhysicalGoods_GetPersonalizationFile_Request'
 DESCRIPTOR.message_types_by_name['CPhysicalGoods_GetPersonalizationFile_Response'] = _CPHYSICALGOODS_GETPERSONALIZATIONFILE_RESPONSE
 _sym_db.RegisterFileDescriptor(DESCRIPTOR)
 
-CPhysicalGoods_RegisterSteamController_Request = _reflection.GeneratedProtocolMessageType('CPhysicalGoods_RegisterSteamController_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CPHYSICALGOODS_REGISTERSTEAMCONTROLLER_REQUEST,
-  __module__ = 'steammessages_physicalgoods_pb2'
+CPhysicalGoods_RegisterSteamController_Request = _reflection.GeneratedProtocolMessageType('CPhysicalGoods_RegisterSteamController_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPHYSICALGOODS_REGISTERSTEAMCONTROLLER_REQUEST,
+  '__module__' : 'steammessages_physicalgoods_pb2'
   # @@protoc_insertion_point(class_scope:CPhysicalGoods_RegisterSteamController_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CPhysicalGoods_RegisterSteamController_Request)
 
-CPhysicalGoods_RegisterSteamController_Response = _reflection.GeneratedProtocolMessageType('CPhysicalGoods_RegisterSteamController_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CPHYSICALGOODS_REGISTERSTEAMCONTROLLER_RESPONSE,
-  __module__ = 'steammessages_physicalgoods_pb2'
+CPhysicalGoods_RegisterSteamController_Response = _reflection.GeneratedProtocolMessageType('CPhysicalGoods_RegisterSteamController_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CPHYSICALGOODS_REGISTERSTEAMCONTROLLER_RESPONSE,
+  '__module__' : 'steammessages_physicalgoods_pb2'
   # @@protoc_insertion_point(class_scope:CPhysicalGoods_RegisterSteamController_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CPhysicalGoods_RegisterSteamController_Response)
 
-CPhysicalGoods_CompleteSteamControllerRegistration_Request = _reflection.GeneratedProtocolMessageType('CPhysicalGoods_CompleteSteamControllerRegistration_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CPHYSICALGOODS_COMPLETESTEAMCONTROLLERREGISTRATION_REQUEST,
-  __module__ = 'steammessages_physicalgoods_pb2'
+CPhysicalGoods_CompleteSteamControllerRegistration_Request = _reflection.GeneratedProtocolMessageType('CPhysicalGoods_CompleteSteamControllerRegistration_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPHYSICALGOODS_COMPLETESTEAMCONTROLLERREGISTRATION_REQUEST,
+  '__module__' : 'steammessages_physicalgoods_pb2'
   # @@protoc_insertion_point(class_scope:CPhysicalGoods_CompleteSteamControllerRegistration_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CPhysicalGoods_CompleteSteamControllerRegistration_Request)
 
-CPhysicalGoods_CompleteSteamControllerRegistration_Response = _reflection.GeneratedProtocolMessageType('CPhysicalGoods_CompleteSteamControllerRegistration_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CPHYSICALGOODS_COMPLETESTEAMCONTROLLERREGISTRATION_RESPONSE,
-  __module__ = 'steammessages_physicalgoods_pb2'
+CPhysicalGoods_CompleteSteamControllerRegistration_Response = _reflection.GeneratedProtocolMessageType('CPhysicalGoods_CompleteSteamControllerRegistration_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CPHYSICALGOODS_COMPLETESTEAMCONTROLLERREGISTRATION_RESPONSE,
+  '__module__' : 'steammessages_physicalgoods_pb2'
   # @@protoc_insertion_point(class_scope:CPhysicalGoods_CompleteSteamControllerRegistration_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CPhysicalGoods_CompleteSteamControllerRegistration_Response)
 
-CPhysicalGoods_QueryAccountsRegisteredToSerial_Request = _reflection.GeneratedProtocolMessageType('CPhysicalGoods_QueryAccountsRegisteredToSerial_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CPHYSICALGOODS_QUERYACCOUNTSREGISTEREDTOSERIAL_REQUEST,
-  __module__ = 'steammessages_physicalgoods_pb2'
+CPhysicalGoods_QueryAccountsRegisteredToSerial_Request = _reflection.GeneratedProtocolMessageType('CPhysicalGoods_QueryAccountsRegisteredToSerial_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPHYSICALGOODS_QUERYACCOUNTSREGISTEREDTOSERIAL_REQUEST,
+  '__module__' : 'steammessages_physicalgoods_pb2'
   # @@protoc_insertion_point(class_scope:CPhysicalGoods_QueryAccountsRegisteredToSerial_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CPhysicalGoods_QueryAccountsRegisteredToSerial_Request)
 
-CPhysicalGoods_QueryAccountsRegisteredToSerial_Accounts = _reflection.GeneratedProtocolMessageType('CPhysicalGoods_QueryAccountsRegisteredToSerial_Accounts', (_message.Message,), dict(
-  DESCRIPTOR = _CPHYSICALGOODS_QUERYACCOUNTSREGISTEREDTOSERIAL_ACCOUNTS,
-  __module__ = 'steammessages_physicalgoods_pb2'
+CPhysicalGoods_QueryAccountsRegisteredToSerial_Accounts = _reflection.GeneratedProtocolMessageType('CPhysicalGoods_QueryAccountsRegisteredToSerial_Accounts', (_message.Message,), {
+  'DESCRIPTOR' : _CPHYSICALGOODS_QUERYACCOUNTSREGISTEREDTOSERIAL_ACCOUNTS,
+  '__module__' : 'steammessages_physicalgoods_pb2'
   # @@protoc_insertion_point(class_scope:CPhysicalGoods_QueryAccountsRegisteredToSerial_Accounts)
-  ))
+  })
 _sym_db.RegisterMessage(CPhysicalGoods_QueryAccountsRegisteredToSerial_Accounts)
 
-CPhysicalGoods_QueryAccountsRegisteredToSerial_Response = _reflection.GeneratedProtocolMessageType('CPhysicalGoods_QueryAccountsRegisteredToSerial_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CPHYSICALGOODS_QUERYACCOUNTSREGISTEREDTOSERIAL_RESPONSE,
-  __module__ = 'steammessages_physicalgoods_pb2'
+CPhysicalGoods_QueryAccountsRegisteredToSerial_Response = _reflection.GeneratedProtocolMessageType('CPhysicalGoods_QueryAccountsRegisteredToSerial_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CPHYSICALGOODS_QUERYACCOUNTSREGISTEREDTOSERIAL_RESPONSE,
+  '__module__' : 'steammessages_physicalgoods_pb2'
   # @@protoc_insertion_point(class_scope:CPhysicalGoods_QueryAccountsRegisteredToSerial_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CPhysicalGoods_QueryAccountsRegisteredToSerial_Response)
 
-CPhysicalGoods_SteamControllerSetConfig_ControllerConfig = _reflection.GeneratedProtocolMessageType('CPhysicalGoods_SteamControllerSetConfig_ControllerConfig', (_message.Message,), dict(
-  DESCRIPTOR = _CPHYSICALGOODS_STEAMCONTROLLERSETCONFIG_CONTROLLERCONFIG,
-  __module__ = 'steammessages_physicalgoods_pb2'
+CPhysicalGoods_SteamControllerSetConfig_ControllerConfig = _reflection.GeneratedProtocolMessageType('CPhysicalGoods_SteamControllerSetConfig_ControllerConfig', (_message.Message,), {
+  'DESCRIPTOR' : _CPHYSICALGOODS_STEAMCONTROLLERSETCONFIG_CONTROLLERCONFIG,
+  '__module__' : 'steammessages_physicalgoods_pb2'
   # @@protoc_insertion_point(class_scope:CPhysicalGoods_SteamControllerSetConfig_ControllerConfig)
-  ))
+  })
 _sym_db.RegisterMessage(CPhysicalGoods_SteamControllerSetConfig_ControllerConfig)
 
-CPhysicalGoods_SteamControllerSetConfig_Request = _reflection.GeneratedProtocolMessageType('CPhysicalGoods_SteamControllerSetConfig_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CPHYSICALGOODS_STEAMCONTROLLERSETCONFIG_REQUEST,
-  __module__ = 'steammessages_physicalgoods_pb2'
+CPhysicalGoods_SteamControllerSetConfig_Request = _reflection.GeneratedProtocolMessageType('CPhysicalGoods_SteamControllerSetConfig_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPHYSICALGOODS_STEAMCONTROLLERSETCONFIG_REQUEST,
+  '__module__' : 'steammessages_physicalgoods_pb2'
   # @@protoc_insertion_point(class_scope:CPhysicalGoods_SteamControllerSetConfig_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CPhysicalGoods_SteamControllerSetConfig_Request)
 
-CPhysicalGoods_SteamControllerSetConfig_Response = _reflection.GeneratedProtocolMessageType('CPhysicalGoods_SteamControllerSetConfig_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CPHYSICALGOODS_STEAMCONTROLLERSETCONFIG_RESPONSE,
-  __module__ = 'steammessages_physicalgoods_pb2'
+CPhysicalGoods_SteamControllerSetConfig_Response = _reflection.GeneratedProtocolMessageType('CPhysicalGoods_SteamControllerSetConfig_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CPHYSICALGOODS_STEAMCONTROLLERSETCONFIG_RESPONSE,
+  '__module__' : 'steammessages_physicalgoods_pb2'
   # @@protoc_insertion_point(class_scope:CPhysicalGoods_SteamControllerSetConfig_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CPhysicalGoods_SteamControllerSetConfig_Response)
 
-CPhysicalGoods_SteamControllerGetConfig_Request = _reflection.GeneratedProtocolMessageType('CPhysicalGoods_SteamControllerGetConfig_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CPHYSICALGOODS_STEAMCONTROLLERGETCONFIG_REQUEST,
-  __module__ = 'steammessages_physicalgoods_pb2'
+CPhysicalGoods_SteamControllerGetConfig_Request = _reflection.GeneratedProtocolMessageType('CPhysicalGoods_SteamControllerGetConfig_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPHYSICALGOODS_STEAMCONTROLLERGETCONFIG_REQUEST,
+  '__module__' : 'steammessages_physicalgoods_pb2'
   # @@protoc_insertion_point(class_scope:CPhysicalGoods_SteamControllerGetConfig_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CPhysicalGoods_SteamControllerGetConfig_Request)
 
-CPhysicalGoods_SteamControllerGetConfig_ControllerConfig = _reflection.GeneratedProtocolMessageType('CPhysicalGoods_SteamControllerGetConfig_ControllerConfig', (_message.Message,), dict(
-  DESCRIPTOR = _CPHYSICALGOODS_STEAMCONTROLLERGETCONFIG_CONTROLLERCONFIG,
-  __module__ = 'steammessages_physicalgoods_pb2'
+CPhysicalGoods_SteamControllerGetConfig_ControllerConfig = _reflection.GeneratedProtocolMessageType('CPhysicalGoods_SteamControllerGetConfig_ControllerConfig', (_message.Message,), {
+  'DESCRIPTOR' : _CPHYSICALGOODS_STEAMCONTROLLERGETCONFIG_CONTROLLERCONFIG,
+  '__module__' : 'steammessages_physicalgoods_pb2'
   # @@protoc_insertion_point(class_scope:CPhysicalGoods_SteamControllerGetConfig_ControllerConfig)
-  ))
+  })
 _sym_db.RegisterMessage(CPhysicalGoods_SteamControllerGetConfig_ControllerConfig)
 
-CPhysicalGoods_SteamControllerGetConfig_Response = _reflection.GeneratedProtocolMessageType('CPhysicalGoods_SteamControllerGetConfig_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CPHYSICALGOODS_STEAMCONTROLLERGETCONFIG_RESPONSE,
-  __module__ = 'steammessages_physicalgoods_pb2'
+CPhysicalGoods_SteamControllerGetConfig_Response = _reflection.GeneratedProtocolMessageType('CPhysicalGoods_SteamControllerGetConfig_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CPHYSICALGOODS_STEAMCONTROLLERGETCONFIG_RESPONSE,
+  '__module__' : 'steammessages_physicalgoods_pb2'
   # @@protoc_insertion_point(class_scope:CPhysicalGoods_SteamControllerGetConfig_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CPhysicalGoods_SteamControllerGetConfig_Response)
 
-CPhysicalGoods_DeRegisterSteamController_Request = _reflection.GeneratedProtocolMessageType('CPhysicalGoods_DeRegisterSteamController_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CPHYSICALGOODS_DEREGISTERSTEAMCONTROLLER_REQUEST,
-  __module__ = 'steammessages_physicalgoods_pb2'
+CPhysicalGoods_DeRegisterSteamController_Request = _reflection.GeneratedProtocolMessageType('CPhysicalGoods_DeRegisterSteamController_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPHYSICALGOODS_DEREGISTERSTEAMCONTROLLER_REQUEST,
+  '__module__' : 'steammessages_physicalgoods_pb2'
   # @@protoc_insertion_point(class_scope:CPhysicalGoods_DeRegisterSteamController_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CPhysicalGoods_DeRegisterSteamController_Request)
 
-CPhysicalGoods_DeRegisterSteamController_Response = _reflection.GeneratedProtocolMessageType('CPhysicalGoods_DeRegisterSteamController_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CPHYSICALGOODS_DEREGISTERSTEAMCONTROLLER_RESPONSE,
-  __module__ = 'steammessages_physicalgoods_pb2'
+CPhysicalGoods_DeRegisterSteamController_Response = _reflection.GeneratedProtocolMessageType('CPhysicalGoods_DeRegisterSteamController_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CPHYSICALGOODS_DEREGISTERSTEAMCONTROLLER_RESPONSE,
+  '__module__' : 'steammessages_physicalgoods_pb2'
   # @@protoc_insertion_point(class_scope:CPhysicalGoods_DeRegisterSteamController_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CPhysicalGoods_DeRegisterSteamController_Response)
 
-CPhysicalGoods_SetPersonalizationFile_Request = _reflection.GeneratedProtocolMessageType('CPhysicalGoods_SetPersonalizationFile_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CPHYSICALGOODS_SETPERSONALIZATIONFILE_REQUEST,
-  __module__ = 'steammessages_physicalgoods_pb2'
+CPhysicalGoods_SetPersonalizationFile_Request = _reflection.GeneratedProtocolMessageType('CPhysicalGoods_SetPersonalizationFile_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPHYSICALGOODS_SETPERSONALIZATIONFILE_REQUEST,
+  '__module__' : 'steammessages_physicalgoods_pb2'
   # @@protoc_insertion_point(class_scope:CPhysicalGoods_SetPersonalizationFile_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CPhysicalGoods_SetPersonalizationFile_Request)
 
-CPhysicalGoods_SetPersonalizationFile_Response = _reflection.GeneratedProtocolMessageType('CPhysicalGoods_SetPersonalizationFile_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CPHYSICALGOODS_SETPERSONALIZATIONFILE_RESPONSE,
-  __module__ = 'steammessages_physicalgoods_pb2'
+CPhysicalGoods_SetPersonalizationFile_Response = _reflection.GeneratedProtocolMessageType('CPhysicalGoods_SetPersonalizationFile_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CPHYSICALGOODS_SETPERSONALIZATIONFILE_RESPONSE,
+  '__module__' : 'steammessages_physicalgoods_pb2'
   # @@protoc_insertion_point(class_scope:CPhysicalGoods_SetPersonalizationFile_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CPhysicalGoods_SetPersonalizationFile_Response)
 
-CPhysicalGoods_GetPersonalizationFile_Request = _reflection.GeneratedProtocolMessageType('CPhysicalGoods_GetPersonalizationFile_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CPHYSICALGOODS_GETPERSONALIZATIONFILE_REQUEST,
-  __module__ = 'steammessages_physicalgoods_pb2'
+CPhysicalGoods_GetPersonalizationFile_Request = _reflection.GeneratedProtocolMessageType('CPhysicalGoods_GetPersonalizationFile_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPHYSICALGOODS_GETPERSONALIZATIONFILE_REQUEST,
+  '__module__' : 'steammessages_physicalgoods_pb2'
   # @@protoc_insertion_point(class_scope:CPhysicalGoods_GetPersonalizationFile_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CPhysicalGoods_GetPersonalizationFile_Request)
 
-CPhysicalGoods_GetPersonalizationFile_Response = _reflection.GeneratedProtocolMessageType('CPhysicalGoods_GetPersonalizationFile_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CPHYSICALGOODS_GETPERSONALIZATIONFILE_RESPONSE,
-  __module__ = 'steammessages_physicalgoods_pb2'
+CPhysicalGoods_GetPersonalizationFile_Response = _reflection.GeneratedProtocolMessageType('CPhysicalGoods_GetPersonalizationFile_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CPHYSICALGOODS_GETPERSONALIZATIONFILE_RESPONSE,
+  '__module__' : 'steammessages_physicalgoods_pb2'
   # @@protoc_insertion_point(class_scope:CPhysicalGoods_GetPersonalizationFile_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CPhysicalGoods_GetPersonalizationFile_Response)
 
 
@@ -916,7 +934,8 @@ _PHYSICALGOODS = _descriptor.ServiceDescriptor(
   full_name='PhysicalGoods',
   file=DESCRIPTOR,
   index=0,
-  serialized_options=_b('\202\265\030/A service to use physical goods related methods'),
+  serialized_options=b'\202\265\030/A service to use physical goods related methods',
+  create_key=_descriptor._internal_create_key,
   serialized_start=2189,
   serialized_end=3812,
   methods=[
@@ -927,7 +946,8 @@ _PHYSICALGOODS = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CPHYSICALGOODS_REGISTERSTEAMCONTROLLER_REQUEST,
     output_type=_CPHYSICALGOODS_REGISTERSTEAMCONTROLLER_RESPONSE,
-    serialized_options=_b('\202\265\030RRecords a serial number and the calling user\'s account info for warranty purposes.'),
+    serialized_options=b'\202\265\030RRecords a serial number and the calling user\'s account info for warranty purposes.',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='CompleteSteamControllerRegistration',
@@ -936,7 +956,8 @@ _PHYSICALGOODS = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CPHYSICALGOODS_COMPLETESTEAMCONTROLLERREGISTRATION_REQUEST,
     output_type=_CPHYSICALGOODS_COMPLETESTEAMCONTROLLERREGISTRATION_RESPONSE,
-    serialized_options=_b('\202\265\030-Marks a controller\'s registration as complete'),
+    serialized_options=b'\202\265\030-Marks a controller\'s registration as complete',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='QueryAccountsRegisteredToController',
@@ -945,7 +966,8 @@ _PHYSICALGOODS = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CPHYSICALGOODS_QUERYACCOUNTSREGISTEREDTOSERIAL_REQUEST,
     output_type=_CPHYSICALGOODS_QUERYACCOUNTSREGISTEREDTOSERIAL_RESPONSE,
-    serialized_options=_b('\202\265\0309Sends back a list of accounts registered to a controller.'),
+    serialized_options=b'\202\265\0309Sends back a list of accounts registered to a controller.',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='SetDesiredControllerConfigForApp',
@@ -954,7 +976,8 @@ _PHYSICALGOODS = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CPHYSICALGOODS_STEAMCONTROLLERSETCONFIG_REQUEST,
     output_type=_CPHYSICALGOODS_STEAMCONTROLLERSETCONFIG_RESPONSE,
-    serialized_options=_b('\202\265\030+Sets a desired controller config for an app'),
+    serialized_options=b'\202\265\030+Sets a desired controller config for an app',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetDesiredControllerConfigForApp',
@@ -963,7 +986,8 @@ _PHYSICALGOODS = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CPHYSICALGOODS_STEAMCONTROLLERGETCONFIG_REQUEST,
     output_type=_CPHYSICALGOODS_STEAMCONTROLLERGETCONFIG_RESPONSE,
-    serialized_options=_b('\202\265\030+Gets a desired controller config for an app'),
+    serialized_options=b'\202\265\030+Gets a desired controller config for an app',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='DeRegisterSteamController',
@@ -972,7 +996,8 @@ _PHYSICALGOODS = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CPHYSICALGOODS_DEREGISTERSTEAMCONTROLLER_REQUEST,
     output_type=_CPHYSICALGOODS_DEREGISTERSTEAMCONTROLLER_RESPONSE,
-    serialized_options=_b('\202\265\030\031De registers a controller'),
+    serialized_options=b'\202\265\030\031De registers a controller',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='SetControllerPersonalizationFile',
@@ -981,7 +1006,8 @@ _PHYSICALGOODS = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CPHYSICALGOODS_SETPERSONALIZATIONFILE_REQUEST,
     output_type=_CPHYSICALGOODS_SETPERSONALIZATIONFILE_RESPONSE,
-    serialized_options=_b('\202\265\030.Stores the file ID of the personalization file'),
+    serialized_options=b'\202\265\030.Stores the file ID of the personalization file',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetControllerPersonalizationFile',
@@ -990,7 +1016,8 @@ _PHYSICALGOODS = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CPHYSICALGOODS_GETPERSONALIZATIONFILE_REQUEST,
     output_type=_CPHYSICALGOODS_GETPERSONALIZATIONFILE_RESPONSE,
-    serialized_options=_b('\202\265\030,Gets the file ID of the personalization file'),
+    serialized_options=b'\202\265\030,Gets the file ID of the personalization file',
+    create_key=_descriptor._internal_create_key,
   ),
 ])
 _sym_db.RegisterServiceDescriptor(_PHYSICALGOODS)
diff --git a/steam/protobufs/steammessages_player_pb2.py b/steam/protobufs/steammessages_player_pb2.py
index c4bad06..94c84c8 100644
--- a/steam/protobufs/steammessages_player_pb2.py
+++ b/steam/protobufs/steammessages_player_pb2.py
@@ -1,9 +1,7 @@
 # -*- coding: utf-8 -*-
 # Generated by the protocol buffer compiler.  DO NOT EDIT!
 # source: steammessages_player.proto
-
-import sys
-_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1'))
+"""Generated protocol buffer code."""
 from google.protobuf.internal import enum_type_wrapper
 from google.protobuf import descriptor as _descriptor
 from google.protobuf import message as _message
@@ -16,6 +14,7 @@ from google.protobuf import service_reflection
 _sym_db = _symbol_database.Default()
 
 
+import steam.protobufs.steammessages_base_pb2 as steammessages__base__pb2
 import steam.protobufs.steammessages_unified_base_pb2 as steammessages__unified__base__pb2
 import steam.protobufs.enums_pb2 as enums__pb2
 
@@ -24,46 +23,54 @@ DESCRIPTOR = _descriptor.FileDescriptor(
   name='steammessages_player.proto',
   package='',
   syntax='proto2',
-  serialized_options=_b('\220\001\001'),
-  serialized_pb=_b('\n\x1asteammessages_player.proto\x1a steammessages_unified_base.proto\x1a\x0b\x65nums.proto\"4\n2CPlayer_GetMutualFriendsForIncomingInvites_Request\"\\\n&CPlayer_IncomingInviteMutualFriendList\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12!\n\x19mutual_friend_account_ids\x18\x02 \x03(\r\"\x8c\x01\n3CPlayer_GetMutualFriendsForIncomingInvites_Response\x12U\n$incoming_invite_mutual_friends_lists\x18\x01 \x03(\x0b\x32\'.CPlayer_IncomingInviteMutualFriendList\"\xb5\x04\n\x1d\x43Player_GetOwnedGames_Request\x12\x32\n\x07steamid\x18\x01 \x01(\x04\x42!\x82\xb5\x18\x1dThe player we\'re asking about\x12\\\n\x0finclude_appinfo\x18\x02 \x01(\x08\x42\x43\x82\xb5\x18?true if we want additional details (name, icon) about each game\x12\x8c\x01\n\x19include_played_free_games\x18\x03 \x01(\x08\x42i\x82\xb5\x18\x65\x46ree games are excluded by default.  If this is set, free games the user has played will be returned.\x12M\n\rappids_filter\x18\x04 \x03(\rB6\x82\xb5\x18\x32if set, restricts result set to the passed in apps\x12\\\n\x10include_free_sub\x18\x05 \x01(\x08\x42\x42\x82\xb5\x18>Some games are in the free sub, which are excluded by default.\x12\x46\n\x12skip_unvetted_apps\x18\x06 \x01(\x08:\x04trueB$\x82\xb5\x18 if set, skip unvetted store apps\"\xf3\x02\n\x1e\x43Player_GetOwnedGames_Response\x12\x12\n\ngame_count\x18\x01 \x01(\r\x12\x33\n\x05games\x18\x02 \x03(\x0b\x32$.CPlayer_GetOwnedGames_Response.Game\x1a\x87\x02\n\x04Game\x12\r\n\x05\x61ppid\x18\x01 \x01(\x05\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x17\n\x0fplaytime_2weeks\x18\x03 \x01(\x05\x12\x18\n\x10playtime_forever\x18\x04 \x01(\x05\x12\x14\n\x0cimg_icon_url\x18\x05 \x01(\t\x12\x14\n\x0cimg_logo_url\x18\x06 \x01(\t\x12#\n\x1bhas_community_visible_stats\x18\x07 \x01(\x08\x12 \n\x18playtime_windows_forever\x18\x08 \x01(\x05\x12\x1c\n\x14playtime_mac_forever\x18\t \x01(\x05\x12\x1e\n\x16playtime_linux_forever\x18\n \x01(\x05\"M\n\x1b\x43Player_GetPlayNext_Request\x12\x17\n\x0fmax_age_seconds\x18\x01 \x01(\r\x12\x15\n\rignore_appids\x18\x02 \x03(\r\"H\n\x1c\x43Player_GetPlayNext_Response\x12\x18\n\x10last_update_time\x18\x01 \x01(\r\x12\x0e\n\x06\x61ppids\x18\x02 \x03(\r\"7\n&CPlayer_GetFriendsGameplayInfo_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\"\xee\x05\n\'CPlayer_GetFriendsGameplayInfo_Response\x12K\n\tyour_info\x18\x01 \x01(\x0b\x32\x38.CPlayer_GetFriendsGameplayInfo_Response.OwnGameplayInfo\x12M\n\x07in_game\x18\x02 \x03(\x0b\x32<.CPlayer_GetFriendsGameplayInfo_Response.FriendsGameplayInfo\x12U\n\x0fplayed_recently\x18\x03 \x03(\x0b\x32<.CPlayer_GetFriendsGameplayInfo_Response.FriendsGameplayInfo\x12Q\n\x0bplayed_ever\x18\x04 \x03(\x0b\x32<.CPlayer_GetFriendsGameplayInfo_Response.FriendsGameplayInfo\x12J\n\x04owns\x18\x05 \x03(\x0b\x32<.CPlayer_GetFriendsGameplayInfo_Response.FriendsGameplayInfo\x12Q\n\x0bin_wishlist\x18\x06 \x03(\x0b\x32<.CPlayer_GetFriendsGameplayInfo_Response.FriendsGameplayInfo\x1a^\n\x13\x46riendsGameplayInfo\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12\x16\n\x0eminutes_played\x18\x02 \x01(\r\x12\x1e\n\x16minutes_played_forever\x18\x03 \x01(\r\x1a~\n\x0fOwnGameplayInfo\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12\x16\n\x0eminutes_played\x18\x02 \x01(\r\x12\x1e\n\x16minutes_played_forever\x18\x03 \x01(\r\x12\x13\n\x0bin_wishlist\x18\x04 \x01(\x08\x12\r\n\x05owned\x18\x05 \x01(\x08\"\x87\x02\n&CPlayer_GetFriendsAppsActivity_Request\x12\x81\x01\n\rnews_language\x18\x01 \x01(\tBj\x82\xb5\x18\x66Language for which to query about news items (for the being_discussed results). DEPRECATED AND UNUSED.\x12Y\n\rrequest_flags\x18\x02 \x01(\rBB\x82\xb5\x18>Flags describing the request; see EGetFriendsAppsActivityFlags\"\xa3\x13\n\'CPlayer_GetFriendsAppsActivity_Response\x12\xb8\x01\n\x08trending\x18\x01 \x03(\x0b\x32\x37.CPlayer_GetFriendsAppsActivity_Response.AppFriendsInfoBm\x82\xb5\x18iApps that friends have played more this week than last, with list of friends who\'ve played more this week\x12\xb4\x01\n\x10recent_purchases\x18\x02 \x03(\x0b\x32\x37.CPlayer_GetFriendsAppsActivity_Response.AppFriendsInfoBa\x82\xb5\x18]Apps friends have played in the past two weeks for which the user recently acquired a license\x12\x9e\x01\n\x07unowned\x18\x03 \x03(\x0b\x32\x37.CPlayer_GetFriendsAppsActivity_Response.AppFriendsInfoBT\x82\xb5\x18PApps friends have played in the past two weeks for which the user has no license\x12\xaf\x01\n\x07popular\x18\x04 \x03(\x0b\x32\x37.CPlayer_GetFriendsAppsActivity_Response.AppFriendsInfoBe\x82\xb5\x18\x61\x41pps friends have played in the past two weeks, for which the user has a license, sorted by count\x12\xc6\x01\n\x0b\x64ont_forget\x18\x05 \x03(\x0b\x32\x37.CPlayer_GetFriendsAppsActivity_Response.AppFriendsInfoBx\x82\xb5\x18tApps friends have played in the past two weeks which the user has neither purchased nor played in the past two weeks\x12\xc1\x01\n\x0f\x62\x65ing_discussed\x18\x06 \x03(\x0b\x32\x37.CPlayer_GetFriendsAppsActivity_Response.AppFriendsInfoBo\x82\xb5\x18kOwned apps that friends have posted status or screenshots for in the past two weeks. DEPRECATED AND UNUSED.\x12\x94\x01\n\x0cnew_to_group\x18\x07 \x03(\x0b\x32\x37.CPlayer_GetFriendsAppsActivity_Response.AppFriendsInfoBE\x82\xb5\x18\x41Owned apps that none of your friends had played prior to 2 weeks.\x12\x99\x01\n\x11returned_to_group\x18\x08 \x03(\x0b\x32\x37.CPlayer_GetFriendsAppsActivity_Response.AppFriendsInfoBE\x82\xb5\x18\x41Owned apps that friends hadn\'t played for a while, but are again.\x12\x66\n\x13\x61\x63tive_friend_count\x18\t \x01(\r:\x01\x30\x42\x46\x82\xb5\x18\x42Number of friends with non-trivial activity in the past two weeks.\x1a\x90\x04\n\x0e\x46riendPlayTime\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12s\n\x18minutes_played_this_week\x18\x02 \x01(\rBQ\x82\xb5\x18MMinutes this friend played the game (from the enclosing structure) this week.\x12}\n\x18minutes_played_two_weeks\x18\x03 \x01(\rB[\x82\xb5\x18WMinutes this friend played the game (from the enclosing structure) in the past 2 weeks.\x12p\n\x16minutes_played_forever\x18\x04 \x01(\rBP\x82\xb5\x18LMinutes this friend played the game (from the enclosing structure) all time.\x12\x86\x01\n\x0b\x65vent_count\x18\x05 \x01(\rBq\x82\xb5\x18mNumber of events involving this user & app. (Only set for results in being_discussed.) DEPRECATED AND UNUSED.\x1a\xf7\x02\n\x0e\x41ppFriendsInfo\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\xc9\x01\n\x07\x66riends\x18\x02 \x03(\x0b\x32\x37.CPlayer_GetFriendsAppsActivity_Response.FriendPlayTimeB\x7f\x82\xb5\x18{Friends (w/ playtime) that meet a specific criteria -- e.g. for trending, only includes friends w/ more playtime this week.\x12\x89\x01\n\rdisplay_order\x18\x03 \x01(\rBr\x82\xb5\x18nIndex indicating the order in which this app should be displayed, relative to other apps in the same response.\"3\n\"CPlayer_GetGameBadgeLevels_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\"\xb5\x01\n#CPlayer_GetGameBadgeLevels_Response\x12\x14\n\x0cplayer_level\x18\x01 \x01(\r\x12:\n\x06\x62\x61\x64ges\x18\x02 \x03(\x0b\x32*.CPlayer_GetGameBadgeLevels_Response.Badge\x1a<\n\x05\x42\x61\x64ge\x12\r\n\x05level\x18\x01 \x01(\x05\x12\x0e\n\x06series\x18\x02 \x01(\x05\x12\x14\n\x0c\x62order_color\x18\x03 \x01(\r\"l\n$CPlayer_GetProfileBackground_Request\x12\x32\n\x07steamid\x18\x01 \x01(\x06\x42!\x82\xb5\x18\x1dThe player we\'re asking about\x12\x10\n\x08language\x18\x02 \x01(\t\"\xe9\x04\n\x0bProfileItem\x12\x17\n\x0f\x63ommunityitemid\x18\x01 \x01(\x04\x12\x42\n\x0bimage_small\x18\x02 \x01(\tB-\x82\xb5\x18)small image used in backpack or selection\x12)\n\x0bimage_large\x18\x03 \x01(\tB\x14\x82\xb5\x18\x10the image itself\x12\x1e\n\x04name\x18\x04 \x01(\tB\x10\x82\xb5\x18\x0c\x65nglish name\x12\'\n\nitem_title\x18\x05 \x01(\tB\x13\x82\xb5\x18\x0flocalized title\x12\x33\n\x10item_description\x18\x06 \x01(\tB\x19\x82\xb5\x18\x15localized description\x12\r\n\x05\x61ppid\x18\x07 \x01(\r\x12\x11\n\titem_type\x18\x08 \x01(\r\x12\x12\n\nitem_class\x18\t \x01(\r\x12+\n\nmovie_webm\x18\n \x01(\tB\x17\x82\xb5\x18\x13URL to webm, if any\x12)\n\tmovie_mp4\x18\x0b \x01(\tB\x16\x82\xb5\x18\x12URL to mp4, if any\x12\x37\n\x10movie_webm_small\x18\r \x01(\tB\x1d\x82\xb5\x18\x19URL to small webm, if any\x12\x35\n\x0fmovie_mp4_small\x18\x0e \x01(\tB\x1c\x82\xb5\x18\x18URL to small mp4, if any\x12V\n\x0e\x65quipped_flags\x18\x0c \x01(\rB>\x82\xb5\x18:Special flags set when equipped (EProfileItemEquippedFlag)\"Q\n%CPlayer_GetProfileBackground_Response\x12(\n\x12profile_background\x18\x01 \x01(\x0b\x32\x0c.ProfileItem\"?\n$CPlayer_SetProfileBackground_Request\x12\x17\n\x0f\x63ommunityitemid\x18\x01 \x01(\x04\"\'\n%CPlayer_SetProfileBackground_Response\"p\n(CPlayer_GetMiniProfileBackground_Request\x12\x32\n\x07steamid\x18\x01 \x01(\x06\x42!\x82\xb5\x18\x1dThe player we\'re asking about\x12\x10\n\x08language\x18\x02 \x01(\t\"U\n)CPlayer_GetMiniProfileBackground_Response\x12(\n\x12profile_background\x18\x01 \x01(\x0b\x32\x0c.ProfileItem\"C\n(CPlayer_SetMiniProfileBackground_Request\x12\x17\n\x0f\x63ommunityitemid\x18\x01 \x01(\x04\"+\n)CPlayer_SetMiniProfileBackground_Response\"f\n\x1e\x43Player_GetAvatarFrame_Request\x12\x32\n\x07steamid\x18\x01 \x01(\x06\x42!\x82\xb5\x18\x1dThe player we\'re asking about\x12\x10\n\x08language\x18\x02 \x01(\t\"E\n\x1f\x43Player_GetAvatarFrame_Response\x12\"\n\x0c\x61vatar_frame\x18\x01 \x01(\x0b\x32\x0c.ProfileItem\"9\n\x1e\x43Player_SetAvatarFrame_Request\x12\x17\n\x0f\x63ommunityitemid\x18\x01 \x01(\x04\"!\n\x1f\x43Player_SetAvatarFrame_Response\"i\n!CPlayer_GetAnimatedAvatar_Request\x12\x32\n\x07steamid\x18\x01 \x01(\x06\x42!\x82\xb5\x18\x1dThe player we\'re asking about\x12\x10\n\x08language\x18\x02 \x01(\t\"B\n\"CPlayer_GetAnimatedAvatar_Response\x12\x1c\n\x06\x61vatar\x18\x01 \x01(\x0b\x32\x0c.ProfileItem\"<\n!CPlayer_SetAnimatedAvatar_Request\x12\x17\n\x0f\x63ommunityitemid\x18\x01 \x01(\x04\"$\n\"CPlayer_SetAnimatedAvatar_Response\"8\n$CPlayer_GetProfileItemsOwned_Request\x12\x10\n\x08language\x18\x01 \x01(\t\"\xf8\x01\n%CPlayer_GetProfileItemsOwned_Response\x12)\n\x13profile_backgrounds\x18\x01 \x03(\x0b\x32\x0c.ProfileItem\x12.\n\x18mini_profile_backgrounds\x18\x02 \x03(\x0b\x32\x0c.ProfileItem\x12#\n\ravatar_frames\x18\x03 \x03(\x0b\x32\x0c.ProfileItem\x12&\n\x10\x61nimated_avatars\x18\x04 \x03(\x0b\x32\x0c.ProfileItem\x12\'\n\x11profile_modifiers\x18\x05 \x03(\x0b\x32\x0c.ProfileItem\"L\n\'CPlayer_GetProfileItemsEquipped_Request\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12\x10\n\x08language\x18\x02 \x01(\t\"\xf6\x01\n(CPlayer_GetProfileItemsEquipped_Response\x12(\n\x12profile_background\x18\x01 \x01(\x0b\x32\x0c.ProfileItem\x12-\n\x17mini_profile_background\x18\x02 \x01(\x0b\x32\x0c.ProfileItem\x12\"\n\x0c\x61vatar_frame\x18\x03 \x01(\x0b\x32\x0c.ProfileItem\x12%\n\x0f\x61nimated_avatar\x18\x04 \x01(\x0b\x32\x0c.ProfileItem\x12&\n\x10profile_modifier\x18\x05 \x01(\x0b\x32\x0c.ProfileItem\"z\n+CPlayer_SetEquippedProfileItemFlags_Request\x12\x17\n\x0f\x63ommunityitemid\x18\x01 \x01(\x04\x12\x32\n\x05\x66lags\x18\x02 \x01(\rB#\x82\xb5\x18\x1fSet of EProfileItemEquippedFlag\".\n,CPlayer_SetEquippedProfileItemFlags_Response\"!\n\x1f\x43Player_GetEmoticonList_Request\"\xdb\x01\n CPlayer_GetEmoticonList_Response\x12=\n\temoticons\x18\x01 \x03(\x0b\x32*.CPlayer_GetEmoticonList_Response.Emoticon\x1ax\n\x08\x45moticon\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\r\n\x05\x63ount\x18\x02 \x01(\x05\x12\x16\n\x0etime_last_used\x18\x03 \x01(\r\x12\x11\n\tuse_count\x18\x04 \x01(\r\x12\x15\n\rtime_received\x18\x05 \x01(\r\x12\r\n\x05\x61ppid\x18\x06 \x01(\r\"\\\n\'CPlayer_GetAchievementsProgress_Request\x12\x0f\n\x07steamid\x18\x01 \x01(\x04\x12\x10\n\x08language\x18\x02 \x01(\t\x12\x0e\n\x06\x61ppids\x18\x03 \x03(\r\"\x8d\x02\n(CPlayer_GetAchievementsProgress_Response\x12[\n\x14\x61\x63hievement_progress\x18\x01 \x03(\x0b\x32=.CPlayer_GetAchievementsProgress_Response.AchievementProgress\x1a\x83\x01\n\x13\x41\x63hievementProgress\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x10\n\x08unlocked\x18\x02 \x01(\r\x12\r\n\x05total\x18\x03 \x01(\r\x12\x12\n\npercentage\x18\x04 \x01(\x02\x12\x14\n\x0c\x61ll_unlocked\x18\x05 \x01(\x08\x12\x12\n\ncache_time\x18\x06 \x01(\r\"3\n CPlayer_GetFavoriteBadge_Request\x12\x0f\n\x07steamid\x18\x01 \x01(\x04\"\xb0\x01\n!CPlayer_GetFavoriteBadge_Response\x12\x1a\n\x12has_favorite_badge\x18\x01 \x01(\x08\x12\x0f\n\x07\x62\x61\x64geid\x18\x02 \x01(\r\x12\x17\n\x0f\x63ommunityitemid\x18\x03 \x01(\x04\x12\x11\n\titem_type\x18\x04 \x01(\r\x12\x14\n\x0c\x62order_color\x18\x05 \x01(\r\x12\r\n\x05\x61ppid\x18\x06 \x01(\r\x12\r\n\x05level\x18\x07 \x01(\r\"L\n CPlayer_SetFavoriteBadge_Request\x12\x17\n\x0f\x63ommunityitemid\x18\x01 \x01(\x04\x12\x0f\n\x07\x62\x61\x64geid\x18\x02 \x01(\r\"#\n!CPlayer_SetFavoriteBadge_Response\"\x8d\x01\n\'CPlayer_GetProfileCustomization_Request\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12\'\n\x1finclude_inactive_customizations\x18\x02 \x01(\x08\x12(\n include_purchased_customizations\x18\x03 \x01(\x08\"\xdd\x02\n\x18ProfileCustomizationSlot\x12\x0c\n\x04slot\x18\x01 \x01(\r\x12\r\n\x05\x61ppid\x18\x02 \x01(\r\x12\x17\n\x0fpublishedfileid\x18\x03 \x01(\x04\x12\x14\n\x0citem_assetid\x18\x04 \x01(\x04\x12\x16\n\x0eitem_contextid\x18\x05 \x01(\x04\x12\r\n\x05notes\x18\x06 \x01(\t\x12\r\n\x05title\x18\x07 \x01(\t\x12\x11\n\taccountid\x18\x08 \x01(\r\x12\x0f\n\x07\x62\x61\x64geid\x18\t \x01(\r\x12\x14\n\x0c\x62order_color\x18\n \x01(\r\x12\x14\n\x0citem_classid\x18\x0b \x01(\x04\x12\x17\n\x0fitem_instanceid\x18\x0c \x01(\x04\x12V\n\x10\x62\x61n_check_result\x18\r \x01(\x0e\x32\x17.EBanContentCheckResult:#k_EBanContentCheckResult_NotScanned\"\xbd\x02\n\x14ProfileCustomization\x12Z\n\x12\x63ustomization_type\x18\x01 \x01(\x0e\x32\x1a.EProfileCustomizationType:\"k_EProfileCustomizationTypeInvalid\x12\r\n\x05large\x18\x02 \x01(\x08\x12(\n\x05slots\x18\x03 \x03(\x0b\x32\x19.ProfileCustomizationSlot\x12\x0e\n\x06\x61\x63tive\x18\x04 \x01(\x08\x12]\n\x13\x63ustomization_style\x18\x05 \x01(\x0e\x32\x1b.EProfileCustomizationStyle:#k_EProfileCustomizationStyleDefault\x12\x12\n\npurchaseid\x18\x06 \x01(\x04\x12\r\n\x05level\x18\x07 \x01(\r\"/\n\x0cProfileTheme\x12\x10\n\x08theme_id\x18\x01 \x01(\t\x12\r\n\x05title\x18\x02 \x01(\t\"1\n\x12ProfilePreferences\x12\x1b\n\x13hide_profile_awards\x18\x01 \x01(\x08\"\xc8\x03\n(CPlayer_GetProfileCustomization_Response\x12-\n\x0e\x63ustomizations\x18\x01 \x03(\x0b\x32\x15.ProfileCustomization\x12\x17\n\x0fslots_available\x18\x02 \x01(\r\x12$\n\rprofile_theme\x18\x03 \x01(\x0b\x32\r.ProfileTheme\x12\x62\n\x18purchased_customizations\x18\x04 \x03(\x0b\x32@.CPlayer_GetProfileCustomization_Response.PurchasedCustomization\x12\x30\n\x13profile_preferences\x18\x05 \x01(\x0b\x32\x13.ProfilePreferences\x1a\x97\x01\n\x16PurchasedCustomization\x12\x12\n\npurchaseid\x18\x01 \x01(\x04\x12Z\n\x12\x63ustomization_type\x18\x02 \x01(\x0e\x32\x1a.EProfileCustomizationType:\"k_EProfileCustomizationTypeInvalid\x12\r\n\x05level\x18\x03 \x01(\r\"D\n1CPlayer_GetPurchasedProfileCustomizations_Request\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\"\xad\x02\n2CPlayer_GetPurchasedProfileCustomizations_Response\x12l\n\x18purchased_customizations\x18\x01 \x03(\x0b\x32J.CPlayer_GetPurchasedProfileCustomizations_Response.PurchasedCustomization\x1a\x88\x01\n\x16PurchasedCustomization\x12\x12\n\npurchaseid\x18\x01 \x01(\x04\x12Z\n\x12\x63ustomization_type\x18\x02 \x01(\x0e\x32\x1a.EProfileCustomizationType:\"k_EProfileCustomizationTypeInvalid\"O\n<CPlayer_GetPurchasedAndUpgradedProfileCustomizations_Request\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\"\xba\x04\n=CPlayer_GetPurchasedAndUpgradedProfileCustomizations_Response\x12w\n\x18purchased_customizations\x18\x01 \x03(\x0b\x32U.CPlayer_GetPurchasedAndUpgradedProfileCustomizations_Response.PurchasedCustomization\x12u\n\x17upgraded_customizations\x18\x02 \x03(\x0b\x32T.CPlayer_GetPurchasedAndUpgradedProfileCustomizations_Response.UpgradedCustomization\x1a\x83\x01\n\x16PurchasedCustomization\x12Z\n\x12\x63ustomization_type\x18\x01 \x01(\x0e\x32\x1a.EProfileCustomizationType:\"k_EProfileCustomizationTypeInvalid\x12\r\n\x05\x63ount\x18\x02 \x01(\r\x1a\x82\x01\n\x15UpgradedCustomization\x12Z\n\x12\x63ustomization_type\x18\x01 \x01(\x0e\x32\x1a.EProfileCustomizationType:\"k_EProfileCustomizationTypeInvalid\x12\r\n\x05level\x18\x02 \x01(\r\"+\n)CPlayer_GetProfileThemesAvailable_Request\"S\n*CPlayer_GetProfileThemesAvailable_Response\x12%\n\x0eprofile_themes\x18\x01 \x03(\x0b\x32\r.ProfileTheme\"3\n\x1f\x43Player_SetProfileTheme_Request\x12\x10\n\x08theme_id\x18\x01 \x01(\t\"\"\n CPlayer_SetProfileTheme_Response\"Y\n%CPlayer_SetProfilePreferences_Request\x12\x30\n\x13profile_preferences\x18\x01 \x01(\x0b\x32\x13.ProfilePreferences\"(\n&CPlayer_SetProfilePreferences_Response\"I\n#CPlayer_PostStatusToFriends_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x13\n\x0bstatus_text\x18\x02 \x01(\t\"&\n$CPlayer_PostStatusToFriends_Response\"e\n\x1f\x43Player_GetPostedStatus_Request\x12\x32\n\x07steamid\x18\x01 \x01(\x04\x42!\x82\xb5\x18\x1dThe player we\'re asking about\x12\x0e\n\x06postid\x18\x02 \x01(\x04\"z\n CPlayer_GetPostedStatus_Response\x12\x11\n\taccountid\x18\x01 \x01(\r\x12\x0e\n\x06postid\x18\x02 \x01(\x04\x12\x13\n\x0bstatus_text\x18\x03 \x01(\t\x12\x0f\n\x07\x64\x65leted\x18\x04 \x01(\x08\x12\r\n\x05\x61ppid\x18\x05 \x01(\r\"4\n\"CPlayer_DeletePostedStatus_Request\x12\x0e\n\x06postid\x18\x01 \x01(\x04\"%\n#CPlayer_DeletePostedStatus_Response\"\x82\x01\n\"CPlayer_GetLastPlayedTimes_Request\x12\\\n\x0fmin_last_played\x18\x01 \x01(\rBC\x82\xb5\x18?The most recent last-played time the client already knows about\"\xea\x03\n#CPlayer_GetLastPlayedTimes_Response\x12\x38\n\x05games\x18\x01 \x03(\x0b\x32).CPlayer_GetLastPlayedTimes_Response.Game\x1a\x88\x03\n\x04Game\x12\r\n\x05\x61ppid\x18\x01 \x01(\x05\x12\x15\n\rlast_playtime\x18\x02 \x01(\r\x12\x17\n\x0fplaytime_2weeks\x18\x03 \x01(\x05\x12\x18\n\x10playtime_forever\x18\x04 \x01(\x05\x12\x16\n\x0e\x66irst_playtime\x18\x05 \x01(\r\x12 \n\x18playtime_windows_forever\x18\x06 \x01(\x05\x12\x1c\n\x14playtime_mac_forever\x18\x07 \x01(\x05\x12\x1e\n\x16playtime_linux_forever\x18\x08 \x01(\x05\x12\x1e\n\x16\x66irst_windows_playtime\x18\t \x01(\r\x12\x1a\n\x12\x66irst_mac_playtime\x18\n \x01(\r\x12\x1c\n\x14\x66irst_linux_playtime\x18\x0b \x01(\r\x12\x1d\n\x15last_windows_playtime\x18\x0c \x01(\r\x12\x19\n\x11last_mac_playtime\x18\r \x01(\r\x12\x1b\n\x13last_linux_playtime\x18\x0e \x01(\r\"w\n\x19\x43Player_AcceptSSA_Request\x12\x41\n\x0e\x61greement_type\x18\x01 \x01(\x0e\x32\x0f.EAgreementType:\x18k_EAgreementType_Invalid\x12\x17\n\x0ftime_signed_utc\x18\x02 \x01(\r\"\x1c\n\x1a\x43Player_AcceptSSA_Response\"!\n\x1f\x43Player_GetNicknameList_Request\"\x9e\x01\n CPlayer_GetNicknameList_Response\x12\x43\n\tnicknames\x18\x01 \x03(\x0b\x32\x30.CPlayer_GetNicknameList_Response.PlayerNickname\x1a\x35\n\x0ePlayerNickname\x12\x11\n\taccountid\x18\x01 \x01(\x07\x12\x10\n\x08nickname\x18\x02 \x01(\t\")\n\'CPlayer_GetPerFriendPreferences_Request\"\xd1\x05\n\x14PerFriendPreferences\x12\x11\n\taccountid\x18\x01 \x01(\x07\x12\x10\n\x08nickname\x18\x02 \x01(\t\x12_\n\x18notifications_showingame\x18\x03 \x01(\x0e\x32\x15.ENotificationSetting:&k_ENotificationSettingNotifyUseDefault\x12_\n\x18notifications_showonline\x18\x04 \x01(\x0e\x32\x15.ENotificationSetting:&k_ENotificationSettingNotifyUseDefault\x12\x61\n\x1anotifications_showmessages\x18\x05 \x01(\x0e\x32\x15.ENotificationSetting:&k_ENotificationSettingNotifyUseDefault\x12X\n\x11sounds_showingame\x18\x06 \x01(\x0e\x32\x15.ENotificationSetting:&k_ENotificationSettingNotifyUseDefault\x12X\n\x11sounds_showonline\x18\x07 \x01(\x0e\x32\x15.ENotificationSetting:&k_ENotificationSettingNotifyUseDefault\x12Z\n\x13sounds_showmessages\x18\x08 \x01(\x0e\x32\x15.ENotificationSetting:&k_ENotificationSettingNotifyUseDefault\x12_\n\x18notifications_sendmobile\x18\t \x01(\x0e\x32\x15.ENotificationSetting:&k_ENotificationSettingNotifyUseDefault\"V\n(CPlayer_GetPerFriendPreferences_Response\x12*\n\x0bpreferences\x18\x01 \x03(\x0b\x32\x15.PerFriendPreferences\"U\n\'CPlayer_SetPerFriendPreferences_Request\x12*\n\x0bpreferences\x18\x01 \x01(\x0b\x32\x15.PerFriendPreferences\"*\n(CPlayer_SetPerFriendPreferences_Response\"c\n\x19\x43Player_AddFriend_Request\x12\x46\n\x07steamid\x18\x01 \x01(\x06\x42\x35\x82\xb5\x18\x31Steam ID of user to whom to send a friend invite.\"\x86\x02\n\x1a\x43Player_AddFriend_Response\x12O\n\x0binvite_sent\x18\x01 \x01(\x08\x42:\x82\xb5\x18\x36True if the operation was successful, false otherwise.\x12\x86\x01\n\x13\x66riend_relationship\x18\x02 \x01(\rBi\x82\xb5\x18\x65the resulting relationship.  Depending on state, may move directly to friends rather than invite sent\x12\x0e\n\x06result\x18\x03 \x01(\x05\"R\n\x1c\x43Player_RemoveFriend_Request\x12\x32\n\x07steamid\x18\x01 \x01(\x06\x42!\x82\xb5\x18\x1dSteam ID of friend to remove.\"\\\n\x1d\x43Player_RemoveFriend_Response\x12;\n\x13\x66riend_relationship\x18\x01 \x01(\rB\x1e\x82\xb5\x18\x1athe resulting relationship\"\x7f\n\x1c\x43Player_IgnoreFriend_Request\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12N\n\x08unignore\x18\x02 \x01(\x08\x42<\x82\xb5\x18\x38If set, remove from ignore/block list instead of adding \"\\\n\x1d\x43Player_IgnoreFriend_Response\x12;\n\x13\x66riend_relationship\x18\x01 \x01(\rB\x1e\x82\xb5\x18\x1athe resulting relationship\")\n\'CPlayer_GetCommunityPreferences_Request\"\xd7\x02\n\x1c\x43Player_CommunityPreferences\x12)\n\x1bhide_adult_content_violence\x18\x01 \x01(\x08:\x04true\x12$\n\x16hide_adult_content_sex\x18\x02 \x01(\x08:\x04true\x12%\n\x16parenthesize_nicknames\x18\x04 \x01(\x08:\x05\x66\x61lse\x12V\n\x13text_filter_setting\x18\x05 \x01(\x0e\x32\x13.ETextFilterSetting:$k_ETextFilterSettingSteamLabOptedOut\x12(\n\x1atext_filter_ignore_friends\x18\x06 \x01(\x08:\x04true\x12\"\n\x1atext_filter_words_revision\x18\x07 \x01(\r\x12\x19\n\x11timestamp_updated\x18\x03 \x01(\r\"^\n(CPlayer_GetCommunityPreferences_Response\x12\x32\n\x0bpreferences\x18\x01 \x01(\x0b\x32\x1d.CPlayer_CommunityPreferences\"]\n\'CPlayer_SetCommunityPreferences_Request\x12\x32\n\x0bpreferences\x18\x01 \x01(\x0b\x32\x1d.CPlayer_CommunityPreferences\"*\n(CPlayer_SetCommunityPreferences_Response\"$\n\"CPlayer_GetTextFilterWords_Request\"\x8e\x01\n\x17\x43Player_TextFilterWords\x12\'\n\x1ftext_filter_custom_banned_words\x18\x01 \x03(\t\x12&\n\x1etext_filter_custom_clean_words\x18\x02 \x03(\t\x12\"\n\x1atext_filter_words_revision\x18\x03 \x01(\r\"N\n#CPlayer_GetTextFilterWords_Response\x12\'\n\x05words\x18\x01 \x01(\x0b\x32\x18.CPlayer_TextFilterWords\"@\n,CPlayer_GetNewSteamAnnouncementState_Request\x12\x10\n\x08language\x18\x01 \x01(\x05\"\xa6\x01\n-CPlayer_GetNewSteamAnnouncementState_Response\x12\r\n\x05state\x18\x01 \x01(\x05\x12\x1d\n\x15\x61nnouncement_headline\x18\x02 \x01(\t\x12\x18\n\x10\x61nnouncement_url\x18\x03 \x01(\t\x12\x13\n\x0btime_posted\x18\x04 \x01(\r\x12\x18\n\x10\x61nnouncement_gid\x18\x05 \x01(\x04\"`\n/CPlayer_UpdateSteamAnnouncementLastRead_Request\x12\x18\n\x10\x61nnouncement_gid\x18\x01 \x01(\x04\x12\x13\n\x0btime_posted\x18\x02 \x01(\r\"2\n0CPlayer_UpdateSteamAnnouncementLastRead_Response\"$\n\"CPlayer_GetPrivacySettings_Request\"\xcc\x01\n\x10\x43PrivacySettings\x12\x15\n\rprivacy_state\x18\x01 \x01(\x05\x12\x1f\n\x17privacy_state_inventory\x18\x02 \x01(\x05\x12\x1b\n\x13privacy_state_gifts\x18\x03 \x01(\x05\x12 \n\x18privacy_state_ownedgames\x18\x04 \x01(\x05\x12\x1e\n\x16privacy_state_playtime\x18\x05 \x01(\x05\x12!\n\x19privacy_state_friendslist\x18\x06 \x01(\x05\"R\n#CPlayer_GetPrivacySettings_Response\x12+\n\x10privacy_settings\x18\x01 \x01(\x0b\x32\x11.CPrivacySettings\"3\n\"CPlayer_GetDurationControl_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\"\xf0\x01\n#CPlayer_GetDurationControl_Response\x12\x12\n\nis_enabled\x18\x01 \x01(\x08\x12\x0f\n\x07seconds\x18\x02 \x01(\x05\x12\x15\n\rseconds_today\x18\x03 \x01(\x05\x12\x1d\n\x15is_steamchina_account\x18\x04 \x01(\x08\x12\x17\n\x0fis_age_verified\x18\x05 \x01(\x08\x12\x1d\n\x15seconds_allowed_today\x18\x06 \x01(\r\x12 \n\x18\x61ge_verification_pending\x18\x07 \x01(\x08\x12\x14\n\x0c\x62lock_minors\x18\x08 \x01(\x08\"`\n$CPlayer_LastPlayedTimes_Notification\x12\x38\n\x05games\x18\x01 \x03(\x0b\x32).CPlayer_GetLastPlayedTimes_Response.Game\"j\n*CPlayer_FriendNicknameChanged_Notification\x12\x11\n\taccountid\x18\x01 \x01(\x07\x12\x10\n\x08nickname\x18\x02 \x01(\t\x12\x17\n\x0fis_echo_to_self\x18\x03 \x01(\x08\"K\n6CPlayer_FriendEquippedProfileItemsChanged_Notification\x12\x11\n\taccountid\x18\x01 \x01(\x07\"\xa7\x01\n.CPlayer_NewSteamAnnouncementState_Notification\x12\r\n\x05state\x18\x01 \x01(\x05\x12\x1d\n\x15\x61nnouncement_headline\x18\x02 \x01(\t\x12\x18\n\x10\x61nnouncement_url\x18\x03 \x01(\t\x12\x13\n\x0btime_posted\x18\x04 \x01(\r\x12\x18\n\x10\x61nnouncement_gid\x18\x05 \x01(\x04\"f\n0CPlayer_CommunityPreferencesChanged_Notification\x12\x32\n\x0bpreferences\x18\x01 \x01(\x0b\x32\x1d.CPlayer_CommunityPreferences\"V\n+CPlayer_TextFilterWordsChanged_Notification\x12\'\n\x05words\x18\x01 \x01(\x0b\x32\x18.CPlayer_TextFilterWords\"q\n0CPlayer_PerFriendPreferencesChanged_Notification\x12\x11\n\taccountid\x18\x01 \x01(\x07\x12*\n\x0bpreferences\x18\x02 \x01(\x0b\x32\x15.PerFriendPreferences\"Z\n+CPlayer_PrivacySettingsChanged_Notification\x12+\n\x10privacy_settings\x18\x01 \x01(\x0b\x32\x11.CPrivacySettings*\x99\x02\n\x1a\x45ProfileCustomizationStyle\x12\'\n#k_EProfileCustomizationStyleDefault\x10\x00\x12(\n$k_EProfileCustomizationStyleSelected\x10\x01\x12&\n\"k_EProfileCustomizationStyleRarest\x10\x02\x12*\n&k_EProfileCustomizationStyleMostRecent\x10\x03\x12&\n\"k_EProfileCustomizationStyleRandom\x10\x04\x12,\n(k_EProfileCustomizationStyleHighestRated\x10\x05*v\n\x0e\x45\x41greementType\x12%\n\x18k_EAgreementType_Invalid\x10\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01\x12\x1e\n\x1ak_EAgreementType_GlobalSSA\x10\x00\x12\x1d\n\x19k_EAgreementType_ChinaSSA\x10\x01*\x85\x01\n\x14\x45NotificationSetting\x12*\n&k_ENotificationSettingNotifyUseDefault\x10\x00\x12 \n\x1ck_ENotificationSettingAlways\x10\x01\x12\x1f\n\x1bk_ENotificationSettingNever\x10\x02*\xb0\x01\n\x12\x45TextFilterSetting\x12(\n$k_ETextFilterSettingSteamLabOptedOut\x10\x00\x12\x1f\n\x1bk_ETextFilterSettingEnabled\x10\x01\x12-\n)k_ETextFilterSettingEnabledAllowProfanity\x10\x02\x12 \n\x1ck_ETextFilterSettingDisabled\x10\x03\x32\x8c\x39\n\x06Player\x12\xef\x01\n\"GetMutualFriendsForIncomingInvites\x12\x33.CPlayer_GetMutualFriendsForIncomingInvites_Request\x1a\x34.CPlayer_GetMutualFriendsForIncomingInvites_Response\"^\x82\xb5\x18ZGet me the mutual friends for each of my pending incoming invites (individuals and clans).\x12\x80\x01\n\rGetOwnedGames\x12\x1e.CPlayer_GetOwnedGames_Request\x1a\x1f.CPlayer_GetOwnedGames_Response\".\x82\xb5\x18*Return a list of games owned by the player\x12\x7f\n\x0bGetPlayNext\x12\x1c.CPlayer_GetPlayNext_Request\x1a\x1d.CPlayer_GetPlayNext_Response\"3\x82\xb5\x18/Return suggested games for player to play next.\x12\xb8\x01\n\x16GetFriendsGameplayInfo\x12\'.CPlayer_GetFriendsGameplayInfo_Request\x1a(.CPlayer_GetFriendsGameplayInfo_Response\"K\x82\xb5\x18GGet a list of friends who are playing, have played, own, or want a game\x12\xae\x01\n\x16GetFriendsAppsActivity\x12\'.CPlayer_GetFriendsAppsActivity_Request\x1a(.CPlayer_GetFriendsAppsActivity_Response\"A\x82\xb5\x18=Get lists of apps friends are active in, in a variety of ways\x12\xb6\x01\n\x12GetGameBadgeLevels\x12#.CPlayer_GetGameBadgeLevels_Request\x1a$.CPlayer_GetGameBadgeLevels_Response\"U\x82\xb5\x18QReturns the Steam Level of a user, the Badge level for the game, and if it\'s foil\x12\xa6\x01\n\x14GetProfileBackground\x12%.CPlayer_GetProfileBackground_Request\x1a&.CPlayer_GetProfileBackground_Response\"?\x82\xb5\x18;Gets which profile background is active for a specific user\x12\x8d\x01\n\x14SetProfileBackground\x12%.CPlayer_SetProfileBackground_Request\x1a&.CPlayer_SetProfileBackground_Response\"&\x82\xb5\x18\"Sets the user\'s profile background\x12\xb7\x01\n\x18GetMiniProfileBackground\x12).CPlayer_GetMiniProfileBackground_Request\x1a*.CPlayer_GetMiniProfileBackground_Response\"D\x82\xb5\x18@Gets which mini profile background is active for a specific user\x12\x9e\x01\n\x18SetMiniProfileBackground\x12).CPlayer_SetMiniProfileBackground_Request\x1a*.CPlayer_SetMiniProfileBackground_Response\"+\x82\xb5\x18\'Sets the user\'s mini profile background\x12\x8e\x01\n\x0eGetAvatarFrame\x12\x1f.CPlayer_GetAvatarFrame_Request\x1a .CPlayer_GetAvatarFrame_Response\"9\x82\xb5\x18\x35Gets which avatar frame is active for a specific user\x12\x87\x01\n\x0eSetAvatarFrame\x12\x1f.CPlayer_SetAvatarFrame_Request\x1a .CPlayer_SetAvatarFrame_Response\"2\x82\xb5\x18.Sets the user\'s avatar frame for their profile\x12\x9a\x01\n\x11GetAnimatedAvatar\x12\".CPlayer_GetAnimatedAvatar_Request\x1a#.CPlayer_GetAnimatedAvatar_Response\"<\x82\xb5\x18\x38Gets which animated avatar is active for a specific user\x12\x93\x01\n\x11SetAnimatedAvatar\x12\".CPlayer_SetAnimatedAvatar_Request\x1a#.CPlayer_SetAnimatedAvatar_Response\"5\x82\xb5\x18\x31Sets the user\'s animated avatar for their profile\x12\xa0\x01\n\x14GetProfileItemsOwned\x12%.CPlayer_GetProfileItemsOwned_Request\x1a&.CPlayer_GetProfileItemsOwned_Response\"9\x82\xb5\x18\x35Returns the items the user can equip on their profile\x12\xac\x01\n\x17GetProfileItemsEquipped\x12(.CPlayer_GetProfileItemsEquipped_Request\x1a).CPlayer_GetProfileItemsEquipped_Response\"<\x82\xb5\x18\x38Returns the items the user has equipped on their profile\x12\xa7\x01\n\x1bSetEquippedProfileItemFlags\x12,.CPlayer_SetEquippedProfileItemFlags_Request\x1a-.CPlayer_SetEquippedProfileItemFlags_Response\"+\x82\xb5\x18\'Sets special flags on the equipped item\x12\x91\x01\n\x0fGetEmoticonList\x12 .CPlayer_GetEmoticonList_Request\x1a!.CPlayer_GetEmoticonList_Response\"9\x82\xb5\x18\x35Gets a list of the emoticons a user has with metadata\x12\xb9\x01\n\x17GetAchievementsProgress\x12(.CPlayer_GetAchievementsProgress_Request\x1a).CPlayer_GetAchievementsProgress_Response\"I\x82\xb5\x18\x45Gets the achievement completion stats for the specified list of apps.\x12\x90\x01\n\x10GetFavoriteBadge\x12!.CPlayer_GetFavoriteBadge_Request\x1a\".CPlayer_GetFavoriteBadge_Response\"5\x82\xb5\x18\x31Gets the badge the user has set as their favorite\x12\x84\x01\n\x10SetFavoriteBadge\x12!.CPlayer_SetFavoriteBadge_Request\x1a\".CPlayer_SetFavoriteBadge_Response\")\x82\xb5\x18%Sets the badge  as the users favorite\x12\xa5\x01\n\x17GetProfileCustomization\x12(.CPlayer_GetProfileCustomization_Request\x1a).CPlayer_GetProfileCustomization_Response\"5\x82\xb5\x18\x31Returns the customizations (if any) for a profile\x12\xbe\x01\n!GetPurchasedProfileCustomizations\x12\x32.CPlayer_GetPurchasedProfileCustomizations_Request\x1a\x33.CPlayer_GetPurchasedProfileCustomizations_Response\"0\x82\xb5\x18,Returns the purchased profile customizations\x12\xec\x01\n,GetPurchasedAndUpgradedProfileCustomizations\x12=.CPlayer_GetPurchasedAndUpgradedProfileCustomizations_Request\x1a>.CPlayer_GetPurchasedAndUpgradedProfileCustomizations_Response\"=\x82\xb5\x18\x39Returns the purchased and upgraded profile customizations\x12\x9d\x01\n\x19GetProfileThemesAvailable\x12*.CPlayer_GetProfileThemesAvailable_Request\x1a+.CPlayer_GetProfileThemesAvailable_Response\"\'\x82\xb5\x18#Gets themes available for the user.\x12{\n\x0fSetProfileTheme\x12 .CPlayer_SetProfileTheme_Request\x1a!.CPlayer_SetProfileTheme_Response\"#\x82\xb5\x18\x1fSelects a theme for the profile\x12\x86\x01\n\x15SetProfilePreferences\x12&.CPlayer_SetProfilePreferences_Request\x1a\'.CPlayer_SetProfilePreferences_Response\"\x1c\x82\xb5\x18\x18Sets profile preferences\x12\x91\x01\n\x13PostStatusToFriends\x12$.CPlayer_PostStatusToFriends_Request\x1a%.CPlayer_PostStatusToFriends_Response\"-\x82\xb5\x18)Posts custom status text into the blotter\x12\x86\x01\n\x0fGetPostedStatus\x12 .CPlayer_GetPostedStatus_Request\x1a!.CPlayer_GetPostedStatus_Response\".\x82\xb5\x18*Gets a posted status text for a user by id\x12\x92\x01\n\x12\x44\x65letePostedStatus\x12#.CPlayer_DeletePostedStatus_Request\x1a$.CPlayer_DeletePostedStatus_Response\"1\x82\xb5\x18-Deletes a posted status text for a user by id\x12\x95\x01\n\x18\x43lientGetLastPlayedTimes\x12#.CPlayer_GetLastPlayedTimes_Request\x1a$.CPlayer_GetLastPlayedTimes_Response\".\x82\xb5\x18*Gets the last-played times for the account\x12\x63\n\tAcceptSSA\x12\x1a.CPlayer_AcceptSSA_Request\x1a\x1b.CPlayer_AcceptSSA_Response\"\x1d\x82\xb5\x18\x19User is accepting the SSA\x12\x94\x01\n\x0fGetNicknameList\x12 .CPlayer_GetNicknameList_Request\x1a!.CPlayer_GetNicknameList_Response\"<\x82\xb5\x18\x38Gets the list of nicknames this user has for other users\x12\xbd\x01\n\x17GetPerFriendPreferences\x12(.CPlayer_GetPerFriendPreferences_Request\x1a).CPlayer_GetPerFriendPreferences_Response\"M\x82\xb5\x18IGets the list of per-friend preferences this user has set for other users\x12\xb7\x01\n\x17SetPerFriendPreferences\x12(.CPlayer_SetPerFriendPreferences_Request\x1a).CPlayer_SetPerFriendPreferences_Response\"G\x82\xb5\x18\x43Sets the logged in user\'s per-friend preferences for the given user\x12s\n\tAddFriend\x12\x1a.CPlayer_AddFriend_Request\x1a\x1b.CPlayer_AddFriend_Response\"-\x82\xb5\x18)Invites another Steam user to be a friend\x12\x82\x01\n\x0cRemoveFriend\x12\x1d.CPlayer_RemoveFriend_Request\x1a\x1e.CPlayer_RemoveFriend_Response\"3\x82\xb5\x18/Removes a friend or ignores a friend suggestion\x12\xa6\x01\n\x0cIgnoreFriend\x12\x1d.CPlayer_IgnoreFriend_Request\x1a\x1e.CPlayer_IgnoreFriend_Response\"W\x82\xb5\x18SBlocks or unblocks communication with the user.  Despite name, can be a non-friend.\x12\x9e\x01\n\x17GetCommunityPreferences\x12(.CPlayer_GetCommunityPreferences_Request\x1a).CPlayer_GetCommunityPreferences_Response\".\x82\xb5\x18*Returns the player\'s community preferences\x12\x9b\x01\n\x17SetCommunityPreferences\x12(.CPlayer_SetCommunityPreferences_Request\x1a).CPlayer_SetCommunityPreferences_Response\"+\x82\xb5\x18\'Sets the player\'s community preferences\x12\x9b\x01\n\x12GetTextFilterWords\x12#.CPlayer_GetTextFilterWords_Request\x1a$.CPlayer_GetTextFilterWords_Response\":\x82\xb5\x18\x36Get the custom text filtering dictionary for this user\x12\xde\x01\n\x1cGetNewSteamAnnouncementState\x12-.CPlayer_GetNewSteamAnnouncementState_Request\x1a..CPlayer_GetNewSteamAnnouncementState_Response\"_\x82\xb5\x18[Calculates and returns what to display for UI that renders new steam announcement available\x12\xbc\x01\n\x1fUpdateSteamAnnouncementLastRead\x12\x30.CPlayer_UpdateSteamAnnouncementLastRead_Request\x1a\x31.CPlayer_UpdateSteamAnnouncementLastRead_Response\"4\x82\xb5\x18\x30Marks latest announcement timestamp read by user\x12\x82\x01\n\x12GetPrivacySettings\x12#.CPlayer_GetPrivacySettings_Request\x1a$.CPlayer_GetPrivacySettings_Response\"!\x82\xb5\x18\x1dGet current privacy settings.\x12\x8c\x01\n\x12GetDurationControl\x12#.CPlayer_GetDurationControl_Request\x1a$.CPlayer_GetDurationControl_Response\"+\x82\xb5\x18\'Get gameplay duration control settings.\x1a-\x82\xb5\x18)A service for accessing Steam player data2\xa6\x0b\n\x0cPlayerClient\x12\x8c\x01\n\x15NotifyLastPlayedTimes\x12%.CPlayer_LastPlayedTimes_Notification\x1a\x0b.NoResponse\"?\x82\xb5\x18;Notification from server to client of more recent play time\x12\xa4\x01\n\x1bNotifyFriendNicknameChanged\x12+.CPlayer_FriendNicknameChanged_Notification\x1a\x0b.NoResponse\"K\x82\xb5\x18GNotification from server to client that a friend\'s nickname has changed\x12\xcb\x01\n\'NotifyFriendEquippedProfileItemsChanged\x12\x37.CPlayer_FriendEquippedProfileItemsChanged_Notification\x1a\x0b.NoResponse\"Z\x82\xb5\x18VNotification from server to client that a friend\'s equipped profile items have changed\x12\xa4\x01\n\x1fNotifyNewSteamAnnouncementState\x12/.CPlayer_NewSteamAnnouncementState_Notification\x1a\x0b.NoResponse\"C\x82\xb5\x18?Notifies client of changes to steam announcement state for user\x12\xb9\x01\n!NotifyCommunityPreferencesChanged\x12\x31.CPlayer_CommunityPreferencesChanged_Notification\x1a\x0b.NoResponse\"T\x82\xb5\x18PNotification from server to client that their community preferences have changed\x12\xb2\x01\n\x1cNotifyTextFilterWordsChanged\x12,.CPlayer_TextFilterWordsChanged_Notification\x1a\x0b.NoResponse\"W\x82\xb5\x18SNotification from server to client that their text filtering dictionary has changed\x12\xaa\x01\n!NotifyPerFriendPreferencesChanged\x12\x31.CPlayer_PerFriendPreferencesChanged_Notification\x1a\x0b.NoResponse\"E\x82\xb5\x18\x41Notification from server that per-friend preferences have changed\x12\x9c\x01\n#NotifyPrivacyPrivacySettingsChanged\x12,.CPlayer_PrivacySettingsChanged_Notification\x1a\x0b.NoResponse\":\x82\xb5\x18\x36Notification from server that privacy settings changed\x1a.\x82\xb5\x18&Steam player data client notifications\xc0\xb5\x18\x02\x42\x03\x90\x01\x01')
+  serialized_options=b'\220\001\001',
+  create_key=_descriptor._internal_create_key,
+  serialized_pb=b'\n\x1asteammessages_player.proto\x1a\x18steammessages_base.proto\x1a steammessages_unified_base.proto\x1a\x0b\x65nums.proto\"4\n2CPlayer_GetMutualFriendsForIncomingInvites_Request\"\\\n&CPlayer_IncomingInviteMutualFriendList\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12!\n\x19mutual_friend_account_ids\x18\x02 \x03(\r\"\x8c\x01\n3CPlayer_GetMutualFriendsForIncomingInvites_Response\x12U\n$incoming_invite_mutual_friends_lists\x18\x01 \x03(\x0b\x32\'.CPlayer_IncomingInviteMutualFriendList\"\x94\x06\n\x1d\x43Player_GetOwnedGames_Request\x12\x32\n\x07steamid\x18\x01 \x01(\x04\x42!\x82\xb5\x18\x1dThe player we\'re asking about\x12\\\n\x0finclude_appinfo\x18\x02 \x01(\x08\x42\x43\x82\xb5\x18?true if we want additional details (name, icon) about each game\x12\x8c\x01\n\x19include_played_free_games\x18\x03 \x01(\x08\x42i\x82\xb5\x18\x65\x46ree games are excluded by default.  If this is set, free games the user has played will be returned.\x12M\n\rappids_filter\x18\x04 \x03(\rB6\x82\xb5\x18\x32if set, restricts result set to the passed in apps\x12\\\n\x10include_free_sub\x18\x05 \x01(\x08\x42\x42\x82\xb5\x18>Some games are in the free sub, which are excluded by default.\x12\x46\n\x12skip_unvetted_apps\x18\x06 \x01(\x08:\x04trueB$\x82\xb5\x18 if set, skip unvetted store apps\x12:\n\x08language\x18\x07 \x01(\tB(\x82\xb5\x18$Will return appinfo in this language\x12\xa0\x01\n\x18include_extended_appinfo\x18\x08 \x01(\x08\x42~\x82\xb5\x18ztrue if we want even more details (capsule, sortas, and capabilities) about each game.  include_appinfo must also be true.\"\xde\x03\n\x1e\x43Player_GetOwnedGames_Response\x12\x12\n\ngame_count\x18\x01 \x01(\r\x12\x33\n\x05games\x18\x02 \x03(\x0b\x32$.CPlayer_GetOwnedGames_Response.Game\x1a\xf2\x02\n\x04Game\x12\r\n\x05\x61ppid\x18\x01 \x01(\x05\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x17\n\x0fplaytime_2weeks\x18\x03 \x01(\x05\x12\x18\n\x10playtime_forever\x18\x04 \x01(\x05\x12\x14\n\x0cimg_icon_url\x18\x05 \x01(\t\x12#\n\x1bhas_community_visible_stats\x18\x07 \x01(\x08\x12 \n\x18playtime_windows_forever\x18\x08 \x01(\x05\x12\x1c\n\x14playtime_mac_forever\x18\t \x01(\x05\x12\x1e\n\x16playtime_linux_forever\x18\n \x01(\x05\x12\x19\n\x11rtime_last_played\x18\x0b \x01(\r\x12\x18\n\x10\x63\x61psule_filename\x18\x0c \x01(\t\x12\x0f\n\x07sort_as\x18\r \x01(\t\x12\x14\n\x0chas_workshop\x18\x0e \x01(\x08\x12\x12\n\nhas_market\x18\x0f \x01(\x08\x12\x0f\n\x07has_dlc\x18\x10 \x01(\x08\"M\n\x1b\x43Player_GetPlayNext_Request\x12\x17\n\x0fmax_age_seconds\x18\x01 \x01(\r\x12\x15\n\rignore_appids\x18\x02 \x03(\r\"H\n\x1c\x43Player_GetPlayNext_Response\x12\x18\n\x10last_update_time\x18\x01 \x01(\r\x12\x0e\n\x06\x61ppids\x18\x02 \x03(\r\"7\n&CPlayer_GetFriendsGameplayInfo_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\"\xee\x05\n\'CPlayer_GetFriendsGameplayInfo_Response\x12K\n\tyour_info\x18\x01 \x01(\x0b\x32\x38.CPlayer_GetFriendsGameplayInfo_Response.OwnGameplayInfo\x12M\n\x07in_game\x18\x02 \x03(\x0b\x32<.CPlayer_GetFriendsGameplayInfo_Response.FriendsGameplayInfo\x12U\n\x0fplayed_recently\x18\x03 \x03(\x0b\x32<.CPlayer_GetFriendsGameplayInfo_Response.FriendsGameplayInfo\x12Q\n\x0bplayed_ever\x18\x04 \x03(\x0b\x32<.CPlayer_GetFriendsGameplayInfo_Response.FriendsGameplayInfo\x12J\n\x04owns\x18\x05 \x03(\x0b\x32<.CPlayer_GetFriendsGameplayInfo_Response.FriendsGameplayInfo\x12Q\n\x0bin_wishlist\x18\x06 \x03(\x0b\x32<.CPlayer_GetFriendsGameplayInfo_Response.FriendsGameplayInfo\x1a^\n\x13\x46riendsGameplayInfo\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12\x16\n\x0eminutes_played\x18\x02 \x01(\r\x12\x1e\n\x16minutes_played_forever\x18\x03 \x01(\r\x1a~\n\x0fOwnGameplayInfo\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12\x16\n\x0eminutes_played\x18\x02 \x01(\r\x12\x1e\n\x16minutes_played_forever\x18\x03 \x01(\r\x12\x13\n\x0bin_wishlist\x18\x04 \x01(\x08\x12\r\n\x05owned\x18\x05 \x01(\x08\"3\n\"CPlayer_GetGameBadgeLevels_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\"\xb5\x01\n#CPlayer_GetGameBadgeLevels_Response\x12\x14\n\x0cplayer_level\x18\x01 \x01(\r\x12:\n\x06\x62\x61\x64ges\x18\x02 \x03(\x0b\x32*.CPlayer_GetGameBadgeLevels_Response.Badge\x1a<\n\x05\x42\x61\x64ge\x12\r\n\x05level\x18\x01 \x01(\x05\x12\x0e\n\x06series\x18\x02 \x01(\x05\x12\x14\n\x0c\x62order_color\x18\x03 \x01(\r\"l\n$CPlayer_GetProfileBackground_Request\x12\x32\n\x07steamid\x18\x01 \x01(\x06\x42!\x82\xb5\x18\x1dThe player we\'re asking about\x12\x10\n\x08language\x18\x02 \x01(\t\"\xe9\x04\n\x0bProfileItem\x12\x17\n\x0f\x63ommunityitemid\x18\x01 \x01(\x04\x12\x42\n\x0bimage_small\x18\x02 \x01(\tB-\x82\xb5\x18)small image used in backpack or selection\x12)\n\x0bimage_large\x18\x03 \x01(\tB\x14\x82\xb5\x18\x10the image itself\x12\x1e\n\x04name\x18\x04 \x01(\tB\x10\x82\xb5\x18\x0c\x65nglish name\x12\'\n\nitem_title\x18\x05 \x01(\tB\x13\x82\xb5\x18\x0flocalized title\x12\x33\n\x10item_description\x18\x06 \x01(\tB\x19\x82\xb5\x18\x15localized description\x12\r\n\x05\x61ppid\x18\x07 \x01(\r\x12\x11\n\titem_type\x18\x08 \x01(\r\x12\x12\n\nitem_class\x18\t \x01(\r\x12+\n\nmovie_webm\x18\n \x01(\tB\x17\x82\xb5\x18\x13URL to webm, if any\x12)\n\tmovie_mp4\x18\x0b \x01(\tB\x16\x82\xb5\x18\x12URL to mp4, if any\x12\x37\n\x10movie_webm_small\x18\r \x01(\tB\x1d\x82\xb5\x18\x19URL to small webm, if any\x12\x35\n\x0fmovie_mp4_small\x18\x0e \x01(\tB\x1c\x82\xb5\x18\x18URL to small mp4, if any\x12V\n\x0e\x65quipped_flags\x18\x0c \x01(\rB>\x82\xb5\x18:Special flags set when equipped (EProfileItemEquippedFlag)\"Q\n%CPlayer_GetProfileBackground_Response\x12(\n\x12profile_background\x18\x01 \x01(\x0b\x32\x0c.ProfileItem\"?\n$CPlayer_SetProfileBackground_Request\x12\x17\n\x0f\x63ommunityitemid\x18\x01 \x01(\x04\"\'\n%CPlayer_SetProfileBackground_Response\"p\n(CPlayer_GetMiniProfileBackground_Request\x12\x32\n\x07steamid\x18\x01 \x01(\x06\x42!\x82\xb5\x18\x1dThe player we\'re asking about\x12\x10\n\x08language\x18\x02 \x01(\t\"U\n)CPlayer_GetMiniProfileBackground_Response\x12(\n\x12profile_background\x18\x01 \x01(\x0b\x32\x0c.ProfileItem\"C\n(CPlayer_SetMiniProfileBackground_Request\x12\x17\n\x0f\x63ommunityitemid\x18\x01 \x01(\x04\"+\n)CPlayer_SetMiniProfileBackground_Response\"f\n\x1e\x43Player_GetAvatarFrame_Request\x12\x32\n\x07steamid\x18\x01 \x01(\x06\x42!\x82\xb5\x18\x1dThe player we\'re asking about\x12\x10\n\x08language\x18\x02 \x01(\t\"E\n\x1f\x43Player_GetAvatarFrame_Response\x12\"\n\x0c\x61vatar_frame\x18\x01 \x01(\x0b\x32\x0c.ProfileItem\"9\n\x1e\x43Player_SetAvatarFrame_Request\x12\x17\n\x0f\x63ommunityitemid\x18\x01 \x01(\x04\"!\n\x1f\x43Player_SetAvatarFrame_Response\"i\n!CPlayer_GetAnimatedAvatar_Request\x12\x32\n\x07steamid\x18\x01 \x01(\x06\x42!\x82\xb5\x18\x1dThe player we\'re asking about\x12\x10\n\x08language\x18\x02 \x01(\t\"B\n\"CPlayer_GetAnimatedAvatar_Response\x12\x1c\n\x06\x61vatar\x18\x01 \x01(\x0b\x32\x0c.ProfileItem\"<\n!CPlayer_SetAnimatedAvatar_Request\x12\x17\n\x0f\x63ommunityitemid\x18\x01 \x01(\x04\"$\n\"CPlayer_SetAnimatedAvatar_Response\"p\n(CPlayer_GetSteamDeckKeyboardSkin_Request\x12\x32\n\x07steamid\x18\x01 \x01(\x06\x42!\x82\xb5\x18\x1dThe player we\'re asking about\x12\x10\n\x08language\x18\x02 \x01(\t\"[\n)CPlayer_GetSteamDeckKeyboardSkin_Response\x12.\n\x18steam_deck_keyboard_skin\x18\x01 \x01(\x0b\x32\x0c.ProfileItem\"C\n(CPlayer_SetSteamDeckKeyboardSkin_Request\x12\x17\n\x0f\x63ommunityitemid\x18\x01 \x01(\x04\"+\n)CPlayer_SetSteamDeckKeyboardSkin_Response\"_\n$CPlayer_GetProfileItemsOwned_Request\x12\x10\n\x08language\x18\x01 \x01(\t\x12%\n\x07\x66ilters\x18\x02 \x03(\x0e\x32\x14.ECommunityItemClass\"\xa9\x02\n%CPlayer_GetProfileItemsOwned_Response\x12)\n\x13profile_backgrounds\x18\x01 \x03(\x0b\x32\x0c.ProfileItem\x12.\n\x18mini_profile_backgrounds\x18\x02 \x03(\x0b\x32\x0c.ProfileItem\x12#\n\ravatar_frames\x18\x03 \x03(\x0b\x32\x0c.ProfileItem\x12&\n\x10\x61nimated_avatars\x18\x04 \x03(\x0b\x32\x0c.ProfileItem\x12\'\n\x11profile_modifiers\x18\x05 \x03(\x0b\x32\x0c.ProfileItem\x12/\n\x19steam_deck_keyboard_skins\x18\x06 \x03(\x0b\x32\x0c.ProfileItem\"L\n\'CPlayer_GetProfileItemsEquipped_Request\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12\x10\n\x08language\x18\x02 \x01(\t\"\xa6\x02\n(CPlayer_GetProfileItemsEquipped_Response\x12(\n\x12profile_background\x18\x01 \x01(\x0b\x32\x0c.ProfileItem\x12-\n\x17mini_profile_background\x18\x02 \x01(\x0b\x32\x0c.ProfileItem\x12\"\n\x0c\x61vatar_frame\x18\x03 \x01(\x0b\x32\x0c.ProfileItem\x12%\n\x0f\x61nimated_avatar\x18\x04 \x01(\x0b\x32\x0c.ProfileItem\x12&\n\x10profile_modifier\x18\x05 \x01(\x0b\x32\x0c.ProfileItem\x12.\n\x18steam_deck_keyboard_skin\x18\x06 \x01(\x0b\x32\x0c.ProfileItem\"z\n+CPlayer_SetEquippedProfileItemFlags_Request\x12\x17\n\x0f\x63ommunityitemid\x18\x01 \x01(\x04\x12\x32\n\x05\x66lags\x18\x02 \x01(\rB#\x82\xb5\x18\x1fSet of EProfileItemEquippedFlag\".\n,CPlayer_SetEquippedProfileItemFlags_Response\"!\n\x1f\x43Player_GetEmoticonList_Request\"\xdb\x01\n CPlayer_GetEmoticonList_Response\x12=\n\temoticons\x18\x01 \x03(\x0b\x32*.CPlayer_GetEmoticonList_Response.Emoticon\x1ax\n\x08\x45moticon\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\r\n\x05\x63ount\x18\x02 \x01(\x05\x12\x16\n\x0etime_last_used\x18\x03 \x01(\r\x12\x11\n\tuse_count\x18\x04 \x01(\r\x12\x15\n\rtime_received\x18\x05 \x01(\r\x12\r\n\x05\x61ppid\x18\x06 \x01(\r\"\\\n\'CPlayer_GetAchievementsProgress_Request\x12\x0f\n\x07steamid\x18\x01 \x01(\x04\x12\x10\n\x08language\x18\x02 \x01(\t\x12\x0e\n\x06\x61ppids\x18\x03 \x03(\r\"\x8d\x02\n(CPlayer_GetAchievementsProgress_Response\x12[\n\x14\x61\x63hievement_progress\x18\x01 \x03(\x0b\x32=.CPlayer_GetAchievementsProgress_Response.AchievementProgress\x1a\x83\x01\n\x13\x41\x63hievementProgress\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x10\n\x08unlocked\x18\x02 \x01(\r\x12\r\n\x05total\x18\x03 \x01(\r\x12\x12\n\npercentage\x18\x04 \x01(\x02\x12\x14\n\x0c\x61ll_unlocked\x18\x05 \x01(\x08\x12\x12\n\ncache_time\x18\x06 \x01(\r\"3\n CPlayer_GetFavoriteBadge_Request\x12\x0f\n\x07steamid\x18\x01 \x01(\x04\"\xb0\x01\n!CPlayer_GetFavoriteBadge_Response\x12\x1a\n\x12has_favorite_badge\x18\x01 \x01(\x08\x12\x0f\n\x07\x62\x61\x64geid\x18\x02 \x01(\r\x12\x17\n\x0f\x63ommunityitemid\x18\x03 \x01(\x04\x12\x11\n\titem_type\x18\x04 \x01(\r\x12\x14\n\x0c\x62order_color\x18\x05 \x01(\r\x12\r\n\x05\x61ppid\x18\x06 \x01(\r\x12\r\n\x05level\x18\x07 \x01(\r\"L\n CPlayer_SetFavoriteBadge_Request\x12\x17\n\x0f\x63ommunityitemid\x18\x01 \x01(\x04\x12\x0f\n\x07\x62\x61\x64geid\x18\x02 \x01(\r\"#\n!CPlayer_SetFavoriteBadge_Response\"\x8d\x01\n\'CPlayer_GetProfileCustomization_Request\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12\'\n\x1finclude_inactive_customizations\x18\x02 \x01(\x08\x12(\n include_purchased_customizations\x18\x03 \x01(\x08\"\xdd\x02\n\x18ProfileCustomizationSlot\x12\x0c\n\x04slot\x18\x01 \x01(\r\x12\r\n\x05\x61ppid\x18\x02 \x01(\r\x12\x17\n\x0fpublishedfileid\x18\x03 \x01(\x04\x12\x14\n\x0citem_assetid\x18\x04 \x01(\x04\x12\x16\n\x0eitem_contextid\x18\x05 \x01(\x04\x12\r\n\x05notes\x18\x06 \x01(\t\x12\r\n\x05title\x18\x07 \x01(\t\x12\x11\n\taccountid\x18\x08 \x01(\r\x12\x0f\n\x07\x62\x61\x64geid\x18\t \x01(\r\x12\x14\n\x0c\x62order_color\x18\n \x01(\r\x12\x14\n\x0citem_classid\x18\x0b \x01(\x04\x12\x17\n\x0fitem_instanceid\x18\x0c \x01(\x04\x12V\n\x10\x62\x61n_check_result\x18\r \x01(\x0e\x32\x17.EBanContentCheckResult:#k_EBanContentCheckResult_NotScanned\"\xbd\x02\n\x14ProfileCustomization\x12Z\n\x12\x63ustomization_type\x18\x01 \x01(\x0e\x32\x1a.EProfileCustomizationType:\"k_EProfileCustomizationTypeInvalid\x12\r\n\x05large\x18\x02 \x01(\x08\x12(\n\x05slots\x18\x03 \x03(\x0b\x32\x19.ProfileCustomizationSlot\x12\x0e\n\x06\x61\x63tive\x18\x04 \x01(\x08\x12]\n\x13\x63ustomization_style\x18\x05 \x01(\x0e\x32\x1b.EProfileCustomizationStyle:#k_EProfileCustomizationStyleDefault\x12\x12\n\npurchaseid\x18\x06 \x01(\x04\x12\r\n\x05level\x18\x07 \x01(\r\"/\n\x0cProfileTheme\x12\x10\n\x08theme_id\x18\x01 \x01(\t\x12\r\n\x05title\x18\x02 \x01(\t\"1\n\x12ProfilePreferences\x12\x1b\n\x13hide_profile_awards\x18\x01 \x01(\x08\"\xc8\x03\n(CPlayer_GetProfileCustomization_Response\x12-\n\x0e\x63ustomizations\x18\x01 \x03(\x0b\x32\x15.ProfileCustomization\x12\x17\n\x0fslots_available\x18\x02 \x01(\r\x12$\n\rprofile_theme\x18\x03 \x01(\x0b\x32\r.ProfileTheme\x12\x62\n\x18purchased_customizations\x18\x04 \x03(\x0b\x32@.CPlayer_GetProfileCustomization_Response.PurchasedCustomization\x12\x30\n\x13profile_preferences\x18\x05 \x01(\x0b\x32\x13.ProfilePreferences\x1a\x97\x01\n\x16PurchasedCustomization\x12\x12\n\npurchaseid\x18\x01 \x01(\x04\x12Z\n\x12\x63ustomization_type\x18\x02 \x01(\x0e\x32\x1a.EProfileCustomizationType:\"k_EProfileCustomizationTypeInvalid\x12\r\n\x05level\x18\x03 \x01(\r\"D\n1CPlayer_GetPurchasedProfileCustomizations_Request\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\"\xad\x02\n2CPlayer_GetPurchasedProfileCustomizations_Response\x12l\n\x18purchased_customizations\x18\x01 \x03(\x0b\x32J.CPlayer_GetPurchasedProfileCustomizations_Response.PurchasedCustomization\x1a\x88\x01\n\x16PurchasedCustomization\x12\x12\n\npurchaseid\x18\x01 \x01(\x04\x12Z\n\x12\x63ustomization_type\x18\x02 \x01(\x0e\x32\x1a.EProfileCustomizationType:\"k_EProfileCustomizationTypeInvalid\"O\n<CPlayer_GetPurchasedAndUpgradedProfileCustomizations_Request\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\"\xba\x04\n=CPlayer_GetPurchasedAndUpgradedProfileCustomizations_Response\x12w\n\x18purchased_customizations\x18\x01 \x03(\x0b\x32U.CPlayer_GetPurchasedAndUpgradedProfileCustomizations_Response.PurchasedCustomization\x12u\n\x17upgraded_customizations\x18\x02 \x03(\x0b\x32T.CPlayer_GetPurchasedAndUpgradedProfileCustomizations_Response.UpgradedCustomization\x1a\x83\x01\n\x16PurchasedCustomization\x12Z\n\x12\x63ustomization_type\x18\x01 \x01(\x0e\x32\x1a.EProfileCustomizationType:\"k_EProfileCustomizationTypeInvalid\x12\r\n\x05\x63ount\x18\x02 \x01(\r\x1a\x82\x01\n\x15UpgradedCustomization\x12Z\n\x12\x63ustomization_type\x18\x01 \x01(\x0e\x32\x1a.EProfileCustomizationType:\"k_EProfileCustomizationTypeInvalid\x12\r\n\x05level\x18\x02 \x01(\r\"+\n)CPlayer_GetProfileThemesAvailable_Request\"S\n*CPlayer_GetProfileThemesAvailable_Response\x12%\n\x0eprofile_themes\x18\x01 \x03(\x0b\x32\r.ProfileTheme\"3\n\x1f\x43Player_SetProfileTheme_Request\x12\x10\n\x08theme_id\x18\x01 \x01(\t\"\"\n CPlayer_SetProfileTheme_Response\"Y\n%CPlayer_SetProfilePreferences_Request\x12\x30\n\x13profile_preferences\x18\x01 \x01(\x0b\x32\x13.ProfilePreferences\"(\n&CPlayer_SetProfilePreferences_Response\"I\n#CPlayer_PostStatusToFriends_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x13\n\x0bstatus_text\x18\x02 \x01(\t\"&\n$CPlayer_PostStatusToFriends_Response\"e\n\x1f\x43Player_GetPostedStatus_Request\x12\x32\n\x07steamid\x18\x01 \x01(\x04\x42!\x82\xb5\x18\x1dThe player we\'re asking about\x12\x0e\n\x06postid\x18\x02 \x01(\x04\"z\n CPlayer_GetPostedStatus_Response\x12\x11\n\taccountid\x18\x01 \x01(\r\x12\x0e\n\x06postid\x18\x02 \x01(\x04\x12\x13\n\x0bstatus_text\x18\x03 \x01(\t\x12\x0f\n\x07\x64\x65leted\x18\x04 \x01(\x08\x12\r\n\x05\x61ppid\x18\x05 \x01(\r\"4\n\"CPlayer_DeletePostedStatus_Request\x12\x0e\n\x06postid\x18\x01 \x01(\x04\"%\n#CPlayer_DeletePostedStatus_Response\"\x82\x01\n\"CPlayer_GetLastPlayedTimes_Request\x12\\\n\x0fmin_last_played\x18\x01 \x01(\rBC\x82\xb5\x18?The most recent last-played time the client already knows about\"\xea\x03\n#CPlayer_GetLastPlayedTimes_Response\x12\x38\n\x05games\x18\x01 \x03(\x0b\x32).CPlayer_GetLastPlayedTimes_Response.Game\x1a\x88\x03\n\x04Game\x12\r\n\x05\x61ppid\x18\x01 \x01(\x05\x12\x15\n\rlast_playtime\x18\x02 \x01(\r\x12\x17\n\x0fplaytime_2weeks\x18\x03 \x01(\x05\x12\x18\n\x10playtime_forever\x18\x04 \x01(\x05\x12\x16\n\x0e\x66irst_playtime\x18\x05 \x01(\r\x12 \n\x18playtime_windows_forever\x18\x06 \x01(\x05\x12\x1c\n\x14playtime_mac_forever\x18\x07 \x01(\x05\x12\x1e\n\x16playtime_linux_forever\x18\x08 \x01(\x05\x12\x1e\n\x16\x66irst_windows_playtime\x18\t \x01(\r\x12\x1a\n\x12\x66irst_mac_playtime\x18\n \x01(\r\x12\x1c\n\x14\x66irst_linux_playtime\x18\x0b \x01(\r\x12\x1d\n\x15last_windows_playtime\x18\x0c \x01(\r\x12\x19\n\x11last_mac_playtime\x18\r \x01(\r\x12\x1b\n\x13last_linux_playtime\x18\x0e \x01(\r\"$\n\"CPlayer_GetTimeSSAAccepted_Request\"z\n#CPlayer_GetTimeSSAAccepted_Response\x12\x19\n\x11time_ssa_accepted\x18\x01 \x01(\r\x12\x18\n\x10time_ssa_updated\x18\x02 \x01(\r\x12\x1e\n\x16time_chinassa_accepted\x18\x03 \x01(\r\"w\n\x19\x43Player_AcceptSSA_Request\x12\x41\n\x0e\x61greement_type\x18\x01 \x01(\x0e\x32\x0f.EAgreementType:\x18k_EAgreementType_Invalid\x12\x17\n\x0ftime_signed_utc\x18\x02 \x01(\r\"\x1c\n\x1a\x43Player_AcceptSSA_Response\"!\n\x1f\x43Player_GetNicknameList_Request\"\x9e\x01\n CPlayer_GetNicknameList_Response\x12\x43\n\tnicknames\x18\x01 \x03(\x0b\x32\x30.CPlayer_GetNicknameList_Response.PlayerNickname\x1a\x35\n\x0ePlayerNickname\x12\x11\n\taccountid\x18\x01 \x01(\x07\x12\x10\n\x08nickname\x18\x02 \x01(\t\")\n\'CPlayer_GetPerFriendPreferences_Request\"\xd1\x05\n\x14PerFriendPreferences\x12\x11\n\taccountid\x18\x01 \x01(\x07\x12\x10\n\x08nickname\x18\x02 \x01(\t\x12_\n\x18notifications_showingame\x18\x03 \x01(\x0e\x32\x15.ENotificationSetting:&k_ENotificationSettingNotifyUseDefault\x12_\n\x18notifications_showonline\x18\x04 \x01(\x0e\x32\x15.ENotificationSetting:&k_ENotificationSettingNotifyUseDefault\x12\x61\n\x1anotifications_showmessages\x18\x05 \x01(\x0e\x32\x15.ENotificationSetting:&k_ENotificationSettingNotifyUseDefault\x12X\n\x11sounds_showingame\x18\x06 \x01(\x0e\x32\x15.ENotificationSetting:&k_ENotificationSettingNotifyUseDefault\x12X\n\x11sounds_showonline\x18\x07 \x01(\x0e\x32\x15.ENotificationSetting:&k_ENotificationSettingNotifyUseDefault\x12Z\n\x13sounds_showmessages\x18\x08 \x01(\x0e\x32\x15.ENotificationSetting:&k_ENotificationSettingNotifyUseDefault\x12_\n\x18notifications_sendmobile\x18\t \x01(\x0e\x32\x15.ENotificationSetting:&k_ENotificationSettingNotifyUseDefault\"V\n(CPlayer_GetPerFriendPreferences_Response\x12*\n\x0bpreferences\x18\x01 \x03(\x0b\x32\x15.PerFriendPreferences\"U\n\'CPlayer_SetPerFriendPreferences_Request\x12*\n\x0bpreferences\x18\x01 \x01(\x0b\x32\x15.PerFriendPreferences\"*\n(CPlayer_SetPerFriendPreferences_Response\"c\n\x19\x43Player_AddFriend_Request\x12\x46\n\x07steamid\x18\x01 \x01(\x06\x42\x35\x82\xb5\x18\x31Steam ID of user to whom to send a friend invite.\"\x86\x02\n\x1a\x43Player_AddFriend_Response\x12O\n\x0binvite_sent\x18\x01 \x01(\x08\x42:\x82\xb5\x18\x36True if the operation was successful, false otherwise.\x12\x86\x01\n\x13\x66riend_relationship\x18\x02 \x01(\rBi\x82\xb5\x18\x65the resulting relationship.  Depending on state, may move directly to friends rather than invite sent\x12\x0e\n\x06result\x18\x03 \x01(\x05\"R\n\x1c\x43Player_RemoveFriend_Request\x12\x32\n\x07steamid\x18\x01 \x01(\x06\x42!\x82\xb5\x18\x1dSteam ID of friend to remove.\"\\\n\x1d\x43Player_RemoveFriend_Response\x12;\n\x13\x66riend_relationship\x18\x01 \x01(\rB\x1e\x82\xb5\x18\x1athe resulting relationship\"\x7f\n\x1c\x43Player_IgnoreFriend_Request\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12N\n\x08unignore\x18\x02 \x01(\x08\x42<\x82\xb5\x18\x38If set, remove from ignore/block list instead of adding \"\\\n\x1d\x43Player_IgnoreFriend_Response\x12;\n\x13\x66riend_relationship\x18\x01 \x01(\rB\x1e\x82\xb5\x18\x1athe resulting relationship\")\n\'CPlayer_GetCommunityPreferences_Request\"\xd7\x02\n\x1c\x43Player_CommunityPreferences\x12)\n\x1bhide_adult_content_violence\x18\x01 \x01(\x08:\x04true\x12$\n\x16hide_adult_content_sex\x18\x02 \x01(\x08:\x04true\x12%\n\x16parenthesize_nicknames\x18\x04 \x01(\x08:\x05\x66\x61lse\x12V\n\x13text_filter_setting\x18\x05 \x01(\x0e\x32\x13.ETextFilterSetting:$k_ETextFilterSettingSteamLabOptedOut\x12(\n\x1atext_filter_ignore_friends\x18\x06 \x01(\x08:\x04true\x12\"\n\x1atext_filter_words_revision\x18\x07 \x01(\r\x12\x19\n\x11timestamp_updated\x18\x03 \x01(\r\"^\n(CPlayer_GetCommunityPreferences_Response\x12\x32\n\x0bpreferences\x18\x01 \x01(\x0b\x32\x1d.CPlayer_CommunityPreferences\"]\n\'CPlayer_SetCommunityPreferences_Request\x12\x32\n\x0bpreferences\x18\x01 \x01(\x0b\x32\x1d.CPlayer_CommunityPreferences\"*\n(CPlayer_SetCommunityPreferences_Response\"$\n\"CPlayer_GetTextFilterWords_Request\"\x8e\x01\n\x17\x43Player_TextFilterWords\x12\'\n\x1ftext_filter_custom_banned_words\x18\x01 \x03(\t\x12&\n\x1etext_filter_custom_clean_words\x18\x02 \x03(\t\x12\"\n\x1atext_filter_words_revision\x18\x03 \x01(\r\"N\n#CPlayer_GetTextFilterWords_Response\x12\'\n\x05words\x18\x01 \x01(\x0b\x32\x18.CPlayer_TextFilterWords\"@\n,CPlayer_GetNewSteamAnnouncementState_Request\x12\x10\n\x08language\x18\x01 \x01(\x05\"\xa6\x01\n-CPlayer_GetNewSteamAnnouncementState_Response\x12\r\n\x05state\x18\x01 \x01(\x05\x12\x1d\n\x15\x61nnouncement_headline\x18\x02 \x01(\t\x12\x18\n\x10\x61nnouncement_url\x18\x03 \x01(\t\x12\x13\n\x0btime_posted\x18\x04 \x01(\r\x12\x18\n\x10\x61nnouncement_gid\x18\x05 \x01(\x04\"`\n/CPlayer_UpdateSteamAnnouncementLastRead_Request\x12\x18\n\x10\x61nnouncement_gid\x18\x01 \x01(\x04\x12\x13\n\x0btime_posted\x18\x02 \x01(\r\"2\n0CPlayer_UpdateSteamAnnouncementLastRead_Response\"$\n\"CPlayer_GetPrivacySettings_Request\"\xcc\x01\n\x10\x43PrivacySettings\x12\x15\n\rprivacy_state\x18\x01 \x01(\x05\x12\x1f\n\x17privacy_state_inventory\x18\x02 \x01(\x05\x12\x1b\n\x13privacy_state_gifts\x18\x03 \x01(\x05\x12 \n\x18privacy_state_ownedgames\x18\x04 \x01(\x05\x12\x1e\n\x16privacy_state_playtime\x18\x05 \x01(\x05\x12!\n\x19privacy_state_friendslist\x18\x06 \x01(\x05\"R\n#CPlayer_GetPrivacySettings_Response\x12+\n\x10privacy_settings\x18\x01 \x01(\x0b\x32\x11.CPrivacySettings\"3\n\"CPlayer_GetDurationControl_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\"\xf0\x01\n#CPlayer_GetDurationControl_Response\x12\x12\n\nis_enabled\x18\x01 \x01(\x08\x12\x0f\n\x07seconds\x18\x02 \x01(\x05\x12\x15\n\rseconds_today\x18\x03 \x01(\x05\x12\x1d\n\x15is_steamchina_account\x18\x04 \x01(\x08\x12\x17\n\x0fis_age_verified\x18\x05 \x01(\x08\x12\x1d\n\x15seconds_allowed_today\x18\x06 \x01(\r\x12 \n\x18\x61ge_verification_pending\x18\x07 \x01(\x08\x12\x14\n\x0c\x62lock_minors\x18\x08 \x01(\x08\"`\n$CPlayer_LastPlayedTimes_Notification\x12\x38\n\x05games\x18\x01 \x03(\x0b\x32).CPlayer_GetLastPlayedTimes_Response.Game\"j\n*CPlayer_FriendNicknameChanged_Notification\x12\x11\n\taccountid\x18\x01 \x01(\x07\x12\x10\n\x08nickname\x18\x02 \x01(\t\x12\x17\n\x0fis_echo_to_self\x18\x03 \x01(\x08\"K\n6CPlayer_FriendEquippedProfileItemsChanged_Notification\x12\x11\n\taccountid\x18\x01 \x01(\x07\"\xa7\x01\n.CPlayer_NewSteamAnnouncementState_Notification\x12\r\n\x05state\x18\x01 \x01(\x05\x12\x1d\n\x15\x61nnouncement_headline\x18\x02 \x01(\t\x12\x18\n\x10\x61nnouncement_url\x18\x03 \x01(\t\x12\x13\n\x0btime_posted\x18\x04 \x01(\r\x12\x18\n\x10\x61nnouncement_gid\x18\x05 \x01(\x04\"f\n0CPlayer_CommunityPreferencesChanged_Notification\x12\x32\n\x0bpreferences\x18\x01 \x01(\x0b\x32\x1d.CPlayer_CommunityPreferences\"V\n+CPlayer_TextFilterWordsChanged_Notification\x12\'\n\x05words\x18\x01 \x01(\x0b\x32\x18.CPlayer_TextFilterWords\"q\n0CPlayer_PerFriendPreferencesChanged_Notification\x12\x11\n\taccountid\x18\x01 \x01(\x07\x12*\n\x0bpreferences\x18\x02 \x01(\x0b\x32\x15.PerFriendPreferences\"Z\n+CPlayer_PrivacySettingsChanged_Notification\x12+\n\x10privacy_settings\x18\x01 \x01(\x0b\x32\x11.CPrivacySettings*\x99\x02\n\x1a\x45ProfileCustomizationStyle\x12\'\n#k_EProfileCustomizationStyleDefault\x10\x00\x12(\n$k_EProfileCustomizationStyleSelected\x10\x01\x12&\n\"k_EProfileCustomizationStyleRarest\x10\x02\x12*\n&k_EProfileCustomizationStyleMostRecent\x10\x03\x12&\n\"k_EProfileCustomizationStyleRandom\x10\x04\x12,\n(k_EProfileCustomizationStyleHighestRated\x10\x05*v\n\x0e\x45\x41greementType\x12%\n\x18k_EAgreementType_Invalid\x10\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01\x12\x1e\n\x1ak_EAgreementType_GlobalSSA\x10\x00\x12\x1d\n\x19k_EAgreementType_ChinaSSA\x10\x01*\x85\x01\n\x14\x45NotificationSetting\x12*\n&k_ENotificationSettingNotifyUseDefault\x10\x00\x12 \n\x1ck_ENotificationSettingAlways\x10\x01\x12\x1f\n\x1bk_ENotificationSettingNever\x10\x02*\xb0\x01\n\x12\x45TextFilterSetting\x12(\n$k_ETextFilterSettingSteamLabOptedOut\x10\x00\x12\x1f\n\x1bk_ETextFilterSettingEnabled\x10\x01\x12-\n)k_ETextFilterSettingEnabledAllowProfanity\x10\x02\x12 \n\x1ck_ETextFilterSettingDisabled\x10\x03\x32\xd4;\n\x06Player\x12\xef\x01\n\"GetMutualFriendsForIncomingInvites\x12\x33.CPlayer_GetMutualFriendsForIncomingInvites_Request\x1a\x34.CPlayer_GetMutualFriendsForIncomingInvites_Response\"^\x82\xb5\x18ZGet me the mutual friends for each of my pending incoming invites (individuals and clans).\x12\x80\x01\n\rGetOwnedGames\x12\x1e.CPlayer_GetOwnedGames_Request\x1a\x1f.CPlayer_GetOwnedGames_Response\".\x82\xb5\x18*Return a list of games owned by the player\x12\x7f\n\x0bGetPlayNext\x12\x1c.CPlayer_GetPlayNext_Request\x1a\x1d.CPlayer_GetPlayNext_Response\"3\x82\xb5\x18/Return suggested games for player to play next.\x12\xb8\x01\n\x16GetFriendsGameplayInfo\x12\'.CPlayer_GetFriendsGameplayInfo_Request\x1a(.CPlayer_GetFriendsGameplayInfo_Response\"K\x82\xb5\x18GGet a list of friends who are playing, have played, own, or want a game\x12\xb6\x01\n\x12GetGameBadgeLevels\x12#.CPlayer_GetGameBadgeLevels_Request\x1a$.CPlayer_GetGameBadgeLevels_Response\"U\x82\xb5\x18QReturns the Steam Level of a user, the Badge level for the game, and if it\'s foil\x12\xa6\x01\n\x14GetProfileBackground\x12%.CPlayer_GetProfileBackground_Request\x1a&.CPlayer_GetProfileBackground_Response\"?\x82\xb5\x18;Gets which profile background is active for a specific user\x12\x8d\x01\n\x14SetProfileBackground\x12%.CPlayer_SetProfileBackground_Request\x1a&.CPlayer_SetProfileBackground_Response\"&\x82\xb5\x18\"Sets the user\'s profile background\x12\xb7\x01\n\x18GetMiniProfileBackground\x12).CPlayer_GetMiniProfileBackground_Request\x1a*.CPlayer_GetMiniProfileBackground_Response\"D\x82\xb5\x18@Gets which mini profile background is active for a specific user\x12\x9e\x01\n\x18SetMiniProfileBackground\x12).CPlayer_SetMiniProfileBackground_Request\x1a*.CPlayer_SetMiniProfileBackground_Response\"+\x82\xb5\x18\'Sets the user\'s mini profile background\x12\x8e\x01\n\x0eGetAvatarFrame\x12\x1f.CPlayer_GetAvatarFrame_Request\x1a .CPlayer_GetAvatarFrame_Response\"9\x82\xb5\x18\x35Gets which avatar frame is active for a specific user\x12\x87\x01\n\x0eSetAvatarFrame\x12\x1f.CPlayer_SetAvatarFrame_Request\x1a .CPlayer_SetAvatarFrame_Response\"2\x82\xb5\x18.Sets the user\'s avatar frame for their profile\x12\x9a\x01\n\x11GetAnimatedAvatar\x12\".CPlayer_GetAnimatedAvatar_Request\x1a#.CPlayer_GetAnimatedAvatar_Response\"<\x82\xb5\x18\x38Gets which animated avatar is active for a specific user\x12\x93\x01\n\x11SetAnimatedAvatar\x12\".CPlayer_SetAnimatedAvatar_Request\x1a#.CPlayer_SetAnimatedAvatar_Response\"5\x82\xb5\x18\x31Sets the user\'s animated avatar for their profile\x12\xb8\x01\n\x18GetSteamDeckKeyboardSkin\x12).CPlayer_GetSteamDeckKeyboardSkin_Request\x1a*.CPlayer_GetSteamDeckKeyboardSkin_Response\"E\x82\xb5\x18\x41Gets which Steam Deck keyboard skin is active for a specific user\x12\xa7\x01\n\x18SetSteamDeckKeyboardSkin\x12).CPlayer_SetSteamDeckKeyboardSkin_Request\x1a*.CPlayer_SetSteamDeckKeyboardSkin_Response\"4\x82\xb5\x18\x30Sets the user\'s current Steam Deck keyboard skin\x12\xa0\x01\n\x14GetProfileItemsOwned\x12%.CPlayer_GetProfileItemsOwned_Request\x1a&.CPlayer_GetProfileItemsOwned_Response\"9\x82\xb5\x18\x35Returns the items the user can equip on their profile\x12\xac\x01\n\x17GetProfileItemsEquipped\x12(.CPlayer_GetProfileItemsEquipped_Request\x1a).CPlayer_GetProfileItemsEquipped_Response\"<\x82\xb5\x18\x38Returns the items the user has equipped on their profile\x12\xa7\x01\n\x1bSetEquippedProfileItemFlags\x12,.CPlayer_SetEquippedProfileItemFlags_Request\x1a-.CPlayer_SetEquippedProfileItemFlags_Response\"+\x82\xb5\x18\'Sets special flags on the equipped item\x12\x91\x01\n\x0fGetEmoticonList\x12 .CPlayer_GetEmoticonList_Request\x1a!.CPlayer_GetEmoticonList_Response\"9\x82\xb5\x18\x35Gets a list of the emoticons a user has with metadata\x12\xb9\x01\n\x17GetAchievementsProgress\x12(.CPlayer_GetAchievementsProgress_Request\x1a).CPlayer_GetAchievementsProgress_Response\"I\x82\xb5\x18\x45Gets the achievement completion stats for the specified list of apps.\x12\x90\x01\n\x10GetFavoriteBadge\x12!.CPlayer_GetFavoriteBadge_Request\x1a\".CPlayer_GetFavoriteBadge_Response\"5\x82\xb5\x18\x31Gets the badge the user has set as their favorite\x12\x84\x01\n\x10SetFavoriteBadge\x12!.CPlayer_SetFavoriteBadge_Request\x1a\".CPlayer_SetFavoriteBadge_Response\")\x82\xb5\x18%Sets the badge  as the users favorite\x12\xa5\x01\n\x17GetProfileCustomization\x12(.CPlayer_GetProfileCustomization_Request\x1a).CPlayer_GetProfileCustomization_Response\"5\x82\xb5\x18\x31Returns the customizations (if any) for a profile\x12\xbe\x01\n!GetPurchasedProfileCustomizations\x12\x32.CPlayer_GetPurchasedProfileCustomizations_Request\x1a\x33.CPlayer_GetPurchasedProfileCustomizations_Response\"0\x82\xb5\x18,Returns the purchased profile customizations\x12\xec\x01\n,GetPurchasedAndUpgradedProfileCustomizations\x12=.CPlayer_GetPurchasedAndUpgradedProfileCustomizations_Request\x1a>.CPlayer_GetPurchasedAndUpgradedProfileCustomizations_Response\"=\x82\xb5\x18\x39Returns the purchased and upgraded profile customizations\x12\x9d\x01\n\x19GetProfileThemesAvailable\x12*.CPlayer_GetProfileThemesAvailable_Request\x1a+.CPlayer_GetProfileThemesAvailable_Response\"\'\x82\xb5\x18#Gets themes available for the user.\x12{\n\x0fSetProfileTheme\x12 .CPlayer_SetProfileTheme_Request\x1a!.CPlayer_SetProfileTheme_Response\"#\x82\xb5\x18\x1fSelects a theme for the profile\x12\x86\x01\n\x15SetProfilePreferences\x12&.CPlayer_SetProfilePreferences_Request\x1a\'.CPlayer_SetProfilePreferences_Response\"\x1c\x82\xb5\x18\x18Sets profile preferences\x12\x91\x01\n\x13PostStatusToFriends\x12$.CPlayer_PostStatusToFriends_Request\x1a%.CPlayer_PostStatusToFriends_Response\"-\x82\xb5\x18)Posts custom status text into the blotter\x12\x86\x01\n\x0fGetPostedStatus\x12 .CPlayer_GetPostedStatus_Request\x1a!.CPlayer_GetPostedStatus_Response\".\x82\xb5\x18*Gets a posted status text for a user by id\x12\x92\x01\n\x12\x44\x65letePostedStatus\x12#.CPlayer_DeletePostedStatus_Request\x1a$.CPlayer_DeletePostedStatus_Response\"1\x82\xb5\x18-Deletes a posted status text for a user by id\x12\x95\x01\n\x18\x43lientGetLastPlayedTimes\x12#.CPlayer_GetLastPlayedTimes_Request\x1a$.CPlayer_GetLastPlayedTimes_Response\".\x82\xb5\x18*Gets the last-played times for the account\x12\x91\x01\n\x12GetTimeSSAAccepted\x12#.CPlayer_GetTimeSSAAccepted_Request\x1a$.CPlayer_GetTimeSSAAccepted_Response\"0\x82\xb5\x18,Gets the time when the user accepted the SSA\x12\x63\n\tAcceptSSA\x12\x1a.CPlayer_AcceptSSA_Request\x1a\x1b.CPlayer_AcceptSSA_Response\"\x1d\x82\xb5\x18\x19User is accepting the SSA\x12\x94\x01\n\x0fGetNicknameList\x12 .CPlayer_GetNicknameList_Request\x1a!.CPlayer_GetNicknameList_Response\"<\x82\xb5\x18\x38Gets the list of nicknames this user has for other users\x12\xbd\x01\n\x17GetPerFriendPreferences\x12(.CPlayer_GetPerFriendPreferences_Request\x1a).CPlayer_GetPerFriendPreferences_Response\"M\x82\xb5\x18IGets the list of per-friend preferences this user has set for other users\x12\xb7\x01\n\x17SetPerFriendPreferences\x12(.CPlayer_SetPerFriendPreferences_Request\x1a).CPlayer_SetPerFriendPreferences_Response\"G\x82\xb5\x18\x43Sets the logged in user\'s per-friend preferences for the given user\x12s\n\tAddFriend\x12\x1a.CPlayer_AddFriend_Request\x1a\x1b.CPlayer_AddFriend_Response\"-\x82\xb5\x18)Invites another Steam user to be a friend\x12\x82\x01\n\x0cRemoveFriend\x12\x1d.CPlayer_RemoveFriend_Request\x1a\x1e.CPlayer_RemoveFriend_Response\"3\x82\xb5\x18/Removes a friend or ignores a friend suggestion\x12\xa6\x01\n\x0cIgnoreFriend\x12\x1d.CPlayer_IgnoreFriend_Request\x1a\x1e.CPlayer_IgnoreFriend_Response\"W\x82\xb5\x18SBlocks or unblocks communication with the user.  Despite name, can be a non-friend.\x12\x9e\x01\n\x17GetCommunityPreferences\x12(.CPlayer_GetCommunityPreferences_Request\x1a).CPlayer_GetCommunityPreferences_Response\".\x82\xb5\x18*Returns the player\'s community preferences\x12\x9b\x01\n\x17SetCommunityPreferences\x12(.CPlayer_SetCommunityPreferences_Request\x1a).CPlayer_SetCommunityPreferences_Response\"+\x82\xb5\x18\'Sets the player\'s community preferences\x12\x9b\x01\n\x12GetTextFilterWords\x12#.CPlayer_GetTextFilterWords_Request\x1a$.CPlayer_GetTextFilterWords_Response\":\x82\xb5\x18\x36Get the custom text filtering dictionary for this user\x12\xde\x01\n\x1cGetNewSteamAnnouncementState\x12-.CPlayer_GetNewSteamAnnouncementState_Request\x1a..CPlayer_GetNewSteamAnnouncementState_Response\"_\x82\xb5\x18[Calculates and returns what to display for UI that renders new steam announcement available\x12\xbc\x01\n\x1fUpdateSteamAnnouncementLastRead\x12\x30.CPlayer_UpdateSteamAnnouncementLastRead_Request\x1a\x31.CPlayer_UpdateSteamAnnouncementLastRead_Response\"4\x82\xb5\x18\x30Marks latest announcement timestamp read by user\x12\x82\x01\n\x12GetPrivacySettings\x12#.CPlayer_GetPrivacySettings_Request\x1a$.CPlayer_GetPrivacySettings_Response\"!\x82\xb5\x18\x1dGet current privacy settings.\x12\x8c\x01\n\x12GetDurationControl\x12#.CPlayer_GetDurationControl_Request\x1a$.CPlayer_GetDurationControl_Response\"+\x82\xb5\x18\'Get gameplay duration control settings.\x1a-\x82\xb5\x18)A service for accessing Steam player data2\xa6\x0b\n\x0cPlayerClient\x12\x8c\x01\n\x15NotifyLastPlayedTimes\x12%.CPlayer_LastPlayedTimes_Notification\x1a\x0b.NoResponse\"?\x82\xb5\x18;Notification from server to client of more recent play time\x12\xa4\x01\n\x1bNotifyFriendNicknameChanged\x12+.CPlayer_FriendNicknameChanged_Notification\x1a\x0b.NoResponse\"K\x82\xb5\x18GNotification from server to client that a friend\'s nickname has changed\x12\xcb\x01\n\'NotifyFriendEquippedProfileItemsChanged\x12\x37.CPlayer_FriendEquippedProfileItemsChanged_Notification\x1a\x0b.NoResponse\"Z\x82\xb5\x18VNotification from server to client that a friend\'s equipped profile items have changed\x12\xa4\x01\n\x1fNotifyNewSteamAnnouncementState\x12/.CPlayer_NewSteamAnnouncementState_Notification\x1a\x0b.NoResponse\"C\x82\xb5\x18?Notifies client of changes to steam announcement state for user\x12\xb9\x01\n!NotifyCommunityPreferencesChanged\x12\x31.CPlayer_CommunityPreferencesChanged_Notification\x1a\x0b.NoResponse\"T\x82\xb5\x18PNotification from server to client that their community preferences have changed\x12\xb2\x01\n\x1cNotifyTextFilterWordsChanged\x12,.CPlayer_TextFilterWordsChanged_Notification\x1a\x0b.NoResponse\"W\x82\xb5\x18SNotification from server to client that their text filtering dictionary has changed\x12\xaa\x01\n!NotifyPerFriendPreferencesChanged\x12\x31.CPlayer_PerFriendPreferencesChanged_Notification\x1a\x0b.NoResponse\"E\x82\xb5\x18\x41Notification from server that per-friend preferences have changed\x12\x9c\x01\n#NotifyPrivacyPrivacySettingsChanged\x12,.CPlayer_PrivacySettingsChanged_Notification\x1a\x0b.NoResponse\":\x82\xb5\x18\x36Notification from server that privacy settings changed\x1a.\x82\xb5\x18&Steam player data client notifications\xc0\xb5\x18\x02\x42\x03\x90\x01\x01'
   ,
-  dependencies=[steammessages__unified__base__pb2.DESCRIPTOR,enums__pb2.DESCRIPTOR,])
+  dependencies=[steammessages__base__pb2.DESCRIPTOR,steammessages__unified__base__pb2.DESCRIPTOR,enums__pb2.DESCRIPTOR,])
 
 _EPROFILECUSTOMIZATIONSTYLE = _descriptor.EnumDescriptor(
   name='EProfileCustomizationStyle',
   full_name='EProfileCustomizationStyle',
   filename=None,
   file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
   values=[
     _descriptor.EnumValueDescriptor(
       name='k_EProfileCustomizationStyleDefault', index=0, number=0,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EProfileCustomizationStyleSelected', index=1, number=1,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EProfileCustomizationStyleRarest', index=2, number=2,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EProfileCustomizationStyleMostRecent', index=3, number=3,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EProfileCustomizationStyleRandom', index=4, number=4,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EProfileCustomizationStyleHighestRated', index=5, number=5,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
   ],
   containing_type=None,
   serialized_options=None,
-  serialized_start=17468,
-  serialized_end=17749,
+  serialized_start=15707,
+  serialized_end=15988,
 )
 _sym_db.RegisterEnumDescriptor(_EPROFILECUSTOMIZATIONSTYLE)
 
@@ -73,24 +80,28 @@ _EAGREEMENTTYPE = _descriptor.EnumDescriptor(
   full_name='EAgreementType',
   filename=None,
   file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
   values=[
     _descriptor.EnumValueDescriptor(
       name='k_EAgreementType_Invalid', index=0, number=-1,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EAgreementType_GlobalSSA', index=1, number=0,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EAgreementType_ChinaSSA', index=2, number=1,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
   ],
   containing_type=None,
   serialized_options=None,
-  serialized_start=17751,
-  serialized_end=17869,
+  serialized_start=15990,
+  serialized_end=16108,
 )
 _sym_db.RegisterEnumDescriptor(_EAGREEMENTTYPE)
 
@@ -100,24 +111,28 @@ _ENOTIFICATIONSETTING = _descriptor.EnumDescriptor(
   full_name='ENotificationSetting',
   filename=None,
   file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
   values=[
     _descriptor.EnumValueDescriptor(
       name='k_ENotificationSettingNotifyUseDefault', index=0, number=0,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_ENotificationSettingAlways', index=1, number=1,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_ENotificationSettingNever', index=2, number=2,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
   ],
   containing_type=None,
   serialized_options=None,
-  serialized_start=17872,
-  serialized_end=18005,
+  serialized_start=16111,
+  serialized_end=16244,
 )
 _sym_db.RegisterEnumDescriptor(_ENOTIFICATIONSETTING)
 
@@ -127,28 +142,33 @@ _ETEXTFILTERSETTING = _descriptor.EnumDescriptor(
   full_name='ETextFilterSetting',
   filename=None,
   file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
   values=[
     _descriptor.EnumValueDescriptor(
       name='k_ETextFilterSettingSteamLabOptedOut', index=0, number=0,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_ETextFilterSettingEnabled', index=1, number=1,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_ETextFilterSettingEnabledAllowProfanity', index=2, number=2,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_ETextFilterSettingDisabled', index=3, number=3,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
   ],
   containing_type=None,
   serialized_options=None,
-  serialized_start=18008,
-  serialized_end=18184,
+  serialized_start=16247,
+  serialized_end=16423,
 )
 _sym_db.RegisterEnumDescriptor(_ETEXTFILTERSETTING)
 
@@ -178,6 +198,7 @@ _CPLAYER_GETMUTUALFRIENDSFORINCOMINGINVITES_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -191,8 +212,8 @@ _CPLAYER_GETMUTUALFRIENDSFORINCOMINGINVITES_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=77,
-  serialized_end=129,
+  serialized_start=103,
+  serialized_end=155,
 )
 
 
@@ -202,6 +223,7 @@ _CPLAYER_INCOMINGINVITEMUTUALFRIENDLIST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CPlayer_IncomingInviteMutualFriendList.steamid', index=0,
@@ -209,14 +231,14 @@ _CPLAYER_INCOMINGINVITEMUTUALFRIENDLIST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='mutual_friend_account_ids', full_name='CPlayer_IncomingInviteMutualFriendList.mutual_friend_account_ids', index=1,
       number=2, type=13, cpp_type=3, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -229,8 +251,8 @@ _CPLAYER_INCOMINGINVITEMUTUALFRIENDLIST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=131,
-  serialized_end=223,
+  serialized_start=157,
+  serialized_end=249,
 )
 
 
@@ -240,6 +262,7 @@ _CPLAYER_GETMUTUALFRIENDSFORINCOMINGINVITES_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='incoming_invite_mutual_friends_lists', full_name='CPlayer_GetMutualFriendsForIncomingInvites_Response.incoming_invite_mutual_friends_lists', index=0,
@@ -247,7 +270,7 @@ _CPLAYER_GETMUTUALFRIENDSFORINCOMINGINVITES_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -260,8 +283,8 @@ _CPLAYER_GETMUTUALFRIENDSFORINCOMINGINVITES_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=226,
-  serialized_end=366,
+  serialized_start=252,
+  serialized_end=392,
 )
 
 
@@ -271,6 +294,7 @@ _CPLAYER_GETOWNEDGAMES_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CPlayer_GetOwnedGames_Request.steamid', index=0,
@@ -278,42 +302,56 @@ _CPLAYER_GETOWNEDGAMES_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\035The player we\'re asking about'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\035The player we\'re asking about', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='include_appinfo', full_name='CPlayer_GetOwnedGames_Request.include_appinfo', index=1,
       number=2, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030?true if we want additional details (name, icon) about each game'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030?true if we want additional details (name, icon) about each game', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='include_played_free_games', full_name='CPlayer_GetOwnedGames_Request.include_played_free_games', index=2,
       number=3, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030eFree games are excluded by default.  If this is set, free games the user has played will be returned.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030eFree games are excluded by default.  If this is set, free games the user has played will be returned.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='appids_filter', full_name='CPlayer_GetOwnedGames_Request.appids_filter', index=3,
       number=4, type=13, cpp_type=3, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\0302if set, restricts result set to the passed in apps'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\0302if set, restricts result set to the passed in apps', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='include_free_sub', full_name='CPlayer_GetOwnedGames_Request.include_free_sub', index=4,
       number=5, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030>Some games are in the free sub, which are excluded by default.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030>Some games are in the free sub, which are excluded by default.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='skip_unvetted_apps', full_name='CPlayer_GetOwnedGames_Request.skip_unvetted_apps', index=5,
       number=6, type=8, cpp_type=7, label=1,
       has_default_value=True, default_value=True,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030 if set, skip unvetted store apps'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030 if set, skip unvetted store apps', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='language', full_name='CPlayer_GetOwnedGames_Request.language', index=6,
+      number=7, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030$Will return appinfo in this language', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='include_extended_appinfo', full_name='CPlayer_GetOwnedGames_Request.include_extended_appinfo', index=7,
+      number=8, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030ztrue if we want even more details (capsule, sortas, and capabilities) about each game.  include_appinfo must also be true.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -326,8 +364,8 @@ _CPLAYER_GETOWNEDGAMES_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=369,
-  serialized_end=934,
+  serialized_start=395,
+  serialized_end=1183,
 )
 
 
@@ -337,6 +375,7 @@ _CPLAYER_GETOWNEDGAMES_RESPONSE_GAME = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CPlayer_GetOwnedGames_Response.Game.appid', index=0,
@@ -344,70 +383,105 @@ _CPLAYER_GETOWNEDGAMES_RESPONSE_GAME = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='name', full_name='CPlayer_GetOwnedGames_Response.Game.name', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='playtime_2weeks', full_name='CPlayer_GetOwnedGames_Response.Game.playtime_2weeks', index=2,
       number=3, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='playtime_forever', full_name='CPlayer_GetOwnedGames_Response.Game.playtime_forever', index=3,
       number=4, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='img_icon_url', full_name='CPlayer_GetOwnedGames_Response.Game.img_icon_url', index=4,
       number=5, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='img_logo_url', full_name='CPlayer_GetOwnedGames_Response.Game.img_logo_url', index=5,
-      number=6, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
-      name='has_community_visible_stats', full_name='CPlayer_GetOwnedGames_Response.Game.has_community_visible_stats', index=6,
+      name='has_community_visible_stats', full_name='CPlayer_GetOwnedGames_Response.Game.has_community_visible_stats', index=5,
       number=7, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
-      name='playtime_windows_forever', full_name='CPlayer_GetOwnedGames_Response.Game.playtime_windows_forever', index=7,
+      name='playtime_windows_forever', full_name='CPlayer_GetOwnedGames_Response.Game.playtime_windows_forever', index=6,
       number=8, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
-      name='playtime_mac_forever', full_name='CPlayer_GetOwnedGames_Response.Game.playtime_mac_forever', index=8,
+      name='playtime_mac_forever', full_name='CPlayer_GetOwnedGames_Response.Game.playtime_mac_forever', index=7,
       number=9, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
-      name='playtime_linux_forever', full_name='CPlayer_GetOwnedGames_Response.Game.playtime_linux_forever', index=9,
+      name='playtime_linux_forever', full_name='CPlayer_GetOwnedGames_Response.Game.playtime_linux_forever', index=8,
       number=10, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='rtime_last_played', full_name='CPlayer_GetOwnedGames_Response.Game.rtime_last_played', index=9,
+      number=11, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='capsule_filename', full_name='CPlayer_GetOwnedGames_Response.Game.capsule_filename', index=10,
+      number=12, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='sort_as', full_name='CPlayer_GetOwnedGames_Response.Game.sort_as', index=11,
+      number=13, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='has_workshop', full_name='CPlayer_GetOwnedGames_Response.Game.has_workshop', index=12,
+      number=14, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='has_market', full_name='CPlayer_GetOwnedGames_Response.Game.has_market', index=13,
+      number=15, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='has_dlc', full_name='CPlayer_GetOwnedGames_Response.Game.has_dlc', index=14,
+      number=16, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -420,8 +494,8 @@ _CPLAYER_GETOWNEDGAMES_RESPONSE_GAME = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1045,
-  serialized_end=1308,
+  serialized_start=1294,
+  serialized_end=1664,
 )
 
 _CPLAYER_GETOWNEDGAMES_RESPONSE = _descriptor.Descriptor(
@@ -430,6 +504,7 @@ _CPLAYER_GETOWNEDGAMES_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='game_count', full_name='CPlayer_GetOwnedGames_Response.game_count', index=0,
@@ -437,14 +512,14 @@ _CPLAYER_GETOWNEDGAMES_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='games', full_name='CPlayer_GetOwnedGames_Response.games', index=1,
       number=2, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -457,8 +532,8 @@ _CPLAYER_GETOWNEDGAMES_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=937,
-  serialized_end=1308,
+  serialized_start=1186,
+  serialized_end=1664,
 )
 
 
@@ -468,6 +543,7 @@ _CPLAYER_GETPLAYNEXT_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='max_age_seconds', full_name='CPlayer_GetPlayNext_Request.max_age_seconds', index=0,
@@ -475,14 +551,14 @@ _CPLAYER_GETPLAYNEXT_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='ignore_appids', full_name='CPlayer_GetPlayNext_Request.ignore_appids', index=1,
       number=2, type=13, cpp_type=3, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -495,8 +571,8 @@ _CPLAYER_GETPLAYNEXT_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1310,
-  serialized_end=1387,
+  serialized_start=1666,
+  serialized_end=1743,
 )
 
 
@@ -506,6 +582,7 @@ _CPLAYER_GETPLAYNEXT_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='last_update_time', full_name='CPlayer_GetPlayNext_Response.last_update_time', index=0,
@@ -513,14 +590,14 @@ _CPLAYER_GETPLAYNEXT_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='appids', full_name='CPlayer_GetPlayNext_Response.appids', index=1,
       number=2, type=13, cpp_type=3, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -533,8 +610,8 @@ _CPLAYER_GETPLAYNEXT_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1389,
-  serialized_end=1461,
+  serialized_start=1745,
+  serialized_end=1817,
 )
 
 
@@ -544,6 +621,7 @@ _CPLAYER_GETFRIENDSGAMEPLAYINFO_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CPlayer_GetFriendsGameplayInfo_Request.appid', index=0,
@@ -551,7 +629,7 @@ _CPLAYER_GETFRIENDSGAMEPLAYINFO_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -564,8 +642,8 @@ _CPLAYER_GETFRIENDSGAMEPLAYINFO_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1463,
-  serialized_end=1518,
+  serialized_start=1819,
+  serialized_end=1874,
 )
 
 
@@ -575,6 +653,7 @@ _CPLAYER_GETFRIENDSGAMEPLAYINFO_RESPONSE_FRIENDSGAMEPLAYINFO = _descriptor.Descr
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CPlayer_GetFriendsGameplayInfo_Response.FriendsGameplayInfo.steamid', index=0,
@@ -582,21 +661,21 @@ _CPLAYER_GETFRIENDSGAMEPLAYINFO_RESPONSE_FRIENDSGAMEPLAYINFO = _descriptor.Descr
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='minutes_played', full_name='CPlayer_GetFriendsGameplayInfo_Response.FriendsGameplayInfo.minutes_played', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='minutes_played_forever', full_name='CPlayer_GetFriendsGameplayInfo_Response.FriendsGameplayInfo.minutes_played_forever', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -609,8 +688,8 @@ _CPLAYER_GETFRIENDSGAMEPLAYINFO_RESPONSE_FRIENDSGAMEPLAYINFO = _descriptor.Descr
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=2049,
-  serialized_end=2143,
+  serialized_start=2405,
+  serialized_end=2499,
 )
 
 _CPLAYER_GETFRIENDSGAMEPLAYINFO_RESPONSE_OWNGAMEPLAYINFO = _descriptor.Descriptor(
@@ -619,6 +698,7 @@ _CPLAYER_GETFRIENDSGAMEPLAYINFO_RESPONSE_OWNGAMEPLAYINFO = _descriptor.Descripto
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CPlayer_GetFriendsGameplayInfo_Response.OwnGameplayInfo.steamid', index=0,
@@ -626,35 +706,35 @@ _CPLAYER_GETFRIENDSGAMEPLAYINFO_RESPONSE_OWNGAMEPLAYINFO = _descriptor.Descripto
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='minutes_played', full_name='CPlayer_GetFriendsGameplayInfo_Response.OwnGameplayInfo.minutes_played', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='minutes_played_forever', full_name='CPlayer_GetFriendsGameplayInfo_Response.OwnGameplayInfo.minutes_played_forever', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='in_wishlist', full_name='CPlayer_GetFriendsGameplayInfo_Response.OwnGameplayInfo.in_wishlist', index=3,
       number=4, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='owned', full_name='CPlayer_GetFriendsGameplayInfo_Response.OwnGameplayInfo.owned', index=4,
       number=5, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -667,8 +747,8 @@ _CPLAYER_GETFRIENDSGAMEPLAYINFO_RESPONSE_OWNGAMEPLAYINFO = _descriptor.Descripto
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=2145,
-  serialized_end=2271,
+  serialized_start=2501,
+  serialized_end=2627,
 )
 
 _CPLAYER_GETFRIENDSGAMEPLAYINFO_RESPONSE = _descriptor.Descriptor(
@@ -677,6 +757,7 @@ _CPLAYER_GETFRIENDSGAMEPLAYINFO_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='your_info', full_name='CPlayer_GetFriendsGameplayInfo_Response.your_info', index=0,
@@ -684,42 +765,42 @@ _CPLAYER_GETFRIENDSGAMEPLAYINFO_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='in_game', full_name='CPlayer_GetFriendsGameplayInfo_Response.in_game', index=1,
       number=2, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='played_recently', full_name='CPlayer_GetFriendsGameplayInfo_Response.played_recently', index=2,
       number=3, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='played_ever', full_name='CPlayer_GetFriendsGameplayInfo_Response.played_ever', index=3,
       number=4, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='owns', full_name='CPlayer_GetFriendsGameplayInfo_Response.owns', index=4,
       number=5, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='in_wishlist', full_name='CPlayer_GetFriendsGameplayInfo_Response.in_wishlist', index=5,
       number=6, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -732,235 +813,8 @@ _CPLAYER_GETFRIENDSGAMEPLAYINFO_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1521,
-  serialized_end=2271,
-)
-
-
-_CPLAYER_GETFRIENDSAPPSACTIVITY_REQUEST = _descriptor.Descriptor(
-  name='CPlayer_GetFriendsAppsActivity_Request',
-  full_name='CPlayer_GetFriendsAppsActivity_Request',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='news_language', full_name='CPlayer_GetFriendsAppsActivity_Request.news_language', index=0,
-      number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030fLanguage for which to query about news items (for the being_discussed results). DEPRECATED AND UNUSED.'), file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='request_flags', full_name='CPlayer_GetFriendsAppsActivity_Request.request_flags', index=1,
-      number=2, type=13, cpp_type=3, label=1,
-      has_default_value=False, default_value=0,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030>Flags describing the request; see EGetFriendsAppsActivityFlags'), file=DESCRIPTOR),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto2',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=2274,
-  serialized_end=2537,
-)
-
-
-_CPLAYER_GETFRIENDSAPPSACTIVITY_RESPONSE_FRIENDPLAYTIME = _descriptor.Descriptor(
-  name='FriendPlayTime',
-  full_name='CPlayer_GetFriendsAppsActivity_Response.FriendPlayTime',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='steamid', full_name='CPlayer_GetFriendsAppsActivity_Response.FriendPlayTime.steamid', index=0,
-      number=1, type=6, cpp_type=4, label=1,
-      has_default_value=False, default_value=0,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='minutes_played_this_week', full_name='CPlayer_GetFriendsAppsActivity_Response.FriendPlayTime.minutes_played_this_week', index=1,
-      number=2, type=13, cpp_type=3, label=1,
-      has_default_value=False, default_value=0,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030MMinutes this friend played the game (from the enclosing structure) this week.'), file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='minutes_played_two_weeks', full_name='CPlayer_GetFriendsAppsActivity_Response.FriendPlayTime.minutes_played_two_weeks', index=2,
-      number=3, type=13, cpp_type=3, label=1,
-      has_default_value=False, default_value=0,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030WMinutes this friend played the game (from the enclosing structure) in the past 2 weeks.'), file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='minutes_played_forever', full_name='CPlayer_GetFriendsAppsActivity_Response.FriendPlayTime.minutes_played_forever', index=3,
-      number=4, type=13, cpp_type=3, label=1,
-      has_default_value=False, default_value=0,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030LMinutes this friend played the game (from the enclosing structure) all time.'), file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='event_count', full_name='CPlayer_GetFriendsAppsActivity_Response.FriendPlayTime.event_count', index=4,
-      number=5, type=13, cpp_type=3, label=1,
-      has_default_value=False, default_value=0,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030mNumber of events involving this user & app. (Only set for results in being_discussed.) DEPRECATED AND UNUSED.'), file=DESCRIPTOR),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto2',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=4101,
-  serialized_end=4629,
-)
-
-_CPLAYER_GETFRIENDSAPPSACTIVITY_RESPONSE_APPFRIENDSINFO = _descriptor.Descriptor(
-  name='AppFriendsInfo',
-  full_name='CPlayer_GetFriendsAppsActivity_Response.AppFriendsInfo',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='appid', full_name='CPlayer_GetFriendsAppsActivity_Response.AppFriendsInfo.appid', index=0,
-      number=1, type=13, cpp_type=3, label=1,
-      has_default_value=False, default_value=0,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='friends', full_name='CPlayer_GetFriendsAppsActivity_Response.AppFriendsInfo.friends', index=1,
-      number=2, type=11, cpp_type=10, label=3,
-      has_default_value=False, default_value=[],
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030{Friends (w/ playtime) that meet a specific criteria -- e.g. for trending, only includes friends w/ more playtime this week.'), file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='display_order', full_name='CPlayer_GetFriendsAppsActivity_Response.AppFriendsInfo.display_order', index=2,
-      number=3, type=13, cpp_type=3, label=1,
-      has_default_value=False, default_value=0,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030nIndex indicating the order in which this app should be displayed, relative to other apps in the same response.'), file=DESCRIPTOR),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto2',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=4632,
-  serialized_end=5007,
-)
-
-_CPLAYER_GETFRIENDSAPPSACTIVITY_RESPONSE = _descriptor.Descriptor(
-  name='CPlayer_GetFriendsAppsActivity_Response',
-  full_name='CPlayer_GetFriendsAppsActivity_Response',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='trending', full_name='CPlayer_GetFriendsAppsActivity_Response.trending', index=0,
-      number=1, type=11, cpp_type=10, label=3,
-      has_default_value=False, default_value=[],
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030iApps that friends have played more this week than last, with list of friends who\'ve played more this week'), file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='recent_purchases', full_name='CPlayer_GetFriendsAppsActivity_Response.recent_purchases', index=1,
-      number=2, type=11, cpp_type=10, label=3,
-      has_default_value=False, default_value=[],
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030]Apps friends have played in the past two weeks for which the user recently acquired a license'), file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='unowned', full_name='CPlayer_GetFriendsAppsActivity_Response.unowned', index=2,
-      number=3, type=11, cpp_type=10, label=3,
-      has_default_value=False, default_value=[],
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030PApps friends have played in the past two weeks for which the user has no license'), file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='popular', full_name='CPlayer_GetFriendsAppsActivity_Response.popular', index=3,
-      number=4, type=11, cpp_type=10, label=3,
-      has_default_value=False, default_value=[],
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030aApps friends have played in the past two weeks, for which the user has a license, sorted by count'), file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='dont_forget', full_name='CPlayer_GetFriendsAppsActivity_Response.dont_forget', index=4,
-      number=5, type=11, cpp_type=10, label=3,
-      has_default_value=False, default_value=[],
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030tApps friends have played in the past two weeks which the user has neither purchased nor played in the past two weeks'), file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='being_discussed', full_name='CPlayer_GetFriendsAppsActivity_Response.being_discussed', index=5,
-      number=6, type=11, cpp_type=10, label=3,
-      has_default_value=False, default_value=[],
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030kOwned apps that friends have posted status or screenshots for in the past two weeks. DEPRECATED AND UNUSED.'), file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='new_to_group', full_name='CPlayer_GetFriendsAppsActivity_Response.new_to_group', index=6,
-      number=7, type=11, cpp_type=10, label=3,
-      has_default_value=False, default_value=[],
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030AOwned apps that none of your friends had played prior to 2 weeks.'), file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='returned_to_group', full_name='CPlayer_GetFriendsAppsActivity_Response.returned_to_group', index=7,
-      number=8, type=11, cpp_type=10, label=3,
-      has_default_value=False, default_value=[],
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030AOwned apps that friends hadn\'t played for a while, but are again.'), file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='active_friend_count', full_name='CPlayer_GetFriendsAppsActivity_Response.active_friend_count', index=8,
-      number=9, type=13, cpp_type=3, label=1,
-      has_default_value=True, default_value=0,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030BNumber of friends with non-trivial activity in the past two weeks.'), file=DESCRIPTOR),
-  ],
-  extensions=[
-  ],
-  nested_types=[_CPLAYER_GETFRIENDSAPPSACTIVITY_RESPONSE_FRIENDPLAYTIME, _CPLAYER_GETFRIENDSAPPSACTIVITY_RESPONSE_APPFRIENDSINFO, ],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto2',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=2540,
-  serialized_end=5007,
+  serialized_start=1877,
+  serialized_end=2627,
 )
 
 
@@ -970,6 +824,7 @@ _CPLAYER_GETGAMEBADGELEVELS_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CPlayer_GetGameBadgeLevels_Request.appid', index=0,
@@ -977,7 +832,7 @@ _CPLAYER_GETGAMEBADGELEVELS_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -990,8 +845,8 @@ _CPLAYER_GETGAMEBADGELEVELS_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=5009,
-  serialized_end=5060,
+  serialized_start=2629,
+  serialized_end=2680,
 )
 
 
@@ -1001,6 +856,7 @@ _CPLAYER_GETGAMEBADGELEVELS_RESPONSE_BADGE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='level', full_name='CPlayer_GetGameBadgeLevels_Response.Badge.level', index=0,
@@ -1008,21 +864,21 @@ _CPLAYER_GETGAMEBADGELEVELS_RESPONSE_BADGE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='series', full_name='CPlayer_GetGameBadgeLevels_Response.Badge.series', index=1,
       number=2, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='border_color', full_name='CPlayer_GetGameBadgeLevels_Response.Badge.border_color', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1035,8 +891,8 @@ _CPLAYER_GETGAMEBADGELEVELS_RESPONSE_BADGE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=5184,
-  serialized_end=5244,
+  serialized_start=2804,
+  serialized_end=2864,
 )
 
 _CPLAYER_GETGAMEBADGELEVELS_RESPONSE = _descriptor.Descriptor(
@@ -1045,6 +901,7 @@ _CPLAYER_GETGAMEBADGELEVELS_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='player_level', full_name='CPlayer_GetGameBadgeLevels_Response.player_level', index=0,
@@ -1052,14 +909,14 @@ _CPLAYER_GETGAMEBADGELEVELS_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='badges', full_name='CPlayer_GetGameBadgeLevels_Response.badges', index=1,
       number=2, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1072,8 +929,8 @@ _CPLAYER_GETGAMEBADGELEVELS_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=5063,
-  serialized_end=5244,
+  serialized_start=2683,
+  serialized_end=2864,
 )
 
 
@@ -1083,6 +940,7 @@ _CPLAYER_GETPROFILEBACKGROUND_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CPlayer_GetProfileBackground_Request.steamid', index=0,
@@ -1090,14 +948,14 @@ _CPLAYER_GETPROFILEBACKGROUND_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\035The player we\'re asking about'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\035The player we\'re asking about', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='language', full_name='CPlayer_GetProfileBackground_Request.language', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1110,8 +968,8 @@ _CPLAYER_GETPROFILEBACKGROUND_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=5246,
-  serialized_end=5354,
+  serialized_start=2866,
+  serialized_end=2974,
 )
 
 
@@ -1121,6 +979,7 @@ _PROFILEITEM = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='communityitemid', full_name='ProfileItem.communityitemid', index=0,
@@ -1128,98 +987,98 @@ _PROFILEITEM = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='image_small', full_name='ProfileItem.image_small', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030)small image used in backpack or selection'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030)small image used in backpack or selection', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='image_large', full_name='ProfileItem.image_large', index=2,
       number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\020the image itself'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\020the image itself', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='name', full_name='ProfileItem.name', index=3,
       number=4, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\014english name'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\014english name', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='item_title', full_name='ProfileItem.item_title', index=4,
       number=5, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\017localized title'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\017localized title', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='item_description', full_name='ProfileItem.item_description', index=5,
       number=6, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\025localized description'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\025localized description', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='appid', full_name='ProfileItem.appid', index=6,
       number=7, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='item_type', full_name='ProfileItem.item_type', index=7,
       number=8, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='item_class', full_name='ProfileItem.item_class', index=8,
       number=9, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='movie_webm', full_name='ProfileItem.movie_webm', index=9,
       number=10, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\023URL to webm, if any'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\023URL to webm, if any', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='movie_mp4', full_name='ProfileItem.movie_mp4', index=10,
       number=11, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\022URL to mp4, if any'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\022URL to mp4, if any', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='movie_webm_small', full_name='ProfileItem.movie_webm_small', index=11,
       number=13, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\031URL to small webm, if any'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\031URL to small webm, if any', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='movie_mp4_small', full_name='ProfileItem.movie_mp4_small', index=12,
       number=14, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\030URL to small mp4, if any'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\030URL to small mp4, if any', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='equipped_flags', full_name='ProfileItem.equipped_flags', index=13,
       number=12, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030:Special flags set when equipped (EProfileItemEquippedFlag)'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030:Special flags set when equipped (EProfileItemEquippedFlag)', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1232,8 +1091,8 @@ _PROFILEITEM = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=5357,
-  serialized_end=5974,
+  serialized_start=2977,
+  serialized_end=3594,
 )
 
 
@@ -1243,6 +1102,7 @@ _CPLAYER_GETPROFILEBACKGROUND_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='profile_background', full_name='CPlayer_GetProfileBackground_Response.profile_background', index=0,
@@ -1250,7 +1110,7 @@ _CPLAYER_GETPROFILEBACKGROUND_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1263,8 +1123,8 @@ _CPLAYER_GETPROFILEBACKGROUND_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=5976,
-  serialized_end=6057,
+  serialized_start=3596,
+  serialized_end=3677,
 )
 
 
@@ -1274,6 +1134,7 @@ _CPLAYER_SETPROFILEBACKGROUND_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='communityitemid', full_name='CPlayer_SetProfileBackground_Request.communityitemid', index=0,
@@ -1281,7 +1142,7 @@ _CPLAYER_SETPROFILEBACKGROUND_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1294,8 +1155,8 @@ _CPLAYER_SETPROFILEBACKGROUND_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=6059,
-  serialized_end=6122,
+  serialized_start=3679,
+  serialized_end=3742,
 )
 
 
@@ -1305,6 +1166,7 @@ _CPLAYER_SETPROFILEBACKGROUND_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -1318,8 +1180,8 @@ _CPLAYER_SETPROFILEBACKGROUND_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=6124,
-  serialized_end=6163,
+  serialized_start=3744,
+  serialized_end=3783,
 )
 
 
@@ -1329,6 +1191,7 @@ _CPLAYER_GETMINIPROFILEBACKGROUND_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CPlayer_GetMiniProfileBackground_Request.steamid', index=0,
@@ -1336,14 +1199,14 @@ _CPLAYER_GETMINIPROFILEBACKGROUND_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\035The player we\'re asking about'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\035The player we\'re asking about', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='language', full_name='CPlayer_GetMiniProfileBackground_Request.language', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1356,8 +1219,8 @@ _CPLAYER_GETMINIPROFILEBACKGROUND_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=6165,
-  serialized_end=6277,
+  serialized_start=3785,
+  serialized_end=3897,
 )
 
 
@@ -1367,6 +1230,7 @@ _CPLAYER_GETMINIPROFILEBACKGROUND_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='profile_background', full_name='CPlayer_GetMiniProfileBackground_Response.profile_background', index=0,
@@ -1374,7 +1238,7 @@ _CPLAYER_GETMINIPROFILEBACKGROUND_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1387,8 +1251,8 @@ _CPLAYER_GETMINIPROFILEBACKGROUND_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=6279,
-  serialized_end=6364,
+  serialized_start=3899,
+  serialized_end=3984,
 )
 
 
@@ -1398,6 +1262,7 @@ _CPLAYER_SETMINIPROFILEBACKGROUND_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='communityitemid', full_name='CPlayer_SetMiniProfileBackground_Request.communityitemid', index=0,
@@ -1405,7 +1270,7 @@ _CPLAYER_SETMINIPROFILEBACKGROUND_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1418,8 +1283,8 @@ _CPLAYER_SETMINIPROFILEBACKGROUND_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=6366,
-  serialized_end=6433,
+  serialized_start=3986,
+  serialized_end=4053,
 )
 
 
@@ -1429,6 +1294,7 @@ _CPLAYER_SETMINIPROFILEBACKGROUND_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -1442,8 +1308,8 @@ _CPLAYER_SETMINIPROFILEBACKGROUND_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=6435,
-  serialized_end=6478,
+  serialized_start=4055,
+  serialized_end=4098,
 )
 
 
@@ -1453,6 +1319,7 @@ _CPLAYER_GETAVATARFRAME_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CPlayer_GetAvatarFrame_Request.steamid', index=0,
@@ -1460,14 +1327,14 @@ _CPLAYER_GETAVATARFRAME_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\035The player we\'re asking about'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\035The player we\'re asking about', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='language', full_name='CPlayer_GetAvatarFrame_Request.language', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1480,8 +1347,8 @@ _CPLAYER_GETAVATARFRAME_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=6480,
-  serialized_end=6582,
+  serialized_start=4100,
+  serialized_end=4202,
 )
 
 
@@ -1491,6 +1358,7 @@ _CPLAYER_GETAVATARFRAME_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='avatar_frame', full_name='CPlayer_GetAvatarFrame_Response.avatar_frame', index=0,
@@ -1498,7 +1366,7 @@ _CPLAYER_GETAVATARFRAME_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1511,8 +1379,8 @@ _CPLAYER_GETAVATARFRAME_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=6584,
-  serialized_end=6653,
+  serialized_start=4204,
+  serialized_end=4273,
 )
 
 
@@ -1522,6 +1390,7 @@ _CPLAYER_SETAVATARFRAME_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='communityitemid', full_name='CPlayer_SetAvatarFrame_Request.communityitemid', index=0,
@@ -1529,7 +1398,7 @@ _CPLAYER_SETAVATARFRAME_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1542,8 +1411,8 @@ _CPLAYER_SETAVATARFRAME_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=6655,
-  serialized_end=6712,
+  serialized_start=4275,
+  serialized_end=4332,
 )
 
 
@@ -1553,6 +1422,7 @@ _CPLAYER_SETAVATARFRAME_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -1566,8 +1436,8 @@ _CPLAYER_SETAVATARFRAME_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=6714,
-  serialized_end=6747,
+  serialized_start=4334,
+  serialized_end=4367,
 )
 
 
@@ -1577,6 +1447,7 @@ _CPLAYER_GETANIMATEDAVATAR_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CPlayer_GetAnimatedAvatar_Request.steamid', index=0,
@@ -1584,14 +1455,14 @@ _CPLAYER_GETANIMATEDAVATAR_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\035The player we\'re asking about'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\035The player we\'re asking about', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='language', full_name='CPlayer_GetAnimatedAvatar_Request.language', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1604,8 +1475,8 @@ _CPLAYER_GETANIMATEDAVATAR_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=6749,
-  serialized_end=6854,
+  serialized_start=4369,
+  serialized_end=4474,
 )
 
 
@@ -1615,6 +1486,7 @@ _CPLAYER_GETANIMATEDAVATAR_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='avatar', full_name='CPlayer_GetAnimatedAvatar_Response.avatar', index=0,
@@ -1622,7 +1494,7 @@ _CPLAYER_GETANIMATEDAVATAR_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1635,8 +1507,8 @@ _CPLAYER_GETANIMATEDAVATAR_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=6856,
-  serialized_end=6922,
+  serialized_start=4476,
+  serialized_end=4542,
 )
 
 
@@ -1646,6 +1518,7 @@ _CPLAYER_SETANIMATEDAVATAR_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='communityitemid', full_name='CPlayer_SetAnimatedAvatar_Request.communityitemid', index=0,
@@ -1653,7 +1526,7 @@ _CPLAYER_SETANIMATEDAVATAR_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1666,8 +1539,8 @@ _CPLAYER_SETANIMATEDAVATAR_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=6924,
-  serialized_end=6984,
+  serialized_start=4544,
+  serialized_end=4604,
 )
 
 
@@ -1677,6 +1550,7 @@ _CPLAYER_SETANIMATEDAVATAR_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -1690,25 +1564,33 @@ _CPLAYER_SETANIMATEDAVATAR_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=6986,
-  serialized_end=7022,
+  serialized_start=4606,
+  serialized_end=4642,
 )
 
 
-_CPLAYER_GETPROFILEITEMSOWNED_REQUEST = _descriptor.Descriptor(
-  name='CPlayer_GetProfileItemsOwned_Request',
-  full_name='CPlayer_GetProfileItemsOwned_Request',
+_CPLAYER_GETSTEAMDECKKEYBOARDSKIN_REQUEST = _descriptor.Descriptor(
+  name='CPlayer_GetSteamDeckKeyboardSkin_Request',
+  full_name='CPlayer_GetSteamDeckKeyboardSkin_Request',
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
-      name='language', full_name='CPlayer_GetProfileItemsOwned_Request.language', index=0,
-      number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      name='steamid', full_name='CPlayer_GetSteamDeckKeyboardSkin_Request.steamid', index=0,
+      number=1, type=6, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\035The player we\'re asking about', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='language', full_name='CPlayer_GetSteamDeckKeyboardSkin_Request.language', index=1,
+      number=2, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1721,53 +1603,26 @@ _CPLAYER_GETPROFILEITEMSOWNED_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=7024,
-  serialized_end=7080,
+  serialized_start=4644,
+  serialized_end=4756,
 )
 
 
-_CPLAYER_GETPROFILEITEMSOWNED_RESPONSE = _descriptor.Descriptor(
-  name='CPlayer_GetProfileItemsOwned_Response',
-  full_name='CPlayer_GetProfileItemsOwned_Response',
+_CPLAYER_GETSTEAMDECKKEYBOARDSKIN_RESPONSE = _descriptor.Descriptor(
+  name='CPlayer_GetSteamDeckKeyboardSkin_Response',
+  full_name='CPlayer_GetSteamDeckKeyboardSkin_Response',
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
-      name='profile_backgrounds', full_name='CPlayer_GetProfileItemsOwned_Response.profile_backgrounds', index=0,
-      number=1, type=11, cpp_type=10, label=3,
-      has_default_value=False, default_value=[],
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='mini_profile_backgrounds', full_name='CPlayer_GetProfileItemsOwned_Response.mini_profile_backgrounds', index=1,
-      number=2, type=11, cpp_type=10, label=3,
-      has_default_value=False, default_value=[],
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='avatar_frames', full_name='CPlayer_GetProfileItemsOwned_Response.avatar_frames', index=2,
-      number=3, type=11, cpp_type=10, label=3,
-      has_default_value=False, default_value=[],
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='animated_avatars', full_name='CPlayer_GetProfileItemsOwned_Response.animated_avatars', index=3,
-      number=4, type=11, cpp_type=10, label=3,
-      has_default_value=False, default_value=[],
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='profile_modifiers', full_name='CPlayer_GetProfileItemsOwned_Response.profile_modifiers', index=4,
-      number=5, type=11, cpp_type=10, label=3,
-      has_default_value=False, default_value=[],
+      name='steam_deck_keyboard_skin', full_name='CPlayer_GetSteamDeckKeyboardSkin_Response.steam_deck_keyboard_skin', index=0,
+      number=1, type=11, cpp_type=10, label=1,
+      has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1780,32 +1635,196 @@ _CPLAYER_GETPROFILEITEMSOWNED_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=7083,
-  serialized_end=7331,
+  serialized_start=4758,
+  serialized_end=4849,
 )
 
 
-_CPLAYER_GETPROFILEITEMSEQUIPPED_REQUEST = _descriptor.Descriptor(
-  name='CPlayer_GetProfileItemsEquipped_Request',
-  full_name='CPlayer_GetProfileItemsEquipped_Request',
+_CPLAYER_SETSTEAMDECKKEYBOARDSKIN_REQUEST = _descriptor.Descriptor(
+  name='CPlayer_SetSteamDeckKeyboardSkin_Request',
+  full_name='CPlayer_SetSteamDeckKeyboardSkin_Request',
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
-      name='steamid', full_name='CPlayer_GetProfileItemsEquipped_Request.steamid', index=0,
-      number=1, type=6, cpp_type=4, label=1,
+      name='communityitemid', full_name='CPlayer_SetSteamDeckKeyboardSkin_Request.communityitemid', index=0,
+      number=1, type=4, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=4851,
+  serialized_end=4918,
+)
+
+
+_CPLAYER_SETSTEAMDECKKEYBOARDSKIN_RESPONSE = _descriptor.Descriptor(
+  name='CPlayer_SetSteamDeckKeyboardSkin_Response',
+  full_name='CPlayer_SetSteamDeckKeyboardSkin_Response',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=4920,
+  serialized_end=4963,
+)
+
+
+_CPLAYER_GETPROFILEITEMSOWNED_REQUEST = _descriptor.Descriptor(
+  name='CPlayer_GetProfileItemsOwned_Request',
+  full_name='CPlayer_GetProfileItemsOwned_Request',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='language', full_name='CPlayer_GetProfileItemsOwned_Request.language', index=0,
+      number=1, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='filters', full_name='CPlayer_GetProfileItemsOwned_Request.filters', index=1,
+      number=2, type=14, cpp_type=8, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=4965,
+  serialized_end=5060,
+)
+
+
+_CPLAYER_GETPROFILEITEMSOWNED_RESPONSE = _descriptor.Descriptor(
+  name='CPlayer_GetProfileItemsOwned_Response',
+  full_name='CPlayer_GetProfileItemsOwned_Response',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='profile_backgrounds', full_name='CPlayer_GetProfileItemsOwned_Response.profile_backgrounds', index=0,
+      number=1, type=11, cpp_type=10, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='mini_profile_backgrounds', full_name='CPlayer_GetProfileItemsOwned_Response.mini_profile_backgrounds', index=1,
+      number=2, type=11, cpp_type=10, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='avatar_frames', full_name='CPlayer_GetProfileItemsOwned_Response.avatar_frames', index=2,
+      number=3, type=11, cpp_type=10, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='animated_avatars', full_name='CPlayer_GetProfileItemsOwned_Response.animated_avatars', index=3,
+      number=4, type=11, cpp_type=10, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='profile_modifiers', full_name='CPlayer_GetProfileItemsOwned_Response.profile_modifiers', index=4,
+      number=5, type=11, cpp_type=10, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='steam_deck_keyboard_skins', full_name='CPlayer_GetProfileItemsOwned_Response.steam_deck_keyboard_skins', index=5,
+      number=6, type=11, cpp_type=10, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=5063,
+  serialized_end=5360,
+)
+
+
+_CPLAYER_GETPROFILEITEMSEQUIPPED_REQUEST = _descriptor.Descriptor(
+  name='CPlayer_GetProfileItemsEquipped_Request',
+  full_name='CPlayer_GetProfileItemsEquipped_Request',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='steamid', full_name='CPlayer_GetProfileItemsEquipped_Request.steamid', index=0,
+      number=1, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='language', full_name='CPlayer_GetProfileItemsEquipped_Request.language', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1818,8 +1837,8 @@ _CPLAYER_GETPROFILEITEMSEQUIPPED_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=7333,
-  serialized_end=7409,
+  serialized_start=5362,
+  serialized_end=5438,
 )
 
 
@@ -1829,6 +1848,7 @@ _CPLAYER_GETPROFILEITEMSEQUIPPED_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='profile_background', full_name='CPlayer_GetProfileItemsEquipped_Response.profile_background', index=0,
@@ -1836,35 +1856,42 @@ _CPLAYER_GETPROFILEITEMSEQUIPPED_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='mini_profile_background', full_name='CPlayer_GetProfileItemsEquipped_Response.mini_profile_background', index=1,
       number=2, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='avatar_frame', full_name='CPlayer_GetProfileItemsEquipped_Response.avatar_frame', index=2,
       number=3, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='animated_avatar', full_name='CPlayer_GetProfileItemsEquipped_Response.animated_avatar', index=3,
       number=4, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='profile_modifier', full_name='CPlayer_GetProfileItemsEquipped_Response.profile_modifier', index=4,
       number=5, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='steam_deck_keyboard_skin', full_name='CPlayer_GetProfileItemsEquipped_Response.steam_deck_keyboard_skin', index=5,
+      number=6, type=11, cpp_type=10, label=1,
+      has_default_value=False, default_value=None,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1877,8 +1904,8 @@ _CPLAYER_GETPROFILEITEMSEQUIPPED_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=7412,
-  serialized_end=7658,
+  serialized_start=5441,
+  serialized_end=5735,
 )
 
 
@@ -1888,6 +1915,7 @@ _CPLAYER_SETEQUIPPEDPROFILEITEMFLAGS_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='communityitemid', full_name='CPlayer_SetEquippedProfileItemFlags_Request.communityitemid', index=0,
@@ -1895,14 +1923,14 @@ _CPLAYER_SETEQUIPPEDPROFILEITEMFLAGS_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='flags', full_name='CPlayer_SetEquippedProfileItemFlags_Request.flags', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\037Set of EProfileItemEquippedFlag'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\037Set of EProfileItemEquippedFlag', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1915,8 +1943,8 @@ _CPLAYER_SETEQUIPPEDPROFILEITEMFLAGS_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=7660,
-  serialized_end=7782,
+  serialized_start=5737,
+  serialized_end=5859,
 )
 
 
@@ -1926,6 +1954,7 @@ _CPLAYER_SETEQUIPPEDPROFILEITEMFLAGS_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -1939,8 +1968,8 @@ _CPLAYER_SETEQUIPPEDPROFILEITEMFLAGS_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=7784,
-  serialized_end=7830,
+  serialized_start=5861,
+  serialized_end=5907,
 )
 
 
@@ -1950,6 +1979,7 @@ _CPLAYER_GETEMOTICONLIST_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -1963,8 +1993,8 @@ _CPLAYER_GETEMOTICONLIST_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=7832,
-  serialized_end=7865,
+  serialized_start=5909,
+  serialized_end=5942,
 )
 
 
@@ -1974,49 +2004,50 @@ _CPLAYER_GETEMOTICONLIST_RESPONSE_EMOTICON = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='name', full_name='CPlayer_GetEmoticonList_Response.Emoticon.name', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='count', full_name='CPlayer_GetEmoticonList_Response.Emoticon.count', index=1,
       number=2, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='time_last_used', full_name='CPlayer_GetEmoticonList_Response.Emoticon.time_last_used', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='use_count', full_name='CPlayer_GetEmoticonList_Response.Emoticon.use_count', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='time_received', full_name='CPlayer_GetEmoticonList_Response.Emoticon.time_received', index=4,
       number=5, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='appid', full_name='CPlayer_GetEmoticonList_Response.Emoticon.appid', index=5,
       number=6, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2029,8 +2060,8 @@ _CPLAYER_GETEMOTICONLIST_RESPONSE_EMOTICON = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=7967,
-  serialized_end=8087,
+  serialized_start=6044,
+  serialized_end=6164,
 )
 
 _CPLAYER_GETEMOTICONLIST_RESPONSE = _descriptor.Descriptor(
@@ -2039,6 +2070,7 @@ _CPLAYER_GETEMOTICONLIST_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='emoticons', full_name='CPlayer_GetEmoticonList_Response.emoticons', index=0,
@@ -2046,7 +2078,7 @@ _CPLAYER_GETEMOTICONLIST_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2059,8 +2091,8 @@ _CPLAYER_GETEMOTICONLIST_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=7868,
-  serialized_end=8087,
+  serialized_start=5945,
+  serialized_end=6164,
 )
 
 
@@ -2070,6 +2102,7 @@ _CPLAYER_GETACHIEVEMENTSPROGRESS_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CPlayer_GetAchievementsProgress_Request.steamid', index=0,
@@ -2077,21 +2110,21 @@ _CPLAYER_GETACHIEVEMENTSPROGRESS_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='language', full_name='CPlayer_GetAchievementsProgress_Request.language', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='appids', full_name='CPlayer_GetAchievementsProgress_Request.appids', index=2,
       number=3, type=13, cpp_type=3, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2104,8 +2137,8 @@ _CPLAYER_GETACHIEVEMENTSPROGRESS_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=8089,
-  serialized_end=8181,
+  serialized_start=6166,
+  serialized_end=6258,
 )
 
 
@@ -2115,6 +2148,7 @@ _CPLAYER_GETACHIEVEMENTSPROGRESS_RESPONSE_ACHIEVEMENTPROGRESS = _descriptor.Desc
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CPlayer_GetAchievementsProgress_Response.AchievementProgress.appid', index=0,
@@ -2122,42 +2156,42 @@ _CPLAYER_GETACHIEVEMENTSPROGRESS_RESPONSE_ACHIEVEMENTPROGRESS = _descriptor.Desc
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='unlocked', full_name='CPlayer_GetAchievementsProgress_Response.AchievementProgress.unlocked', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='total', full_name='CPlayer_GetAchievementsProgress_Response.AchievementProgress.total', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='percentage', full_name='CPlayer_GetAchievementsProgress_Response.AchievementProgress.percentage', index=3,
       number=4, type=2, cpp_type=6, label=1,
       has_default_value=False, default_value=float(0),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='all_unlocked', full_name='CPlayer_GetAchievementsProgress_Response.AchievementProgress.all_unlocked', index=4,
       number=5, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='cache_time', full_name='CPlayer_GetAchievementsProgress_Response.AchievementProgress.cache_time', index=5,
       number=6, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2170,8 +2204,8 @@ _CPLAYER_GETACHIEVEMENTSPROGRESS_RESPONSE_ACHIEVEMENTPROGRESS = _descriptor.Desc
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=8322,
-  serialized_end=8453,
+  serialized_start=6399,
+  serialized_end=6530,
 )
 
 _CPLAYER_GETACHIEVEMENTSPROGRESS_RESPONSE = _descriptor.Descriptor(
@@ -2180,6 +2214,7 @@ _CPLAYER_GETACHIEVEMENTSPROGRESS_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='achievement_progress', full_name='CPlayer_GetAchievementsProgress_Response.achievement_progress', index=0,
@@ -2187,7 +2222,7 @@ _CPLAYER_GETACHIEVEMENTSPROGRESS_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2200,8 +2235,8 @@ _CPLAYER_GETACHIEVEMENTSPROGRESS_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=8184,
-  serialized_end=8453,
+  serialized_start=6261,
+  serialized_end=6530,
 )
 
 
@@ -2211,6 +2246,7 @@ _CPLAYER_GETFAVORITEBADGE_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CPlayer_GetFavoriteBadge_Request.steamid', index=0,
@@ -2218,7 +2254,7 @@ _CPLAYER_GETFAVORITEBADGE_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2231,8 +2267,8 @@ _CPLAYER_GETFAVORITEBADGE_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=8455,
-  serialized_end=8506,
+  serialized_start=6532,
+  serialized_end=6583,
 )
 
 
@@ -2242,6 +2278,7 @@ _CPLAYER_GETFAVORITEBADGE_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='has_favorite_badge', full_name='CPlayer_GetFavoriteBadge_Response.has_favorite_badge', index=0,
@@ -2249,49 +2286,49 @@ _CPLAYER_GETFAVORITEBADGE_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='badgeid', full_name='CPlayer_GetFavoriteBadge_Response.badgeid', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='communityitemid', full_name='CPlayer_GetFavoriteBadge_Response.communityitemid', index=2,
       number=3, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='item_type', full_name='CPlayer_GetFavoriteBadge_Response.item_type', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='border_color', full_name='CPlayer_GetFavoriteBadge_Response.border_color', index=4,
       number=5, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='appid', full_name='CPlayer_GetFavoriteBadge_Response.appid', index=5,
       number=6, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='level', full_name='CPlayer_GetFavoriteBadge_Response.level', index=6,
       number=7, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2304,8 +2341,8 @@ _CPLAYER_GETFAVORITEBADGE_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=8509,
-  serialized_end=8685,
+  serialized_start=6586,
+  serialized_end=6762,
 )
 
 
@@ -2315,6 +2352,7 @@ _CPLAYER_SETFAVORITEBADGE_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='communityitemid', full_name='CPlayer_SetFavoriteBadge_Request.communityitemid', index=0,
@@ -2322,14 +2360,14 @@ _CPLAYER_SETFAVORITEBADGE_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='badgeid', full_name='CPlayer_SetFavoriteBadge_Request.badgeid', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2342,8 +2380,8 @@ _CPLAYER_SETFAVORITEBADGE_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=8687,
-  serialized_end=8763,
+  serialized_start=6764,
+  serialized_end=6840,
 )
 
 
@@ -2353,6 +2391,7 @@ _CPLAYER_SETFAVORITEBADGE_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -2366,8 +2405,8 @@ _CPLAYER_SETFAVORITEBADGE_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=8765,
-  serialized_end=8800,
+  serialized_start=6842,
+  serialized_end=6877,
 )
 
 
@@ -2377,6 +2416,7 @@ _CPLAYER_GETPROFILECUSTOMIZATION_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CPlayer_GetProfileCustomization_Request.steamid', index=0,
@@ -2384,21 +2424,21 @@ _CPLAYER_GETPROFILECUSTOMIZATION_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='include_inactive_customizations', full_name='CPlayer_GetProfileCustomization_Request.include_inactive_customizations', index=1,
       number=2, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='include_purchased_customizations', full_name='CPlayer_GetProfileCustomization_Request.include_purchased_customizations', index=2,
       number=3, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2411,8 +2451,8 @@ _CPLAYER_GETPROFILECUSTOMIZATION_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=8803,
-  serialized_end=8944,
+  serialized_start=6880,
+  serialized_end=7021,
 )
 
 
@@ -2422,6 +2462,7 @@ _PROFILECUSTOMIZATIONSLOT = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='slot', full_name='ProfileCustomizationSlot.slot', index=0,
@@ -2429,91 +2470,91 @@ _PROFILECUSTOMIZATIONSLOT = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='appid', full_name='ProfileCustomizationSlot.appid', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='publishedfileid', full_name='ProfileCustomizationSlot.publishedfileid', index=2,
       number=3, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='item_assetid', full_name='ProfileCustomizationSlot.item_assetid', index=3,
       number=4, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='item_contextid', full_name='ProfileCustomizationSlot.item_contextid', index=4,
       number=5, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='notes', full_name='ProfileCustomizationSlot.notes', index=5,
       number=6, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='title', full_name='ProfileCustomizationSlot.title', index=6,
       number=7, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='accountid', full_name='ProfileCustomizationSlot.accountid', index=7,
       number=8, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='badgeid', full_name='ProfileCustomizationSlot.badgeid', index=8,
       number=9, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='border_color', full_name='ProfileCustomizationSlot.border_color', index=9,
       number=10, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='item_classid', full_name='ProfileCustomizationSlot.item_classid', index=10,
       number=11, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='item_instanceid', full_name='ProfileCustomizationSlot.item_instanceid', index=11,
       number=12, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='ban_check_result', full_name='ProfileCustomizationSlot.ban_check_result', index=12,
       number=13, type=14, cpp_type=8, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2526,8 +2567,8 @@ _PROFILECUSTOMIZATIONSLOT = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=8947,
-  serialized_end=9296,
+  serialized_start=7024,
+  serialized_end=7373,
 )
 
 
@@ -2537,6 +2578,7 @@ _PROFILECUSTOMIZATION = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='customization_type', full_name='ProfileCustomization.customization_type', index=0,
@@ -2544,49 +2586,49 @@ _PROFILECUSTOMIZATION = _descriptor.Descriptor(
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='large', full_name='ProfileCustomization.large', index=1,
       number=2, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='slots', full_name='ProfileCustomization.slots', index=2,
       number=3, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='active', full_name='ProfileCustomization.active', index=3,
       number=4, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='customization_style', full_name='ProfileCustomization.customization_style', index=4,
       number=5, type=14, cpp_type=8, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='purchaseid', full_name='ProfileCustomization.purchaseid', index=5,
       number=6, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='level', full_name='ProfileCustomization.level', index=6,
       number=7, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2599,8 +2641,8 @@ _PROFILECUSTOMIZATION = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=9299,
-  serialized_end=9616,
+  serialized_start=7376,
+  serialized_end=7693,
 )
 
 
@@ -2610,21 +2652,22 @@ _PROFILETHEME = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='theme_id', full_name='ProfileTheme.theme_id', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='title', full_name='ProfileTheme.title', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2637,8 +2680,8 @@ _PROFILETHEME = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=9618,
-  serialized_end=9665,
+  serialized_start=7695,
+  serialized_end=7742,
 )
 
 
@@ -2648,6 +2691,7 @@ _PROFILEPREFERENCES = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='hide_profile_awards', full_name='ProfilePreferences.hide_profile_awards', index=0,
@@ -2655,7 +2699,7 @@ _PROFILEPREFERENCES = _descriptor.Descriptor(
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2668,8 +2712,8 @@ _PROFILEPREFERENCES = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=9667,
-  serialized_end=9716,
+  serialized_start=7744,
+  serialized_end=7793,
 )
 
 
@@ -2679,6 +2723,7 @@ _CPLAYER_GETPROFILECUSTOMIZATION_RESPONSE_PURCHASEDCUSTOMIZATION = _descriptor.D
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='purchaseid', full_name='CPlayer_GetProfileCustomization_Response.PurchasedCustomization.purchaseid', index=0,
@@ -2686,21 +2731,21 @@ _CPLAYER_GETPROFILECUSTOMIZATION_RESPONSE_PURCHASEDCUSTOMIZATION = _descriptor.D
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='customization_type', full_name='CPlayer_GetProfileCustomization_Response.PurchasedCustomization.customization_type', index=1,
       number=2, type=14, cpp_type=8, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='level', full_name='CPlayer_GetProfileCustomization_Response.PurchasedCustomization.level', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2713,8 +2758,8 @@ _CPLAYER_GETPROFILECUSTOMIZATION_RESPONSE_PURCHASEDCUSTOMIZATION = _descriptor.D
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=10024,
-  serialized_end=10175,
+  serialized_start=8101,
+  serialized_end=8252,
 )
 
 _CPLAYER_GETPROFILECUSTOMIZATION_RESPONSE = _descriptor.Descriptor(
@@ -2723,6 +2768,7 @@ _CPLAYER_GETPROFILECUSTOMIZATION_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='customizations', full_name='CPlayer_GetProfileCustomization_Response.customizations', index=0,
@@ -2730,35 +2776,35 @@ _CPLAYER_GETPROFILECUSTOMIZATION_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='slots_available', full_name='CPlayer_GetProfileCustomization_Response.slots_available', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='profile_theme', full_name='CPlayer_GetProfileCustomization_Response.profile_theme', index=2,
       number=3, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='purchased_customizations', full_name='CPlayer_GetProfileCustomization_Response.purchased_customizations', index=3,
       number=4, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='profile_preferences', full_name='CPlayer_GetProfileCustomization_Response.profile_preferences', index=4,
       number=5, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2771,8 +2817,8 @@ _CPLAYER_GETPROFILECUSTOMIZATION_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=9719,
-  serialized_end=10175,
+  serialized_start=7796,
+  serialized_end=8252,
 )
 
 
@@ -2782,6 +2828,7 @@ _CPLAYER_GETPURCHASEDPROFILECUSTOMIZATIONS_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CPlayer_GetPurchasedProfileCustomizations_Request.steamid', index=0,
@@ -2789,7 +2836,7 @@ _CPLAYER_GETPURCHASEDPROFILECUSTOMIZATIONS_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2802,8 +2849,8 @@ _CPLAYER_GETPURCHASEDPROFILECUSTOMIZATIONS_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=10177,
-  serialized_end=10245,
+  serialized_start=8254,
+  serialized_end=8322,
 )
 
 
@@ -2813,6 +2860,7 @@ _CPLAYER_GETPURCHASEDPROFILECUSTOMIZATIONS_RESPONSE_PURCHASEDCUSTOMIZATION = _de
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='purchaseid', full_name='CPlayer_GetPurchasedProfileCustomizations_Response.PurchasedCustomization.purchaseid', index=0,
@@ -2820,14 +2868,14 @@ _CPLAYER_GETPURCHASEDPROFILECUSTOMIZATIONS_RESPONSE_PURCHASEDCUSTOMIZATION = _de
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='customization_type', full_name='CPlayer_GetPurchasedProfileCustomizations_Response.PurchasedCustomization.customization_type', index=1,
       number=2, type=14, cpp_type=8, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2840,8 +2888,8 @@ _CPLAYER_GETPURCHASEDPROFILECUSTOMIZATIONS_RESPONSE_PURCHASEDCUSTOMIZATION = _de
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=10024,
-  serialized_end=10160,
+  serialized_start=8101,
+  serialized_end=8237,
 )
 
 _CPLAYER_GETPURCHASEDPROFILECUSTOMIZATIONS_RESPONSE = _descriptor.Descriptor(
@@ -2850,6 +2898,7 @@ _CPLAYER_GETPURCHASEDPROFILECUSTOMIZATIONS_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='purchased_customizations', full_name='CPlayer_GetPurchasedProfileCustomizations_Response.purchased_customizations', index=0,
@@ -2857,7 +2906,7 @@ _CPLAYER_GETPURCHASEDPROFILECUSTOMIZATIONS_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2870,8 +2919,8 @@ _CPLAYER_GETPURCHASEDPROFILECUSTOMIZATIONS_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=10248,
-  serialized_end=10549,
+  serialized_start=8325,
+  serialized_end=8626,
 )
 
 
@@ -2881,6 +2930,7 @@ _CPLAYER_GETPURCHASEDANDUPGRADEDPROFILECUSTOMIZATIONS_REQUEST = _descriptor.Desc
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CPlayer_GetPurchasedAndUpgradedProfileCustomizations_Request.steamid', index=0,
@@ -2888,7 +2938,7 @@ _CPLAYER_GETPURCHASEDANDUPGRADEDPROFILECUSTOMIZATIONS_REQUEST = _descriptor.Desc
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2901,8 +2951,8 @@ _CPLAYER_GETPURCHASEDANDUPGRADEDPROFILECUSTOMIZATIONS_REQUEST = _descriptor.Desc
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=10551,
-  serialized_end=10630,
+  serialized_start=8628,
+  serialized_end=8707,
 )
 
 
@@ -2912,6 +2962,7 @@ _CPLAYER_GETPURCHASEDANDUPGRADEDPROFILECUSTOMIZATIONS_RESPONSE_PURCHASEDCUSTOMIZ
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='customization_type', full_name='CPlayer_GetPurchasedAndUpgradedProfileCustomizations_Response.PurchasedCustomization.customization_type', index=0,
@@ -2919,14 +2970,14 @@ _CPLAYER_GETPURCHASEDANDUPGRADEDPROFILECUSTOMIZATIONS_RESPONSE_PURCHASEDCUSTOMIZ
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='count', full_name='CPlayer_GetPurchasedAndUpgradedProfileCustomizations_Response.PurchasedCustomization.count', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2939,8 +2990,8 @@ _CPLAYER_GETPURCHASEDANDUPGRADEDPROFILECUSTOMIZATIONS_RESPONSE_PURCHASEDCUSTOMIZ
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=10939,
-  serialized_end=11070,
+  serialized_start=9016,
+  serialized_end=9147,
 )
 
 _CPLAYER_GETPURCHASEDANDUPGRADEDPROFILECUSTOMIZATIONS_RESPONSE_UPGRADEDCUSTOMIZATION = _descriptor.Descriptor(
@@ -2949,6 +3000,7 @@ _CPLAYER_GETPURCHASEDANDUPGRADEDPROFILECUSTOMIZATIONS_RESPONSE_UPGRADEDCUSTOMIZA
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='customization_type', full_name='CPlayer_GetPurchasedAndUpgradedProfileCustomizations_Response.UpgradedCustomization.customization_type', index=0,
@@ -2956,14 +3008,14 @@ _CPLAYER_GETPURCHASEDANDUPGRADEDPROFILECUSTOMIZATIONS_RESPONSE_UPGRADEDCUSTOMIZA
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='level', full_name='CPlayer_GetPurchasedAndUpgradedProfileCustomizations_Response.UpgradedCustomization.level', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2976,8 +3028,8 @@ _CPLAYER_GETPURCHASEDANDUPGRADEDPROFILECUSTOMIZATIONS_RESPONSE_UPGRADEDCUSTOMIZA
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=11073,
-  serialized_end=11203,
+  serialized_start=9150,
+  serialized_end=9280,
 )
 
 _CPLAYER_GETPURCHASEDANDUPGRADEDPROFILECUSTOMIZATIONS_RESPONSE = _descriptor.Descriptor(
@@ -2986,6 +3038,7 @@ _CPLAYER_GETPURCHASEDANDUPGRADEDPROFILECUSTOMIZATIONS_RESPONSE = _descriptor.Des
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='purchased_customizations', full_name='CPlayer_GetPurchasedAndUpgradedProfileCustomizations_Response.purchased_customizations', index=0,
@@ -2993,14 +3046,14 @@ _CPLAYER_GETPURCHASEDANDUPGRADEDPROFILECUSTOMIZATIONS_RESPONSE = _descriptor.Des
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='upgraded_customizations', full_name='CPlayer_GetPurchasedAndUpgradedProfileCustomizations_Response.upgraded_customizations', index=1,
       number=2, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3013,8 +3066,8 @@ _CPLAYER_GETPURCHASEDANDUPGRADEDPROFILECUSTOMIZATIONS_RESPONSE = _descriptor.Des
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=10633,
-  serialized_end=11203,
+  serialized_start=8710,
+  serialized_end=9280,
 )
 
 
@@ -3024,6 +3077,7 @@ _CPLAYER_GETPROFILETHEMESAVAILABLE_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -3037,8 +3091,8 @@ _CPLAYER_GETPROFILETHEMESAVAILABLE_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=11205,
-  serialized_end=11248,
+  serialized_start=9282,
+  serialized_end=9325,
 )
 
 
@@ -3048,6 +3102,7 @@ _CPLAYER_GETPROFILETHEMESAVAILABLE_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='profile_themes', full_name='CPlayer_GetProfileThemesAvailable_Response.profile_themes', index=0,
@@ -3055,7 +3110,7 @@ _CPLAYER_GETPROFILETHEMESAVAILABLE_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3068,8 +3123,8 @@ _CPLAYER_GETPROFILETHEMESAVAILABLE_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=11250,
-  serialized_end=11333,
+  serialized_start=9327,
+  serialized_end=9410,
 )
 
 
@@ -3079,14 +3134,15 @@ _CPLAYER_SETPROFILETHEME_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='theme_id', full_name='CPlayer_SetProfileTheme_Request.theme_id', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3099,8 +3155,8 @@ _CPLAYER_SETPROFILETHEME_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=11335,
-  serialized_end=11386,
+  serialized_start=9412,
+  serialized_end=9463,
 )
 
 
@@ -3110,6 +3166,7 @@ _CPLAYER_SETPROFILETHEME_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -3123,8 +3180,8 @@ _CPLAYER_SETPROFILETHEME_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=11388,
-  serialized_end=11422,
+  serialized_start=9465,
+  serialized_end=9499,
 )
 
 
@@ -3134,6 +3191,7 @@ _CPLAYER_SETPROFILEPREFERENCES_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='profile_preferences', full_name='CPlayer_SetProfilePreferences_Request.profile_preferences', index=0,
@@ -3141,7 +3199,7 @@ _CPLAYER_SETPROFILEPREFERENCES_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3154,8 +3212,8 @@ _CPLAYER_SETPROFILEPREFERENCES_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=11424,
-  serialized_end=11513,
+  serialized_start=9501,
+  serialized_end=9590,
 )
 
 
@@ -3165,6 +3223,7 @@ _CPLAYER_SETPROFILEPREFERENCES_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -3178,8 +3237,8 @@ _CPLAYER_SETPROFILEPREFERENCES_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=11515,
-  serialized_end=11555,
+  serialized_start=9592,
+  serialized_end=9632,
 )
 
 
@@ -3189,6 +3248,7 @@ _CPLAYER_POSTSTATUSTOFRIENDS_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CPlayer_PostStatusToFriends_Request.appid', index=0,
@@ -3196,14 +3256,14 @@ _CPLAYER_POSTSTATUSTOFRIENDS_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='status_text', full_name='CPlayer_PostStatusToFriends_Request.status_text', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3216,8 +3276,8 @@ _CPLAYER_POSTSTATUSTOFRIENDS_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=11557,
-  serialized_end=11630,
+  serialized_start=9634,
+  serialized_end=9707,
 )
 
 
@@ -3227,6 +3287,7 @@ _CPLAYER_POSTSTATUSTOFRIENDS_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -3240,8 +3301,8 @@ _CPLAYER_POSTSTATUSTOFRIENDS_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=11632,
-  serialized_end=11670,
+  serialized_start=9709,
+  serialized_end=9747,
 )
 
 
@@ -3251,6 +3312,7 @@ _CPLAYER_GETPOSTEDSTATUS_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CPlayer_GetPostedStatus_Request.steamid', index=0,
@@ -3258,14 +3320,14 @@ _CPLAYER_GETPOSTEDSTATUS_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\035The player we\'re asking about'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\035The player we\'re asking about', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='postid', full_name='CPlayer_GetPostedStatus_Request.postid', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3278,8 +3340,8 @@ _CPLAYER_GETPOSTEDSTATUS_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=11672,
-  serialized_end=11773,
+  serialized_start=9749,
+  serialized_end=9850,
 )
 
 
@@ -3289,6 +3351,7 @@ _CPLAYER_GETPOSTEDSTATUS_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='accountid', full_name='CPlayer_GetPostedStatus_Response.accountid', index=0,
@@ -3296,35 +3359,35 @@ _CPLAYER_GETPOSTEDSTATUS_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='postid', full_name='CPlayer_GetPostedStatus_Response.postid', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='status_text', full_name='CPlayer_GetPostedStatus_Response.status_text', index=2,
       number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='deleted', full_name='CPlayer_GetPostedStatus_Response.deleted', index=3,
       number=4, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='appid', full_name='CPlayer_GetPostedStatus_Response.appid', index=4,
       number=5, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3337,8 +3400,8 @@ _CPLAYER_GETPOSTEDSTATUS_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=11775,
-  serialized_end=11897,
+  serialized_start=9852,
+  serialized_end=9974,
 )
 
 
@@ -3348,6 +3411,7 @@ _CPLAYER_DELETEPOSTEDSTATUS_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='postid', full_name='CPlayer_DeletePostedStatus_Request.postid', index=0,
@@ -3355,7 +3419,7 @@ _CPLAYER_DELETEPOSTEDSTATUS_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3368,8 +3432,8 @@ _CPLAYER_DELETEPOSTEDSTATUS_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=11899,
-  serialized_end=11951,
+  serialized_start=9976,
+  serialized_end=10028,
 )
 
 
@@ -3379,6 +3443,7 @@ _CPLAYER_DELETEPOSTEDSTATUS_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -3392,8 +3457,8 @@ _CPLAYER_DELETEPOSTEDSTATUS_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=11953,
-  serialized_end=11990,
+  serialized_start=10030,
+  serialized_end=10067,
 )
 
 
@@ -3403,6 +3468,7 @@ _CPLAYER_GETLASTPLAYEDTIMES_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='min_last_played', full_name='CPlayer_GetLastPlayedTimes_Request.min_last_played', index=0,
@@ -3410,7 +3476,7 @@ _CPLAYER_GETLASTPLAYEDTIMES_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030?The most recent last-played time the client already knows about'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030?The most recent last-played time the client already knows about', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3423,8 +3489,8 @@ _CPLAYER_GETLASTPLAYEDTIMES_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=11993,
-  serialized_end=12123,
+  serialized_start=10070,
+  serialized_end=10200,
 )
 
 
@@ -3434,6 +3500,7 @@ _CPLAYER_GETLASTPLAYEDTIMES_RESPONSE_GAME = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CPlayer_GetLastPlayedTimes_Response.Game.appid', index=0,
@@ -3441,98 +3508,98 @@ _CPLAYER_GETLASTPLAYEDTIMES_RESPONSE_GAME = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='last_playtime', full_name='CPlayer_GetLastPlayedTimes_Response.Game.last_playtime', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='playtime_2weeks', full_name='CPlayer_GetLastPlayedTimes_Response.Game.playtime_2weeks', index=2,
       number=3, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='playtime_forever', full_name='CPlayer_GetLastPlayedTimes_Response.Game.playtime_forever', index=3,
       number=4, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='first_playtime', full_name='CPlayer_GetLastPlayedTimes_Response.Game.first_playtime', index=4,
       number=5, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='playtime_windows_forever', full_name='CPlayer_GetLastPlayedTimes_Response.Game.playtime_windows_forever', index=5,
       number=6, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='playtime_mac_forever', full_name='CPlayer_GetLastPlayedTimes_Response.Game.playtime_mac_forever', index=6,
       number=7, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='playtime_linux_forever', full_name='CPlayer_GetLastPlayedTimes_Response.Game.playtime_linux_forever', index=7,
       number=8, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='first_windows_playtime', full_name='CPlayer_GetLastPlayedTimes_Response.Game.first_windows_playtime', index=8,
       number=9, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='first_mac_playtime', full_name='CPlayer_GetLastPlayedTimes_Response.Game.first_mac_playtime', index=9,
       number=10, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='first_linux_playtime', full_name='CPlayer_GetLastPlayedTimes_Response.Game.first_linux_playtime', index=10,
       number=11, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='last_windows_playtime', full_name='CPlayer_GetLastPlayedTimes_Response.Game.last_windows_playtime', index=11,
       number=12, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='last_mac_playtime', full_name='CPlayer_GetLastPlayedTimes_Response.Game.last_mac_playtime', index=12,
       number=13, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='last_linux_playtime', full_name='CPlayer_GetLastPlayedTimes_Response.Game.last_linux_playtime', index=13,
       number=14, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3545,8 +3612,8 @@ _CPLAYER_GETLASTPLAYEDTIMES_RESPONSE_GAME = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=12224,
-  serialized_end=12616,
+  serialized_start=10301,
+  serialized_end=10693,
 )
 
 _CPLAYER_GETLASTPLAYEDTIMES_RESPONSE = _descriptor.Descriptor(
@@ -3555,6 +3622,7 @@ _CPLAYER_GETLASTPLAYEDTIMES_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='games', full_name='CPlayer_GetLastPlayedTimes_Response.games', index=0,
@@ -3562,7 +3630,7 @@ _CPLAYER_GETLASTPLAYEDTIMES_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3575,8 +3643,79 @@ _CPLAYER_GETLASTPLAYEDTIMES_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=12126,
-  serialized_end=12616,
+  serialized_start=10203,
+  serialized_end=10693,
+)
+
+
+_CPLAYER_GETTIMESSAACCEPTED_REQUEST = _descriptor.Descriptor(
+  name='CPlayer_GetTimeSSAAccepted_Request',
+  full_name='CPlayer_GetTimeSSAAccepted_Request',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=10695,
+  serialized_end=10731,
+)
+
+
+_CPLAYER_GETTIMESSAACCEPTED_RESPONSE = _descriptor.Descriptor(
+  name='CPlayer_GetTimeSSAAccepted_Response',
+  full_name='CPlayer_GetTimeSSAAccepted_Response',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='time_ssa_accepted', full_name='CPlayer_GetTimeSSAAccepted_Response.time_ssa_accepted', index=0,
+      number=1, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='time_ssa_updated', full_name='CPlayer_GetTimeSSAAccepted_Response.time_ssa_updated', index=1,
+      number=2, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='time_chinassa_accepted', full_name='CPlayer_GetTimeSSAAccepted_Response.time_chinassa_accepted', index=2,
+      number=3, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=10733,
+  serialized_end=10855,
 )
 
 
@@ -3586,6 +3725,7 @@ _CPLAYER_ACCEPTSSA_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='agreement_type', full_name='CPlayer_AcceptSSA_Request.agreement_type', index=0,
@@ -3593,14 +3733,14 @@ _CPLAYER_ACCEPTSSA_REQUEST = _descriptor.Descriptor(
       has_default_value=True, default_value=-1,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='time_signed_utc', full_name='CPlayer_AcceptSSA_Request.time_signed_utc', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3613,8 +3753,8 @@ _CPLAYER_ACCEPTSSA_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=12618,
-  serialized_end=12737,
+  serialized_start=10857,
+  serialized_end=10976,
 )
 
 
@@ -3624,6 +3764,7 @@ _CPLAYER_ACCEPTSSA_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -3637,8 +3778,8 @@ _CPLAYER_ACCEPTSSA_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=12739,
-  serialized_end=12767,
+  serialized_start=10978,
+  serialized_end=11006,
 )
 
 
@@ -3648,6 +3789,7 @@ _CPLAYER_GETNICKNAMELIST_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -3661,8 +3803,8 @@ _CPLAYER_GETNICKNAMELIST_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=12769,
-  serialized_end=12802,
+  serialized_start=11008,
+  serialized_end=11041,
 )
 
 
@@ -3672,6 +3814,7 @@ _CPLAYER_GETNICKNAMELIST_RESPONSE_PLAYERNICKNAME = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='accountid', full_name='CPlayer_GetNicknameList_Response.PlayerNickname.accountid', index=0,
@@ -3679,14 +3822,14 @@ _CPLAYER_GETNICKNAMELIST_RESPONSE_PLAYERNICKNAME = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='nickname', full_name='CPlayer_GetNicknameList_Response.PlayerNickname.nickname', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3699,8 +3842,8 @@ _CPLAYER_GETNICKNAMELIST_RESPONSE_PLAYERNICKNAME = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=12910,
-  serialized_end=12963,
+  serialized_start=11149,
+  serialized_end=11202,
 )
 
 _CPLAYER_GETNICKNAMELIST_RESPONSE = _descriptor.Descriptor(
@@ -3709,6 +3852,7 @@ _CPLAYER_GETNICKNAMELIST_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='nicknames', full_name='CPlayer_GetNicknameList_Response.nicknames', index=0,
@@ -3716,7 +3860,7 @@ _CPLAYER_GETNICKNAMELIST_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3729,8 +3873,8 @@ _CPLAYER_GETNICKNAMELIST_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=12805,
-  serialized_end=12963,
+  serialized_start=11044,
+  serialized_end=11202,
 )
 
 
@@ -3740,6 +3884,7 @@ _CPLAYER_GETPERFRIENDPREFERENCES_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -3753,8 +3898,8 @@ _CPLAYER_GETPERFRIENDPREFERENCES_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=12965,
-  serialized_end=13006,
+  serialized_start=11204,
+  serialized_end=11245,
 )
 
 
@@ -3764,6 +3909,7 @@ _PERFRIENDPREFERENCES = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='accountid', full_name='PerFriendPreferences.accountid', index=0,
@@ -3771,63 +3917,63 @@ _PERFRIENDPREFERENCES = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='nickname', full_name='PerFriendPreferences.nickname', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='notifications_showingame', full_name='PerFriendPreferences.notifications_showingame', index=2,
       number=3, type=14, cpp_type=8, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='notifications_showonline', full_name='PerFriendPreferences.notifications_showonline', index=3,
       number=4, type=14, cpp_type=8, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='notifications_showmessages', full_name='PerFriendPreferences.notifications_showmessages', index=4,
       number=5, type=14, cpp_type=8, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='sounds_showingame', full_name='PerFriendPreferences.sounds_showingame', index=5,
       number=6, type=14, cpp_type=8, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='sounds_showonline', full_name='PerFriendPreferences.sounds_showonline', index=6,
       number=7, type=14, cpp_type=8, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='sounds_showmessages', full_name='PerFriendPreferences.sounds_showmessages', index=7,
       number=8, type=14, cpp_type=8, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='notifications_sendmobile', full_name='PerFriendPreferences.notifications_sendmobile', index=8,
       number=9, type=14, cpp_type=8, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3840,8 +3986,8 @@ _PERFRIENDPREFERENCES = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=13009,
-  serialized_end=13730,
+  serialized_start=11248,
+  serialized_end=11969,
 )
 
 
@@ -3851,6 +3997,7 @@ _CPLAYER_GETPERFRIENDPREFERENCES_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='preferences', full_name='CPlayer_GetPerFriendPreferences_Response.preferences', index=0,
@@ -3858,7 +4005,7 @@ _CPLAYER_GETPERFRIENDPREFERENCES_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3871,8 +4018,8 @@ _CPLAYER_GETPERFRIENDPREFERENCES_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=13732,
-  serialized_end=13818,
+  serialized_start=11971,
+  serialized_end=12057,
 )
 
 
@@ -3882,6 +4029,7 @@ _CPLAYER_SETPERFRIENDPREFERENCES_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='preferences', full_name='CPlayer_SetPerFriendPreferences_Request.preferences', index=0,
@@ -3889,7 +4037,7 @@ _CPLAYER_SETPERFRIENDPREFERENCES_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3902,8 +4050,8 @@ _CPLAYER_SETPERFRIENDPREFERENCES_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=13820,
-  serialized_end=13905,
+  serialized_start=12059,
+  serialized_end=12144,
 )
 
 
@@ -3913,6 +4061,7 @@ _CPLAYER_SETPERFRIENDPREFERENCES_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -3926,8 +4075,8 @@ _CPLAYER_SETPERFRIENDPREFERENCES_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=13907,
-  serialized_end=13949,
+  serialized_start=12146,
+  serialized_end=12188,
 )
 
 
@@ -3937,6 +4086,7 @@ _CPLAYER_ADDFRIEND_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CPlayer_AddFriend_Request.steamid', index=0,
@@ -3944,7 +4094,7 @@ _CPLAYER_ADDFRIEND_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\0301Steam ID of user to whom to send a friend invite.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\0301Steam ID of user to whom to send a friend invite.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3957,8 +4107,8 @@ _CPLAYER_ADDFRIEND_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=13951,
-  serialized_end=14050,
+  serialized_start=12190,
+  serialized_end=12289,
 )
 
 
@@ -3968,6 +4118,7 @@ _CPLAYER_ADDFRIEND_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='invite_sent', full_name='CPlayer_AddFriend_Response.invite_sent', index=0,
@@ -3975,21 +4126,21 @@ _CPLAYER_ADDFRIEND_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\0306True if the operation was successful, false otherwise.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\0306True if the operation was successful, false otherwise.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='friend_relationship', full_name='CPlayer_AddFriend_Response.friend_relationship', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030ethe resulting relationship.  Depending on state, may move directly to friends rather than invite sent'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030ethe resulting relationship.  Depending on state, may move directly to friends rather than invite sent', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='result', full_name='CPlayer_AddFriend_Response.result', index=2,
       number=3, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4002,8 +4153,8 @@ _CPLAYER_ADDFRIEND_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=14053,
-  serialized_end=14315,
+  serialized_start=12292,
+  serialized_end=12554,
 )
 
 
@@ -4013,6 +4164,7 @@ _CPLAYER_REMOVEFRIEND_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CPlayer_RemoveFriend_Request.steamid', index=0,
@@ -4020,7 +4172,7 @@ _CPLAYER_REMOVEFRIEND_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\035Steam ID of friend to remove.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\035Steam ID of friend to remove.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4033,8 +4185,8 @@ _CPLAYER_REMOVEFRIEND_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=14317,
-  serialized_end=14399,
+  serialized_start=12556,
+  serialized_end=12638,
 )
 
 
@@ -4044,6 +4196,7 @@ _CPLAYER_REMOVEFRIEND_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='friend_relationship', full_name='CPlayer_RemoveFriend_Response.friend_relationship', index=0,
@@ -4051,7 +4204,7 @@ _CPLAYER_REMOVEFRIEND_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\032the resulting relationship'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\032the resulting relationship', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4064,8 +4217,8 @@ _CPLAYER_REMOVEFRIEND_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=14401,
-  serialized_end=14493,
+  serialized_start=12640,
+  serialized_end=12732,
 )
 
 
@@ -4075,6 +4228,7 @@ _CPLAYER_IGNOREFRIEND_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CPlayer_IgnoreFriend_Request.steamid', index=0,
@@ -4082,14 +4236,14 @@ _CPLAYER_IGNOREFRIEND_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='unignore', full_name='CPlayer_IgnoreFriend_Request.unignore', index=1,
       number=2, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\0308If set, remove from ignore/block list instead of adding '), file=DESCRIPTOR),
+      serialized_options=b'\202\265\0308If set, remove from ignore/block list instead of adding ', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4102,8 +4256,8 @@ _CPLAYER_IGNOREFRIEND_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=14495,
-  serialized_end=14622,
+  serialized_start=12734,
+  serialized_end=12861,
 )
 
 
@@ -4113,6 +4267,7 @@ _CPLAYER_IGNOREFRIEND_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='friend_relationship', full_name='CPlayer_IgnoreFriend_Response.friend_relationship', index=0,
@@ -4120,7 +4275,7 @@ _CPLAYER_IGNOREFRIEND_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\032the resulting relationship'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\032the resulting relationship', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4133,8 +4288,8 @@ _CPLAYER_IGNOREFRIEND_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=14624,
-  serialized_end=14716,
+  serialized_start=12863,
+  serialized_end=12955,
 )
 
 
@@ -4144,6 +4299,7 @@ _CPLAYER_GETCOMMUNITYPREFERENCES_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -4157,8 +4313,8 @@ _CPLAYER_GETCOMMUNITYPREFERENCES_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=14718,
-  serialized_end=14759,
+  serialized_start=12957,
+  serialized_end=12998,
 )
 
 
@@ -4168,6 +4324,7 @@ _CPLAYER_COMMUNITYPREFERENCES = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='hide_adult_content_violence', full_name='CPlayer_CommunityPreferences.hide_adult_content_violence', index=0,
@@ -4175,49 +4332,49 @@ _CPLAYER_COMMUNITYPREFERENCES = _descriptor.Descriptor(
       has_default_value=True, default_value=True,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='hide_adult_content_sex', full_name='CPlayer_CommunityPreferences.hide_adult_content_sex', index=1,
       number=2, type=8, cpp_type=7, label=1,
       has_default_value=True, default_value=True,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='parenthesize_nicknames', full_name='CPlayer_CommunityPreferences.parenthesize_nicknames', index=2,
       number=4, type=8, cpp_type=7, label=1,
       has_default_value=True, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='text_filter_setting', full_name='CPlayer_CommunityPreferences.text_filter_setting', index=3,
       number=5, type=14, cpp_type=8, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='text_filter_ignore_friends', full_name='CPlayer_CommunityPreferences.text_filter_ignore_friends', index=4,
       number=6, type=8, cpp_type=7, label=1,
       has_default_value=True, default_value=True,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='text_filter_words_revision', full_name='CPlayer_CommunityPreferences.text_filter_words_revision', index=5,
       number=7, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='timestamp_updated', full_name='CPlayer_CommunityPreferences.timestamp_updated', index=6,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4230,8 +4387,8 @@ _CPLAYER_COMMUNITYPREFERENCES = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=14762,
-  serialized_end=15105,
+  serialized_start=13001,
+  serialized_end=13344,
 )
 
 
@@ -4241,6 +4398,7 @@ _CPLAYER_GETCOMMUNITYPREFERENCES_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='preferences', full_name='CPlayer_GetCommunityPreferences_Response.preferences', index=0,
@@ -4248,7 +4406,7 @@ _CPLAYER_GETCOMMUNITYPREFERENCES_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4261,8 +4419,8 @@ _CPLAYER_GETCOMMUNITYPREFERENCES_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=15107,
-  serialized_end=15201,
+  serialized_start=13346,
+  serialized_end=13440,
 )
 
 
@@ -4272,6 +4430,7 @@ _CPLAYER_SETCOMMUNITYPREFERENCES_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='preferences', full_name='CPlayer_SetCommunityPreferences_Request.preferences', index=0,
@@ -4279,7 +4438,7 @@ _CPLAYER_SETCOMMUNITYPREFERENCES_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4292,8 +4451,8 @@ _CPLAYER_SETCOMMUNITYPREFERENCES_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=15203,
-  serialized_end=15296,
+  serialized_start=13442,
+  serialized_end=13535,
 )
 
 
@@ -4303,6 +4462,7 @@ _CPLAYER_SETCOMMUNITYPREFERENCES_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -4316,8 +4476,8 @@ _CPLAYER_SETCOMMUNITYPREFERENCES_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=15298,
-  serialized_end=15340,
+  serialized_start=13537,
+  serialized_end=13579,
 )
 
 
@@ -4327,6 +4487,7 @@ _CPLAYER_GETTEXTFILTERWORDS_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -4340,8 +4501,8 @@ _CPLAYER_GETTEXTFILTERWORDS_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=15342,
-  serialized_end=15378,
+  serialized_start=13581,
+  serialized_end=13617,
 )
 
 
@@ -4351,6 +4512,7 @@ _CPLAYER_TEXTFILTERWORDS = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='text_filter_custom_banned_words', full_name='CPlayer_TextFilterWords.text_filter_custom_banned_words', index=0,
@@ -4358,21 +4520,21 @@ _CPLAYER_TEXTFILTERWORDS = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='text_filter_custom_clean_words', full_name='CPlayer_TextFilterWords.text_filter_custom_clean_words', index=1,
       number=2, type=9, cpp_type=9, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='text_filter_words_revision', full_name='CPlayer_TextFilterWords.text_filter_words_revision', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4385,8 +4547,8 @@ _CPLAYER_TEXTFILTERWORDS = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=15381,
-  serialized_end=15523,
+  serialized_start=13620,
+  serialized_end=13762,
 )
 
 
@@ -4396,6 +4558,7 @@ _CPLAYER_GETTEXTFILTERWORDS_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='words', full_name='CPlayer_GetTextFilterWords_Response.words', index=0,
@@ -4403,7 +4566,7 @@ _CPLAYER_GETTEXTFILTERWORDS_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4416,8 +4579,8 @@ _CPLAYER_GETTEXTFILTERWORDS_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=15525,
-  serialized_end=15603,
+  serialized_start=13764,
+  serialized_end=13842,
 )
 
 
@@ -4427,6 +4590,7 @@ _CPLAYER_GETNEWSTEAMANNOUNCEMENTSTATE_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='language', full_name='CPlayer_GetNewSteamAnnouncementState_Request.language', index=0,
@@ -4434,7 +4598,7 @@ _CPLAYER_GETNEWSTEAMANNOUNCEMENTSTATE_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4447,8 +4611,8 @@ _CPLAYER_GETNEWSTEAMANNOUNCEMENTSTATE_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=15605,
-  serialized_end=15669,
+  serialized_start=13844,
+  serialized_end=13908,
 )
 
 
@@ -4458,6 +4622,7 @@ _CPLAYER_GETNEWSTEAMANNOUNCEMENTSTATE_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='state', full_name='CPlayer_GetNewSteamAnnouncementState_Response.state', index=0,
@@ -4465,35 +4630,35 @@ _CPLAYER_GETNEWSTEAMANNOUNCEMENTSTATE_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='announcement_headline', full_name='CPlayer_GetNewSteamAnnouncementState_Response.announcement_headline', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='announcement_url', full_name='CPlayer_GetNewSteamAnnouncementState_Response.announcement_url', index=2,
       number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='time_posted', full_name='CPlayer_GetNewSteamAnnouncementState_Response.time_posted', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='announcement_gid', full_name='CPlayer_GetNewSteamAnnouncementState_Response.announcement_gid', index=4,
       number=5, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4506,8 +4671,8 @@ _CPLAYER_GETNEWSTEAMANNOUNCEMENTSTATE_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=15672,
-  serialized_end=15838,
+  serialized_start=13911,
+  serialized_end=14077,
 )
 
 
@@ -4517,6 +4682,7 @@ _CPLAYER_UPDATESTEAMANNOUNCEMENTLASTREAD_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='announcement_gid', full_name='CPlayer_UpdateSteamAnnouncementLastRead_Request.announcement_gid', index=0,
@@ -4524,14 +4690,14 @@ _CPLAYER_UPDATESTEAMANNOUNCEMENTLASTREAD_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='time_posted', full_name='CPlayer_UpdateSteamAnnouncementLastRead_Request.time_posted', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4544,8 +4710,8 @@ _CPLAYER_UPDATESTEAMANNOUNCEMENTLASTREAD_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=15840,
-  serialized_end=15936,
+  serialized_start=14079,
+  serialized_end=14175,
 )
 
 
@@ -4555,6 +4721,7 @@ _CPLAYER_UPDATESTEAMANNOUNCEMENTLASTREAD_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -4568,8 +4735,8 @@ _CPLAYER_UPDATESTEAMANNOUNCEMENTLASTREAD_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=15938,
-  serialized_end=15988,
+  serialized_start=14177,
+  serialized_end=14227,
 )
 
 
@@ -4579,6 +4746,7 @@ _CPLAYER_GETPRIVACYSETTINGS_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -4592,8 +4760,8 @@ _CPLAYER_GETPRIVACYSETTINGS_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=15990,
-  serialized_end=16026,
+  serialized_start=14229,
+  serialized_end=14265,
 )
 
 
@@ -4603,6 +4771,7 @@ _CPRIVACYSETTINGS = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='privacy_state', full_name='CPrivacySettings.privacy_state', index=0,
@@ -4610,42 +4779,42 @@ _CPRIVACYSETTINGS = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='privacy_state_inventory', full_name='CPrivacySettings.privacy_state_inventory', index=1,
       number=2, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='privacy_state_gifts', full_name='CPrivacySettings.privacy_state_gifts', index=2,
       number=3, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='privacy_state_ownedgames', full_name='CPrivacySettings.privacy_state_ownedgames', index=3,
       number=4, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='privacy_state_playtime', full_name='CPrivacySettings.privacy_state_playtime', index=4,
       number=5, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='privacy_state_friendslist', full_name='CPrivacySettings.privacy_state_friendslist', index=5,
       number=6, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4658,8 +4827,8 @@ _CPRIVACYSETTINGS = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=16029,
-  serialized_end=16233,
+  serialized_start=14268,
+  serialized_end=14472,
 )
 
 
@@ -4669,6 +4838,7 @@ _CPLAYER_GETPRIVACYSETTINGS_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='privacy_settings', full_name='CPlayer_GetPrivacySettings_Response.privacy_settings', index=0,
@@ -4676,7 +4846,7 @@ _CPLAYER_GETPRIVACYSETTINGS_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4689,8 +4859,8 @@ _CPLAYER_GETPRIVACYSETTINGS_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=16235,
-  serialized_end=16317,
+  serialized_start=14474,
+  serialized_end=14556,
 )
 
 
@@ -4700,6 +4870,7 @@ _CPLAYER_GETDURATIONCONTROL_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CPlayer_GetDurationControl_Request.appid', index=0,
@@ -4707,7 +4878,7 @@ _CPLAYER_GETDURATIONCONTROL_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4720,8 +4891,8 @@ _CPLAYER_GETDURATIONCONTROL_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=16319,
-  serialized_end=16370,
+  serialized_start=14558,
+  serialized_end=14609,
 )
 
 
@@ -4731,6 +4902,7 @@ _CPLAYER_GETDURATIONCONTROL_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='is_enabled', full_name='CPlayer_GetDurationControl_Response.is_enabled', index=0,
@@ -4738,56 +4910,56 @@ _CPLAYER_GETDURATIONCONTROL_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='seconds', full_name='CPlayer_GetDurationControl_Response.seconds', index=1,
       number=2, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='seconds_today', full_name='CPlayer_GetDurationControl_Response.seconds_today', index=2,
       number=3, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='is_steamchina_account', full_name='CPlayer_GetDurationControl_Response.is_steamchina_account', index=3,
       number=4, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='is_age_verified', full_name='CPlayer_GetDurationControl_Response.is_age_verified', index=4,
       number=5, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='seconds_allowed_today', full_name='CPlayer_GetDurationControl_Response.seconds_allowed_today', index=5,
       number=6, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='age_verification_pending', full_name='CPlayer_GetDurationControl_Response.age_verification_pending', index=6,
       number=7, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='block_minors', full_name='CPlayer_GetDurationControl_Response.block_minors', index=7,
       number=8, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4800,8 +4972,8 @@ _CPLAYER_GETDURATIONCONTROL_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=16373,
-  serialized_end=16613,
+  serialized_start=14612,
+  serialized_end=14852,
 )
 
 
@@ -4811,6 +4983,7 @@ _CPLAYER_LASTPLAYEDTIMES_NOTIFICATION = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='games', full_name='CPlayer_LastPlayedTimes_Notification.games', index=0,
@@ -4818,7 +4991,7 @@ _CPLAYER_LASTPLAYEDTIMES_NOTIFICATION = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4831,8 +5004,8 @@ _CPLAYER_LASTPLAYEDTIMES_NOTIFICATION = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=16615,
-  serialized_end=16711,
+  serialized_start=14854,
+  serialized_end=14950,
 )
 
 
@@ -4842,6 +5015,7 @@ _CPLAYER_FRIENDNICKNAMECHANGED_NOTIFICATION = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='accountid', full_name='CPlayer_FriendNicknameChanged_Notification.accountid', index=0,
@@ -4849,21 +5023,21 @@ _CPLAYER_FRIENDNICKNAMECHANGED_NOTIFICATION = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='nickname', full_name='CPlayer_FriendNicknameChanged_Notification.nickname', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='is_echo_to_self', full_name='CPlayer_FriendNicknameChanged_Notification.is_echo_to_self', index=2,
       number=3, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4876,8 +5050,8 @@ _CPLAYER_FRIENDNICKNAMECHANGED_NOTIFICATION = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=16713,
-  serialized_end=16819,
+  serialized_start=14952,
+  serialized_end=15058,
 )
 
 
@@ -4887,6 +5061,7 @@ _CPLAYER_FRIENDEQUIPPEDPROFILEITEMSCHANGED_NOTIFICATION = _descriptor.Descriptor
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='accountid', full_name='CPlayer_FriendEquippedProfileItemsChanged_Notification.accountid', index=0,
@@ -4894,7 +5069,7 @@ _CPLAYER_FRIENDEQUIPPEDPROFILEITEMSCHANGED_NOTIFICATION = _descriptor.Descriptor
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4907,8 +5082,8 @@ _CPLAYER_FRIENDEQUIPPEDPROFILEITEMSCHANGED_NOTIFICATION = _descriptor.Descriptor
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=16821,
-  serialized_end=16896,
+  serialized_start=15060,
+  serialized_end=15135,
 )
 
 
@@ -4918,6 +5093,7 @@ _CPLAYER_NEWSTEAMANNOUNCEMENTSTATE_NOTIFICATION = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='state', full_name='CPlayer_NewSteamAnnouncementState_Notification.state', index=0,
@@ -4925,35 +5101,35 @@ _CPLAYER_NEWSTEAMANNOUNCEMENTSTATE_NOTIFICATION = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='announcement_headline', full_name='CPlayer_NewSteamAnnouncementState_Notification.announcement_headline', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='announcement_url', full_name='CPlayer_NewSteamAnnouncementState_Notification.announcement_url', index=2,
       number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='time_posted', full_name='CPlayer_NewSteamAnnouncementState_Notification.time_posted', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='announcement_gid', full_name='CPlayer_NewSteamAnnouncementState_Notification.announcement_gid', index=4,
       number=5, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4966,8 +5142,8 @@ _CPLAYER_NEWSTEAMANNOUNCEMENTSTATE_NOTIFICATION = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=16899,
-  serialized_end=17066,
+  serialized_start=15138,
+  serialized_end=15305,
 )
 
 
@@ -4977,6 +5153,7 @@ _CPLAYER_COMMUNITYPREFERENCESCHANGED_NOTIFICATION = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='preferences', full_name='CPlayer_CommunityPreferencesChanged_Notification.preferences', index=0,
@@ -4984,7 +5161,7 @@ _CPLAYER_COMMUNITYPREFERENCESCHANGED_NOTIFICATION = _descriptor.Descriptor(
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4997,8 +5174,8 @@ _CPLAYER_COMMUNITYPREFERENCESCHANGED_NOTIFICATION = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=17068,
-  serialized_end=17170,
+  serialized_start=15307,
+  serialized_end=15409,
 )
 
 
@@ -5008,6 +5185,7 @@ _CPLAYER_TEXTFILTERWORDSCHANGED_NOTIFICATION = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='words', full_name='CPlayer_TextFilterWordsChanged_Notification.words', index=0,
@@ -5015,7 +5193,7 @@ _CPLAYER_TEXTFILTERWORDSCHANGED_NOTIFICATION = _descriptor.Descriptor(
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -5028,8 +5206,8 @@ _CPLAYER_TEXTFILTERWORDSCHANGED_NOTIFICATION = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=17172,
-  serialized_end=17258,
+  serialized_start=15411,
+  serialized_end=15497,
 )
 
 
@@ -5039,6 +5217,7 @@ _CPLAYER_PERFRIENDPREFERENCESCHANGED_NOTIFICATION = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='accountid', full_name='CPlayer_PerFriendPreferencesChanged_Notification.accountid', index=0,
@@ -5046,14 +5225,14 @@ _CPLAYER_PERFRIENDPREFERENCESCHANGED_NOTIFICATION = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='preferences', full_name='CPlayer_PerFriendPreferencesChanged_Notification.preferences', index=1,
       number=2, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -5066,8 +5245,8 @@ _CPLAYER_PERFRIENDPREFERENCESCHANGED_NOTIFICATION = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=17260,
-  serialized_end=17373,
+  serialized_start=15499,
+  serialized_end=15612,
 )
 
 
@@ -5077,6 +5256,7 @@ _CPLAYER_PRIVACYSETTINGSCHANGED_NOTIFICATION = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='privacy_settings', full_name='CPlayer_PrivacySettingsChanged_Notification.privacy_settings', index=0,
@@ -5084,7 +5264,7 @@ _CPLAYER_PRIVACYSETTINGSCHANGED_NOTIFICATION = _descriptor.Descriptor(
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -5097,8 +5277,8 @@ _CPLAYER_PRIVACYSETTINGSCHANGED_NOTIFICATION = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=17375,
-  serialized_end=17465,
+  serialized_start=15614,
+  serialized_end=15704,
 )
 
 _CPLAYER_GETMUTUALFRIENDSFORINCOMINGINVITES_RESPONSE.fields_by_name['incoming_invite_mutual_friends_lists'].message_type = _CPLAYER_INCOMINGINVITEMUTUALFRIENDLIST
@@ -5112,38 +5292,31 @@ _CPLAYER_GETFRIENDSGAMEPLAYINFO_RESPONSE.fields_by_name['played_recently'].messa
 _CPLAYER_GETFRIENDSGAMEPLAYINFO_RESPONSE.fields_by_name['played_ever'].message_type = _CPLAYER_GETFRIENDSGAMEPLAYINFO_RESPONSE_FRIENDSGAMEPLAYINFO
 _CPLAYER_GETFRIENDSGAMEPLAYINFO_RESPONSE.fields_by_name['owns'].message_type = _CPLAYER_GETFRIENDSGAMEPLAYINFO_RESPONSE_FRIENDSGAMEPLAYINFO
 _CPLAYER_GETFRIENDSGAMEPLAYINFO_RESPONSE.fields_by_name['in_wishlist'].message_type = _CPLAYER_GETFRIENDSGAMEPLAYINFO_RESPONSE_FRIENDSGAMEPLAYINFO
-_CPLAYER_GETFRIENDSAPPSACTIVITY_RESPONSE_FRIENDPLAYTIME.containing_type = _CPLAYER_GETFRIENDSAPPSACTIVITY_RESPONSE
-_CPLAYER_GETFRIENDSAPPSACTIVITY_RESPONSE_APPFRIENDSINFO.fields_by_name['friends'].message_type = _CPLAYER_GETFRIENDSAPPSACTIVITY_RESPONSE_FRIENDPLAYTIME
-_CPLAYER_GETFRIENDSAPPSACTIVITY_RESPONSE_APPFRIENDSINFO.containing_type = _CPLAYER_GETFRIENDSAPPSACTIVITY_RESPONSE
-_CPLAYER_GETFRIENDSAPPSACTIVITY_RESPONSE.fields_by_name['trending'].message_type = _CPLAYER_GETFRIENDSAPPSACTIVITY_RESPONSE_APPFRIENDSINFO
-_CPLAYER_GETFRIENDSAPPSACTIVITY_RESPONSE.fields_by_name['recent_purchases'].message_type = _CPLAYER_GETFRIENDSAPPSACTIVITY_RESPONSE_APPFRIENDSINFO
-_CPLAYER_GETFRIENDSAPPSACTIVITY_RESPONSE.fields_by_name['unowned'].message_type = _CPLAYER_GETFRIENDSAPPSACTIVITY_RESPONSE_APPFRIENDSINFO
-_CPLAYER_GETFRIENDSAPPSACTIVITY_RESPONSE.fields_by_name['popular'].message_type = _CPLAYER_GETFRIENDSAPPSACTIVITY_RESPONSE_APPFRIENDSINFO
-_CPLAYER_GETFRIENDSAPPSACTIVITY_RESPONSE.fields_by_name['dont_forget'].message_type = _CPLAYER_GETFRIENDSAPPSACTIVITY_RESPONSE_APPFRIENDSINFO
-_CPLAYER_GETFRIENDSAPPSACTIVITY_RESPONSE.fields_by_name['being_discussed'].message_type = _CPLAYER_GETFRIENDSAPPSACTIVITY_RESPONSE_APPFRIENDSINFO
-_CPLAYER_GETFRIENDSAPPSACTIVITY_RESPONSE.fields_by_name['new_to_group'].message_type = _CPLAYER_GETFRIENDSAPPSACTIVITY_RESPONSE_APPFRIENDSINFO
-_CPLAYER_GETFRIENDSAPPSACTIVITY_RESPONSE.fields_by_name['returned_to_group'].message_type = _CPLAYER_GETFRIENDSAPPSACTIVITY_RESPONSE_APPFRIENDSINFO
 _CPLAYER_GETGAMEBADGELEVELS_RESPONSE_BADGE.containing_type = _CPLAYER_GETGAMEBADGELEVELS_RESPONSE
 _CPLAYER_GETGAMEBADGELEVELS_RESPONSE.fields_by_name['badges'].message_type = _CPLAYER_GETGAMEBADGELEVELS_RESPONSE_BADGE
 _CPLAYER_GETPROFILEBACKGROUND_RESPONSE.fields_by_name['profile_background'].message_type = _PROFILEITEM
 _CPLAYER_GETMINIPROFILEBACKGROUND_RESPONSE.fields_by_name['profile_background'].message_type = _PROFILEITEM
 _CPLAYER_GETAVATARFRAME_RESPONSE.fields_by_name['avatar_frame'].message_type = _PROFILEITEM
 _CPLAYER_GETANIMATEDAVATAR_RESPONSE.fields_by_name['avatar'].message_type = _PROFILEITEM
+_CPLAYER_GETSTEAMDECKKEYBOARDSKIN_RESPONSE.fields_by_name['steam_deck_keyboard_skin'].message_type = _PROFILEITEM
+_CPLAYER_GETPROFILEITEMSOWNED_REQUEST.fields_by_name['filters'].enum_type = enums__pb2._ECOMMUNITYITEMCLASS
 _CPLAYER_GETPROFILEITEMSOWNED_RESPONSE.fields_by_name['profile_backgrounds'].message_type = _PROFILEITEM
 _CPLAYER_GETPROFILEITEMSOWNED_RESPONSE.fields_by_name['mini_profile_backgrounds'].message_type = _PROFILEITEM
 _CPLAYER_GETPROFILEITEMSOWNED_RESPONSE.fields_by_name['avatar_frames'].message_type = _PROFILEITEM
 _CPLAYER_GETPROFILEITEMSOWNED_RESPONSE.fields_by_name['animated_avatars'].message_type = _PROFILEITEM
 _CPLAYER_GETPROFILEITEMSOWNED_RESPONSE.fields_by_name['profile_modifiers'].message_type = _PROFILEITEM
+_CPLAYER_GETPROFILEITEMSOWNED_RESPONSE.fields_by_name['steam_deck_keyboard_skins'].message_type = _PROFILEITEM
 _CPLAYER_GETPROFILEITEMSEQUIPPED_RESPONSE.fields_by_name['profile_background'].message_type = _PROFILEITEM
 _CPLAYER_GETPROFILEITEMSEQUIPPED_RESPONSE.fields_by_name['mini_profile_background'].message_type = _PROFILEITEM
 _CPLAYER_GETPROFILEITEMSEQUIPPED_RESPONSE.fields_by_name['avatar_frame'].message_type = _PROFILEITEM
 _CPLAYER_GETPROFILEITEMSEQUIPPED_RESPONSE.fields_by_name['animated_avatar'].message_type = _PROFILEITEM
 _CPLAYER_GETPROFILEITEMSEQUIPPED_RESPONSE.fields_by_name['profile_modifier'].message_type = _PROFILEITEM
+_CPLAYER_GETPROFILEITEMSEQUIPPED_RESPONSE.fields_by_name['steam_deck_keyboard_skin'].message_type = _PROFILEITEM
 _CPLAYER_GETEMOTICONLIST_RESPONSE_EMOTICON.containing_type = _CPLAYER_GETEMOTICONLIST_RESPONSE
 _CPLAYER_GETEMOTICONLIST_RESPONSE.fields_by_name['emoticons'].message_type = _CPLAYER_GETEMOTICONLIST_RESPONSE_EMOTICON
 _CPLAYER_GETACHIEVEMENTSPROGRESS_RESPONSE_ACHIEVEMENTPROGRESS.containing_type = _CPLAYER_GETACHIEVEMENTSPROGRESS_RESPONSE
 _CPLAYER_GETACHIEVEMENTSPROGRESS_RESPONSE.fields_by_name['achievement_progress'].message_type = _CPLAYER_GETACHIEVEMENTSPROGRESS_RESPONSE_ACHIEVEMENTPROGRESS
-_PROFILECUSTOMIZATIONSLOT.fields_by_name['ban_check_result'].enum_type = enums__pb2._EBANCONTENTCHECKRESULT
+_PROFILECUSTOMIZATIONSLOT.fields_by_name['ban_check_result'].enum_type = steammessages__base__pb2._EBANCONTENTCHECKRESULT
 _PROFILECUSTOMIZATION.fields_by_name['customization_type'].enum_type = enums__pb2._EPROFILECUSTOMIZATIONTYPE
 _PROFILECUSTOMIZATION.fields_by_name['slots'].message_type = _PROFILECUSTOMIZATIONSLOT
 _PROFILECUSTOMIZATION.fields_by_name['customization_style'].enum_type = _EPROFILECUSTOMIZATIONSTYLE
@@ -5197,8 +5370,6 @@ DESCRIPTOR.message_types_by_name['CPlayer_GetPlayNext_Request'] = _CPLAYER_GETPL
 DESCRIPTOR.message_types_by_name['CPlayer_GetPlayNext_Response'] = _CPLAYER_GETPLAYNEXT_RESPONSE
 DESCRIPTOR.message_types_by_name['CPlayer_GetFriendsGameplayInfo_Request'] = _CPLAYER_GETFRIENDSGAMEPLAYINFO_REQUEST
 DESCRIPTOR.message_types_by_name['CPlayer_GetFriendsGameplayInfo_Response'] = _CPLAYER_GETFRIENDSGAMEPLAYINFO_RESPONSE
-DESCRIPTOR.message_types_by_name['CPlayer_GetFriendsAppsActivity_Request'] = _CPLAYER_GETFRIENDSAPPSACTIVITY_REQUEST
-DESCRIPTOR.message_types_by_name['CPlayer_GetFriendsAppsActivity_Response'] = _CPLAYER_GETFRIENDSAPPSACTIVITY_RESPONSE
 DESCRIPTOR.message_types_by_name['CPlayer_GetGameBadgeLevels_Request'] = _CPLAYER_GETGAMEBADGELEVELS_REQUEST
 DESCRIPTOR.message_types_by_name['CPlayer_GetGameBadgeLevels_Response'] = _CPLAYER_GETGAMEBADGELEVELS_RESPONSE
 DESCRIPTOR.message_types_by_name['CPlayer_GetProfileBackground_Request'] = _CPLAYER_GETPROFILEBACKGROUND_REQUEST
@@ -5218,6 +5389,10 @@ DESCRIPTOR.message_types_by_name['CPlayer_GetAnimatedAvatar_Request'] = _CPLAYER
 DESCRIPTOR.message_types_by_name['CPlayer_GetAnimatedAvatar_Response'] = _CPLAYER_GETANIMATEDAVATAR_RESPONSE
 DESCRIPTOR.message_types_by_name['CPlayer_SetAnimatedAvatar_Request'] = _CPLAYER_SETANIMATEDAVATAR_REQUEST
 DESCRIPTOR.message_types_by_name['CPlayer_SetAnimatedAvatar_Response'] = _CPLAYER_SETANIMATEDAVATAR_RESPONSE
+DESCRIPTOR.message_types_by_name['CPlayer_GetSteamDeckKeyboardSkin_Request'] = _CPLAYER_GETSTEAMDECKKEYBOARDSKIN_REQUEST
+DESCRIPTOR.message_types_by_name['CPlayer_GetSteamDeckKeyboardSkin_Response'] = _CPLAYER_GETSTEAMDECKKEYBOARDSKIN_RESPONSE
+DESCRIPTOR.message_types_by_name['CPlayer_SetSteamDeckKeyboardSkin_Request'] = _CPLAYER_SETSTEAMDECKKEYBOARDSKIN_REQUEST
+DESCRIPTOR.message_types_by_name['CPlayer_SetSteamDeckKeyboardSkin_Response'] = _CPLAYER_SETSTEAMDECKKEYBOARDSKIN_RESPONSE
 DESCRIPTOR.message_types_by_name['CPlayer_GetProfileItemsOwned_Request'] = _CPLAYER_GETPROFILEITEMSOWNED_REQUEST
 DESCRIPTOR.message_types_by_name['CPlayer_GetProfileItemsOwned_Response'] = _CPLAYER_GETPROFILEITEMSOWNED_RESPONSE
 DESCRIPTOR.message_types_by_name['CPlayer_GetProfileItemsEquipped_Request'] = _CPLAYER_GETPROFILEITEMSEQUIPPED_REQUEST
@@ -5256,6 +5431,8 @@ DESCRIPTOR.message_types_by_name['CPlayer_DeletePostedStatus_Request'] = _CPLAYE
 DESCRIPTOR.message_types_by_name['CPlayer_DeletePostedStatus_Response'] = _CPLAYER_DELETEPOSTEDSTATUS_RESPONSE
 DESCRIPTOR.message_types_by_name['CPlayer_GetLastPlayedTimes_Request'] = _CPLAYER_GETLASTPLAYEDTIMES_REQUEST
 DESCRIPTOR.message_types_by_name['CPlayer_GetLastPlayedTimes_Response'] = _CPLAYER_GETLASTPLAYEDTIMES_RESPONSE
+DESCRIPTOR.message_types_by_name['CPlayer_GetTimeSSAAccepted_Request'] = _CPLAYER_GETTIMESSAACCEPTED_REQUEST
+DESCRIPTOR.message_types_by_name['CPlayer_GetTimeSSAAccepted_Response'] = _CPLAYER_GETTIMESSAACCEPTED_RESPONSE
 DESCRIPTOR.message_types_by_name['CPlayer_AcceptSSA_Request'] = _CPLAYER_ACCEPTSSA_REQUEST
 DESCRIPTOR.message_types_by_name['CPlayer_AcceptSSA_Response'] = _CPLAYER_ACCEPTSSA_RESPONSE
 DESCRIPTOR.message_types_by_name['CPlayer_GetNicknameList_Request'] = _CPLAYER_GETNICKNAMELIST_REQUEST
@@ -5302,872 +5479,884 @@ DESCRIPTOR.enum_types_by_name['ENotificationSetting'] = _ENOTIFICATIONSETTING
 DESCRIPTOR.enum_types_by_name['ETextFilterSetting'] = _ETEXTFILTERSETTING
 _sym_db.RegisterFileDescriptor(DESCRIPTOR)
 
-CPlayer_GetMutualFriendsForIncomingInvites_Request = _reflection.GeneratedProtocolMessageType('CPlayer_GetMutualFriendsForIncomingInvites_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CPLAYER_GETMUTUALFRIENDSFORINCOMINGINVITES_REQUEST,
-  __module__ = 'steammessages_player_pb2'
+CPlayer_GetMutualFriendsForIncomingInvites_Request = _reflection.GeneratedProtocolMessageType('CPlayer_GetMutualFriendsForIncomingInvites_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPLAYER_GETMUTUALFRIENDSFORINCOMINGINVITES_REQUEST,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_GetMutualFriendsForIncomingInvites_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_GetMutualFriendsForIncomingInvites_Request)
 
-CPlayer_IncomingInviteMutualFriendList = _reflection.GeneratedProtocolMessageType('CPlayer_IncomingInviteMutualFriendList', (_message.Message,), dict(
-  DESCRIPTOR = _CPLAYER_INCOMINGINVITEMUTUALFRIENDLIST,
-  __module__ = 'steammessages_player_pb2'
+CPlayer_IncomingInviteMutualFriendList = _reflection.GeneratedProtocolMessageType('CPlayer_IncomingInviteMutualFriendList', (_message.Message,), {
+  'DESCRIPTOR' : _CPLAYER_INCOMINGINVITEMUTUALFRIENDLIST,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_IncomingInviteMutualFriendList)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_IncomingInviteMutualFriendList)
 
-CPlayer_GetMutualFriendsForIncomingInvites_Response = _reflection.GeneratedProtocolMessageType('CPlayer_GetMutualFriendsForIncomingInvites_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CPLAYER_GETMUTUALFRIENDSFORINCOMINGINVITES_RESPONSE,
-  __module__ = 'steammessages_player_pb2'
+CPlayer_GetMutualFriendsForIncomingInvites_Response = _reflection.GeneratedProtocolMessageType('CPlayer_GetMutualFriendsForIncomingInvites_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CPLAYER_GETMUTUALFRIENDSFORINCOMINGINVITES_RESPONSE,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_GetMutualFriendsForIncomingInvites_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_GetMutualFriendsForIncomingInvites_Response)
 
-CPlayer_GetOwnedGames_Request = _reflection.GeneratedProtocolMessageType('CPlayer_GetOwnedGames_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CPLAYER_GETOWNEDGAMES_REQUEST,
-  __module__ = 'steammessages_player_pb2'
+CPlayer_GetOwnedGames_Request = _reflection.GeneratedProtocolMessageType('CPlayer_GetOwnedGames_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPLAYER_GETOWNEDGAMES_REQUEST,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_GetOwnedGames_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_GetOwnedGames_Request)
 
-CPlayer_GetOwnedGames_Response = _reflection.GeneratedProtocolMessageType('CPlayer_GetOwnedGames_Response', (_message.Message,), dict(
+CPlayer_GetOwnedGames_Response = _reflection.GeneratedProtocolMessageType('CPlayer_GetOwnedGames_Response', (_message.Message,), {
 
-  Game = _reflection.GeneratedProtocolMessageType('Game', (_message.Message,), dict(
-    DESCRIPTOR = _CPLAYER_GETOWNEDGAMES_RESPONSE_GAME,
-    __module__ = 'steammessages_player_pb2'
+  'Game' : _reflection.GeneratedProtocolMessageType('Game', (_message.Message,), {
+    'DESCRIPTOR' : _CPLAYER_GETOWNEDGAMES_RESPONSE_GAME,
+    '__module__' : 'steammessages_player_pb2'
     # @@protoc_insertion_point(class_scope:CPlayer_GetOwnedGames_Response.Game)
-    ))
+    })
   ,
-  DESCRIPTOR = _CPLAYER_GETOWNEDGAMES_RESPONSE,
-  __module__ = 'steammessages_player_pb2'
+  'DESCRIPTOR' : _CPLAYER_GETOWNEDGAMES_RESPONSE,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_GetOwnedGames_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_GetOwnedGames_Response)
 _sym_db.RegisterMessage(CPlayer_GetOwnedGames_Response.Game)
 
-CPlayer_GetPlayNext_Request = _reflection.GeneratedProtocolMessageType('CPlayer_GetPlayNext_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CPLAYER_GETPLAYNEXT_REQUEST,
-  __module__ = 'steammessages_player_pb2'
+CPlayer_GetPlayNext_Request = _reflection.GeneratedProtocolMessageType('CPlayer_GetPlayNext_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPLAYER_GETPLAYNEXT_REQUEST,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_GetPlayNext_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_GetPlayNext_Request)
 
-CPlayer_GetPlayNext_Response = _reflection.GeneratedProtocolMessageType('CPlayer_GetPlayNext_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CPLAYER_GETPLAYNEXT_RESPONSE,
-  __module__ = 'steammessages_player_pb2'
+CPlayer_GetPlayNext_Response = _reflection.GeneratedProtocolMessageType('CPlayer_GetPlayNext_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CPLAYER_GETPLAYNEXT_RESPONSE,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_GetPlayNext_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_GetPlayNext_Response)
 
-CPlayer_GetFriendsGameplayInfo_Request = _reflection.GeneratedProtocolMessageType('CPlayer_GetFriendsGameplayInfo_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CPLAYER_GETFRIENDSGAMEPLAYINFO_REQUEST,
-  __module__ = 'steammessages_player_pb2'
+CPlayer_GetFriendsGameplayInfo_Request = _reflection.GeneratedProtocolMessageType('CPlayer_GetFriendsGameplayInfo_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPLAYER_GETFRIENDSGAMEPLAYINFO_REQUEST,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_GetFriendsGameplayInfo_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_GetFriendsGameplayInfo_Request)
 
-CPlayer_GetFriendsGameplayInfo_Response = _reflection.GeneratedProtocolMessageType('CPlayer_GetFriendsGameplayInfo_Response', (_message.Message,), dict(
+CPlayer_GetFriendsGameplayInfo_Response = _reflection.GeneratedProtocolMessageType('CPlayer_GetFriendsGameplayInfo_Response', (_message.Message,), {
 
-  FriendsGameplayInfo = _reflection.GeneratedProtocolMessageType('FriendsGameplayInfo', (_message.Message,), dict(
-    DESCRIPTOR = _CPLAYER_GETFRIENDSGAMEPLAYINFO_RESPONSE_FRIENDSGAMEPLAYINFO,
-    __module__ = 'steammessages_player_pb2'
+  'FriendsGameplayInfo' : _reflection.GeneratedProtocolMessageType('FriendsGameplayInfo', (_message.Message,), {
+    'DESCRIPTOR' : _CPLAYER_GETFRIENDSGAMEPLAYINFO_RESPONSE_FRIENDSGAMEPLAYINFO,
+    '__module__' : 'steammessages_player_pb2'
     # @@protoc_insertion_point(class_scope:CPlayer_GetFriendsGameplayInfo_Response.FriendsGameplayInfo)
-    ))
+    })
   ,
 
-  OwnGameplayInfo = _reflection.GeneratedProtocolMessageType('OwnGameplayInfo', (_message.Message,), dict(
-    DESCRIPTOR = _CPLAYER_GETFRIENDSGAMEPLAYINFO_RESPONSE_OWNGAMEPLAYINFO,
-    __module__ = 'steammessages_player_pb2'
+  'OwnGameplayInfo' : _reflection.GeneratedProtocolMessageType('OwnGameplayInfo', (_message.Message,), {
+    'DESCRIPTOR' : _CPLAYER_GETFRIENDSGAMEPLAYINFO_RESPONSE_OWNGAMEPLAYINFO,
+    '__module__' : 'steammessages_player_pb2'
     # @@protoc_insertion_point(class_scope:CPlayer_GetFriendsGameplayInfo_Response.OwnGameplayInfo)
-    ))
+    })
   ,
-  DESCRIPTOR = _CPLAYER_GETFRIENDSGAMEPLAYINFO_RESPONSE,
-  __module__ = 'steammessages_player_pb2'
+  'DESCRIPTOR' : _CPLAYER_GETFRIENDSGAMEPLAYINFO_RESPONSE,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_GetFriendsGameplayInfo_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_GetFriendsGameplayInfo_Response)
 _sym_db.RegisterMessage(CPlayer_GetFriendsGameplayInfo_Response.FriendsGameplayInfo)
 _sym_db.RegisterMessage(CPlayer_GetFriendsGameplayInfo_Response.OwnGameplayInfo)
 
-CPlayer_GetFriendsAppsActivity_Request = _reflection.GeneratedProtocolMessageType('CPlayer_GetFriendsAppsActivity_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CPLAYER_GETFRIENDSAPPSACTIVITY_REQUEST,
-  __module__ = 'steammessages_player_pb2'
-  # @@protoc_insertion_point(class_scope:CPlayer_GetFriendsAppsActivity_Request)
-  ))
-_sym_db.RegisterMessage(CPlayer_GetFriendsAppsActivity_Request)
-
-CPlayer_GetFriendsAppsActivity_Response = _reflection.GeneratedProtocolMessageType('CPlayer_GetFriendsAppsActivity_Response', (_message.Message,), dict(
-
-  FriendPlayTime = _reflection.GeneratedProtocolMessageType('FriendPlayTime', (_message.Message,), dict(
-    DESCRIPTOR = _CPLAYER_GETFRIENDSAPPSACTIVITY_RESPONSE_FRIENDPLAYTIME,
-    __module__ = 'steammessages_player_pb2'
-    # @@protoc_insertion_point(class_scope:CPlayer_GetFriendsAppsActivity_Response.FriendPlayTime)
-    ))
-  ,
-
-  AppFriendsInfo = _reflection.GeneratedProtocolMessageType('AppFriendsInfo', (_message.Message,), dict(
-    DESCRIPTOR = _CPLAYER_GETFRIENDSAPPSACTIVITY_RESPONSE_APPFRIENDSINFO,
-    __module__ = 'steammessages_player_pb2'
-    # @@protoc_insertion_point(class_scope:CPlayer_GetFriendsAppsActivity_Response.AppFriendsInfo)
-    ))
-  ,
-  DESCRIPTOR = _CPLAYER_GETFRIENDSAPPSACTIVITY_RESPONSE,
-  __module__ = 'steammessages_player_pb2'
-  # @@protoc_insertion_point(class_scope:CPlayer_GetFriendsAppsActivity_Response)
-  ))
-_sym_db.RegisterMessage(CPlayer_GetFriendsAppsActivity_Response)
-_sym_db.RegisterMessage(CPlayer_GetFriendsAppsActivity_Response.FriendPlayTime)
-_sym_db.RegisterMessage(CPlayer_GetFriendsAppsActivity_Response.AppFriendsInfo)
-
-CPlayer_GetGameBadgeLevels_Request = _reflection.GeneratedProtocolMessageType('CPlayer_GetGameBadgeLevels_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CPLAYER_GETGAMEBADGELEVELS_REQUEST,
-  __module__ = 'steammessages_player_pb2'
+CPlayer_GetGameBadgeLevels_Request = _reflection.GeneratedProtocolMessageType('CPlayer_GetGameBadgeLevels_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPLAYER_GETGAMEBADGELEVELS_REQUEST,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_GetGameBadgeLevels_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_GetGameBadgeLevels_Request)
 
-CPlayer_GetGameBadgeLevels_Response = _reflection.GeneratedProtocolMessageType('CPlayer_GetGameBadgeLevels_Response', (_message.Message,), dict(
+CPlayer_GetGameBadgeLevels_Response = _reflection.GeneratedProtocolMessageType('CPlayer_GetGameBadgeLevels_Response', (_message.Message,), {
 
-  Badge = _reflection.GeneratedProtocolMessageType('Badge', (_message.Message,), dict(
-    DESCRIPTOR = _CPLAYER_GETGAMEBADGELEVELS_RESPONSE_BADGE,
-    __module__ = 'steammessages_player_pb2'
+  'Badge' : _reflection.GeneratedProtocolMessageType('Badge', (_message.Message,), {
+    'DESCRIPTOR' : _CPLAYER_GETGAMEBADGELEVELS_RESPONSE_BADGE,
+    '__module__' : 'steammessages_player_pb2'
     # @@protoc_insertion_point(class_scope:CPlayer_GetGameBadgeLevels_Response.Badge)
-    ))
+    })
   ,
-  DESCRIPTOR = _CPLAYER_GETGAMEBADGELEVELS_RESPONSE,
-  __module__ = 'steammessages_player_pb2'
+  'DESCRIPTOR' : _CPLAYER_GETGAMEBADGELEVELS_RESPONSE,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_GetGameBadgeLevels_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_GetGameBadgeLevels_Response)
 _sym_db.RegisterMessage(CPlayer_GetGameBadgeLevels_Response.Badge)
 
-CPlayer_GetProfileBackground_Request = _reflection.GeneratedProtocolMessageType('CPlayer_GetProfileBackground_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CPLAYER_GETPROFILEBACKGROUND_REQUEST,
-  __module__ = 'steammessages_player_pb2'
+CPlayer_GetProfileBackground_Request = _reflection.GeneratedProtocolMessageType('CPlayer_GetProfileBackground_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPLAYER_GETPROFILEBACKGROUND_REQUEST,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_GetProfileBackground_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_GetProfileBackground_Request)
 
-ProfileItem = _reflection.GeneratedProtocolMessageType('ProfileItem', (_message.Message,), dict(
-  DESCRIPTOR = _PROFILEITEM,
-  __module__ = 'steammessages_player_pb2'
+ProfileItem = _reflection.GeneratedProtocolMessageType('ProfileItem', (_message.Message,), {
+  'DESCRIPTOR' : _PROFILEITEM,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:ProfileItem)
-  ))
+  })
 _sym_db.RegisterMessage(ProfileItem)
 
-CPlayer_GetProfileBackground_Response = _reflection.GeneratedProtocolMessageType('CPlayer_GetProfileBackground_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CPLAYER_GETPROFILEBACKGROUND_RESPONSE,
-  __module__ = 'steammessages_player_pb2'
+CPlayer_GetProfileBackground_Response = _reflection.GeneratedProtocolMessageType('CPlayer_GetProfileBackground_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CPLAYER_GETPROFILEBACKGROUND_RESPONSE,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_GetProfileBackground_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_GetProfileBackground_Response)
 
-CPlayer_SetProfileBackground_Request = _reflection.GeneratedProtocolMessageType('CPlayer_SetProfileBackground_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CPLAYER_SETPROFILEBACKGROUND_REQUEST,
-  __module__ = 'steammessages_player_pb2'
+CPlayer_SetProfileBackground_Request = _reflection.GeneratedProtocolMessageType('CPlayer_SetProfileBackground_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPLAYER_SETPROFILEBACKGROUND_REQUEST,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_SetProfileBackground_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_SetProfileBackground_Request)
 
-CPlayer_SetProfileBackground_Response = _reflection.GeneratedProtocolMessageType('CPlayer_SetProfileBackground_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CPLAYER_SETPROFILEBACKGROUND_RESPONSE,
-  __module__ = 'steammessages_player_pb2'
+CPlayer_SetProfileBackground_Response = _reflection.GeneratedProtocolMessageType('CPlayer_SetProfileBackground_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CPLAYER_SETPROFILEBACKGROUND_RESPONSE,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_SetProfileBackground_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_SetProfileBackground_Response)
 
-CPlayer_GetMiniProfileBackground_Request = _reflection.GeneratedProtocolMessageType('CPlayer_GetMiniProfileBackground_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CPLAYER_GETMINIPROFILEBACKGROUND_REQUEST,
-  __module__ = 'steammessages_player_pb2'
+CPlayer_GetMiniProfileBackground_Request = _reflection.GeneratedProtocolMessageType('CPlayer_GetMiniProfileBackground_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPLAYER_GETMINIPROFILEBACKGROUND_REQUEST,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_GetMiniProfileBackground_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_GetMiniProfileBackground_Request)
 
-CPlayer_GetMiniProfileBackground_Response = _reflection.GeneratedProtocolMessageType('CPlayer_GetMiniProfileBackground_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CPLAYER_GETMINIPROFILEBACKGROUND_RESPONSE,
-  __module__ = 'steammessages_player_pb2'
+CPlayer_GetMiniProfileBackground_Response = _reflection.GeneratedProtocolMessageType('CPlayer_GetMiniProfileBackground_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CPLAYER_GETMINIPROFILEBACKGROUND_RESPONSE,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_GetMiniProfileBackground_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_GetMiniProfileBackground_Response)
 
-CPlayer_SetMiniProfileBackground_Request = _reflection.GeneratedProtocolMessageType('CPlayer_SetMiniProfileBackground_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CPLAYER_SETMINIPROFILEBACKGROUND_REQUEST,
-  __module__ = 'steammessages_player_pb2'
+CPlayer_SetMiniProfileBackground_Request = _reflection.GeneratedProtocolMessageType('CPlayer_SetMiniProfileBackground_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPLAYER_SETMINIPROFILEBACKGROUND_REQUEST,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_SetMiniProfileBackground_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_SetMiniProfileBackground_Request)
 
-CPlayer_SetMiniProfileBackground_Response = _reflection.GeneratedProtocolMessageType('CPlayer_SetMiniProfileBackground_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CPLAYER_SETMINIPROFILEBACKGROUND_RESPONSE,
-  __module__ = 'steammessages_player_pb2'
+CPlayer_SetMiniProfileBackground_Response = _reflection.GeneratedProtocolMessageType('CPlayer_SetMiniProfileBackground_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CPLAYER_SETMINIPROFILEBACKGROUND_RESPONSE,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_SetMiniProfileBackground_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_SetMiniProfileBackground_Response)
 
-CPlayer_GetAvatarFrame_Request = _reflection.GeneratedProtocolMessageType('CPlayer_GetAvatarFrame_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CPLAYER_GETAVATARFRAME_REQUEST,
-  __module__ = 'steammessages_player_pb2'
+CPlayer_GetAvatarFrame_Request = _reflection.GeneratedProtocolMessageType('CPlayer_GetAvatarFrame_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPLAYER_GETAVATARFRAME_REQUEST,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_GetAvatarFrame_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_GetAvatarFrame_Request)
 
-CPlayer_GetAvatarFrame_Response = _reflection.GeneratedProtocolMessageType('CPlayer_GetAvatarFrame_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CPLAYER_GETAVATARFRAME_RESPONSE,
-  __module__ = 'steammessages_player_pb2'
+CPlayer_GetAvatarFrame_Response = _reflection.GeneratedProtocolMessageType('CPlayer_GetAvatarFrame_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CPLAYER_GETAVATARFRAME_RESPONSE,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_GetAvatarFrame_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_GetAvatarFrame_Response)
 
-CPlayer_SetAvatarFrame_Request = _reflection.GeneratedProtocolMessageType('CPlayer_SetAvatarFrame_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CPLAYER_SETAVATARFRAME_REQUEST,
-  __module__ = 'steammessages_player_pb2'
+CPlayer_SetAvatarFrame_Request = _reflection.GeneratedProtocolMessageType('CPlayer_SetAvatarFrame_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPLAYER_SETAVATARFRAME_REQUEST,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_SetAvatarFrame_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_SetAvatarFrame_Request)
 
-CPlayer_SetAvatarFrame_Response = _reflection.GeneratedProtocolMessageType('CPlayer_SetAvatarFrame_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CPLAYER_SETAVATARFRAME_RESPONSE,
-  __module__ = 'steammessages_player_pb2'
+CPlayer_SetAvatarFrame_Response = _reflection.GeneratedProtocolMessageType('CPlayer_SetAvatarFrame_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CPLAYER_SETAVATARFRAME_RESPONSE,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_SetAvatarFrame_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_SetAvatarFrame_Response)
 
-CPlayer_GetAnimatedAvatar_Request = _reflection.GeneratedProtocolMessageType('CPlayer_GetAnimatedAvatar_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CPLAYER_GETANIMATEDAVATAR_REQUEST,
-  __module__ = 'steammessages_player_pb2'
+CPlayer_GetAnimatedAvatar_Request = _reflection.GeneratedProtocolMessageType('CPlayer_GetAnimatedAvatar_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPLAYER_GETANIMATEDAVATAR_REQUEST,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_GetAnimatedAvatar_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_GetAnimatedAvatar_Request)
 
-CPlayer_GetAnimatedAvatar_Response = _reflection.GeneratedProtocolMessageType('CPlayer_GetAnimatedAvatar_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CPLAYER_GETANIMATEDAVATAR_RESPONSE,
-  __module__ = 'steammessages_player_pb2'
+CPlayer_GetAnimatedAvatar_Response = _reflection.GeneratedProtocolMessageType('CPlayer_GetAnimatedAvatar_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CPLAYER_GETANIMATEDAVATAR_RESPONSE,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_GetAnimatedAvatar_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_GetAnimatedAvatar_Response)
 
-CPlayer_SetAnimatedAvatar_Request = _reflection.GeneratedProtocolMessageType('CPlayer_SetAnimatedAvatar_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CPLAYER_SETANIMATEDAVATAR_REQUEST,
-  __module__ = 'steammessages_player_pb2'
+CPlayer_SetAnimatedAvatar_Request = _reflection.GeneratedProtocolMessageType('CPlayer_SetAnimatedAvatar_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPLAYER_SETANIMATEDAVATAR_REQUEST,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_SetAnimatedAvatar_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_SetAnimatedAvatar_Request)
 
-CPlayer_SetAnimatedAvatar_Response = _reflection.GeneratedProtocolMessageType('CPlayer_SetAnimatedAvatar_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CPLAYER_SETANIMATEDAVATAR_RESPONSE,
-  __module__ = 'steammessages_player_pb2'
+CPlayer_SetAnimatedAvatar_Response = _reflection.GeneratedProtocolMessageType('CPlayer_SetAnimatedAvatar_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CPLAYER_SETANIMATEDAVATAR_RESPONSE,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_SetAnimatedAvatar_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_SetAnimatedAvatar_Response)
 
-CPlayer_GetProfileItemsOwned_Request = _reflection.GeneratedProtocolMessageType('CPlayer_GetProfileItemsOwned_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CPLAYER_GETPROFILEITEMSOWNED_REQUEST,
-  __module__ = 'steammessages_player_pb2'
+CPlayer_GetSteamDeckKeyboardSkin_Request = _reflection.GeneratedProtocolMessageType('CPlayer_GetSteamDeckKeyboardSkin_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPLAYER_GETSTEAMDECKKEYBOARDSKIN_REQUEST,
+  '__module__' : 'steammessages_player_pb2'
+  # @@protoc_insertion_point(class_scope:CPlayer_GetSteamDeckKeyboardSkin_Request)
+  })
+_sym_db.RegisterMessage(CPlayer_GetSteamDeckKeyboardSkin_Request)
+
+CPlayer_GetSteamDeckKeyboardSkin_Response = _reflection.GeneratedProtocolMessageType('CPlayer_GetSteamDeckKeyboardSkin_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CPLAYER_GETSTEAMDECKKEYBOARDSKIN_RESPONSE,
+  '__module__' : 'steammessages_player_pb2'
+  # @@protoc_insertion_point(class_scope:CPlayer_GetSteamDeckKeyboardSkin_Response)
+  })
+_sym_db.RegisterMessage(CPlayer_GetSteamDeckKeyboardSkin_Response)
+
+CPlayer_SetSteamDeckKeyboardSkin_Request = _reflection.GeneratedProtocolMessageType('CPlayer_SetSteamDeckKeyboardSkin_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPLAYER_SETSTEAMDECKKEYBOARDSKIN_REQUEST,
+  '__module__' : 'steammessages_player_pb2'
+  # @@protoc_insertion_point(class_scope:CPlayer_SetSteamDeckKeyboardSkin_Request)
+  })
+_sym_db.RegisterMessage(CPlayer_SetSteamDeckKeyboardSkin_Request)
+
+CPlayer_SetSteamDeckKeyboardSkin_Response = _reflection.GeneratedProtocolMessageType('CPlayer_SetSteamDeckKeyboardSkin_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CPLAYER_SETSTEAMDECKKEYBOARDSKIN_RESPONSE,
+  '__module__' : 'steammessages_player_pb2'
+  # @@protoc_insertion_point(class_scope:CPlayer_SetSteamDeckKeyboardSkin_Response)
+  })
+_sym_db.RegisterMessage(CPlayer_SetSteamDeckKeyboardSkin_Response)
+
+CPlayer_GetProfileItemsOwned_Request = _reflection.GeneratedProtocolMessageType('CPlayer_GetProfileItemsOwned_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPLAYER_GETPROFILEITEMSOWNED_REQUEST,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_GetProfileItemsOwned_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_GetProfileItemsOwned_Request)
 
-CPlayer_GetProfileItemsOwned_Response = _reflection.GeneratedProtocolMessageType('CPlayer_GetProfileItemsOwned_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CPLAYER_GETPROFILEITEMSOWNED_RESPONSE,
-  __module__ = 'steammessages_player_pb2'
+CPlayer_GetProfileItemsOwned_Response = _reflection.GeneratedProtocolMessageType('CPlayer_GetProfileItemsOwned_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CPLAYER_GETPROFILEITEMSOWNED_RESPONSE,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_GetProfileItemsOwned_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_GetProfileItemsOwned_Response)
 
-CPlayer_GetProfileItemsEquipped_Request = _reflection.GeneratedProtocolMessageType('CPlayer_GetProfileItemsEquipped_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CPLAYER_GETPROFILEITEMSEQUIPPED_REQUEST,
-  __module__ = 'steammessages_player_pb2'
+CPlayer_GetProfileItemsEquipped_Request = _reflection.GeneratedProtocolMessageType('CPlayer_GetProfileItemsEquipped_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPLAYER_GETPROFILEITEMSEQUIPPED_REQUEST,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_GetProfileItemsEquipped_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_GetProfileItemsEquipped_Request)
 
-CPlayer_GetProfileItemsEquipped_Response = _reflection.GeneratedProtocolMessageType('CPlayer_GetProfileItemsEquipped_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CPLAYER_GETPROFILEITEMSEQUIPPED_RESPONSE,
-  __module__ = 'steammessages_player_pb2'
+CPlayer_GetProfileItemsEquipped_Response = _reflection.GeneratedProtocolMessageType('CPlayer_GetProfileItemsEquipped_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CPLAYER_GETPROFILEITEMSEQUIPPED_RESPONSE,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_GetProfileItemsEquipped_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_GetProfileItemsEquipped_Response)
 
-CPlayer_SetEquippedProfileItemFlags_Request = _reflection.GeneratedProtocolMessageType('CPlayer_SetEquippedProfileItemFlags_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CPLAYER_SETEQUIPPEDPROFILEITEMFLAGS_REQUEST,
-  __module__ = 'steammessages_player_pb2'
+CPlayer_SetEquippedProfileItemFlags_Request = _reflection.GeneratedProtocolMessageType('CPlayer_SetEquippedProfileItemFlags_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPLAYER_SETEQUIPPEDPROFILEITEMFLAGS_REQUEST,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_SetEquippedProfileItemFlags_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_SetEquippedProfileItemFlags_Request)
 
-CPlayer_SetEquippedProfileItemFlags_Response = _reflection.GeneratedProtocolMessageType('CPlayer_SetEquippedProfileItemFlags_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CPLAYER_SETEQUIPPEDPROFILEITEMFLAGS_RESPONSE,
-  __module__ = 'steammessages_player_pb2'
+CPlayer_SetEquippedProfileItemFlags_Response = _reflection.GeneratedProtocolMessageType('CPlayer_SetEquippedProfileItemFlags_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CPLAYER_SETEQUIPPEDPROFILEITEMFLAGS_RESPONSE,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_SetEquippedProfileItemFlags_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_SetEquippedProfileItemFlags_Response)
 
-CPlayer_GetEmoticonList_Request = _reflection.GeneratedProtocolMessageType('CPlayer_GetEmoticonList_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CPLAYER_GETEMOTICONLIST_REQUEST,
-  __module__ = 'steammessages_player_pb2'
+CPlayer_GetEmoticonList_Request = _reflection.GeneratedProtocolMessageType('CPlayer_GetEmoticonList_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPLAYER_GETEMOTICONLIST_REQUEST,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_GetEmoticonList_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_GetEmoticonList_Request)
 
-CPlayer_GetEmoticonList_Response = _reflection.GeneratedProtocolMessageType('CPlayer_GetEmoticonList_Response', (_message.Message,), dict(
+CPlayer_GetEmoticonList_Response = _reflection.GeneratedProtocolMessageType('CPlayer_GetEmoticonList_Response', (_message.Message,), {
 
-  Emoticon = _reflection.GeneratedProtocolMessageType('Emoticon', (_message.Message,), dict(
-    DESCRIPTOR = _CPLAYER_GETEMOTICONLIST_RESPONSE_EMOTICON,
-    __module__ = 'steammessages_player_pb2'
+  'Emoticon' : _reflection.GeneratedProtocolMessageType('Emoticon', (_message.Message,), {
+    'DESCRIPTOR' : _CPLAYER_GETEMOTICONLIST_RESPONSE_EMOTICON,
+    '__module__' : 'steammessages_player_pb2'
     # @@protoc_insertion_point(class_scope:CPlayer_GetEmoticonList_Response.Emoticon)
-    ))
+    })
   ,
-  DESCRIPTOR = _CPLAYER_GETEMOTICONLIST_RESPONSE,
-  __module__ = 'steammessages_player_pb2'
+  'DESCRIPTOR' : _CPLAYER_GETEMOTICONLIST_RESPONSE,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_GetEmoticonList_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_GetEmoticonList_Response)
 _sym_db.RegisterMessage(CPlayer_GetEmoticonList_Response.Emoticon)
 
-CPlayer_GetAchievementsProgress_Request = _reflection.GeneratedProtocolMessageType('CPlayer_GetAchievementsProgress_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CPLAYER_GETACHIEVEMENTSPROGRESS_REQUEST,
-  __module__ = 'steammessages_player_pb2'
+CPlayer_GetAchievementsProgress_Request = _reflection.GeneratedProtocolMessageType('CPlayer_GetAchievementsProgress_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPLAYER_GETACHIEVEMENTSPROGRESS_REQUEST,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_GetAchievementsProgress_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_GetAchievementsProgress_Request)
 
-CPlayer_GetAchievementsProgress_Response = _reflection.GeneratedProtocolMessageType('CPlayer_GetAchievementsProgress_Response', (_message.Message,), dict(
+CPlayer_GetAchievementsProgress_Response = _reflection.GeneratedProtocolMessageType('CPlayer_GetAchievementsProgress_Response', (_message.Message,), {
 
-  AchievementProgress = _reflection.GeneratedProtocolMessageType('AchievementProgress', (_message.Message,), dict(
-    DESCRIPTOR = _CPLAYER_GETACHIEVEMENTSPROGRESS_RESPONSE_ACHIEVEMENTPROGRESS,
-    __module__ = 'steammessages_player_pb2'
+  'AchievementProgress' : _reflection.GeneratedProtocolMessageType('AchievementProgress', (_message.Message,), {
+    'DESCRIPTOR' : _CPLAYER_GETACHIEVEMENTSPROGRESS_RESPONSE_ACHIEVEMENTPROGRESS,
+    '__module__' : 'steammessages_player_pb2'
     # @@protoc_insertion_point(class_scope:CPlayer_GetAchievementsProgress_Response.AchievementProgress)
-    ))
+    })
   ,
-  DESCRIPTOR = _CPLAYER_GETACHIEVEMENTSPROGRESS_RESPONSE,
-  __module__ = 'steammessages_player_pb2'
+  'DESCRIPTOR' : _CPLAYER_GETACHIEVEMENTSPROGRESS_RESPONSE,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_GetAchievementsProgress_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_GetAchievementsProgress_Response)
 _sym_db.RegisterMessage(CPlayer_GetAchievementsProgress_Response.AchievementProgress)
 
-CPlayer_GetFavoriteBadge_Request = _reflection.GeneratedProtocolMessageType('CPlayer_GetFavoriteBadge_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CPLAYER_GETFAVORITEBADGE_REQUEST,
-  __module__ = 'steammessages_player_pb2'
+CPlayer_GetFavoriteBadge_Request = _reflection.GeneratedProtocolMessageType('CPlayer_GetFavoriteBadge_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPLAYER_GETFAVORITEBADGE_REQUEST,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_GetFavoriteBadge_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_GetFavoriteBadge_Request)
 
-CPlayer_GetFavoriteBadge_Response = _reflection.GeneratedProtocolMessageType('CPlayer_GetFavoriteBadge_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CPLAYER_GETFAVORITEBADGE_RESPONSE,
-  __module__ = 'steammessages_player_pb2'
+CPlayer_GetFavoriteBadge_Response = _reflection.GeneratedProtocolMessageType('CPlayer_GetFavoriteBadge_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CPLAYER_GETFAVORITEBADGE_RESPONSE,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_GetFavoriteBadge_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_GetFavoriteBadge_Response)
 
-CPlayer_SetFavoriteBadge_Request = _reflection.GeneratedProtocolMessageType('CPlayer_SetFavoriteBadge_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CPLAYER_SETFAVORITEBADGE_REQUEST,
-  __module__ = 'steammessages_player_pb2'
+CPlayer_SetFavoriteBadge_Request = _reflection.GeneratedProtocolMessageType('CPlayer_SetFavoriteBadge_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPLAYER_SETFAVORITEBADGE_REQUEST,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_SetFavoriteBadge_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_SetFavoriteBadge_Request)
 
-CPlayer_SetFavoriteBadge_Response = _reflection.GeneratedProtocolMessageType('CPlayer_SetFavoriteBadge_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CPLAYER_SETFAVORITEBADGE_RESPONSE,
-  __module__ = 'steammessages_player_pb2'
+CPlayer_SetFavoriteBadge_Response = _reflection.GeneratedProtocolMessageType('CPlayer_SetFavoriteBadge_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CPLAYER_SETFAVORITEBADGE_RESPONSE,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_SetFavoriteBadge_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_SetFavoriteBadge_Response)
 
-CPlayer_GetProfileCustomization_Request = _reflection.GeneratedProtocolMessageType('CPlayer_GetProfileCustomization_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CPLAYER_GETPROFILECUSTOMIZATION_REQUEST,
-  __module__ = 'steammessages_player_pb2'
+CPlayer_GetProfileCustomization_Request = _reflection.GeneratedProtocolMessageType('CPlayer_GetProfileCustomization_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPLAYER_GETPROFILECUSTOMIZATION_REQUEST,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_GetProfileCustomization_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_GetProfileCustomization_Request)
 
-ProfileCustomizationSlot = _reflection.GeneratedProtocolMessageType('ProfileCustomizationSlot', (_message.Message,), dict(
-  DESCRIPTOR = _PROFILECUSTOMIZATIONSLOT,
-  __module__ = 'steammessages_player_pb2'
+ProfileCustomizationSlot = _reflection.GeneratedProtocolMessageType('ProfileCustomizationSlot', (_message.Message,), {
+  'DESCRIPTOR' : _PROFILECUSTOMIZATIONSLOT,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:ProfileCustomizationSlot)
-  ))
+  })
 _sym_db.RegisterMessage(ProfileCustomizationSlot)
 
-ProfileCustomization = _reflection.GeneratedProtocolMessageType('ProfileCustomization', (_message.Message,), dict(
-  DESCRIPTOR = _PROFILECUSTOMIZATION,
-  __module__ = 'steammessages_player_pb2'
+ProfileCustomization = _reflection.GeneratedProtocolMessageType('ProfileCustomization', (_message.Message,), {
+  'DESCRIPTOR' : _PROFILECUSTOMIZATION,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:ProfileCustomization)
-  ))
+  })
 _sym_db.RegisterMessage(ProfileCustomization)
 
-ProfileTheme = _reflection.GeneratedProtocolMessageType('ProfileTheme', (_message.Message,), dict(
-  DESCRIPTOR = _PROFILETHEME,
-  __module__ = 'steammessages_player_pb2'
+ProfileTheme = _reflection.GeneratedProtocolMessageType('ProfileTheme', (_message.Message,), {
+  'DESCRIPTOR' : _PROFILETHEME,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:ProfileTheme)
-  ))
+  })
 _sym_db.RegisterMessage(ProfileTheme)
 
-ProfilePreferences = _reflection.GeneratedProtocolMessageType('ProfilePreferences', (_message.Message,), dict(
-  DESCRIPTOR = _PROFILEPREFERENCES,
-  __module__ = 'steammessages_player_pb2'
+ProfilePreferences = _reflection.GeneratedProtocolMessageType('ProfilePreferences', (_message.Message,), {
+  'DESCRIPTOR' : _PROFILEPREFERENCES,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:ProfilePreferences)
-  ))
+  })
 _sym_db.RegisterMessage(ProfilePreferences)
 
-CPlayer_GetProfileCustomization_Response = _reflection.GeneratedProtocolMessageType('CPlayer_GetProfileCustomization_Response', (_message.Message,), dict(
+CPlayer_GetProfileCustomization_Response = _reflection.GeneratedProtocolMessageType('CPlayer_GetProfileCustomization_Response', (_message.Message,), {
 
-  PurchasedCustomization = _reflection.GeneratedProtocolMessageType('PurchasedCustomization', (_message.Message,), dict(
-    DESCRIPTOR = _CPLAYER_GETPROFILECUSTOMIZATION_RESPONSE_PURCHASEDCUSTOMIZATION,
-    __module__ = 'steammessages_player_pb2'
+  'PurchasedCustomization' : _reflection.GeneratedProtocolMessageType('PurchasedCustomization', (_message.Message,), {
+    'DESCRIPTOR' : _CPLAYER_GETPROFILECUSTOMIZATION_RESPONSE_PURCHASEDCUSTOMIZATION,
+    '__module__' : 'steammessages_player_pb2'
     # @@protoc_insertion_point(class_scope:CPlayer_GetProfileCustomization_Response.PurchasedCustomization)
-    ))
+    })
   ,
-  DESCRIPTOR = _CPLAYER_GETPROFILECUSTOMIZATION_RESPONSE,
-  __module__ = 'steammessages_player_pb2'
+  'DESCRIPTOR' : _CPLAYER_GETPROFILECUSTOMIZATION_RESPONSE,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_GetProfileCustomization_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_GetProfileCustomization_Response)
 _sym_db.RegisterMessage(CPlayer_GetProfileCustomization_Response.PurchasedCustomization)
 
-CPlayer_GetPurchasedProfileCustomizations_Request = _reflection.GeneratedProtocolMessageType('CPlayer_GetPurchasedProfileCustomizations_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CPLAYER_GETPURCHASEDPROFILECUSTOMIZATIONS_REQUEST,
-  __module__ = 'steammessages_player_pb2'
+CPlayer_GetPurchasedProfileCustomizations_Request = _reflection.GeneratedProtocolMessageType('CPlayer_GetPurchasedProfileCustomizations_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPLAYER_GETPURCHASEDPROFILECUSTOMIZATIONS_REQUEST,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_GetPurchasedProfileCustomizations_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_GetPurchasedProfileCustomizations_Request)
 
-CPlayer_GetPurchasedProfileCustomizations_Response = _reflection.GeneratedProtocolMessageType('CPlayer_GetPurchasedProfileCustomizations_Response', (_message.Message,), dict(
+CPlayer_GetPurchasedProfileCustomizations_Response = _reflection.GeneratedProtocolMessageType('CPlayer_GetPurchasedProfileCustomizations_Response', (_message.Message,), {
 
-  PurchasedCustomization = _reflection.GeneratedProtocolMessageType('PurchasedCustomization', (_message.Message,), dict(
-    DESCRIPTOR = _CPLAYER_GETPURCHASEDPROFILECUSTOMIZATIONS_RESPONSE_PURCHASEDCUSTOMIZATION,
-    __module__ = 'steammessages_player_pb2'
+  'PurchasedCustomization' : _reflection.GeneratedProtocolMessageType('PurchasedCustomization', (_message.Message,), {
+    'DESCRIPTOR' : _CPLAYER_GETPURCHASEDPROFILECUSTOMIZATIONS_RESPONSE_PURCHASEDCUSTOMIZATION,
+    '__module__' : 'steammessages_player_pb2'
     # @@protoc_insertion_point(class_scope:CPlayer_GetPurchasedProfileCustomizations_Response.PurchasedCustomization)
-    ))
+    })
   ,
-  DESCRIPTOR = _CPLAYER_GETPURCHASEDPROFILECUSTOMIZATIONS_RESPONSE,
-  __module__ = 'steammessages_player_pb2'
+  'DESCRIPTOR' : _CPLAYER_GETPURCHASEDPROFILECUSTOMIZATIONS_RESPONSE,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_GetPurchasedProfileCustomizations_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_GetPurchasedProfileCustomizations_Response)
 _sym_db.RegisterMessage(CPlayer_GetPurchasedProfileCustomizations_Response.PurchasedCustomization)
 
-CPlayer_GetPurchasedAndUpgradedProfileCustomizations_Request = _reflection.GeneratedProtocolMessageType('CPlayer_GetPurchasedAndUpgradedProfileCustomizations_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CPLAYER_GETPURCHASEDANDUPGRADEDPROFILECUSTOMIZATIONS_REQUEST,
-  __module__ = 'steammessages_player_pb2'
+CPlayer_GetPurchasedAndUpgradedProfileCustomizations_Request = _reflection.GeneratedProtocolMessageType('CPlayer_GetPurchasedAndUpgradedProfileCustomizations_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPLAYER_GETPURCHASEDANDUPGRADEDPROFILECUSTOMIZATIONS_REQUEST,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_GetPurchasedAndUpgradedProfileCustomizations_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_GetPurchasedAndUpgradedProfileCustomizations_Request)
 
-CPlayer_GetPurchasedAndUpgradedProfileCustomizations_Response = _reflection.GeneratedProtocolMessageType('CPlayer_GetPurchasedAndUpgradedProfileCustomizations_Response', (_message.Message,), dict(
+CPlayer_GetPurchasedAndUpgradedProfileCustomizations_Response = _reflection.GeneratedProtocolMessageType('CPlayer_GetPurchasedAndUpgradedProfileCustomizations_Response', (_message.Message,), {
 
-  PurchasedCustomization = _reflection.GeneratedProtocolMessageType('PurchasedCustomization', (_message.Message,), dict(
-    DESCRIPTOR = _CPLAYER_GETPURCHASEDANDUPGRADEDPROFILECUSTOMIZATIONS_RESPONSE_PURCHASEDCUSTOMIZATION,
-    __module__ = 'steammessages_player_pb2'
+  'PurchasedCustomization' : _reflection.GeneratedProtocolMessageType('PurchasedCustomization', (_message.Message,), {
+    'DESCRIPTOR' : _CPLAYER_GETPURCHASEDANDUPGRADEDPROFILECUSTOMIZATIONS_RESPONSE_PURCHASEDCUSTOMIZATION,
+    '__module__' : 'steammessages_player_pb2'
     # @@protoc_insertion_point(class_scope:CPlayer_GetPurchasedAndUpgradedProfileCustomizations_Response.PurchasedCustomization)
-    ))
+    })
   ,
 
-  UpgradedCustomization = _reflection.GeneratedProtocolMessageType('UpgradedCustomization', (_message.Message,), dict(
-    DESCRIPTOR = _CPLAYER_GETPURCHASEDANDUPGRADEDPROFILECUSTOMIZATIONS_RESPONSE_UPGRADEDCUSTOMIZATION,
-    __module__ = 'steammessages_player_pb2'
+  'UpgradedCustomization' : _reflection.GeneratedProtocolMessageType('UpgradedCustomization', (_message.Message,), {
+    'DESCRIPTOR' : _CPLAYER_GETPURCHASEDANDUPGRADEDPROFILECUSTOMIZATIONS_RESPONSE_UPGRADEDCUSTOMIZATION,
+    '__module__' : 'steammessages_player_pb2'
     # @@protoc_insertion_point(class_scope:CPlayer_GetPurchasedAndUpgradedProfileCustomizations_Response.UpgradedCustomization)
-    ))
+    })
   ,
-  DESCRIPTOR = _CPLAYER_GETPURCHASEDANDUPGRADEDPROFILECUSTOMIZATIONS_RESPONSE,
-  __module__ = 'steammessages_player_pb2'
+  'DESCRIPTOR' : _CPLAYER_GETPURCHASEDANDUPGRADEDPROFILECUSTOMIZATIONS_RESPONSE,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_GetPurchasedAndUpgradedProfileCustomizations_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_GetPurchasedAndUpgradedProfileCustomizations_Response)
 _sym_db.RegisterMessage(CPlayer_GetPurchasedAndUpgradedProfileCustomizations_Response.PurchasedCustomization)
 _sym_db.RegisterMessage(CPlayer_GetPurchasedAndUpgradedProfileCustomizations_Response.UpgradedCustomization)
 
-CPlayer_GetProfileThemesAvailable_Request = _reflection.GeneratedProtocolMessageType('CPlayer_GetProfileThemesAvailable_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CPLAYER_GETPROFILETHEMESAVAILABLE_REQUEST,
-  __module__ = 'steammessages_player_pb2'
+CPlayer_GetProfileThemesAvailable_Request = _reflection.GeneratedProtocolMessageType('CPlayer_GetProfileThemesAvailable_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPLAYER_GETPROFILETHEMESAVAILABLE_REQUEST,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_GetProfileThemesAvailable_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_GetProfileThemesAvailable_Request)
 
-CPlayer_GetProfileThemesAvailable_Response = _reflection.GeneratedProtocolMessageType('CPlayer_GetProfileThemesAvailable_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CPLAYER_GETPROFILETHEMESAVAILABLE_RESPONSE,
-  __module__ = 'steammessages_player_pb2'
+CPlayer_GetProfileThemesAvailable_Response = _reflection.GeneratedProtocolMessageType('CPlayer_GetProfileThemesAvailable_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CPLAYER_GETPROFILETHEMESAVAILABLE_RESPONSE,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_GetProfileThemesAvailable_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_GetProfileThemesAvailable_Response)
 
-CPlayer_SetProfileTheme_Request = _reflection.GeneratedProtocolMessageType('CPlayer_SetProfileTheme_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CPLAYER_SETPROFILETHEME_REQUEST,
-  __module__ = 'steammessages_player_pb2'
+CPlayer_SetProfileTheme_Request = _reflection.GeneratedProtocolMessageType('CPlayer_SetProfileTheme_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPLAYER_SETPROFILETHEME_REQUEST,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_SetProfileTheme_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_SetProfileTheme_Request)
 
-CPlayer_SetProfileTheme_Response = _reflection.GeneratedProtocolMessageType('CPlayer_SetProfileTheme_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CPLAYER_SETPROFILETHEME_RESPONSE,
-  __module__ = 'steammessages_player_pb2'
+CPlayer_SetProfileTheme_Response = _reflection.GeneratedProtocolMessageType('CPlayer_SetProfileTheme_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CPLAYER_SETPROFILETHEME_RESPONSE,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_SetProfileTheme_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_SetProfileTheme_Response)
 
-CPlayer_SetProfilePreferences_Request = _reflection.GeneratedProtocolMessageType('CPlayer_SetProfilePreferences_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CPLAYER_SETPROFILEPREFERENCES_REQUEST,
-  __module__ = 'steammessages_player_pb2'
+CPlayer_SetProfilePreferences_Request = _reflection.GeneratedProtocolMessageType('CPlayer_SetProfilePreferences_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPLAYER_SETPROFILEPREFERENCES_REQUEST,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_SetProfilePreferences_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_SetProfilePreferences_Request)
 
-CPlayer_SetProfilePreferences_Response = _reflection.GeneratedProtocolMessageType('CPlayer_SetProfilePreferences_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CPLAYER_SETPROFILEPREFERENCES_RESPONSE,
-  __module__ = 'steammessages_player_pb2'
+CPlayer_SetProfilePreferences_Response = _reflection.GeneratedProtocolMessageType('CPlayer_SetProfilePreferences_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CPLAYER_SETPROFILEPREFERENCES_RESPONSE,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_SetProfilePreferences_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_SetProfilePreferences_Response)
 
-CPlayer_PostStatusToFriends_Request = _reflection.GeneratedProtocolMessageType('CPlayer_PostStatusToFriends_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CPLAYER_POSTSTATUSTOFRIENDS_REQUEST,
-  __module__ = 'steammessages_player_pb2'
+CPlayer_PostStatusToFriends_Request = _reflection.GeneratedProtocolMessageType('CPlayer_PostStatusToFriends_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPLAYER_POSTSTATUSTOFRIENDS_REQUEST,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_PostStatusToFriends_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_PostStatusToFriends_Request)
 
-CPlayer_PostStatusToFriends_Response = _reflection.GeneratedProtocolMessageType('CPlayer_PostStatusToFriends_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CPLAYER_POSTSTATUSTOFRIENDS_RESPONSE,
-  __module__ = 'steammessages_player_pb2'
+CPlayer_PostStatusToFriends_Response = _reflection.GeneratedProtocolMessageType('CPlayer_PostStatusToFriends_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CPLAYER_POSTSTATUSTOFRIENDS_RESPONSE,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_PostStatusToFriends_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_PostStatusToFriends_Response)
 
-CPlayer_GetPostedStatus_Request = _reflection.GeneratedProtocolMessageType('CPlayer_GetPostedStatus_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CPLAYER_GETPOSTEDSTATUS_REQUEST,
-  __module__ = 'steammessages_player_pb2'
+CPlayer_GetPostedStatus_Request = _reflection.GeneratedProtocolMessageType('CPlayer_GetPostedStatus_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPLAYER_GETPOSTEDSTATUS_REQUEST,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_GetPostedStatus_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_GetPostedStatus_Request)
 
-CPlayer_GetPostedStatus_Response = _reflection.GeneratedProtocolMessageType('CPlayer_GetPostedStatus_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CPLAYER_GETPOSTEDSTATUS_RESPONSE,
-  __module__ = 'steammessages_player_pb2'
+CPlayer_GetPostedStatus_Response = _reflection.GeneratedProtocolMessageType('CPlayer_GetPostedStatus_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CPLAYER_GETPOSTEDSTATUS_RESPONSE,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_GetPostedStatus_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_GetPostedStatus_Response)
 
-CPlayer_DeletePostedStatus_Request = _reflection.GeneratedProtocolMessageType('CPlayer_DeletePostedStatus_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CPLAYER_DELETEPOSTEDSTATUS_REQUEST,
-  __module__ = 'steammessages_player_pb2'
+CPlayer_DeletePostedStatus_Request = _reflection.GeneratedProtocolMessageType('CPlayer_DeletePostedStatus_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPLAYER_DELETEPOSTEDSTATUS_REQUEST,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_DeletePostedStatus_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_DeletePostedStatus_Request)
 
-CPlayer_DeletePostedStatus_Response = _reflection.GeneratedProtocolMessageType('CPlayer_DeletePostedStatus_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CPLAYER_DELETEPOSTEDSTATUS_RESPONSE,
-  __module__ = 'steammessages_player_pb2'
+CPlayer_DeletePostedStatus_Response = _reflection.GeneratedProtocolMessageType('CPlayer_DeletePostedStatus_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CPLAYER_DELETEPOSTEDSTATUS_RESPONSE,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_DeletePostedStatus_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_DeletePostedStatus_Response)
 
-CPlayer_GetLastPlayedTimes_Request = _reflection.GeneratedProtocolMessageType('CPlayer_GetLastPlayedTimes_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CPLAYER_GETLASTPLAYEDTIMES_REQUEST,
-  __module__ = 'steammessages_player_pb2'
+CPlayer_GetLastPlayedTimes_Request = _reflection.GeneratedProtocolMessageType('CPlayer_GetLastPlayedTimes_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPLAYER_GETLASTPLAYEDTIMES_REQUEST,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_GetLastPlayedTimes_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_GetLastPlayedTimes_Request)
 
-CPlayer_GetLastPlayedTimes_Response = _reflection.GeneratedProtocolMessageType('CPlayer_GetLastPlayedTimes_Response', (_message.Message,), dict(
+CPlayer_GetLastPlayedTimes_Response = _reflection.GeneratedProtocolMessageType('CPlayer_GetLastPlayedTimes_Response', (_message.Message,), {
 
-  Game = _reflection.GeneratedProtocolMessageType('Game', (_message.Message,), dict(
-    DESCRIPTOR = _CPLAYER_GETLASTPLAYEDTIMES_RESPONSE_GAME,
-    __module__ = 'steammessages_player_pb2'
+  'Game' : _reflection.GeneratedProtocolMessageType('Game', (_message.Message,), {
+    'DESCRIPTOR' : _CPLAYER_GETLASTPLAYEDTIMES_RESPONSE_GAME,
+    '__module__' : 'steammessages_player_pb2'
     # @@protoc_insertion_point(class_scope:CPlayer_GetLastPlayedTimes_Response.Game)
-    ))
+    })
   ,
-  DESCRIPTOR = _CPLAYER_GETLASTPLAYEDTIMES_RESPONSE,
-  __module__ = 'steammessages_player_pb2'
+  'DESCRIPTOR' : _CPLAYER_GETLASTPLAYEDTIMES_RESPONSE,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_GetLastPlayedTimes_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_GetLastPlayedTimes_Response)
 _sym_db.RegisterMessage(CPlayer_GetLastPlayedTimes_Response.Game)
 
-CPlayer_AcceptSSA_Request = _reflection.GeneratedProtocolMessageType('CPlayer_AcceptSSA_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CPLAYER_ACCEPTSSA_REQUEST,
-  __module__ = 'steammessages_player_pb2'
+CPlayer_GetTimeSSAAccepted_Request = _reflection.GeneratedProtocolMessageType('CPlayer_GetTimeSSAAccepted_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPLAYER_GETTIMESSAACCEPTED_REQUEST,
+  '__module__' : 'steammessages_player_pb2'
+  # @@protoc_insertion_point(class_scope:CPlayer_GetTimeSSAAccepted_Request)
+  })
+_sym_db.RegisterMessage(CPlayer_GetTimeSSAAccepted_Request)
+
+CPlayer_GetTimeSSAAccepted_Response = _reflection.GeneratedProtocolMessageType('CPlayer_GetTimeSSAAccepted_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CPLAYER_GETTIMESSAACCEPTED_RESPONSE,
+  '__module__' : 'steammessages_player_pb2'
+  # @@protoc_insertion_point(class_scope:CPlayer_GetTimeSSAAccepted_Response)
+  })
+_sym_db.RegisterMessage(CPlayer_GetTimeSSAAccepted_Response)
+
+CPlayer_AcceptSSA_Request = _reflection.GeneratedProtocolMessageType('CPlayer_AcceptSSA_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPLAYER_ACCEPTSSA_REQUEST,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_AcceptSSA_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_AcceptSSA_Request)
 
-CPlayer_AcceptSSA_Response = _reflection.GeneratedProtocolMessageType('CPlayer_AcceptSSA_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CPLAYER_ACCEPTSSA_RESPONSE,
-  __module__ = 'steammessages_player_pb2'
+CPlayer_AcceptSSA_Response = _reflection.GeneratedProtocolMessageType('CPlayer_AcceptSSA_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CPLAYER_ACCEPTSSA_RESPONSE,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_AcceptSSA_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_AcceptSSA_Response)
 
-CPlayer_GetNicknameList_Request = _reflection.GeneratedProtocolMessageType('CPlayer_GetNicknameList_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CPLAYER_GETNICKNAMELIST_REQUEST,
-  __module__ = 'steammessages_player_pb2'
+CPlayer_GetNicknameList_Request = _reflection.GeneratedProtocolMessageType('CPlayer_GetNicknameList_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPLAYER_GETNICKNAMELIST_REQUEST,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_GetNicknameList_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_GetNicknameList_Request)
 
-CPlayer_GetNicknameList_Response = _reflection.GeneratedProtocolMessageType('CPlayer_GetNicknameList_Response', (_message.Message,), dict(
+CPlayer_GetNicknameList_Response = _reflection.GeneratedProtocolMessageType('CPlayer_GetNicknameList_Response', (_message.Message,), {
 
-  PlayerNickname = _reflection.GeneratedProtocolMessageType('PlayerNickname', (_message.Message,), dict(
-    DESCRIPTOR = _CPLAYER_GETNICKNAMELIST_RESPONSE_PLAYERNICKNAME,
-    __module__ = 'steammessages_player_pb2'
+  'PlayerNickname' : _reflection.GeneratedProtocolMessageType('PlayerNickname', (_message.Message,), {
+    'DESCRIPTOR' : _CPLAYER_GETNICKNAMELIST_RESPONSE_PLAYERNICKNAME,
+    '__module__' : 'steammessages_player_pb2'
     # @@protoc_insertion_point(class_scope:CPlayer_GetNicknameList_Response.PlayerNickname)
-    ))
+    })
   ,
-  DESCRIPTOR = _CPLAYER_GETNICKNAMELIST_RESPONSE,
-  __module__ = 'steammessages_player_pb2'
+  'DESCRIPTOR' : _CPLAYER_GETNICKNAMELIST_RESPONSE,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_GetNicknameList_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_GetNicknameList_Response)
 _sym_db.RegisterMessage(CPlayer_GetNicknameList_Response.PlayerNickname)
 
-CPlayer_GetPerFriendPreferences_Request = _reflection.GeneratedProtocolMessageType('CPlayer_GetPerFriendPreferences_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CPLAYER_GETPERFRIENDPREFERENCES_REQUEST,
-  __module__ = 'steammessages_player_pb2'
+CPlayer_GetPerFriendPreferences_Request = _reflection.GeneratedProtocolMessageType('CPlayer_GetPerFriendPreferences_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPLAYER_GETPERFRIENDPREFERENCES_REQUEST,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_GetPerFriendPreferences_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_GetPerFriendPreferences_Request)
 
-PerFriendPreferences = _reflection.GeneratedProtocolMessageType('PerFriendPreferences', (_message.Message,), dict(
-  DESCRIPTOR = _PERFRIENDPREFERENCES,
-  __module__ = 'steammessages_player_pb2'
+PerFriendPreferences = _reflection.GeneratedProtocolMessageType('PerFriendPreferences', (_message.Message,), {
+  'DESCRIPTOR' : _PERFRIENDPREFERENCES,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:PerFriendPreferences)
-  ))
+  })
 _sym_db.RegisterMessage(PerFriendPreferences)
 
-CPlayer_GetPerFriendPreferences_Response = _reflection.GeneratedProtocolMessageType('CPlayer_GetPerFriendPreferences_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CPLAYER_GETPERFRIENDPREFERENCES_RESPONSE,
-  __module__ = 'steammessages_player_pb2'
+CPlayer_GetPerFriendPreferences_Response = _reflection.GeneratedProtocolMessageType('CPlayer_GetPerFriendPreferences_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CPLAYER_GETPERFRIENDPREFERENCES_RESPONSE,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_GetPerFriendPreferences_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_GetPerFriendPreferences_Response)
 
-CPlayer_SetPerFriendPreferences_Request = _reflection.GeneratedProtocolMessageType('CPlayer_SetPerFriendPreferences_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CPLAYER_SETPERFRIENDPREFERENCES_REQUEST,
-  __module__ = 'steammessages_player_pb2'
+CPlayer_SetPerFriendPreferences_Request = _reflection.GeneratedProtocolMessageType('CPlayer_SetPerFriendPreferences_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPLAYER_SETPERFRIENDPREFERENCES_REQUEST,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_SetPerFriendPreferences_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_SetPerFriendPreferences_Request)
 
-CPlayer_SetPerFriendPreferences_Response = _reflection.GeneratedProtocolMessageType('CPlayer_SetPerFriendPreferences_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CPLAYER_SETPERFRIENDPREFERENCES_RESPONSE,
-  __module__ = 'steammessages_player_pb2'
+CPlayer_SetPerFriendPreferences_Response = _reflection.GeneratedProtocolMessageType('CPlayer_SetPerFriendPreferences_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CPLAYER_SETPERFRIENDPREFERENCES_RESPONSE,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_SetPerFriendPreferences_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_SetPerFriendPreferences_Response)
 
-CPlayer_AddFriend_Request = _reflection.GeneratedProtocolMessageType('CPlayer_AddFriend_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CPLAYER_ADDFRIEND_REQUEST,
-  __module__ = 'steammessages_player_pb2'
+CPlayer_AddFriend_Request = _reflection.GeneratedProtocolMessageType('CPlayer_AddFriend_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPLAYER_ADDFRIEND_REQUEST,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_AddFriend_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_AddFriend_Request)
 
-CPlayer_AddFriend_Response = _reflection.GeneratedProtocolMessageType('CPlayer_AddFriend_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CPLAYER_ADDFRIEND_RESPONSE,
-  __module__ = 'steammessages_player_pb2'
+CPlayer_AddFriend_Response = _reflection.GeneratedProtocolMessageType('CPlayer_AddFriend_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CPLAYER_ADDFRIEND_RESPONSE,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_AddFriend_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_AddFriend_Response)
 
-CPlayer_RemoveFriend_Request = _reflection.GeneratedProtocolMessageType('CPlayer_RemoveFriend_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CPLAYER_REMOVEFRIEND_REQUEST,
-  __module__ = 'steammessages_player_pb2'
+CPlayer_RemoveFriend_Request = _reflection.GeneratedProtocolMessageType('CPlayer_RemoveFriend_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPLAYER_REMOVEFRIEND_REQUEST,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_RemoveFriend_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_RemoveFriend_Request)
 
-CPlayer_RemoveFriend_Response = _reflection.GeneratedProtocolMessageType('CPlayer_RemoveFriend_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CPLAYER_REMOVEFRIEND_RESPONSE,
-  __module__ = 'steammessages_player_pb2'
+CPlayer_RemoveFriend_Response = _reflection.GeneratedProtocolMessageType('CPlayer_RemoveFriend_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CPLAYER_REMOVEFRIEND_RESPONSE,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_RemoveFriend_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_RemoveFriend_Response)
 
-CPlayer_IgnoreFriend_Request = _reflection.GeneratedProtocolMessageType('CPlayer_IgnoreFriend_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CPLAYER_IGNOREFRIEND_REQUEST,
-  __module__ = 'steammessages_player_pb2'
+CPlayer_IgnoreFriend_Request = _reflection.GeneratedProtocolMessageType('CPlayer_IgnoreFriend_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPLAYER_IGNOREFRIEND_REQUEST,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_IgnoreFriend_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_IgnoreFriend_Request)
 
-CPlayer_IgnoreFriend_Response = _reflection.GeneratedProtocolMessageType('CPlayer_IgnoreFriend_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CPLAYER_IGNOREFRIEND_RESPONSE,
-  __module__ = 'steammessages_player_pb2'
+CPlayer_IgnoreFriend_Response = _reflection.GeneratedProtocolMessageType('CPlayer_IgnoreFriend_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CPLAYER_IGNOREFRIEND_RESPONSE,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_IgnoreFriend_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_IgnoreFriend_Response)
 
-CPlayer_GetCommunityPreferences_Request = _reflection.GeneratedProtocolMessageType('CPlayer_GetCommunityPreferences_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CPLAYER_GETCOMMUNITYPREFERENCES_REQUEST,
-  __module__ = 'steammessages_player_pb2'
+CPlayer_GetCommunityPreferences_Request = _reflection.GeneratedProtocolMessageType('CPlayer_GetCommunityPreferences_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPLAYER_GETCOMMUNITYPREFERENCES_REQUEST,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_GetCommunityPreferences_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_GetCommunityPreferences_Request)
 
-CPlayer_CommunityPreferences = _reflection.GeneratedProtocolMessageType('CPlayer_CommunityPreferences', (_message.Message,), dict(
-  DESCRIPTOR = _CPLAYER_COMMUNITYPREFERENCES,
-  __module__ = 'steammessages_player_pb2'
+CPlayer_CommunityPreferences = _reflection.GeneratedProtocolMessageType('CPlayer_CommunityPreferences', (_message.Message,), {
+  'DESCRIPTOR' : _CPLAYER_COMMUNITYPREFERENCES,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_CommunityPreferences)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_CommunityPreferences)
 
-CPlayer_GetCommunityPreferences_Response = _reflection.GeneratedProtocolMessageType('CPlayer_GetCommunityPreferences_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CPLAYER_GETCOMMUNITYPREFERENCES_RESPONSE,
-  __module__ = 'steammessages_player_pb2'
+CPlayer_GetCommunityPreferences_Response = _reflection.GeneratedProtocolMessageType('CPlayer_GetCommunityPreferences_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CPLAYER_GETCOMMUNITYPREFERENCES_RESPONSE,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_GetCommunityPreferences_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_GetCommunityPreferences_Response)
 
-CPlayer_SetCommunityPreferences_Request = _reflection.GeneratedProtocolMessageType('CPlayer_SetCommunityPreferences_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CPLAYER_SETCOMMUNITYPREFERENCES_REQUEST,
-  __module__ = 'steammessages_player_pb2'
+CPlayer_SetCommunityPreferences_Request = _reflection.GeneratedProtocolMessageType('CPlayer_SetCommunityPreferences_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPLAYER_SETCOMMUNITYPREFERENCES_REQUEST,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_SetCommunityPreferences_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_SetCommunityPreferences_Request)
 
-CPlayer_SetCommunityPreferences_Response = _reflection.GeneratedProtocolMessageType('CPlayer_SetCommunityPreferences_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CPLAYER_SETCOMMUNITYPREFERENCES_RESPONSE,
-  __module__ = 'steammessages_player_pb2'
+CPlayer_SetCommunityPreferences_Response = _reflection.GeneratedProtocolMessageType('CPlayer_SetCommunityPreferences_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CPLAYER_SETCOMMUNITYPREFERENCES_RESPONSE,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_SetCommunityPreferences_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_SetCommunityPreferences_Response)
 
-CPlayer_GetTextFilterWords_Request = _reflection.GeneratedProtocolMessageType('CPlayer_GetTextFilterWords_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CPLAYER_GETTEXTFILTERWORDS_REQUEST,
-  __module__ = 'steammessages_player_pb2'
+CPlayer_GetTextFilterWords_Request = _reflection.GeneratedProtocolMessageType('CPlayer_GetTextFilterWords_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPLAYER_GETTEXTFILTERWORDS_REQUEST,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_GetTextFilterWords_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_GetTextFilterWords_Request)
 
-CPlayer_TextFilterWords = _reflection.GeneratedProtocolMessageType('CPlayer_TextFilterWords', (_message.Message,), dict(
-  DESCRIPTOR = _CPLAYER_TEXTFILTERWORDS,
-  __module__ = 'steammessages_player_pb2'
+CPlayer_TextFilterWords = _reflection.GeneratedProtocolMessageType('CPlayer_TextFilterWords', (_message.Message,), {
+  'DESCRIPTOR' : _CPLAYER_TEXTFILTERWORDS,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_TextFilterWords)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_TextFilterWords)
 
-CPlayer_GetTextFilterWords_Response = _reflection.GeneratedProtocolMessageType('CPlayer_GetTextFilterWords_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CPLAYER_GETTEXTFILTERWORDS_RESPONSE,
-  __module__ = 'steammessages_player_pb2'
+CPlayer_GetTextFilterWords_Response = _reflection.GeneratedProtocolMessageType('CPlayer_GetTextFilterWords_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CPLAYER_GETTEXTFILTERWORDS_RESPONSE,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_GetTextFilterWords_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_GetTextFilterWords_Response)
 
-CPlayer_GetNewSteamAnnouncementState_Request = _reflection.GeneratedProtocolMessageType('CPlayer_GetNewSteamAnnouncementState_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CPLAYER_GETNEWSTEAMANNOUNCEMENTSTATE_REQUEST,
-  __module__ = 'steammessages_player_pb2'
+CPlayer_GetNewSteamAnnouncementState_Request = _reflection.GeneratedProtocolMessageType('CPlayer_GetNewSteamAnnouncementState_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPLAYER_GETNEWSTEAMANNOUNCEMENTSTATE_REQUEST,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_GetNewSteamAnnouncementState_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_GetNewSteamAnnouncementState_Request)
 
-CPlayer_GetNewSteamAnnouncementState_Response = _reflection.GeneratedProtocolMessageType('CPlayer_GetNewSteamAnnouncementState_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CPLAYER_GETNEWSTEAMANNOUNCEMENTSTATE_RESPONSE,
-  __module__ = 'steammessages_player_pb2'
+CPlayer_GetNewSteamAnnouncementState_Response = _reflection.GeneratedProtocolMessageType('CPlayer_GetNewSteamAnnouncementState_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CPLAYER_GETNEWSTEAMANNOUNCEMENTSTATE_RESPONSE,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_GetNewSteamAnnouncementState_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_GetNewSteamAnnouncementState_Response)
 
-CPlayer_UpdateSteamAnnouncementLastRead_Request = _reflection.GeneratedProtocolMessageType('CPlayer_UpdateSteamAnnouncementLastRead_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CPLAYER_UPDATESTEAMANNOUNCEMENTLASTREAD_REQUEST,
-  __module__ = 'steammessages_player_pb2'
+CPlayer_UpdateSteamAnnouncementLastRead_Request = _reflection.GeneratedProtocolMessageType('CPlayer_UpdateSteamAnnouncementLastRead_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPLAYER_UPDATESTEAMANNOUNCEMENTLASTREAD_REQUEST,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_UpdateSteamAnnouncementLastRead_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_UpdateSteamAnnouncementLastRead_Request)
 
-CPlayer_UpdateSteamAnnouncementLastRead_Response = _reflection.GeneratedProtocolMessageType('CPlayer_UpdateSteamAnnouncementLastRead_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CPLAYER_UPDATESTEAMANNOUNCEMENTLASTREAD_RESPONSE,
-  __module__ = 'steammessages_player_pb2'
+CPlayer_UpdateSteamAnnouncementLastRead_Response = _reflection.GeneratedProtocolMessageType('CPlayer_UpdateSteamAnnouncementLastRead_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CPLAYER_UPDATESTEAMANNOUNCEMENTLASTREAD_RESPONSE,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_UpdateSteamAnnouncementLastRead_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_UpdateSteamAnnouncementLastRead_Response)
 
-CPlayer_GetPrivacySettings_Request = _reflection.GeneratedProtocolMessageType('CPlayer_GetPrivacySettings_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CPLAYER_GETPRIVACYSETTINGS_REQUEST,
-  __module__ = 'steammessages_player_pb2'
+CPlayer_GetPrivacySettings_Request = _reflection.GeneratedProtocolMessageType('CPlayer_GetPrivacySettings_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPLAYER_GETPRIVACYSETTINGS_REQUEST,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_GetPrivacySettings_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_GetPrivacySettings_Request)
 
-CPrivacySettings = _reflection.GeneratedProtocolMessageType('CPrivacySettings', (_message.Message,), dict(
-  DESCRIPTOR = _CPRIVACYSETTINGS,
-  __module__ = 'steammessages_player_pb2'
+CPrivacySettings = _reflection.GeneratedProtocolMessageType('CPrivacySettings', (_message.Message,), {
+  'DESCRIPTOR' : _CPRIVACYSETTINGS,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPrivacySettings)
-  ))
+  })
 _sym_db.RegisterMessage(CPrivacySettings)
 
-CPlayer_GetPrivacySettings_Response = _reflection.GeneratedProtocolMessageType('CPlayer_GetPrivacySettings_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CPLAYER_GETPRIVACYSETTINGS_RESPONSE,
-  __module__ = 'steammessages_player_pb2'
+CPlayer_GetPrivacySettings_Response = _reflection.GeneratedProtocolMessageType('CPlayer_GetPrivacySettings_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CPLAYER_GETPRIVACYSETTINGS_RESPONSE,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_GetPrivacySettings_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_GetPrivacySettings_Response)
 
-CPlayer_GetDurationControl_Request = _reflection.GeneratedProtocolMessageType('CPlayer_GetDurationControl_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CPLAYER_GETDURATIONCONTROL_REQUEST,
-  __module__ = 'steammessages_player_pb2'
+CPlayer_GetDurationControl_Request = _reflection.GeneratedProtocolMessageType('CPlayer_GetDurationControl_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPLAYER_GETDURATIONCONTROL_REQUEST,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_GetDurationControl_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_GetDurationControl_Request)
 
-CPlayer_GetDurationControl_Response = _reflection.GeneratedProtocolMessageType('CPlayer_GetDurationControl_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CPLAYER_GETDURATIONCONTROL_RESPONSE,
-  __module__ = 'steammessages_player_pb2'
+CPlayer_GetDurationControl_Response = _reflection.GeneratedProtocolMessageType('CPlayer_GetDurationControl_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CPLAYER_GETDURATIONCONTROL_RESPONSE,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_GetDurationControl_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_GetDurationControl_Response)
 
-CPlayer_LastPlayedTimes_Notification = _reflection.GeneratedProtocolMessageType('CPlayer_LastPlayedTimes_Notification', (_message.Message,), dict(
-  DESCRIPTOR = _CPLAYER_LASTPLAYEDTIMES_NOTIFICATION,
-  __module__ = 'steammessages_player_pb2'
+CPlayer_LastPlayedTimes_Notification = _reflection.GeneratedProtocolMessageType('CPlayer_LastPlayedTimes_Notification', (_message.Message,), {
+  'DESCRIPTOR' : _CPLAYER_LASTPLAYEDTIMES_NOTIFICATION,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_LastPlayedTimes_Notification)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_LastPlayedTimes_Notification)
 
-CPlayer_FriendNicknameChanged_Notification = _reflection.GeneratedProtocolMessageType('CPlayer_FriendNicknameChanged_Notification', (_message.Message,), dict(
-  DESCRIPTOR = _CPLAYER_FRIENDNICKNAMECHANGED_NOTIFICATION,
-  __module__ = 'steammessages_player_pb2'
+CPlayer_FriendNicknameChanged_Notification = _reflection.GeneratedProtocolMessageType('CPlayer_FriendNicknameChanged_Notification', (_message.Message,), {
+  'DESCRIPTOR' : _CPLAYER_FRIENDNICKNAMECHANGED_NOTIFICATION,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_FriendNicknameChanged_Notification)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_FriendNicknameChanged_Notification)
 
-CPlayer_FriendEquippedProfileItemsChanged_Notification = _reflection.GeneratedProtocolMessageType('CPlayer_FriendEquippedProfileItemsChanged_Notification', (_message.Message,), dict(
-  DESCRIPTOR = _CPLAYER_FRIENDEQUIPPEDPROFILEITEMSCHANGED_NOTIFICATION,
-  __module__ = 'steammessages_player_pb2'
+CPlayer_FriendEquippedProfileItemsChanged_Notification = _reflection.GeneratedProtocolMessageType('CPlayer_FriendEquippedProfileItemsChanged_Notification', (_message.Message,), {
+  'DESCRIPTOR' : _CPLAYER_FRIENDEQUIPPEDPROFILEITEMSCHANGED_NOTIFICATION,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_FriendEquippedProfileItemsChanged_Notification)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_FriendEquippedProfileItemsChanged_Notification)
 
-CPlayer_NewSteamAnnouncementState_Notification = _reflection.GeneratedProtocolMessageType('CPlayer_NewSteamAnnouncementState_Notification', (_message.Message,), dict(
-  DESCRIPTOR = _CPLAYER_NEWSTEAMANNOUNCEMENTSTATE_NOTIFICATION,
-  __module__ = 'steammessages_player_pb2'
+CPlayer_NewSteamAnnouncementState_Notification = _reflection.GeneratedProtocolMessageType('CPlayer_NewSteamAnnouncementState_Notification', (_message.Message,), {
+  'DESCRIPTOR' : _CPLAYER_NEWSTEAMANNOUNCEMENTSTATE_NOTIFICATION,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_NewSteamAnnouncementState_Notification)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_NewSteamAnnouncementState_Notification)
 
-CPlayer_CommunityPreferencesChanged_Notification = _reflection.GeneratedProtocolMessageType('CPlayer_CommunityPreferencesChanged_Notification', (_message.Message,), dict(
-  DESCRIPTOR = _CPLAYER_COMMUNITYPREFERENCESCHANGED_NOTIFICATION,
-  __module__ = 'steammessages_player_pb2'
+CPlayer_CommunityPreferencesChanged_Notification = _reflection.GeneratedProtocolMessageType('CPlayer_CommunityPreferencesChanged_Notification', (_message.Message,), {
+  'DESCRIPTOR' : _CPLAYER_COMMUNITYPREFERENCESCHANGED_NOTIFICATION,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_CommunityPreferencesChanged_Notification)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_CommunityPreferencesChanged_Notification)
 
-CPlayer_TextFilterWordsChanged_Notification = _reflection.GeneratedProtocolMessageType('CPlayer_TextFilterWordsChanged_Notification', (_message.Message,), dict(
-  DESCRIPTOR = _CPLAYER_TEXTFILTERWORDSCHANGED_NOTIFICATION,
-  __module__ = 'steammessages_player_pb2'
+CPlayer_TextFilterWordsChanged_Notification = _reflection.GeneratedProtocolMessageType('CPlayer_TextFilterWordsChanged_Notification', (_message.Message,), {
+  'DESCRIPTOR' : _CPLAYER_TEXTFILTERWORDSCHANGED_NOTIFICATION,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_TextFilterWordsChanged_Notification)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_TextFilterWordsChanged_Notification)
 
-CPlayer_PerFriendPreferencesChanged_Notification = _reflection.GeneratedProtocolMessageType('CPlayer_PerFriendPreferencesChanged_Notification', (_message.Message,), dict(
-  DESCRIPTOR = _CPLAYER_PERFRIENDPREFERENCESCHANGED_NOTIFICATION,
-  __module__ = 'steammessages_player_pb2'
+CPlayer_PerFriendPreferencesChanged_Notification = _reflection.GeneratedProtocolMessageType('CPlayer_PerFriendPreferencesChanged_Notification', (_message.Message,), {
+  'DESCRIPTOR' : _CPLAYER_PERFRIENDPREFERENCESCHANGED_NOTIFICATION,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_PerFriendPreferencesChanged_Notification)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_PerFriendPreferencesChanged_Notification)
 
-CPlayer_PrivacySettingsChanged_Notification = _reflection.GeneratedProtocolMessageType('CPlayer_PrivacySettingsChanged_Notification', (_message.Message,), dict(
-  DESCRIPTOR = _CPLAYER_PRIVACYSETTINGSCHANGED_NOTIFICATION,
-  __module__ = 'steammessages_player_pb2'
+CPlayer_PrivacySettingsChanged_Notification = _reflection.GeneratedProtocolMessageType('CPlayer_PrivacySettingsChanged_Notification', (_message.Message,), {
+  'DESCRIPTOR' : _CPLAYER_PRIVACYSETTINGSCHANGED_NOTIFICATION,
+  '__module__' : 'steammessages_player_pb2'
   # @@protoc_insertion_point(class_scope:CPlayer_PrivacySettingsChanged_Notification)
-  ))
+  })
 _sym_db.RegisterMessage(CPlayer_PrivacySettingsChanged_Notification)
 
 
@@ -6178,23 +6367,8 @@ _CPLAYER_GETOWNEDGAMES_REQUEST.fields_by_name['include_played_free_games']._opti
 _CPLAYER_GETOWNEDGAMES_REQUEST.fields_by_name['appids_filter']._options = None
 _CPLAYER_GETOWNEDGAMES_REQUEST.fields_by_name['include_free_sub']._options = None
 _CPLAYER_GETOWNEDGAMES_REQUEST.fields_by_name['skip_unvetted_apps']._options = None
-_CPLAYER_GETFRIENDSAPPSACTIVITY_REQUEST.fields_by_name['news_language']._options = None
-_CPLAYER_GETFRIENDSAPPSACTIVITY_REQUEST.fields_by_name['request_flags']._options = None
-_CPLAYER_GETFRIENDSAPPSACTIVITY_RESPONSE_FRIENDPLAYTIME.fields_by_name['minutes_played_this_week']._options = None
-_CPLAYER_GETFRIENDSAPPSACTIVITY_RESPONSE_FRIENDPLAYTIME.fields_by_name['minutes_played_two_weeks']._options = None
-_CPLAYER_GETFRIENDSAPPSACTIVITY_RESPONSE_FRIENDPLAYTIME.fields_by_name['minutes_played_forever']._options = None
-_CPLAYER_GETFRIENDSAPPSACTIVITY_RESPONSE_FRIENDPLAYTIME.fields_by_name['event_count']._options = None
-_CPLAYER_GETFRIENDSAPPSACTIVITY_RESPONSE_APPFRIENDSINFO.fields_by_name['friends']._options = None
-_CPLAYER_GETFRIENDSAPPSACTIVITY_RESPONSE_APPFRIENDSINFO.fields_by_name['display_order']._options = None
-_CPLAYER_GETFRIENDSAPPSACTIVITY_RESPONSE.fields_by_name['trending']._options = None
-_CPLAYER_GETFRIENDSAPPSACTIVITY_RESPONSE.fields_by_name['recent_purchases']._options = None
-_CPLAYER_GETFRIENDSAPPSACTIVITY_RESPONSE.fields_by_name['unowned']._options = None
-_CPLAYER_GETFRIENDSAPPSACTIVITY_RESPONSE.fields_by_name['popular']._options = None
-_CPLAYER_GETFRIENDSAPPSACTIVITY_RESPONSE.fields_by_name['dont_forget']._options = None
-_CPLAYER_GETFRIENDSAPPSACTIVITY_RESPONSE.fields_by_name['being_discussed']._options = None
-_CPLAYER_GETFRIENDSAPPSACTIVITY_RESPONSE.fields_by_name['new_to_group']._options = None
-_CPLAYER_GETFRIENDSAPPSACTIVITY_RESPONSE.fields_by_name['returned_to_group']._options = None
-_CPLAYER_GETFRIENDSAPPSACTIVITY_RESPONSE.fields_by_name['active_friend_count']._options = None
+_CPLAYER_GETOWNEDGAMES_REQUEST.fields_by_name['language']._options = None
+_CPLAYER_GETOWNEDGAMES_REQUEST.fields_by_name['include_extended_appinfo']._options = None
 _CPLAYER_GETPROFILEBACKGROUND_REQUEST.fields_by_name['steamid']._options = None
 _PROFILEITEM.fields_by_name['image_small']._options = None
 _PROFILEITEM.fields_by_name['image_large']._options = None
@@ -6209,6 +6383,7 @@ _PROFILEITEM.fields_by_name['equipped_flags']._options = None
 _CPLAYER_GETMINIPROFILEBACKGROUND_REQUEST.fields_by_name['steamid']._options = None
 _CPLAYER_GETAVATARFRAME_REQUEST.fields_by_name['steamid']._options = None
 _CPLAYER_GETANIMATEDAVATAR_REQUEST.fields_by_name['steamid']._options = None
+_CPLAYER_GETSTEAMDECKKEYBOARDSKIN_REQUEST.fields_by_name['steamid']._options = None
 _CPLAYER_SETEQUIPPEDPROFILEITEMFLAGS_REQUEST.fields_by_name['flags']._options = None
 _CPLAYER_GETPOSTEDSTATUS_REQUEST.fields_by_name['steamid']._options = None
 _CPLAYER_GETLASTPLAYEDTIMES_REQUEST.fields_by_name['min_last_played']._options = None
@@ -6225,9 +6400,10 @@ _PLAYER = _descriptor.ServiceDescriptor(
   full_name='Player',
   file=DESCRIPTOR,
   index=0,
-  serialized_options=_b('\202\265\030)A service for accessing Steam player data'),
-  serialized_start=18187,
-  serialized_end=25495,
+  serialized_options=b'\202\265\030)A service for accessing Steam player data',
+  create_key=_descriptor._internal_create_key,
+  serialized_start=16426,
+  serialized_end=24062,
   methods=[
   _descriptor.MethodDescriptor(
     name='GetMutualFriendsForIncomingInvites',
@@ -6236,7 +6412,8 @@ _PLAYER = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CPLAYER_GETMUTUALFRIENDSFORINCOMINGINVITES_REQUEST,
     output_type=_CPLAYER_GETMUTUALFRIENDSFORINCOMINGINVITES_RESPONSE,
-    serialized_options=_b('\202\265\030ZGet me the mutual friends for each of my pending incoming invites (individuals and clans).'),
+    serialized_options=b'\202\265\030ZGet me the mutual friends for each of my pending incoming invites (individuals and clans).',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetOwnedGames',
@@ -6245,7 +6422,8 @@ _PLAYER = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CPLAYER_GETOWNEDGAMES_REQUEST,
     output_type=_CPLAYER_GETOWNEDGAMES_RESPONSE,
-    serialized_options=_b('\202\265\030*Return a list of games owned by the player'),
+    serialized_options=b'\202\265\030*Return a list of games owned by the player',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetPlayNext',
@@ -6254,7 +6432,8 @@ _PLAYER = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CPLAYER_GETPLAYNEXT_REQUEST,
     output_type=_CPLAYER_GETPLAYNEXT_RESPONSE,
-    serialized_options=_b('\202\265\030/Return suggested games for player to play next.'),
+    serialized_options=b'\202\265\030/Return suggested games for player to play next.',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetFriendsGameplayInfo',
@@ -6263,376 +6442,438 @@ _PLAYER = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CPLAYER_GETFRIENDSGAMEPLAYINFO_REQUEST,
     output_type=_CPLAYER_GETFRIENDSGAMEPLAYINFO_RESPONSE,
-    serialized_options=_b('\202\265\030GGet a list of friends who are playing, have played, own, or want a game'),
-  ),
-  _descriptor.MethodDescriptor(
-    name='GetFriendsAppsActivity',
-    full_name='Player.GetFriendsAppsActivity',
-    index=4,
-    containing_service=None,
-    input_type=_CPLAYER_GETFRIENDSAPPSACTIVITY_REQUEST,
-    output_type=_CPLAYER_GETFRIENDSAPPSACTIVITY_RESPONSE,
-    serialized_options=_b('\202\265\030=Get lists of apps friends are active in, in a variety of ways'),
+    serialized_options=b'\202\265\030GGet a list of friends who are playing, have played, own, or want a game',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetGameBadgeLevels',
     full_name='Player.GetGameBadgeLevels',
-    index=5,
+    index=4,
     containing_service=None,
     input_type=_CPLAYER_GETGAMEBADGELEVELS_REQUEST,
     output_type=_CPLAYER_GETGAMEBADGELEVELS_RESPONSE,
-    serialized_options=_b('\202\265\030QReturns the Steam Level of a user, the Badge level for the game, and if it\'s foil'),
+    serialized_options=b'\202\265\030QReturns the Steam Level of a user, the Badge level for the game, and if it\'s foil',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetProfileBackground',
     full_name='Player.GetProfileBackground',
-    index=6,
+    index=5,
     containing_service=None,
     input_type=_CPLAYER_GETPROFILEBACKGROUND_REQUEST,
     output_type=_CPLAYER_GETPROFILEBACKGROUND_RESPONSE,
-    serialized_options=_b('\202\265\030;Gets which profile background is active for a specific user'),
+    serialized_options=b'\202\265\030;Gets which profile background is active for a specific user',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='SetProfileBackground',
     full_name='Player.SetProfileBackground',
-    index=7,
+    index=6,
     containing_service=None,
     input_type=_CPLAYER_SETPROFILEBACKGROUND_REQUEST,
     output_type=_CPLAYER_SETPROFILEBACKGROUND_RESPONSE,
-    serialized_options=_b('\202\265\030\"Sets the user\'s profile background'),
+    serialized_options=b'\202\265\030\"Sets the user\'s profile background',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetMiniProfileBackground',
     full_name='Player.GetMiniProfileBackground',
-    index=8,
+    index=7,
     containing_service=None,
     input_type=_CPLAYER_GETMINIPROFILEBACKGROUND_REQUEST,
     output_type=_CPLAYER_GETMINIPROFILEBACKGROUND_RESPONSE,
-    serialized_options=_b('\202\265\030@Gets which mini profile background is active for a specific user'),
+    serialized_options=b'\202\265\030@Gets which mini profile background is active for a specific user',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='SetMiniProfileBackground',
     full_name='Player.SetMiniProfileBackground',
-    index=9,
+    index=8,
     containing_service=None,
     input_type=_CPLAYER_SETMINIPROFILEBACKGROUND_REQUEST,
     output_type=_CPLAYER_SETMINIPROFILEBACKGROUND_RESPONSE,
-    serialized_options=_b('\202\265\030\'Sets the user\'s mini profile background'),
+    serialized_options=b'\202\265\030\'Sets the user\'s mini profile background',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetAvatarFrame',
     full_name='Player.GetAvatarFrame',
-    index=10,
+    index=9,
     containing_service=None,
     input_type=_CPLAYER_GETAVATARFRAME_REQUEST,
     output_type=_CPLAYER_GETAVATARFRAME_RESPONSE,
-    serialized_options=_b('\202\265\0305Gets which avatar frame is active for a specific user'),
+    serialized_options=b'\202\265\0305Gets which avatar frame is active for a specific user',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='SetAvatarFrame',
     full_name='Player.SetAvatarFrame',
-    index=11,
+    index=10,
     containing_service=None,
     input_type=_CPLAYER_SETAVATARFRAME_REQUEST,
     output_type=_CPLAYER_SETAVATARFRAME_RESPONSE,
-    serialized_options=_b('\202\265\030.Sets the user\'s avatar frame for their profile'),
+    serialized_options=b'\202\265\030.Sets the user\'s avatar frame for their profile',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetAnimatedAvatar',
     full_name='Player.GetAnimatedAvatar',
-    index=12,
+    index=11,
     containing_service=None,
     input_type=_CPLAYER_GETANIMATEDAVATAR_REQUEST,
     output_type=_CPLAYER_GETANIMATEDAVATAR_RESPONSE,
-    serialized_options=_b('\202\265\0308Gets which animated avatar is active for a specific user'),
+    serialized_options=b'\202\265\0308Gets which animated avatar is active for a specific user',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='SetAnimatedAvatar',
     full_name='Player.SetAnimatedAvatar',
-    index=13,
+    index=12,
     containing_service=None,
     input_type=_CPLAYER_SETANIMATEDAVATAR_REQUEST,
     output_type=_CPLAYER_SETANIMATEDAVATAR_RESPONSE,
-    serialized_options=_b('\202\265\0301Sets the user\'s animated avatar for their profile'),
+    serialized_options=b'\202\265\0301Sets the user\'s animated avatar for their profile',
+    create_key=_descriptor._internal_create_key,
+  ),
+  _descriptor.MethodDescriptor(
+    name='GetSteamDeckKeyboardSkin',
+    full_name='Player.GetSteamDeckKeyboardSkin',
+    index=13,
+    containing_service=None,
+    input_type=_CPLAYER_GETSTEAMDECKKEYBOARDSKIN_REQUEST,
+    output_type=_CPLAYER_GETSTEAMDECKKEYBOARDSKIN_RESPONSE,
+    serialized_options=b'\202\265\030AGets which Steam Deck keyboard skin is active for a specific user',
+    create_key=_descriptor._internal_create_key,
+  ),
+  _descriptor.MethodDescriptor(
+    name='SetSteamDeckKeyboardSkin',
+    full_name='Player.SetSteamDeckKeyboardSkin',
+    index=14,
+    containing_service=None,
+    input_type=_CPLAYER_SETSTEAMDECKKEYBOARDSKIN_REQUEST,
+    output_type=_CPLAYER_SETSTEAMDECKKEYBOARDSKIN_RESPONSE,
+    serialized_options=b'\202\265\0300Sets the user\'s current Steam Deck keyboard skin',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetProfileItemsOwned',
     full_name='Player.GetProfileItemsOwned',
-    index=14,
+    index=15,
     containing_service=None,
     input_type=_CPLAYER_GETPROFILEITEMSOWNED_REQUEST,
     output_type=_CPLAYER_GETPROFILEITEMSOWNED_RESPONSE,
-    serialized_options=_b('\202\265\0305Returns the items the user can equip on their profile'),
+    serialized_options=b'\202\265\0305Returns the items the user can equip on their profile',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetProfileItemsEquipped',
     full_name='Player.GetProfileItemsEquipped',
-    index=15,
+    index=16,
     containing_service=None,
     input_type=_CPLAYER_GETPROFILEITEMSEQUIPPED_REQUEST,
     output_type=_CPLAYER_GETPROFILEITEMSEQUIPPED_RESPONSE,
-    serialized_options=_b('\202\265\0308Returns the items the user has equipped on their profile'),
+    serialized_options=b'\202\265\0308Returns the items the user has equipped on their profile',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='SetEquippedProfileItemFlags',
     full_name='Player.SetEquippedProfileItemFlags',
-    index=16,
+    index=17,
     containing_service=None,
     input_type=_CPLAYER_SETEQUIPPEDPROFILEITEMFLAGS_REQUEST,
     output_type=_CPLAYER_SETEQUIPPEDPROFILEITEMFLAGS_RESPONSE,
-    serialized_options=_b('\202\265\030\'Sets special flags on the equipped item'),
+    serialized_options=b'\202\265\030\'Sets special flags on the equipped item',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetEmoticonList',
     full_name='Player.GetEmoticonList',
-    index=17,
+    index=18,
     containing_service=None,
     input_type=_CPLAYER_GETEMOTICONLIST_REQUEST,
     output_type=_CPLAYER_GETEMOTICONLIST_RESPONSE,
-    serialized_options=_b('\202\265\0305Gets a list of the emoticons a user has with metadata'),
+    serialized_options=b'\202\265\0305Gets a list of the emoticons a user has with metadata',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetAchievementsProgress',
     full_name='Player.GetAchievementsProgress',
-    index=18,
+    index=19,
     containing_service=None,
     input_type=_CPLAYER_GETACHIEVEMENTSPROGRESS_REQUEST,
     output_type=_CPLAYER_GETACHIEVEMENTSPROGRESS_RESPONSE,
-    serialized_options=_b('\202\265\030EGets the achievement completion stats for the specified list of apps.'),
+    serialized_options=b'\202\265\030EGets the achievement completion stats for the specified list of apps.',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetFavoriteBadge',
     full_name='Player.GetFavoriteBadge',
-    index=19,
+    index=20,
     containing_service=None,
     input_type=_CPLAYER_GETFAVORITEBADGE_REQUEST,
     output_type=_CPLAYER_GETFAVORITEBADGE_RESPONSE,
-    serialized_options=_b('\202\265\0301Gets the badge the user has set as their favorite'),
+    serialized_options=b'\202\265\0301Gets the badge the user has set as their favorite',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='SetFavoriteBadge',
     full_name='Player.SetFavoriteBadge',
-    index=20,
+    index=21,
     containing_service=None,
     input_type=_CPLAYER_SETFAVORITEBADGE_REQUEST,
     output_type=_CPLAYER_SETFAVORITEBADGE_RESPONSE,
-    serialized_options=_b('\202\265\030%Sets the badge  as the users favorite'),
+    serialized_options=b'\202\265\030%Sets the badge  as the users favorite',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetProfileCustomization',
     full_name='Player.GetProfileCustomization',
-    index=21,
+    index=22,
     containing_service=None,
     input_type=_CPLAYER_GETPROFILECUSTOMIZATION_REQUEST,
     output_type=_CPLAYER_GETPROFILECUSTOMIZATION_RESPONSE,
-    serialized_options=_b('\202\265\0301Returns the customizations (if any) for a profile'),
+    serialized_options=b'\202\265\0301Returns the customizations (if any) for a profile',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetPurchasedProfileCustomizations',
     full_name='Player.GetPurchasedProfileCustomizations',
-    index=22,
+    index=23,
     containing_service=None,
     input_type=_CPLAYER_GETPURCHASEDPROFILECUSTOMIZATIONS_REQUEST,
     output_type=_CPLAYER_GETPURCHASEDPROFILECUSTOMIZATIONS_RESPONSE,
-    serialized_options=_b('\202\265\030,Returns the purchased profile customizations'),
+    serialized_options=b'\202\265\030,Returns the purchased profile customizations',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetPurchasedAndUpgradedProfileCustomizations',
     full_name='Player.GetPurchasedAndUpgradedProfileCustomizations',
-    index=23,
+    index=24,
     containing_service=None,
     input_type=_CPLAYER_GETPURCHASEDANDUPGRADEDPROFILECUSTOMIZATIONS_REQUEST,
     output_type=_CPLAYER_GETPURCHASEDANDUPGRADEDPROFILECUSTOMIZATIONS_RESPONSE,
-    serialized_options=_b('\202\265\0309Returns the purchased and upgraded profile customizations'),
+    serialized_options=b'\202\265\0309Returns the purchased and upgraded profile customizations',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetProfileThemesAvailable',
     full_name='Player.GetProfileThemesAvailable',
-    index=24,
+    index=25,
     containing_service=None,
     input_type=_CPLAYER_GETPROFILETHEMESAVAILABLE_REQUEST,
     output_type=_CPLAYER_GETPROFILETHEMESAVAILABLE_RESPONSE,
-    serialized_options=_b('\202\265\030#Gets themes available for the user.'),
+    serialized_options=b'\202\265\030#Gets themes available for the user.',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='SetProfileTheme',
     full_name='Player.SetProfileTheme',
-    index=25,
+    index=26,
     containing_service=None,
     input_type=_CPLAYER_SETPROFILETHEME_REQUEST,
     output_type=_CPLAYER_SETPROFILETHEME_RESPONSE,
-    serialized_options=_b('\202\265\030\037Selects a theme for the profile'),
+    serialized_options=b'\202\265\030\037Selects a theme for the profile',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='SetProfilePreferences',
     full_name='Player.SetProfilePreferences',
-    index=26,
+    index=27,
     containing_service=None,
     input_type=_CPLAYER_SETPROFILEPREFERENCES_REQUEST,
     output_type=_CPLAYER_SETPROFILEPREFERENCES_RESPONSE,
-    serialized_options=_b('\202\265\030\030Sets profile preferences'),
+    serialized_options=b'\202\265\030\030Sets profile preferences',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='PostStatusToFriends',
     full_name='Player.PostStatusToFriends',
-    index=27,
+    index=28,
     containing_service=None,
     input_type=_CPLAYER_POSTSTATUSTOFRIENDS_REQUEST,
     output_type=_CPLAYER_POSTSTATUSTOFRIENDS_RESPONSE,
-    serialized_options=_b('\202\265\030)Posts custom status text into the blotter'),
+    serialized_options=b'\202\265\030)Posts custom status text into the blotter',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetPostedStatus',
     full_name='Player.GetPostedStatus',
-    index=28,
+    index=29,
     containing_service=None,
     input_type=_CPLAYER_GETPOSTEDSTATUS_REQUEST,
     output_type=_CPLAYER_GETPOSTEDSTATUS_RESPONSE,
-    serialized_options=_b('\202\265\030*Gets a posted status text for a user by id'),
+    serialized_options=b'\202\265\030*Gets a posted status text for a user by id',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='DeletePostedStatus',
     full_name='Player.DeletePostedStatus',
-    index=29,
+    index=30,
     containing_service=None,
     input_type=_CPLAYER_DELETEPOSTEDSTATUS_REQUEST,
     output_type=_CPLAYER_DELETEPOSTEDSTATUS_RESPONSE,
-    serialized_options=_b('\202\265\030-Deletes a posted status text for a user by id'),
+    serialized_options=b'\202\265\030-Deletes a posted status text for a user by id',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='ClientGetLastPlayedTimes',
     full_name='Player.ClientGetLastPlayedTimes',
-    index=30,
+    index=31,
     containing_service=None,
     input_type=_CPLAYER_GETLASTPLAYEDTIMES_REQUEST,
     output_type=_CPLAYER_GETLASTPLAYEDTIMES_RESPONSE,
-    serialized_options=_b('\202\265\030*Gets the last-played times for the account'),
+    serialized_options=b'\202\265\030*Gets the last-played times for the account',
+    create_key=_descriptor._internal_create_key,
+  ),
+  _descriptor.MethodDescriptor(
+    name='GetTimeSSAAccepted',
+    full_name='Player.GetTimeSSAAccepted',
+    index=32,
+    containing_service=None,
+    input_type=_CPLAYER_GETTIMESSAACCEPTED_REQUEST,
+    output_type=_CPLAYER_GETTIMESSAACCEPTED_RESPONSE,
+    serialized_options=b'\202\265\030,Gets the time when the user accepted the SSA',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='AcceptSSA',
     full_name='Player.AcceptSSA',
-    index=31,
+    index=33,
     containing_service=None,
     input_type=_CPLAYER_ACCEPTSSA_REQUEST,
     output_type=_CPLAYER_ACCEPTSSA_RESPONSE,
-    serialized_options=_b('\202\265\030\031User is accepting the SSA'),
+    serialized_options=b'\202\265\030\031User is accepting the SSA',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetNicknameList',
     full_name='Player.GetNicknameList',
-    index=32,
+    index=34,
     containing_service=None,
     input_type=_CPLAYER_GETNICKNAMELIST_REQUEST,
     output_type=_CPLAYER_GETNICKNAMELIST_RESPONSE,
-    serialized_options=_b('\202\265\0308Gets the list of nicknames this user has for other users'),
+    serialized_options=b'\202\265\0308Gets the list of nicknames this user has for other users',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetPerFriendPreferences',
     full_name='Player.GetPerFriendPreferences',
-    index=33,
+    index=35,
     containing_service=None,
     input_type=_CPLAYER_GETPERFRIENDPREFERENCES_REQUEST,
     output_type=_CPLAYER_GETPERFRIENDPREFERENCES_RESPONSE,
-    serialized_options=_b('\202\265\030IGets the list of per-friend preferences this user has set for other users'),
+    serialized_options=b'\202\265\030IGets the list of per-friend preferences this user has set for other users',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='SetPerFriendPreferences',
     full_name='Player.SetPerFriendPreferences',
-    index=34,
+    index=36,
     containing_service=None,
     input_type=_CPLAYER_SETPERFRIENDPREFERENCES_REQUEST,
     output_type=_CPLAYER_SETPERFRIENDPREFERENCES_RESPONSE,
-    serialized_options=_b('\202\265\030CSets the logged in user\'s per-friend preferences for the given user'),
+    serialized_options=b'\202\265\030CSets the logged in user\'s per-friend preferences for the given user',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='AddFriend',
     full_name='Player.AddFriend',
-    index=35,
+    index=37,
     containing_service=None,
     input_type=_CPLAYER_ADDFRIEND_REQUEST,
     output_type=_CPLAYER_ADDFRIEND_RESPONSE,
-    serialized_options=_b('\202\265\030)Invites another Steam user to be a friend'),
+    serialized_options=b'\202\265\030)Invites another Steam user to be a friend',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='RemoveFriend',
     full_name='Player.RemoveFriend',
-    index=36,
+    index=38,
     containing_service=None,
     input_type=_CPLAYER_REMOVEFRIEND_REQUEST,
     output_type=_CPLAYER_REMOVEFRIEND_RESPONSE,
-    serialized_options=_b('\202\265\030/Removes a friend or ignores a friend suggestion'),
+    serialized_options=b'\202\265\030/Removes a friend or ignores a friend suggestion',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='IgnoreFriend',
     full_name='Player.IgnoreFriend',
-    index=37,
+    index=39,
     containing_service=None,
     input_type=_CPLAYER_IGNOREFRIEND_REQUEST,
     output_type=_CPLAYER_IGNOREFRIEND_RESPONSE,
-    serialized_options=_b('\202\265\030SBlocks or unblocks communication with the user.  Despite name, can be a non-friend.'),
+    serialized_options=b'\202\265\030SBlocks or unblocks communication with the user.  Despite name, can be a non-friend.',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetCommunityPreferences',
     full_name='Player.GetCommunityPreferences',
-    index=38,
+    index=40,
     containing_service=None,
     input_type=_CPLAYER_GETCOMMUNITYPREFERENCES_REQUEST,
     output_type=_CPLAYER_GETCOMMUNITYPREFERENCES_RESPONSE,
-    serialized_options=_b('\202\265\030*Returns the player\'s community preferences'),
+    serialized_options=b'\202\265\030*Returns the player\'s community preferences',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='SetCommunityPreferences',
     full_name='Player.SetCommunityPreferences',
-    index=39,
+    index=41,
     containing_service=None,
     input_type=_CPLAYER_SETCOMMUNITYPREFERENCES_REQUEST,
     output_type=_CPLAYER_SETCOMMUNITYPREFERENCES_RESPONSE,
-    serialized_options=_b('\202\265\030\'Sets the player\'s community preferences'),
+    serialized_options=b'\202\265\030\'Sets the player\'s community preferences',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetTextFilterWords',
     full_name='Player.GetTextFilterWords',
-    index=40,
+    index=42,
     containing_service=None,
     input_type=_CPLAYER_GETTEXTFILTERWORDS_REQUEST,
     output_type=_CPLAYER_GETTEXTFILTERWORDS_RESPONSE,
-    serialized_options=_b('\202\265\0306Get the custom text filtering dictionary for this user'),
+    serialized_options=b'\202\265\0306Get the custom text filtering dictionary for this user',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetNewSteamAnnouncementState',
     full_name='Player.GetNewSteamAnnouncementState',
-    index=41,
+    index=43,
     containing_service=None,
     input_type=_CPLAYER_GETNEWSTEAMANNOUNCEMENTSTATE_REQUEST,
     output_type=_CPLAYER_GETNEWSTEAMANNOUNCEMENTSTATE_RESPONSE,
-    serialized_options=_b('\202\265\030[Calculates and returns what to display for UI that renders new steam announcement available'),
+    serialized_options=b'\202\265\030[Calculates and returns what to display for UI that renders new steam announcement available',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='UpdateSteamAnnouncementLastRead',
     full_name='Player.UpdateSteamAnnouncementLastRead',
-    index=42,
+    index=44,
     containing_service=None,
     input_type=_CPLAYER_UPDATESTEAMANNOUNCEMENTLASTREAD_REQUEST,
     output_type=_CPLAYER_UPDATESTEAMANNOUNCEMENTLASTREAD_RESPONSE,
-    serialized_options=_b('\202\265\0300Marks latest announcement timestamp read by user'),
+    serialized_options=b'\202\265\0300Marks latest announcement timestamp read by user',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetPrivacySettings',
     full_name='Player.GetPrivacySettings',
-    index=43,
+    index=45,
     containing_service=None,
     input_type=_CPLAYER_GETPRIVACYSETTINGS_REQUEST,
     output_type=_CPLAYER_GETPRIVACYSETTINGS_RESPONSE,
-    serialized_options=_b('\202\265\030\035Get current privacy settings.'),
+    serialized_options=b'\202\265\030\035Get current privacy settings.',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetDurationControl',
     full_name='Player.GetDurationControl',
-    index=44,
+    index=46,
     containing_service=None,
     input_type=_CPLAYER_GETDURATIONCONTROL_REQUEST,
     output_type=_CPLAYER_GETDURATIONCONTROL_RESPONSE,
-    serialized_options=_b('\202\265\030\'Get gameplay duration control settings.'),
+    serialized_options=b'\202\265\030\'Get gameplay duration control settings.',
+    create_key=_descriptor._internal_create_key,
   ),
 ])
 _sym_db.RegisterServiceDescriptor(_PLAYER)
@@ -6645,9 +6886,10 @@ _PLAYERCLIENT = _descriptor.ServiceDescriptor(
   full_name='PlayerClient',
   file=DESCRIPTOR,
   index=1,
-  serialized_options=_b('\202\265\030&Steam player data client notifications\300\265\030\002'),
-  serialized_start=25498,
-  serialized_end=26944,
+  serialized_options=b'\202\265\030&Steam player data client notifications\300\265\030\002',
+  create_key=_descriptor._internal_create_key,
+  serialized_start=24065,
+  serialized_end=25511,
   methods=[
   _descriptor.MethodDescriptor(
     name='NotifyLastPlayedTimes',
@@ -6656,7 +6898,8 @@ _PLAYERCLIENT = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CPLAYER_LASTPLAYEDTIMES_NOTIFICATION,
     output_type=steammessages__unified__base__pb2._NORESPONSE,
-    serialized_options=_b('\202\265\030;Notification from server to client of more recent play time'),
+    serialized_options=b'\202\265\030;Notification from server to client of more recent play time',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='NotifyFriendNicknameChanged',
@@ -6665,7 +6908,8 @@ _PLAYERCLIENT = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CPLAYER_FRIENDNICKNAMECHANGED_NOTIFICATION,
     output_type=steammessages__unified__base__pb2._NORESPONSE,
-    serialized_options=_b('\202\265\030GNotification from server to client that a friend\'s nickname has changed'),
+    serialized_options=b'\202\265\030GNotification from server to client that a friend\'s nickname has changed',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='NotifyFriendEquippedProfileItemsChanged',
@@ -6674,7 +6918,8 @@ _PLAYERCLIENT = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CPLAYER_FRIENDEQUIPPEDPROFILEITEMSCHANGED_NOTIFICATION,
     output_type=steammessages__unified__base__pb2._NORESPONSE,
-    serialized_options=_b('\202\265\030VNotification from server to client that a friend\'s equipped profile items have changed'),
+    serialized_options=b'\202\265\030VNotification from server to client that a friend\'s equipped profile items have changed',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='NotifyNewSteamAnnouncementState',
@@ -6683,7 +6928,8 @@ _PLAYERCLIENT = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CPLAYER_NEWSTEAMANNOUNCEMENTSTATE_NOTIFICATION,
     output_type=steammessages__unified__base__pb2._NORESPONSE,
-    serialized_options=_b('\202\265\030?Notifies client of changes to steam announcement state for user'),
+    serialized_options=b'\202\265\030?Notifies client of changes to steam announcement state for user',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='NotifyCommunityPreferencesChanged',
@@ -6692,7 +6938,8 @@ _PLAYERCLIENT = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CPLAYER_COMMUNITYPREFERENCESCHANGED_NOTIFICATION,
     output_type=steammessages__unified__base__pb2._NORESPONSE,
-    serialized_options=_b('\202\265\030PNotification from server to client that their community preferences have changed'),
+    serialized_options=b'\202\265\030PNotification from server to client that their community preferences have changed',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='NotifyTextFilterWordsChanged',
@@ -6701,7 +6948,8 @@ _PLAYERCLIENT = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CPLAYER_TEXTFILTERWORDSCHANGED_NOTIFICATION,
     output_type=steammessages__unified__base__pb2._NORESPONSE,
-    serialized_options=_b('\202\265\030SNotification from server to client that their text filtering dictionary has changed'),
+    serialized_options=b'\202\265\030SNotification from server to client that their text filtering dictionary has changed',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='NotifyPerFriendPreferencesChanged',
@@ -6710,7 +6958,8 @@ _PLAYERCLIENT = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CPLAYER_PERFRIENDPREFERENCESCHANGED_NOTIFICATION,
     output_type=steammessages__unified__base__pb2._NORESPONSE,
-    serialized_options=_b('\202\265\030ANotification from server that per-friend preferences have changed'),
+    serialized_options=b'\202\265\030ANotification from server that per-friend preferences have changed',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='NotifyPrivacyPrivacySettingsChanged',
@@ -6719,7 +6968,8 @@ _PLAYERCLIENT = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CPLAYER_PRIVACYSETTINGSCHANGED_NOTIFICATION,
     output_type=steammessages__unified__base__pb2._NORESPONSE,
-    serialized_options=_b('\202\265\0306Notification from server that privacy settings changed'),
+    serialized_options=b'\202\265\0306Notification from server that privacy settings changed',
+    create_key=_descriptor._internal_create_key,
   ),
 ])
 _sym_db.RegisterServiceDescriptor(_PLAYERCLIENT)
diff --git a/steam/protobufs/steammessages_publishedfile_pb2.py b/steam/protobufs/steammessages_publishedfile_pb2.py
index 5b0dcc3..96f49d8 100644
--- a/steam/protobufs/steammessages_publishedfile_pb2.py
+++ b/steam/protobufs/steammessages_publishedfile_pb2.py
@@ -1,9 +1,7 @@
 # -*- coding: utf-8 -*-
 # Generated by the protocol buffer compiler.  DO NOT EDIT!
 # source: steammessages_publishedfile.proto
-
-import sys
-_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1'))
+"""Generated protocol buffer code."""
 from google.protobuf.internal import enum_type_wrapper
 from google.protobuf import descriptor as _descriptor
 from google.protobuf import message as _message
@@ -16,54 +14,62 @@ from google.protobuf import service_reflection
 _sym_db = _symbol_database.Default()
 
 
+import steam.protobufs.steammessages_base_pb2 as steammessages__base__pb2
 import steam.protobufs.steammessages_unified_base_pb2 as steammessages__unified__base__pb2
-import steam.protobufs.enums_pb2 as enums__pb2
 
 
 DESCRIPTOR = _descriptor.FileDescriptor(
   name='steammessages_publishedfile.proto',
   package='',
   syntax='proto2',
-  serialized_options=_b('\220\001\001'),
-  serialized_pb=_b('\n!steammessages_publishedfile.proto\x1a steammessages_unified_base.proto\x1a\x0b\x65nums.proto\"t\n CPublishedFile_Subscribe_Request\x12\x17\n\x0fpublishedfileid\x18\x01 \x01(\x04\x12\x11\n\tlist_type\x18\x02 \x01(\r\x12\r\n\x05\x61ppid\x18\x03 \x01(\x05\x12\x15\n\rnotify_client\x18\x04 \x01(\x08\"#\n!CPublishedFile_Subscribe_Response\"v\n\"CPublishedFile_Unsubscribe_Request\x12\x17\n\x0fpublishedfileid\x18\x01 \x01(\x04\x12\x11\n\tlist_type\x18\x02 \x01(\r\x12\r\n\x05\x61ppid\x18\x03 \x01(\x05\x12\x15\n\rnotify_client\x18\x04 \x01(\x08\"%\n#CPublishedFile_Unsubscribe_Response\">\n#CPublishedFile_CanSubscribe_Request\x12\x17\n\x0fpublishedfileid\x18\x01 \x01(\x04\"=\n$CPublishedFile_CanSubscribe_Response\x12\x15\n\rcan_subscribe\x18\x01 \x01(\x08\"\xcc\n\n\x1e\x43PublishedFile_Publish_Request\x12<\n\x05\x61ppid\x18\x01 \x01(\rB-\x82\xb5\x18)App Id this file is being published FROM.\x12\x43\n\x0e\x63onsumer_appid\x18\x02 \x01(\rB+\x82\xb5\x18\'App Id this file is being published TO.\x12K\n\rcloudfilename\x18\x03 \x01(\tB4\x82\xb5\x18\x30Name of the file to publish in the user\'s cloud.\x12[\n\x15preview_cloudfilename\x18\x04 \x01(\tB<\x82\xb5\x18\x38Name of the file to use as the published file\'s preview.\x12\x35\n\x05title\x18\x05 \x01(\tB&\x82\xb5\x18\"Text title for the published file.\x12\x46\n\x10\x66ile_description\x18\x06 \x01(\tB,\x82\xb5\x18(Text description for the published file.\x12L\n\tfile_type\x18\x07 \x01(\rB9\x82\xb5\x18\x35(EWorkshopFileType) Type of Workshop file to publish.\x12I\n\x16\x63onsumer_shortcut_name\x18\x08 \x01(\tB)\x82\xb5\x18%Shortcut name for the published file.\x12I\n\x10youtube_username\x18\t \x01(\tB/\x82\xb5\x18+(Optional) User\'s YouTube account username.\x12\\\n\x0fyoutube_videoid\x18\n \x01(\tBC\x82\xb5\x18?(Optional) Video Id of a YouTube video for this published file.\x12\x81\x01\n\nvisibility\x18\x0b \x01(\rBm\x82\xb5\x18i(ERemoteStoragePublishedFileVisibility) Visibility of the published file (private, friends, public, etc.)\x12k\n\x0credirect_uri\x18\x0c \x01(\tBU\x82\xb5\x18Q(Optional) If supplied, the resulting published file\'s Id is appended to the URI.\x12\x44\n\x04tags\x18\r \x03(\tB6\x82\xb5\x18\x32\x41rray of text tags to apply to the published file.\x12Y\n\x0f\x63ollection_type\x18\x0e \x01(\tB@\x82\xb5\x18<(Optional) Type of collection the published file represents.\x12M\n\tgame_type\x18\x0f \x01(\tB:\x82\xb5\x18\x36(Optional) Type of game the published file represents.\x12[\n\x03url\x18\x10 \x01(\tBN\x82\xb5\x18J(Optional) If this represents a game, this is the URL to that game\'s page.\"P\n\x1f\x43PublishedFile_Publish_Response\x12\x17\n\x0fpublishedfileid\x18\x01 \x01(\x04\x12\x14\n\x0credirect_uri\x18\x02 \x01(\t\"\x8d\n\n!CPublishedFile_GetDetails_Request\x12P\n\x10publishedfileids\x18\x01 \x03(\x06\x42\x36\x82\xb5\x18\x32Set of published file Ids to retrieve details for.\x12Q\n\x0bincludetags\x18\x02 \x01(\x08\x42<\x82\xb5\x18\x38If true, return tag information in the returned details.\x12\x63\n\x19includeadditionalpreviews\x18\x03 \x01(\x08\x42@\x82\xb5\x18<If true, return preview information in the returned details.\x12N\n\x0fincludechildren\x18\x04 \x01(\x08\x42\x35\x82\xb5\x18\x31If true, return children in the returned details.\x12R\n\rincludekvtags\x18\x05 \x01(\x08\x42;\x82\xb5\x18\x37If true, return key value tags in the returned details.\x12L\n\x0cincludevotes\x18\x06 \x01(\x08\x42\x36\x82\xb5\x18\x32If true, return vote data in the returned details.\x12\x63\n\x11short_description\x18\x08 \x01(\x08\x42H\x82\xb5\x18\x44If true, return a short description instead of the full description.\x12L\n\x12includeforsaledata\x18\n \x01(\x08\x42\x30\x82\xb5\x18,If true, return pricing data, if applicable.\x12\x42\n\x0fincludemetadata\x18\x0b \x01(\x08\x42)\x82\xb5\x18%If true, populate the metadata field.\x12U\n\x08language\x18\x0c \x01(\x05:\x01\x30\x42@\x82\xb5\x18<Specifies the localized text to return. Defaults to English.\x12g\n\x15return_playtime_stats\x18\r \x01(\rBH\x82\xb5\x18\x44Return playtime stats for the specified number of days before today.\x12\r\n\x05\x61ppid\x18\x0e \x01(\r\x12\x46\n\x18strip_description_bbcode\x18\x0f \x01(\x08\x42$\x82\xb5\x18 Strips BBCode from descriptions.\x12\x84\x01\n\x10\x64\x65sired_revision\x18\x10 \x01(\x0e\x32\x17.EPublishedFileRevision: k_EPublishedFileRevision_DefaultB/\x82\xb5\x18+Return the data for the specified revision.\x12W\n\x10includereactions\x18\x11 \x01(\x08:\x05\x66\x61lseB6\x82\xb5\x18\x32If true, then reactions to items will be returned.\"\xf2\x18\n\x14PublishedFileDetails\x12\x0e\n\x06result\x18\x01 \x01(\r\x12\x17\n\x0fpublishedfileid\x18\x02 \x01(\x04\x12\x0f\n\x07\x63reator\x18\x03 \x01(\x06\x12\x15\n\rcreator_appid\x18\x04 \x01(\r\x12\x16\n\x0e\x63onsumer_appid\x18\x05 \x01(\r\x12\x1b\n\x13\x63onsumer_shortcutid\x18\x06 \x01(\r\x12\x10\n\x08\x66ilename\x18\x07 \x01(\t\x12\x11\n\tfile_size\x18\x08 \x01(\x04\x12\x19\n\x11preview_file_size\x18\t \x01(\x04\x12\x10\n\x08\x66ile_url\x18\n \x01(\t\x12\x13\n\x0bpreview_url\x18\x0b \x01(\t\x12\x16\n\x0eyoutubevideoid\x18\x0c \x01(\t\x12\x0b\n\x03url\x18\r \x01(\t\x12\x15\n\rhcontent_file\x18\x0e \x01(\x06\x12\x18\n\x10hcontent_preview\x18\x0f \x01(\x06\x12\r\n\x05title\x18\x10 \x01(\t\x12\x18\n\x10\x66ile_description\x18\x11 \x01(\t\x12\x19\n\x11short_description\x18\x12 \x01(\t\x12\x14\n\x0ctime_created\x18\x13 \x01(\r\x12\x14\n\x0ctime_updated\x18\x14 \x01(\r\x12\x12\n\nvisibility\x18\x15 \x01(\r\x12\r\n\x05\x66lags\x18\x16 \x01(\r\x12\x15\n\rworkshop_file\x18\x17 \x01(\x08\x12\x19\n\x11workshop_accepted\x18\x18 \x01(\x08\x12\x1a\n\x12show_subscribe_all\x18\x19 \x01(\x08\x12\x1e\n\x16num_comments_developer\x18\x1a \x01(\x05\x12\x1b\n\x13num_comments_public\x18\x1b \x01(\x05\x12\x0e\n\x06\x62\x61nned\x18\x1c \x01(\x08\x12\x12\n\nban_reason\x18\x1d \x01(\t\x12\x0e\n\x06\x62\x61nner\x18\x1e \x01(\x06\x12\x16\n\x0e\x63\x61n_be_deleted\x18\x1f \x01(\x08\x12\x14\n\x0cincompatible\x18  \x01(\x08\x12\x10\n\x08\x61pp_name\x18! \x01(\t\x12\x11\n\tfile_type\x18\" \x01(\r\x12\x15\n\rcan_subscribe\x18# \x01(\x08\x12\x15\n\rsubscriptions\x18$ \x01(\r\x12\x11\n\tfavorited\x18% \x01(\r\x12\x11\n\tfollowers\x18& \x01(\r\x12\x1e\n\x16lifetime_subscriptions\x18\' \x01(\r\x12\x1a\n\x12lifetime_favorited\x18( \x01(\r\x12\x1a\n\x12lifetime_followers\x18) \x01(\r\x12\x19\n\x11lifetime_playtime\x18> \x01(\x04\x12\"\n\x1alifetime_playtime_sessions\x18? \x01(\x04\x12\r\n\x05views\x18* \x01(\r\x12\x13\n\x0bimage_width\x18+ \x01(\r\x12\x14\n\x0cimage_height\x18, \x01(\r\x12\x11\n\timage_url\x18- \x01(\t\x12\x13\n\x0bspoiler_tag\x18. \x01(\x08\x12\x12\n\nshortcutid\x18/ \x01(\r\x12\x14\n\x0cshortcutname\x18\x30 \x01(\t\x12\x14\n\x0cnum_children\x18\x31 \x01(\r\x12\x13\n\x0bnum_reports\x18\x32 \x01(\r\x12/\n\x08previews\x18\x33 \x03(\x0b\x32\x1d.PublishedFileDetails.Preview\x12\'\n\x04tags\x18\x34 \x03(\x0b\x32\x19.PublishedFileDetails.Tag\x12-\n\x08\x63hildren\x18\x35 \x03(\x0b\x32\x1b.PublishedFileDetails.Child\x12+\n\x06kvtags\x18\x36 \x03(\x0b\x32\x1b.PublishedFileDetails.KVTag\x12\x31\n\tvote_data\x18\x37 \x01(\x0b\x32\x1e.PublishedFileDetails.VoteData\x12;\n\x0eplaytime_stats\x18@ \x01(\x0b\x32#.PublishedFileDetails.PlaytimeStats\x12r\n\x0ftime_subscribed\x18\x38 \x01(\rBY\x82\xb5\x18UOnly valid in PublishedFile.GetUserFiles and not normal PublishedFile.GetDetail calls\x12\x61\n\rfor_sale_data\x18\x39 \x01(\x0b\x32!.PublishedFileDetails.ForSaleDataB\'\x82\xb5\x18#Pricing information, if applicable.\x12\x37\n\x08metadata\x18: \x01(\tB%\x82\xb5\x18!Metadata associated with the item\x12\x43\n\x08language\x18= \x01(\x05:\x01\x30\x42.\x82\xb5\x18*The language of the title and description.\x12\x1f\n\x17maybe_inappropriate_sex\x18\x41 \x01(\x08\x12$\n\x1cmaybe_inappropriate_violence\x18\x42 \x01(\x08\x12Q\n\x16revision_change_number\x18\x43 \x01(\x04\x42\x31\x82\xb5\x18-The change number for the specified revision.\x12\xdc\x01\n\x08revision\x18\x44 \x01(\x0e\x32\x17.EPublishedFileRevision: k_EPublishedFileRevision_DefaultB\x8e\x01\x82\xb5\x18\x89\x01The revision of the data returned, usually k_EPublishedFileRevision_Latest, but can be another revision/snapshot depending on the caller.\x12M\n\x13\x61vailable_revisions\x18\x45 \x03(\x0e\x32\x17.EPublishedFileRevisionB\x17\x82\xb5\x18\x13\x41vailable revisions\x12M\n\treactions\x18\x46 \x03(\x0b\x32\x1e.PublishedFileDetails.ReactionB\x1a\x82\xb5\x18\x16Reactions to this item\x12[\n\x15\x62\x61n_text_check_result\x18G \x01(\x0e\x32\x17.EBanContentCheckResult:#k_EBanContentCheckResult_NotScanned\x1a;\n\x03Tag\x12\x0b\n\x03tag\x18\x01 \x01(\t\x12\x11\n\tadminonly\x18\x02 \x01(\x08\x12\x14\n\x0c\x64isplay_name\x18\x03 \x01(\t\x1a\xa6\x01\n\x07Preview\x12\x11\n\tpreviewid\x18\x01 \x01(\x04\x12\x11\n\tsortorder\x18\x02 \x01(\r\x12\x0b\n\x03url\x18\x03 \x01(\t\x12\x0c\n\x04size\x18\x04 \x01(\r\x12\x10\n\x08\x66ilename\x18\x05 \x01(\t\x12\x16\n\x0eyoutubevideoid\x18\x06 \x01(\t\x12\x14\n\x0cpreview_type\x18\x07 \x01(\r\x12\x1a\n\x12\x65xternal_reference\x18\x08 \x01(\t\x1a\x46\n\x05\x43hild\x12\x17\n\x0fpublishedfileid\x18\x01 \x01(\x04\x12\x11\n\tsortorder\x18\x02 \x01(\r\x12\x11\n\tfile_type\x18\x03 \x01(\r\x1a#\n\x05KVTag\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t\x1a?\n\x08VoteData\x12\r\n\x05score\x18\x01 \x01(\x02\x12\x10\n\x08votes_up\x18\x02 \x01(\r\x12\x12\n\nvotes_down\x18\x03 \x01(\r\x1a\xdc\x01\n\x0b\x46orSaleData\x12\x13\n\x0bis_for_sale\x18\x01 \x01(\x08\x12\x16\n\x0eprice_category\x18\x02 \x01(\r\x12\x41\n\x07\x65status\x18\x03 \x01(\x0e\x32\x1c.EPublishedFileForSaleStatus:\x12k_PFFSS_NotForSale\x12\x1c\n\x14price_category_floor\x18\x04 \x01(\r\x12\"\n\x1aprice_is_pay_what_you_want\x18\x05 \x01(\x08\x12\x1b\n\x13\x64iscount_percentage\x18\x06 \x01(\r\x1a?\n\rPlaytimeStats\x12\x18\n\x10playtime_seconds\x18\x01 \x01(\x04\x12\x14\n\x0cnum_sessions\x18\x02 \x01(\x04\x1a-\n\x08Reaction\x12\x12\n\nreactionid\x18\x01 \x01(\r\x12\r\n\x05\x63ount\x18\x02 \x01(\r\"Y\n\"CPublishedFile_GetDetails_Response\x12\x33\n\x14publishedfiledetails\x18\x01 \x03(\x0b\x32\x15.PublishedFileDetails\"\xe1\x02\n\"CPublishedFile_GetItemInfo_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x19\n\x11last_time_updated\x18\x02 \x01(\r\x12H\n\x0eworkshop_items\x18\x03 \x03(\x0b\x32\x30.CPublishedFile_GetItemInfo_Request.WorkshopItem\x1a\xc6\x01\n\x0cWorkshopItem\x12\x19\n\x11published_file_id\x18\x01 \x01(\x06\x12\x14\n\x0ctime_updated\x18\x02 \x01(\r\x12\x84\x01\n\x10\x64\x65sired_revision\x18\x03 \x01(\x0e\x32\x17.EPublishedFileRevision: k_EPublishedFileRevision_DefaultB/\x82\xb5\x18+Return the data for the specified revision.\"\x89\x02\n#CPublishedFile_GetItemInfo_Response\x12\x13\n\x0bupdate_time\x18\x01 \x01(\r\x12M\n\x0eworkshop_items\x18\x02 \x03(\x0b\x32\x35.CPublishedFile_GetItemInfo_Response.WorkshopItemInfo\x12\x15\n\rprivate_items\x18\x03 \x03(\x06\x1ag\n\x10WorkshopItemInfo\x12\x19\n\x11published_file_id\x18\x01 \x01(\x06\x12\x14\n\x0ctime_updated\x18\x02 \x01(\r\x12\x13\n\x0bmanifest_id\x18\x03 \x01(\x06\x12\r\n\x05\x66lags\x18\x04 \x01(\r\"\x8e\x16\n#CPublishedFile_GetUserFiles_Request\x12J\n\x07steamid\x18\x01 \x01(\x06\x42\x39\x82\xb5\x18\x35Steam ID of the user whose files are being requested.\x12\x46\n\x05\x61ppid\x18\x02 \x01(\rB7\x82\xb5\x18\x33\x41pp Id of the app that the files were published to.\x12:\n\x04page\x18\x04 \x01(\r:\x01\x31\x42)\x82\xb5\x18%(Optional) Starting page for results.\x12P\n\nnumperpage\x18\x05 \x01(\r:\x01\x31\x42\x39\x82\xb5\x18\x35(Optional) The number of results, per page to return.\x12\x43\n\x04type\x18\x06 \x01(\t:\x07myfilesB,\x82\xb5\x18((Optional) Type of files to be returned.\x12Y\n\nsortmethod\x18\x07 \x01(\t:\x0blastupdatedB8\x82\xb5\x18\x34(Optional) Sorting method to use on returned values.\x12;\n\x07privacy\x18\t \x01(\rB*\x82\xb5\x18&(optional) Filter by privacy settings.\x12h\n\x0crequiredtags\x18\n \x03(\tBR\x82\xb5\x18N(Optional) Tags that must be present on a published file to satisfy the query.\x12l\n\x0c\x65xcludedtags\x18\x0b \x03(\tBV\x82\xb5\x18R(Optional) Tags that must NOT be present on a published file to satisfy the query.\x12n\n\x10required_kv_tags\x18\x1e \x03(\x0b\x32*.CPublishedFile_GetUserFiles_Request.KVTagB(\x82\xb5\x18$Required key-value tags to match on.\x12=\n\x08\x66iletype\x18\x0e \x01(\rB+\x82\xb5\x18\'(Optional) File type to match files to.\x12\x61\n\rcreator_appid\x18\x0f \x01(\rBJ\x82\xb5\x18\x46\x41pp Id of the app that published the files, only matched if specified.\x12I\n\x14match_cloud_filename\x18\x10 \x01(\tB+\x82\xb5\x18\'Match this cloud filename if specified.\x12j\n\x15\x63\x61\x63he_max_age_seconds\x18\x1b \x01(\r:\x01\x30\x42H\x82\xb5\x18\x44\x41llow stale data to be returned for the specified number of seconds.\x12U\n\x08language\x18\x1d \x01(\x05:\x01\x30\x42@\x82\xb5\x18<Specifies the localized text to return. Defaults to English.\x12\xa3\x01\n\ttaggroups\x18\" \x03(\x0b\x32-.CPublishedFile_GetUserFiles_Request.TagGroupBa\x82\xb5\x18](Optional) At least one of the tags must be present on a published file to satisfy the query.\x12i\n\ttotalonly\x18\x11 \x01(\x08\x42V\x82\xb5\x18R(Optional) If true, only return the total number of files that satisfy this query.\x12n\n\x08ids_only\x18\x12 \x01(\x08\x42\\\x82\xb5\x18X(Optional) If true, only return the published file ids of files that satisfy this query.\x12\x34\n\x10return_vote_data\x18\x13 \x01(\x08:\x04trueB\x14\x82\xb5\x18\x10Return vote data\x12\x38\n\x0breturn_tags\x18\x14 \x01(\x08\x42#\x82\xb5\x18\x1fReturn tags in the file details\x12K\n\x0ereturn_kv_tags\x18\x15 \x01(\x08:\x04trueB-\x82\xb5\x18)Return key-value tags in the file details\x12W\n\x0freturn_previews\x18\x16 \x01(\x08\x42>\x82\xb5\x18:Return preview image and video details in the file details\x12\x46\n\x0freturn_children\x18\x17 \x01(\x08\x42-\x82\xb5\x18)Return child item ids in the file details\x12l\n\x18return_short_description\x18\x18 \x01(\x08:\x04trueBD\x82\xb5\x18@Populate the short_description field instead of file_description\x12K\n\x14return_for_sale_data\x18\x1a \x01(\x08\x42-\x82\xb5\x18)Return pricing information, if applicable\x12?\n\x0freturn_metadata\x18\x1c \x01(\x08:\x05\x66\x61lseB\x1f\x82\xb5\x18\x1bPopulate the metadata field\x12g\n\x15return_playtime_stats\x18\x1f \x01(\rBH\x82\xb5\x18\x44Return playtime stats for the specified number of days before today.\x12\x46\n\x18strip_description_bbcode\x18  \x01(\x08\x42$\x82\xb5\x18 Strips BBCode from descriptions.\x12W\n\x10return_reactions\x18# \x01(\x08:\x05\x66\x61lseB6\x82\xb5\x18\x32If true, then reactions to items will be returned.\x12\x45\n\x13startindex_override\x18\x19 \x01(\rB(\x82\xb5\x18$Backwards compatible for the client.\x12\x84\x01\n\x10\x64\x65sired_revision\x18! \x01(\x0e\x32\x17.EPublishedFileRevision: k_EPublishedFileRevision_DefaultB/\x82\xb5\x18+Return the data for the specified revision.\x1a#\n\x05KVTag\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t\x1a\x18\n\x08TagGroup\x12\x0c\n\x04tags\x18\x01 \x03(\t\"\x80\x02\n$CPublishedFile_GetUserFiles_Response\x12\r\n\x05total\x18\x01 \x01(\r\x12\x12\n\nstartindex\x18\x02 \x01(\r\x12\x33\n\x14publishedfiledetails\x18\x03 \x03(\x0b\x32\x15.PublishedFileDetails\x12\x37\n\x04\x61pps\x18\x04 \x03(\x0b\x32).CPublishedFile_GetUserFiles_Response.App\x1aG\n\x03\x41pp\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x12\n\nshortcutid\x18\x03 \x01(\r\x12\x0f\n\x07private\x18\x04 \x01(\x08\"\x9a\x02\n1CPublishedFile_AreFilesInSubscriptionList_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x18\n\x10publishedfileids\x18\x02 \x03(\x06\x12&\n\x08listtype\x18\x03 \x01(\rB\x14\x82\xb5\x18\x10See EUCMListType\x12<\n\x08\x66iletype\x18\x04 \x01(\rB*\x82\xb5\x18&See EPublishedFileInfoMatchingFileType\x12V\n\x10workshopfiletype\x18\x05 \x01(\rB<\x82\xb5\x18\x38See EWorkshopFileType.  If specified, overrides filetype\"\xb2\x01\n2CPublishedFile_AreFilesInSubscriptionList_Response\x12I\n\x05\x66iles\x18\x01 \x03(\x0b\x32:.CPublishedFile_AreFilesInSubscriptionList_Response.InList\x1a\x31\n\x06InList\x12\x17\n\x0fpublishedfileid\x18\x01 \x01(\x06\x12\x0e\n\x06inlist\x18\x02 \x01(\x08\"\x91\x06\n\x1d\x43PublishedFile_Update_Request\x12\x39\n\x05\x61ppid\x18\x01 \x01(\rB*\x82\xb5\x18&App Id this published file belongs to.\x12L\n\x0fpublishedfileid\x18\x02 \x01(\x06\x42\x33\x82\xb5\x18/Published file id of the file we\'d like update.\x12:\n\x05title\x18\x03 \x01(\tB+\x82\xb5\x18\'(Optional) Title of the published file.\x12K\n\x10\x66ile_description\x18\x04 \x01(\tB1\x82\xb5\x18-(Optional) Description of the published file.\x12\x44\n\nvisibility\x18\x05 \x01(\rB0\x82\xb5\x18,(Optional) Visibility of the published file.\x12@\n\x04tags\x18\x06 \x03(\tB2\x82\xb5\x18.(Optional) Set of tags for the published file.\x12\x41\n\x08\x66ilename\x18\x07 \x01(\tB/\x82\xb5\x18+(Optional) Filename for the published file.\x12Q\n\x10preview_filename\x18\x08 \x01(\tB7\x82\xb5\x18\x33(Optional) Preview filename for the published file.\x12^\n\x0bimage_width\x18\x0f \x01(\rBI\x82\xb5\x18\x45(Optional) If this is an image file, you can specify the image width.\x12`\n\x0cimage_height\x18\x10 \x01(\rBJ\x82\xb5\x18\x46(Optional) If this is an image file, you can specify the image height.\" \n\x1e\x43PublishedFile_Update_Response\"\xb8\x01\n,CPublishedFile_GetChangeHistoryEntry_Request\x12\x63\n\x0fpublishedfileid\x18\x01 \x01(\x06\x42J\x82\xb5\x18\x46Published file id of the file we\'d like to get the change history for.\x12\x11\n\ttimestamp\x18\x02 \x01(\r\x12\x10\n\x08language\x18\x03 \x01(\x05\"]\n-CPublishedFile_GetChangeHistoryEntry_Response\x12\x1a\n\x12\x63hange_description\x18\x01 \x01(\t\x12\x10\n\x08language\x18\x02 \x01(\x05\"\x9e\x02\n\'CPublishedFile_GetChangeHistory_Request\x12\x63\n\x0fpublishedfileid\x18\x01 \x01(\x06\x42J\x82\xb5\x18\x46Published file id of the file we\'d like to get the change history for.\x12@\n\ntotal_only\x18\x02 \x01(\x08\x42,\x82\xb5\x18(Return the total number of changes only.\x12\x12\n\nstartindex\x18\x03 \x01(\r\x12\r\n\x05\x63ount\x18\x04 \x01(\r\x12)\n\x08language\x18\x05 \x01(\x05:\x01\x30\x42\x14\x82\xb5\x18\x10\x44\x65sired language\"\xcd\x01\n(CPublishedFile_GetChangeHistory_Response\x12\x44\n\x07\x63hanges\x18\x01 \x03(\x0b\x32\x33.CPublishedFile_GetChangeHistory_Response.ChangeLog\x12\r\n\x05total\x18\x02 \x01(\r\x1aL\n\tChangeLog\x12\x11\n\ttimestamp\x18\x01 \x01(\r\x12\x1a\n\x12\x63hange_description\x18\x02 \x01(\t\x12\x10\n\x08language\x18\x03 \x01(\x05\"\xd1\x05\n)CPublishedFile_RefreshVotingQueue_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x42\n\x12matching_file_type\x18\x02 \x01(\rB&\x82\xb5\x18\"EPublishedFileInfoMatchingFileType\x12l\n\x04tags\x18\x03 \x03(\tB^\x82\xb5\x18ZInclude files that have all the tags or any of the tags if match_all_tags is set to false.\x12\x95\x01\n\x0ematch_all_tags\x18\x04 \x01(\x08:\x04trueBw\x82\xb5\x18sIf true, then files must have all the tags specified.  If false, then must have at least one of the tags specified.\x12I\n\rexcluded_tags\x18\x05 \x03(\tB2\x82\xb5\x18.Exclude any files that have any of these tags.\x12j\n\x12\x64\x65sired_queue_size\x18\x06 \x01(\rBN\x82\xb5\x18JDesired number of items in the voting queue.  May be clamped by the server\x12\x93\x01\n\x10\x64\x65sired_revision\x18\x08 \x01(\x0e\x32\x17.EPublishedFileRevision: k_EPublishedFileRevision_DefaultB>\x82\xb5\x18:Filter to items that have data for the specified revision.\",\n*CPublishedFile_RefreshVotingQueue_Response\"\x9b\x1f\n!CPublishedFile_QueryFiles_Request\x12L\n\nquery_type\x18\x01 \x01(\rB8\x82\xb5\x18\x34\x65numeration EPublishedFileQueryType in clientenums.h\x12\x1e\n\x04page\x18\x02 \x01(\rB\x10\x82\xb5\x18\x0c\x43urrent page\x12\xe8\x01\n\x06\x63ursor\x18\' \x01(\tB\xd7\x01\x82\xb5\x18\xd2\x01\x43ursor to paginate through the results (set to \'*\' for the first request).  Prefer this over using the page parameter, as it will allow you to do deep pagination.  When used, the page parameter will be ignored.\x12P\n\nnumperpage\x18\x03 \x01(\r:\x01\x31\x42\x39\x82\xb5\x18\x35(Optional) The number of results, per page to return.\x12\x35\n\rcreator_appid\x18\x04 \x01(\rB\x1e\x82\xb5\x18\x1a\x41pp that created the files\x12.\n\x05\x61ppid\x18\x05 \x01(\rB\x1f\x82\xb5\x18\x1b\x41pp that consumes the files\x12N\n\x0crequiredtags\x18\x06 \x03(\tB8\x82\xb5\x18\x34Tags to match on. See match_all_tags parameter below\x12l\n\x0c\x65xcludedtags\x18\x07 \x03(\tBV\x82\xb5\x18R(Optional) Tags that must NOT be present on a published file to satisfy the query.\x12\x8a\x01\n\x0ematch_all_tags\x18\x08 \x01(\x08:\x04trueBl\x82\xb5\x18hIf true, then items must have all the tags specified, otherwise they must have at least one of the tags.\x12Q\n\x0erequired_flags\x18\t \x03(\tB9\x82\xb5\x18\x35Required flags that must be set on any returned items\x12K\n\romitted_flags\x18\n \x03(\tB4\x82\xb5\x18\x30\x46lags that must not be set on any returned items\x12I\n\x0bsearch_text\x18\x0b \x01(\tB4\x82\xb5\x18\x30Text to match in the item\'s title or description\x12\x38\n\x08\x66iletype\x18\x0c \x01(\rB&\x82\xb5\x18\"EPublishedFileInfoMatchingFileType\x12P\n\x15\x63hild_publishedfileid\x18\r \x01(\x06\x42\x31\x82\xb5\x18-Find all items that reference the given item.\x12\x82\x01\n\x04\x64\x61ys\x18\x0e \x01(\rBt\x82\xb5\x18pIf query_type is k_PublishedFileQueryType_RankedByTrend, then this is the number of days to get votes for [1,7].\x12\xb0\x01\n\x19include_recent_votes_only\x18\x0f \x01(\x08\x42\x8c\x01\x82\xb5\x18\x87\x01If query_type is k_PublishedFileQueryType_RankedByTrend, then limit result set just to items that have votes within the day range given\x12j\n\x15\x63\x61\x63he_max_age_seconds\x18\x1f \x01(\r:\x01\x30\x42H\x82\xb5\x18\x44\x41llow stale data to be returned for the specified number of seconds.\x12`\n\x08language\x18! \x01(\x05:\x01\x30\x42K\x82\xb5\x18GLanguage to search in and also what gets returned. Defaults to English.\x12l\n\x10required_kv_tags\x18\" \x03(\x0b\x32(.CPublishedFile_QueryFiles_Request.KVTagB(\x82\xb5\x18$Required key-value tags to match on.\x12\xa1\x01\n\ttaggroups\x18* \x03(\x0b\x32+.CPublishedFile_QueryFiles_Request.TagGroupBa\x82\xb5\x18](Optional) At least one of the tags must be present on a published file to satisfy the query.\x12\x83\x01\n\x12\x64\x61te_range_created\x18, \x01(\x0b\x32,.CPublishedFile_QueryFiles_Request.DateRangeB9\x82\xb5\x18\x35(Optional) Filter to items created within this range.\x12\x83\x01\n\x12\x64\x61te_range_updated\x18- \x01(\x0b\x32,.CPublishedFile_QueryFiles_Request.DateRangeB9\x82\xb5\x18\x35(Optional) Filter to items updated within this range.\x12i\n\ttotalonly\x18\x10 \x01(\x08\x42V\x82\xb5\x18R(Optional) If true, only return the total number of files that satisfy this query.\x12n\n\x08ids_only\x18# \x01(\x08\x42\\\x82\xb5\x18X(Optional) If true, only return the published file ids of files that satisfy this query.\x12.\n\x10return_vote_data\x18\x11 \x01(\x08\x42\x14\x82\xb5\x18\x10Return vote data\x12\x38\n\x0breturn_tags\x18\x12 \x01(\x08\x42#\x82\xb5\x18\x1fReturn tags in the file details\x12\x45\n\x0ereturn_kv_tags\x18\x13 \x01(\x08\x42-\x82\xb5\x18)Return key-value tags in the file details\x12W\n\x0freturn_previews\x18\x14 \x01(\x08\x42>\x82\xb5\x18:Return preview image and video details in the file details\x12\x46\n\x0freturn_children\x18\x15 \x01(\x08\x42-\x82\xb5\x18)Return child item ids in the file details\x12\x66\n\x18return_short_description\x18\x16 \x01(\x08\x42\x44\x82\xb5\x18@Populate the short_description field instead of file_description\x12K\n\x14return_for_sale_data\x18\x1e \x01(\x08\x42-\x82\xb5\x18)Return pricing information, if applicable\x12\x39\n\x0freturn_metadata\x18  \x01(\x08:\x05\x66\x61lseB\x19\x82\xb5\x18\x15Populate the metadata\x12g\n\x15return_playtime_stats\x18$ \x01(\rBH\x82\xb5\x18\x44Return playtime stats for the specified number of days before today.\x12\xb7\x01\n\x0ereturn_details\x18% \x01(\x08\x42\x9e\x01\x82\xb5\x18\x99\x01\x42y default, if none of the other \'return_*\' fields are set, only some voting details are returned. Set this to true to return the default set of details.\x12\x46\n\x18strip_description_bbcode\x18& \x01(\x08\x42$\x82\xb5\x18 Strips BBCode from descriptions.\x12\x84\x01\n\x10\x64\x65sired_revision\x18( \x01(\x0e\x32\x17.EPublishedFileRevision: k_EPublishedFileRevision_DefaultB/\x82\xb5\x18+Return the data for the specified revision.\x12W\n\x10return_reactions\x18+ \x01(\x08:\x05\x66\x61lseB6\x82\xb5\x18\x32If true, then reactions to items will be returned.\x1a#\n\x05KVTag\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t\x1a\x18\n\x08TagGroup\x12\x0c\n\x04tags\x18\x01 \x03(\t\x1a\xd6\x01\n\tDateRange\x12\x64\n\x0ftimestamp_start\x18\x01 \x01(\rBK\x82\xb5\x18G(Optional) Include items with the relevant date field after this value.\x12\x63\n\rtimestamp_end\x18\x02 \x01(\rBL\x82\xb5\x18H(Optional) Include items with the relevant date field before this value.\"\x85\x03\n\"CPublishedFile_QueryFiles_Response\x12T\n\x05total\x18\x01 \x01(\rBE\x82\xb5\x18\x41Number of matches found, not necessarily number of items returned\x12\x8d\x01\n\x14publishedfiledetails\x18\x02 \x03(\x0b\x32\x15.PublishedFileDetailsBX\x82\xb5\x18TEach file details will be populated, depending on what return values were requested.\x12y\n\x0bnext_cursor\x18\x03 \x01(\tBd\x82\xb5\x18`If a paging cursor was used, then this will be the next cursor to use for paging through results\"i\n)CPublishedFile_AddAppRelationship_Request\x12\x17\n\x0fpublishedfileid\x18\x01 \x01(\x04\x12\r\n\x05\x61ppid\x18\x02 \x01(\r\x12\x14\n\x0crelationship\x18\x03 \x01(\r\",\n*CPublishedFile_AddAppRelationship_Response\"l\n,CPublishedFile_RemoveAppRelationship_Request\x12\x17\n\x0fpublishedfileid\x18\x01 \x01(\x04\x12\r\n\x05\x61ppid\x18\x02 \x01(\r\x12\x14\n\x0crelationship\x18\x03 \x01(\r\"/\n-CPublishedFile_RemoveAppRelationship_Response\"E\n*CPublishedFile_GetAppRelationships_Request\x12\x17\n\x0fpublishedfileid\x18\x01 \x01(\x04\"\xbe\x01\n+CPublishedFile_GetAppRelationships_Response\x12W\n\x11\x61pp_relationships\x18\x03 \x03(\x0b\x32<.CPublishedFile_GetAppRelationships_Response.AppRelationship\x1a\x36\n\x0f\x41ppRelationship\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x14\n\x0crelationship\x18\x02 \x01(\r\"W\n,CPublishedFile_StartPlaytimeTracking_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x18\n\x10publishedfileids\x18\x02 \x03(\x04\"/\n-CPublishedFile_StartPlaytimeTracking_Response\"V\n+CPublishedFile_StopPlaytimeTracking_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x18\n\x10publishedfileids\x18\x02 \x03(\x04\".\n,CPublishedFile_StopPlaytimeTracking_Response\"J\n9CPublishedFile_StopPlaytimeTrackingForAllAppItems_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\"<\n:CPublishedFile_StopPlaytimeTrackingForAllAppItems_Response\"\x81\x02\n6CPublishedFile_SetPlaytimeForControllerConfigs_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12n\n\x17\x63ontroller_config_usage\x18\x02 \x03(\x0b\x32M.CPublishedFile_SetPlaytimeForControllerConfigs_Request.ControllerConfigUsage\x1aH\n\x15\x43ontrollerConfigUsage\x12\x17\n\x0fpublishedfileid\x18\x01 \x01(\x04\x12\x16\n\x0eseconds_active\x18\x02 \x01(\x02\"9\n7CPublishedFile_SetPlaytimeForControllerConfigs_Response\"Y\n\x1f\x43PublishedFile_AddChild_Request\x12\x17\n\x0fpublishedfileid\x18\x01 \x01(\x04\x12\x1d\n\x15\x63hild_publishedfileid\x18\x02 \x01(\x04\"\"\n CPublishedFile_AddChild_Response\"\\\n\"CPublishedFile_RemoveChild_Request\x12\x17\n\x0fpublishedfileid\x18\x01 \x01(\x04\x12\x1d\n\x15\x63hild_publishedfileid\x18\x02 \x01(\x04\"%\n#CPublishedFile_RemoveChild_Response\"E\n)CPublishedFile_GetUserVoteSummary_Request\x12\x18\n\x10publishedfileids\x18\x01 \x03(\x06\"\xda\x01\n*CPublishedFile_GetUserVoteSummary_Response\x12J\n\tsummaries\x18\x01 \x03(\x0b\x32\x37.CPublishedFile_GetUserVoteSummary_Response.VoteSummary\x1a`\n\x0bVoteSummary\x12\x17\n\x0fpublishedfileid\x18\x01 \x01(\x06\x12\x10\n\x08vote_for\x18\x02 \x01(\x08\x12\x14\n\x0cvote_against\x18\x03 \x01(\x08\x12\x10\n\x08reported\x18\x04 \x01(\x08\"h\n%CPublishedFile_GetItemChanges_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x19\n\x11last_time_updated\x18\x02 \x01(\r\x12\x15\n\rnum_items_max\x18\x03 \x01(\r\"\xe9\x01\n&CPublishedFile_GetItemChanges_Response\x12\x13\n\x0bupdate_time\x18\x01 \x01(\r\x12P\n\x0eworkshop_items\x18\x02 \x03(\x0b\x32\x38.CPublishedFile_GetItemChanges_Response.WorkshopItemInfo\x1aX\n\x10WorkshopItemInfo\x12\x19\n\x11published_file_id\x18\x01 \x01(\x06\x12\x14\n\x0ctime_updated\x18\x02 \x01(\r\x12\x13\n\x0bmanifest_id\x18\x03 \x01(\x06\"\xaf\x05\n*CPublishedFile_FileSubscribed_Notification\x12@\n\x11published_file_id\x18\x01 \x01(\x06\x42%\x82\xb5\x18!PublishedFileID_t for the content\x12\x0e\n\x06\x61pp_id\x18\x02 \x01(\r\x12:\n\rfile_hcontent\x18\x03 \x01(\x06\x42#\x82\xb5\x18\x1fUGC file handle or manifest GID\x12\x11\n\tfile_size\x18\x04 \x01(\r\x12\x18\n\x10rtime_subscribed\x18\x05 \x01(\r\x12N\n\x10is_depot_content\x18\x06 \x01(\x08\x42\x34\x82\xb5\x18\x30True if workshop item is delivered via Steampipe\x12\x34\n\rrtime_updated\x18\x07 \x01(\rB\x1d\x82\xb5\x18\x19Last time content updated\x12\x82\x01\n\trevisions\x18\x08 \x03(\x0b\x32\x38.CPublishedFile_FileSubscribed_Notification.RevisionDataB5\x82\xb5\x18\x31\x44\x61ta for each of the revisions that this item has\x1a\xba\x01\n\x0cRevisionData\x12K\n\x08revision\x18\x01 \x01(\x0e\x32\x17.EPublishedFileRevision: k_EPublishedFileRevision_Default\x12\'\n\rfile_hcontent\x18\x02 \x01(\x06\x42\x10\x82\xb5\x18\x0cManifest GID\x12\x34\n\rrtime_updated\x18\x03 \x01(\rB\x1d\x82\xb5\x18\x19Last time content updated\"\x80\x01\n,CPublishedFile_FileUnsubscribed_Notification\x12@\n\x11published_file_id\x18\x01 \x01(\x06\x42%\x82\xb5\x18!PublishedFileID_t for the content\x12\x0e\n\x06\x61pp_id\x18\x02 \x01(\r\"\x82\x01\n.CPublishedFile_FileDeleted_Client_Notification\x12@\n\x11published_file_id\x18\x01 \x01(\x06\x42%\x82\xb5\x18!PublishedFileID_t for the content\x12\x0e\n\x06\x61pp_id\x18\x02 \x01(\r*\xab\x02\n\x16\x45PublishedFileRevision\x12$\n k_EPublishedFileRevision_Default\x10\x00\x12#\n\x1fk_EPublishedFileRevision_Latest\x10\x01\x12-\n)k_EPublishedFileRevision_ApprovedSnapshot\x10\x02\x12\x33\n/k_EPublishedFileRevision_ApprovedSnapshot_China\x10\x03\x12-\n)k_EPublishedFileRevision_RejectedSnapshot\x10\x04\x12\x33\n/k_EPublishedFileRevision_RejectedSnapshot_China\x10\x05*\xc8\x01\n\x1b\x45PublishedFileForSaleStatus\x12\x16\n\x12k_PFFSS_NotForSale\x10\x00\x12\x1b\n\x17k_PFFSS_PendingApproval\x10\x01\x12\x1b\n\x17k_PFFSS_ApprovedForSale\x10\x02\x12\x1b\n\x17k_PFFSS_RejectedForSale\x10\x03\x12\x1b\n\x17k_PFFSS_NoLongerForSale\x10\x04\x12\x1d\n\x19k_PFFSS_TentativeApproval\x10\x05\x32\xeb\x1f\n\rPublishedFile\x12\x81\x01\n\tSubscribe\x12!.CPublishedFile_Subscribe_Request\x1a\".CPublishedFile_Subscribe_Response\"-\x82\xb5\x18)Subscribes the user to the published file\x12\x8b\x01\n\x0bUnsubscribe\x12#.CPublishedFile_Unsubscribe_Request\x1a$.CPublishedFile_Unsubscribe_Response\"1\x82\xb5\x18-Unsubscribes the user from the published file\x12\x96\x01\n\x0c\x43\x61nSubscribe\x12$.CPublishedFile_CanSubscribe_Request\x1a%.CPublishedFile_CanSubscribe_Response\"9\x82\xb5\x18\x35\x43heck if the user can subscribe to the published file\x12\x80\x01\n\x07Publish\x12\x1f.CPublishedFile_Publish_Request\x1a .CPublishedFile_Publish_Response\"2\x82\xb5\x18.Publishes a clouded user file to the Workshop.\x12\x90\x01\n\nGetDetails\x12\".CPublishedFile_GetDetails_Request\x1a#.CPublishedFile_GetDetails_Response\"9\x82\xb5\x18\x35Retrieves information about a set of published files.\x12\x93\x01\n\x0bGetItemInfo\x12#.CPublishedFile_GetItemInfo_Request\x1a$.CPublishedFile_GetItemInfo_Response\"9\x82\xb5\x18\x35Retrieves information about a set of published files.\x12\x85\x01\n\x0cGetUserFiles\x12$.CPublishedFile_GetUserFiles_Request\x1a%.CPublishedFile_GetUserFiles_Response\"(\x82\xb5\x18$Retrieves files published by a user.\x12\xd5\x01\n\x1a\x41reFilesInSubscriptionList\x12\x32.CPublishedFile_AreFilesInSubscriptionList_Request\x1a\x33.CPublishedFile_AreFilesInSubscriptionList_Response\"N\x82\xb5\x18JDetermines which files in the given list are in a user\'s subscription list\x12z\n\x06Update\x12\x1e.CPublishedFile_Update_Request\x1a\x1f.CPublishedFile_Update_Response\"/\x82\xb5\x18+Updates information about a published file.\x12\xc0\x01\n\x15GetChangeHistoryEntry\x12-.CPublishedFile_GetChangeHistoryEntry_Request\x1a..CPublishedFile_GetChangeHistoryEntry_Response\"H\x82\xb5\x18\x44Returns data on a specific change history entry for a published file\x12\xa4\x01\n\x10GetChangeHistory\x12(.CPublishedFile_GetChangeHistory_Request\x1a).CPublishedFile_GetChangeHistory_Response\";\x82\xb5\x18\x37Returns data on the change history for a published file\x12\x98\x01\n\x12RefreshVotingQueue\x12*.CPublishedFile_RefreshVotingQueue_Request\x1a+.CPublishedFile_RefreshVotingQueue_Response\")\x82\xb5\x18%Refresh the voting queue for the user\x12\x86\x01\n\nQueryFiles\x12\".CPublishedFile_QueryFiles_Request\x1a#.CPublishedFile_QueryFiles_Response\"/\x82\xb5\x18+Performs a search query for published files\x12\xb3\x01\n\x12\x41\x64\x64\x41ppRelationship\x12*.CPublishedFile_AddAppRelationship_Request\x1a+.CPublishedFile_AddAppRelationship_Response\"D\x82\xb5\x18@Adds a relationship between the published file and the given app\x12\xbe\x01\n\x15RemoveAppRelationship\x12-.CPublishedFile_RemoveAppRelationship_Request\x1a..CPublishedFile_RemoveAppRelationship_Response\"F\x82\xb5\x18\x42Remove a relationship between the published file and the given app\x12\xb3\x01\n\x13GetAppRelationships\x12+.CPublishedFile_GetAppRelationships_Request\x1a,.CPublishedFile_GetAppRelationships_Response\"A\x82\xb5\x18=Returns the list of app relationships for this published file\x12\xb3\x01\n\x15StartPlaytimeTracking\x12-.CPublishedFile_StartPlaytimeTracking_Request\x1a..CPublishedFile_StartPlaytimeTracking_Response\";\x82\xb5\x18\x37Start usage tracking for a given set of published files\x12\xb0\x01\n\x14StopPlaytimeTracking\x12,.CPublishedFile_StopPlaytimeTracking_Request\x1a-.CPublishedFile_StopPlaytimeTracking_Response\";\x82\xb5\x18\x37Stops usage tracking for a given set of published files\x12\xed\x01\n\"StopPlaytimeTrackingForAllAppItems\x12:.CPublishedFile_StopPlaytimeTrackingForAllAppItems_Request\x1a;.CPublishedFile_StopPlaytimeTrackingForAllAppItems_Response\"N\x82\xb5\x18JStops usage tracking for all items currently tracked for the specified app\x12\x98\x02\n\x1fSetPlaytimeForControllerConfigs\x12\x37.CPublishedFile_SetPlaytimeForControllerConfigs_Request\x1a\x38.CPublishedFile_SetPlaytimeForControllerConfigs_Response\"\x81\x01\x82\xb5\x18}Stops usage tracking all controller configs for the given app and set the usage time for the for the given controller configs\x12\x8f\x01\n\x08\x41\x64\x64\x43hild\x12 .CPublishedFile_AddChild_Request\x1a!.CPublishedFile_AddChild_Response\">\x82\xb5\x18:Adds a parent->child relationship between the given items.\x12\x99\x01\n\x0bRemoveChild\x12#.CPublishedFile_RemoveChild_Request\x1a$.CPublishedFile_RemoveChild_Response\"?\x82\xb5\x18;Removes parent->child relationship between the given items.\x12\x88\x01\n\x12GetUserVoteSummary\x12*.CPublishedFile_GetUserVoteSummary_Request\x1a+.CPublishedFile_GetUserVoteSummary_Response\"\x19\x82\xb5\x18\x15Get user vote summary\x12\x91\x01\n\x0eGetItemChanges\x12&.CPublishedFile_GetItemChanges_Request\x1a\'.CPublishedFile_GetItemChanges_Response\".\x82\xb5\x18*Get list of updated items since given date\x1a+\x82\xb5\x18\'A service to access published file data2\x8d\x04\n\x13PublishedFileClient\x12\x93\x01\n\x14NotifyFileSubscribed\x12+.CPublishedFile_FileSubscribed_Notification\x1a\x0b.NoResponse\"A\x82\xb5\x18=Notification from the server when a user subscribes to a file\x12\x9b\x01\n\x16NotifyFileUnsubscribed\x12-.CPublishedFile_FileUnsubscribed_Notification\x1a\x0b.NoResponse\"E\x82\xb5\x18\x41Notification from the server when a user unsubscribes from a file\x12\x94\x01\n\x11NotifyFileDeleted\x12/.CPublishedFile_FileDeleted_Client_Notification\x1a\x0b.NoResponse\"A\x82\xb5\x18=Notification from the server when a published file is deleted\x1a+\x82\xb5\x18#Published file client notifications\xc0\xb5\x18\x02\x42\x03\x90\x01\x01')
+  serialized_options=b'\220\001\001',
+  create_key=_descriptor._internal_create_key,
+  serialized_pb=b'\n!steammessages_publishedfile.proto\x1a\x18steammessages_base.proto\x1a steammessages_unified_base.proto\"G\n\x1b\x43PublishedFile_Vote_Request\x12\x17\n\x0fpublishedfileid\x18\x01 \x01(\x04\x12\x0f\n\x07vote_up\x18\x02 \x01(\x08\"\x1e\n\x1c\x43PublishedFile_Vote_Response\"t\n CPublishedFile_Subscribe_Request\x12\x17\n\x0fpublishedfileid\x18\x01 \x01(\x04\x12\x11\n\tlist_type\x18\x02 \x01(\r\x12\r\n\x05\x61ppid\x18\x03 \x01(\x05\x12\x15\n\rnotify_client\x18\x04 \x01(\x08\"#\n!CPublishedFile_Subscribe_Response\"v\n\"CPublishedFile_Unsubscribe_Request\x12\x17\n\x0fpublishedfileid\x18\x01 \x01(\x04\x12\x11\n\tlist_type\x18\x02 \x01(\r\x12\r\n\x05\x61ppid\x18\x03 \x01(\x05\x12\x15\n\rnotify_client\x18\x04 \x01(\x08\"%\n#CPublishedFile_Unsubscribe_Response\">\n#CPublishedFile_CanSubscribe_Request\x12\x17\n\x0fpublishedfileid\x18\x01 \x01(\x04\"=\n$CPublishedFile_CanSubscribe_Response\x12\x15\n\rcan_subscribe\x18\x01 \x01(\x08\"\x85\x02\n(CPublishedFile_GetSubSectionData_Request\x12\x17\n\x0fpublishedfileid\x18\x01 \x01(\x04\x12\x1d\n\x15\x66or_table_of_contents\x18\x02 \x01(\x08\x12\x1a\n\x12specific_sectionid\x18\x03 \x01(\x04\x12\x84\x01\n\x10\x64\x65sired_revision\x18\x04 \x01(\x0e\x32\x17.EPublishedFileRevision: k_EPublishedFileRevision_DefaultB/\x82\xb5\x18+Return the data for the specified revision.\"i\n\x17PublishedFileSubSection\x12\x11\n\tsectionid\x18\x01 \x01(\x04\x12\r\n\x05title\x18\x02 \x01(\t\x12\x18\n\x10\x64\x65scription_text\x18\x03 \x01(\t\x12\x12\n\nsort_order\x18\x04 \x01(\r\"[\n)CPublishedFile_GetSubSectionData_Response\x12.\n\x0csub_sections\x18\x01 \x03(\x0b\x32\x18.PublishedFileSubSection\"\xcc\n\n\x1e\x43PublishedFile_Publish_Request\x12<\n\x05\x61ppid\x18\x01 \x01(\rB-\x82\xb5\x18)App Id this file is being published FROM.\x12\x43\n\x0e\x63onsumer_appid\x18\x02 \x01(\rB+\x82\xb5\x18\'App Id this file is being published TO.\x12K\n\rcloudfilename\x18\x03 \x01(\tB4\x82\xb5\x18\x30Name of the file to publish in the user\'s cloud.\x12[\n\x15preview_cloudfilename\x18\x04 \x01(\tB<\x82\xb5\x18\x38Name of the file to use as the published file\'s preview.\x12\x35\n\x05title\x18\x05 \x01(\tB&\x82\xb5\x18\"Text title for the published file.\x12\x46\n\x10\x66ile_description\x18\x06 \x01(\tB,\x82\xb5\x18(Text description for the published file.\x12L\n\tfile_type\x18\x07 \x01(\rB9\x82\xb5\x18\x35(EWorkshopFileType) Type of Workshop file to publish.\x12I\n\x16\x63onsumer_shortcut_name\x18\x08 \x01(\tB)\x82\xb5\x18%Shortcut name for the published file.\x12I\n\x10youtube_username\x18\t \x01(\tB/\x82\xb5\x18+(Optional) User\'s YouTube account username.\x12\\\n\x0fyoutube_videoid\x18\n \x01(\tBC\x82\xb5\x18?(Optional) Video Id of a YouTube video for this published file.\x12\x81\x01\n\nvisibility\x18\x0b \x01(\rBm\x82\xb5\x18i(ERemoteStoragePublishedFileVisibility) Visibility of the published file (private, friends, public, etc.)\x12k\n\x0credirect_uri\x18\x0c \x01(\tBU\x82\xb5\x18Q(Optional) If supplied, the resulting published file\'s Id is appended to the URI.\x12\x44\n\x04tags\x18\r \x03(\tB6\x82\xb5\x18\x32\x41rray of text tags to apply to the published file.\x12Y\n\x0f\x63ollection_type\x18\x0e \x01(\tB@\x82\xb5\x18<(Optional) Type of collection the published file represents.\x12M\n\tgame_type\x18\x0f \x01(\tB:\x82\xb5\x18\x36(Optional) Type of game the published file represents.\x12[\n\x03url\x18\x10 \x01(\tBN\x82\xb5\x18J(Optional) If this represents a game, this is the URL to that game\'s page.\"P\n\x1f\x43PublishedFile_Publish_Response\x12\x17\n\x0fpublishedfileid\x18\x01 \x01(\x04\x12\x14\n\x0credirect_uri\x18\x02 \x01(\t\"\x8d\n\n!CPublishedFile_GetDetails_Request\x12P\n\x10publishedfileids\x18\x01 \x03(\x06\x42\x36\x82\xb5\x18\x32Set of published file Ids to retrieve details for.\x12Q\n\x0bincludetags\x18\x02 \x01(\x08\x42<\x82\xb5\x18\x38If true, return tag information in the returned details.\x12\x63\n\x19includeadditionalpreviews\x18\x03 \x01(\x08\x42@\x82\xb5\x18<If true, return preview information in the returned details.\x12N\n\x0fincludechildren\x18\x04 \x01(\x08\x42\x35\x82\xb5\x18\x31If true, return children in the returned details.\x12R\n\rincludekvtags\x18\x05 \x01(\x08\x42;\x82\xb5\x18\x37If true, return key value tags in the returned details.\x12L\n\x0cincludevotes\x18\x06 \x01(\x08\x42\x36\x82\xb5\x18\x32If true, return vote data in the returned details.\x12\x63\n\x11short_description\x18\x08 \x01(\x08\x42H\x82\xb5\x18\x44If true, return a short description instead of the full description.\x12L\n\x12includeforsaledata\x18\n \x01(\x08\x42\x30\x82\xb5\x18,If true, return pricing data, if applicable.\x12\x42\n\x0fincludemetadata\x18\x0b \x01(\x08\x42)\x82\xb5\x18%If true, populate the metadata field.\x12U\n\x08language\x18\x0c \x01(\x05:\x01\x30\x42@\x82\xb5\x18<Specifies the localized text to return. Defaults to English.\x12g\n\x15return_playtime_stats\x18\r \x01(\rBH\x82\xb5\x18\x44Return playtime stats for the specified number of days before today.\x12\r\n\x05\x61ppid\x18\x0e \x01(\r\x12\x46\n\x18strip_description_bbcode\x18\x0f \x01(\x08\x42$\x82\xb5\x18 Strips BBCode from descriptions.\x12\x84\x01\n\x10\x64\x65sired_revision\x18\x10 \x01(\x0e\x32\x17.EPublishedFileRevision: k_EPublishedFileRevision_DefaultB/\x82\xb5\x18+Return the data for the specified revision.\x12W\n\x10includereactions\x18\x11 \x01(\x08:\x05\x66\x61lseB6\x82\xb5\x18\x32If true, then reactions to items will be returned.\"\xf2\x18\n\x14PublishedFileDetails\x12\x0e\n\x06result\x18\x01 \x01(\r\x12\x17\n\x0fpublishedfileid\x18\x02 \x01(\x04\x12\x0f\n\x07\x63reator\x18\x03 \x01(\x06\x12\x15\n\rcreator_appid\x18\x04 \x01(\r\x12\x16\n\x0e\x63onsumer_appid\x18\x05 \x01(\r\x12\x1b\n\x13\x63onsumer_shortcutid\x18\x06 \x01(\r\x12\x10\n\x08\x66ilename\x18\x07 \x01(\t\x12\x11\n\tfile_size\x18\x08 \x01(\x04\x12\x19\n\x11preview_file_size\x18\t \x01(\x04\x12\x10\n\x08\x66ile_url\x18\n \x01(\t\x12\x13\n\x0bpreview_url\x18\x0b \x01(\t\x12\x16\n\x0eyoutubevideoid\x18\x0c \x01(\t\x12\x0b\n\x03url\x18\r \x01(\t\x12\x15\n\rhcontent_file\x18\x0e \x01(\x06\x12\x18\n\x10hcontent_preview\x18\x0f \x01(\x06\x12\r\n\x05title\x18\x10 \x01(\t\x12\x18\n\x10\x66ile_description\x18\x11 \x01(\t\x12\x19\n\x11short_description\x18\x12 \x01(\t\x12\x14\n\x0ctime_created\x18\x13 \x01(\r\x12\x14\n\x0ctime_updated\x18\x14 \x01(\r\x12\x12\n\nvisibility\x18\x15 \x01(\r\x12\r\n\x05\x66lags\x18\x16 \x01(\r\x12\x15\n\rworkshop_file\x18\x17 \x01(\x08\x12\x19\n\x11workshop_accepted\x18\x18 \x01(\x08\x12\x1a\n\x12show_subscribe_all\x18\x19 \x01(\x08\x12\x1e\n\x16num_comments_developer\x18\x1a \x01(\x05\x12\x1b\n\x13num_comments_public\x18\x1b \x01(\x05\x12\x0e\n\x06\x62\x61nned\x18\x1c \x01(\x08\x12\x12\n\nban_reason\x18\x1d \x01(\t\x12\x0e\n\x06\x62\x61nner\x18\x1e \x01(\x06\x12\x16\n\x0e\x63\x61n_be_deleted\x18\x1f \x01(\x08\x12\x14\n\x0cincompatible\x18  \x01(\x08\x12\x10\n\x08\x61pp_name\x18! \x01(\t\x12\x11\n\tfile_type\x18\" \x01(\r\x12\x15\n\rcan_subscribe\x18# \x01(\x08\x12\x15\n\rsubscriptions\x18$ \x01(\r\x12\x11\n\tfavorited\x18% \x01(\r\x12\x11\n\tfollowers\x18& \x01(\r\x12\x1e\n\x16lifetime_subscriptions\x18\' \x01(\r\x12\x1a\n\x12lifetime_favorited\x18( \x01(\r\x12\x1a\n\x12lifetime_followers\x18) \x01(\r\x12\x19\n\x11lifetime_playtime\x18> \x01(\x04\x12\"\n\x1alifetime_playtime_sessions\x18? \x01(\x04\x12\r\n\x05views\x18* \x01(\r\x12\x13\n\x0bimage_width\x18+ \x01(\r\x12\x14\n\x0cimage_height\x18, \x01(\r\x12\x11\n\timage_url\x18- \x01(\t\x12\x13\n\x0bspoiler_tag\x18. \x01(\x08\x12\x12\n\nshortcutid\x18/ \x01(\r\x12\x14\n\x0cshortcutname\x18\x30 \x01(\t\x12\x14\n\x0cnum_children\x18\x31 \x01(\r\x12\x13\n\x0bnum_reports\x18\x32 \x01(\r\x12/\n\x08previews\x18\x33 \x03(\x0b\x32\x1d.PublishedFileDetails.Preview\x12\'\n\x04tags\x18\x34 \x03(\x0b\x32\x19.PublishedFileDetails.Tag\x12-\n\x08\x63hildren\x18\x35 \x03(\x0b\x32\x1b.PublishedFileDetails.Child\x12+\n\x06kvtags\x18\x36 \x03(\x0b\x32\x1b.PublishedFileDetails.KVTag\x12\x31\n\tvote_data\x18\x37 \x01(\x0b\x32\x1e.PublishedFileDetails.VoteData\x12;\n\x0eplaytime_stats\x18@ \x01(\x0b\x32#.PublishedFileDetails.PlaytimeStats\x12r\n\x0ftime_subscribed\x18\x38 \x01(\rBY\x82\xb5\x18UOnly valid in PublishedFile.GetUserFiles and not normal PublishedFile.GetDetail calls\x12\x61\n\rfor_sale_data\x18\x39 \x01(\x0b\x32!.PublishedFileDetails.ForSaleDataB\'\x82\xb5\x18#Pricing information, if applicable.\x12\x37\n\x08metadata\x18: \x01(\tB%\x82\xb5\x18!Metadata associated with the item\x12\x43\n\x08language\x18= \x01(\x05:\x01\x30\x42.\x82\xb5\x18*The language of the title and description.\x12\x1f\n\x17maybe_inappropriate_sex\x18\x41 \x01(\x08\x12$\n\x1cmaybe_inappropriate_violence\x18\x42 \x01(\x08\x12Q\n\x16revision_change_number\x18\x43 \x01(\x04\x42\x31\x82\xb5\x18-The change number for the specified revision.\x12\xdc\x01\n\x08revision\x18\x44 \x01(\x0e\x32\x17.EPublishedFileRevision: k_EPublishedFileRevision_DefaultB\x8e\x01\x82\xb5\x18\x89\x01The revision of the data returned, usually k_EPublishedFileRevision_Latest, but can be another revision/snapshot depending on the caller.\x12M\n\x13\x61vailable_revisions\x18\x45 \x03(\x0e\x32\x17.EPublishedFileRevisionB\x17\x82\xb5\x18\x13\x41vailable revisions\x12M\n\treactions\x18\x46 \x03(\x0b\x32\x1e.PublishedFileDetails.ReactionB\x1a\x82\xb5\x18\x16Reactions to this item\x12[\n\x15\x62\x61n_text_check_result\x18G \x01(\x0e\x32\x17.EBanContentCheckResult:#k_EBanContentCheckResult_NotScanned\x1a;\n\x03Tag\x12\x0b\n\x03tag\x18\x01 \x01(\t\x12\x11\n\tadminonly\x18\x02 \x01(\x08\x12\x14\n\x0c\x64isplay_name\x18\x03 \x01(\t\x1a\xa6\x01\n\x07Preview\x12\x11\n\tpreviewid\x18\x01 \x01(\x04\x12\x11\n\tsortorder\x18\x02 \x01(\r\x12\x0b\n\x03url\x18\x03 \x01(\t\x12\x0c\n\x04size\x18\x04 \x01(\r\x12\x10\n\x08\x66ilename\x18\x05 \x01(\t\x12\x16\n\x0eyoutubevideoid\x18\x06 \x01(\t\x12\x14\n\x0cpreview_type\x18\x07 \x01(\r\x12\x1a\n\x12\x65xternal_reference\x18\x08 \x01(\t\x1a\x46\n\x05\x43hild\x12\x17\n\x0fpublishedfileid\x18\x01 \x01(\x04\x12\x11\n\tsortorder\x18\x02 \x01(\r\x12\x11\n\tfile_type\x18\x03 \x01(\r\x1a#\n\x05KVTag\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t\x1a?\n\x08VoteData\x12\r\n\x05score\x18\x01 \x01(\x02\x12\x10\n\x08votes_up\x18\x02 \x01(\r\x12\x12\n\nvotes_down\x18\x03 \x01(\r\x1a\xdc\x01\n\x0b\x46orSaleData\x12\x13\n\x0bis_for_sale\x18\x01 \x01(\x08\x12\x16\n\x0eprice_category\x18\x02 \x01(\r\x12\x41\n\x07\x65status\x18\x03 \x01(\x0e\x32\x1c.EPublishedFileForSaleStatus:\x12k_PFFSS_NotForSale\x12\x1c\n\x14price_category_floor\x18\x04 \x01(\r\x12\"\n\x1aprice_is_pay_what_you_want\x18\x05 \x01(\x08\x12\x1b\n\x13\x64iscount_percentage\x18\x06 \x01(\r\x1a?\n\rPlaytimeStats\x12\x18\n\x10playtime_seconds\x18\x01 \x01(\x04\x12\x14\n\x0cnum_sessions\x18\x02 \x01(\x04\x1a-\n\x08Reaction\x12\x12\n\nreactionid\x18\x01 \x01(\r\x12\r\n\x05\x63ount\x18\x02 \x01(\r\"Y\n\"CPublishedFile_GetDetails_Response\x12\x33\n\x14publishedfiledetails\x18\x01 \x03(\x0b\x32\x15.PublishedFileDetails\"\xe1\x02\n\"CPublishedFile_GetItemInfo_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x19\n\x11last_time_updated\x18\x02 \x01(\r\x12H\n\x0eworkshop_items\x18\x03 \x03(\x0b\x32\x30.CPublishedFile_GetItemInfo_Request.WorkshopItem\x1a\xc6\x01\n\x0cWorkshopItem\x12\x19\n\x11published_file_id\x18\x01 \x01(\x06\x12\x14\n\x0ctime_updated\x18\x02 \x01(\r\x12\x84\x01\n\x10\x64\x65sired_revision\x18\x03 \x01(\x0e\x32\x17.EPublishedFileRevision: k_EPublishedFileRevision_DefaultB/\x82\xb5\x18+Return the data for the specified revision.\"\x89\x02\n#CPublishedFile_GetItemInfo_Response\x12\x13\n\x0bupdate_time\x18\x01 \x01(\r\x12M\n\x0eworkshop_items\x18\x02 \x03(\x0b\x32\x35.CPublishedFile_GetItemInfo_Response.WorkshopItemInfo\x12\x15\n\rprivate_items\x18\x03 \x03(\x06\x1ag\n\x10WorkshopItemInfo\x12\x19\n\x11published_file_id\x18\x01 \x01(\x06\x12\x14\n\x0ctime_updated\x18\x02 \x01(\r\x12\x13\n\x0bmanifest_id\x18\x03 \x01(\x06\x12\r\n\x05\x66lags\x18\x04 \x01(\r\"\xd0\x16\n#CPublishedFile_GetUserFiles_Request\x12J\n\x07steamid\x18\x01 \x01(\x06\x42\x39\x82\xb5\x18\x35Steam ID of the user whose files are being requested.\x12\x46\n\x05\x61ppid\x18\x02 \x01(\rB7\x82\xb5\x18\x33\x41pp Id of the app that the files were published to.\x12:\n\x04page\x18\x04 \x01(\r:\x01\x31\x42)\x82\xb5\x18%(Optional) Starting page for results.\x12P\n\nnumperpage\x18\x05 \x01(\r:\x01\x31\x42\x39\x82\xb5\x18\x35(Optional) The number of results, per page to return.\x12\x43\n\x04type\x18\x06 \x01(\t:\x07myfilesB,\x82\xb5\x18((Optional) Type of files to be returned.\x12Y\n\nsortmethod\x18\x07 \x01(\t:\x0blastupdatedB8\x82\xb5\x18\x34(Optional) Sorting method to use on returned values.\x12;\n\x07privacy\x18\t \x01(\rB*\x82\xb5\x18&(optional) Filter by privacy settings.\x12h\n\x0crequiredtags\x18\n \x03(\tBR\x82\xb5\x18N(Optional) Tags that must be present on a published file to satisfy the query.\x12l\n\x0c\x65xcludedtags\x18\x0b \x03(\tBV\x82\xb5\x18R(Optional) Tags that must NOT be present on a published file to satisfy the query.\x12n\n\x10required_kv_tags\x18\x1e \x03(\x0b\x32*.CPublishedFile_GetUserFiles_Request.KVTagB(\x82\xb5\x18$Required key-value tags to match on.\x12=\n\x08\x66iletype\x18\x0e \x01(\rB+\x82\xb5\x18\'(Optional) File type to match files to.\x12\x61\n\rcreator_appid\x18\x0f \x01(\rBJ\x82\xb5\x18\x46\x41pp Id of the app that published the files, only matched if specified.\x12I\n\x14match_cloud_filename\x18\x10 \x01(\tB+\x82\xb5\x18\'Match this cloud filename if specified.\x12j\n\x15\x63\x61\x63he_max_age_seconds\x18\x1b \x01(\r:\x01\x30\x42H\x82\xb5\x18\x44\x41llow stale data to be returned for the specified number of seconds.\x12U\n\x08language\x18\x1d \x01(\x05:\x01\x30\x42@\x82\xb5\x18<Specifies the localized text to return. Defaults to English.\x12\xa3\x01\n\ttaggroups\x18\" \x03(\x0b\x32-.CPublishedFile_GetUserFiles_Request.TagGroupBa\x82\xb5\x18](Optional) At least one of the tags must be present on a published file to satisfy the query.\x12i\n\ttotalonly\x18\x11 \x01(\x08\x42V\x82\xb5\x18R(Optional) If true, only return the total number of files that satisfy this query.\x12n\n\x08ids_only\x18\x12 \x01(\x08\x42\\\x82\xb5\x18X(Optional) If true, only return the published file ids of files that satisfy this query.\x12\x34\n\x10return_vote_data\x18\x13 \x01(\x08:\x04trueB\x14\x82\xb5\x18\x10Return vote data\x12\x38\n\x0breturn_tags\x18\x14 \x01(\x08\x42#\x82\xb5\x18\x1fReturn tags in the file details\x12K\n\x0ereturn_kv_tags\x18\x15 \x01(\x08:\x04trueB-\x82\xb5\x18)Return key-value tags in the file details\x12W\n\x0freturn_previews\x18\x16 \x01(\x08\x42>\x82\xb5\x18:Return preview image and video details in the file details\x12\x46\n\x0freturn_children\x18\x17 \x01(\x08\x42-\x82\xb5\x18)Return child item ids in the file details\x12l\n\x18return_short_description\x18\x18 \x01(\x08:\x04trueBD\x82\xb5\x18@Populate the short_description field instead of file_description\x12K\n\x14return_for_sale_data\x18\x1a \x01(\x08\x42-\x82\xb5\x18)Return pricing information, if applicable\x12?\n\x0freturn_metadata\x18\x1c \x01(\x08:\x05\x66\x61lseB\x1f\x82\xb5\x18\x1bPopulate the metadata field\x12g\n\x15return_playtime_stats\x18\x1f \x01(\rBH\x82\xb5\x18\x44Return playtime stats for the specified number of days before today.\x12\x46\n\x18strip_description_bbcode\x18  \x01(\x08\x42$\x82\xb5\x18 Strips BBCode from descriptions.\x12W\n\x10return_reactions\x18# \x01(\x08:\x05\x66\x61lseB6\x82\xb5\x18\x32If true, then reactions to items will be returned.\x12\x45\n\x13startindex_override\x18\x19 \x01(\rB(\x82\xb5\x18$Backwards compatible for the client.\x12\x84\x01\n\x10\x64\x65sired_revision\x18! \x01(\x0e\x32\x17.EPublishedFileRevision: k_EPublishedFileRevision_DefaultB/\x82\xb5\x18+Return the data for the specified revision.\x12@\n\x0breturn_apps\x18$ \x01(\x08\x42+\x82\xb5\x18\'Return list of apps the items belong to\x1a#\n\x05KVTag\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t\x1a\x18\n\x08TagGroup\x12\x0c\n\x04tags\x18\x01 \x03(\t\"\x80\x02\n$CPublishedFile_GetUserFiles_Response\x12\r\n\x05total\x18\x01 \x01(\r\x12\x12\n\nstartindex\x18\x02 \x01(\r\x12\x33\n\x14publishedfiledetails\x18\x03 \x03(\x0b\x32\x15.PublishedFileDetails\x12\x37\n\x04\x61pps\x18\x04 \x03(\x0b\x32).CPublishedFile_GetUserFiles_Response.App\x1aG\n\x03\x41pp\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x12\n\nshortcutid\x18\x03 \x01(\r\x12\x0f\n\x07private\x18\x04 \x01(\x08\"\x9a\x02\n1CPublishedFile_AreFilesInSubscriptionList_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x18\n\x10publishedfileids\x18\x02 \x03(\x06\x12&\n\x08listtype\x18\x03 \x01(\rB\x14\x82\xb5\x18\x10See EUCMListType\x12<\n\x08\x66iletype\x18\x04 \x01(\rB*\x82\xb5\x18&See EPublishedFileInfoMatchingFileType\x12V\n\x10workshopfiletype\x18\x05 \x01(\rB<\x82\xb5\x18\x38See EWorkshopFileType.  If specified, overrides filetype\"\xb2\x01\n2CPublishedFile_AreFilesInSubscriptionList_Response\x12I\n\x05\x66iles\x18\x01 \x03(\x0b\x32:.CPublishedFile_AreFilesInSubscriptionList_Response.InList\x1a\x31\n\x06InList\x12\x17\n\x0fpublishedfileid\x18\x01 \x01(\x06\x12\x0e\n\x06inlist\x18\x02 \x01(\x08\"\xff\x06\n\x1d\x43PublishedFile_Update_Request\x12\x39\n\x05\x61ppid\x18\x01 \x01(\rB*\x82\xb5\x18&App Id this published file belongs to.\x12O\n\x0fpublishedfileid\x18\x02 \x01(\x06\x42\x36\x82\xb5\x18\x32Published file id of the file we\'d like to update.\x12:\n\x05title\x18\x03 \x01(\tB+\x82\xb5\x18\'(Optional) Title of the published file.\x12K\n\x10\x66ile_description\x18\x04 \x01(\tB1\x82\xb5\x18-(Optional) Description of the published file.\x12\x44\n\nvisibility\x18\x05 \x01(\rB0\x82\xb5\x18,(Optional) Visibility of the published file.\x12@\n\x04tags\x18\x06 \x03(\tB2\x82\xb5\x18.(Optional) Set of tags for the published file.\x12\x41\n\x08\x66ilename\x18\x07 \x01(\tB/\x82\xb5\x18+(Optional) Filename for the published file.\x12Q\n\x10preview_filename\x18\x08 \x01(\tB7\x82\xb5\x18\x33(Optional) Preview filename for the published file.\x12i\n\x0bspoiler_tag\x18\n \x01(\x08\x42T\x82\xb5\x18P(Optional) Whether this published file should have a spoiler tag attached to it.\x12^\n\x0bimage_width\x18\x0f \x01(\rBI\x82\xb5\x18\x45(Optional) If this is an image file, you can specify the image width.\x12`\n\x0cimage_height\x18\x10 \x01(\rBJ\x82\xb5\x18\x46(Optional) If this is an image file, you can specify the image height.\" \n\x1e\x43PublishedFile_Update_Response\"p\n\x1d\x43PublishedFile_Delete_Request\x12O\n\x0fpublishedfileid\x18\x01 \x01(\x06\x42\x36\x82\xb5\x18\x32Published file id of the file we\'d like to delete.\" \n\x1e\x43PublishedFile_Delete_Response\"\xb8\x01\n,CPublishedFile_GetChangeHistoryEntry_Request\x12\x63\n\x0fpublishedfileid\x18\x01 \x01(\x06\x42J\x82\xb5\x18\x46Published file id of the file we\'d like to get the change history for.\x12\x11\n\ttimestamp\x18\x02 \x01(\r\x12\x10\n\x08language\x18\x03 \x01(\x05\"]\n-CPublishedFile_GetChangeHistoryEntry_Response\x12\x1a\n\x12\x63hange_description\x18\x01 \x01(\t\x12\x10\n\x08language\x18\x02 \x01(\x05\"\x9e\x02\n\'CPublishedFile_GetChangeHistory_Request\x12\x63\n\x0fpublishedfileid\x18\x01 \x01(\x06\x42J\x82\xb5\x18\x46Published file id of the file we\'d like to get the change history for.\x12@\n\ntotal_only\x18\x02 \x01(\x08\x42,\x82\xb5\x18(Return the total number of changes only.\x12\x12\n\nstartindex\x18\x03 \x01(\r\x12\r\n\x05\x63ount\x18\x04 \x01(\r\x12)\n\x08language\x18\x05 \x01(\x05:\x01\x30\x42\x14\x82\xb5\x18\x10\x44\x65sired language\"\xcd\x01\n(CPublishedFile_GetChangeHistory_Response\x12\x44\n\x07\x63hanges\x18\x01 \x03(\x0b\x32\x33.CPublishedFile_GetChangeHistory_Response.ChangeLog\x12\r\n\x05total\x18\x02 \x01(\r\x1aL\n\tChangeLog\x12\x11\n\ttimestamp\x18\x01 \x01(\r\x12\x1a\n\x12\x63hange_description\x18\x02 \x01(\t\x12\x10\n\x08language\x18\x03 \x01(\x05\"\xd1\x05\n)CPublishedFile_RefreshVotingQueue_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x42\n\x12matching_file_type\x18\x02 \x01(\rB&\x82\xb5\x18\"EPublishedFileInfoMatchingFileType\x12l\n\x04tags\x18\x03 \x03(\tB^\x82\xb5\x18ZInclude files that have all the tags or any of the tags if match_all_tags is set to false.\x12\x95\x01\n\x0ematch_all_tags\x18\x04 \x01(\x08:\x04trueBw\x82\xb5\x18sIf true, then files must have all the tags specified.  If false, then must have at least one of the tags specified.\x12I\n\rexcluded_tags\x18\x05 \x03(\tB2\x82\xb5\x18.Exclude any files that have any of these tags.\x12j\n\x12\x64\x65sired_queue_size\x18\x06 \x01(\rBN\x82\xb5\x18JDesired number of items in the voting queue.  May be clamped by the server\x12\x93\x01\n\x10\x64\x65sired_revision\x18\x08 \x01(\x0e\x32\x17.EPublishedFileRevision: k_EPublishedFileRevision_DefaultB>\x82\xb5\x18:Filter to items that have data for the specified revision.\",\n*CPublishedFile_RefreshVotingQueue_Response\"\x9b\x1f\n!CPublishedFile_QueryFiles_Request\x12L\n\nquery_type\x18\x01 \x01(\rB8\x82\xb5\x18\x34\x65numeration EPublishedFileQueryType in clientenums.h\x12\x1e\n\x04page\x18\x02 \x01(\rB\x10\x82\xb5\x18\x0c\x43urrent page\x12\xe8\x01\n\x06\x63ursor\x18\' \x01(\tB\xd7\x01\x82\xb5\x18\xd2\x01\x43ursor to paginate through the results (set to \'*\' for the first request).  Prefer this over using the page parameter, as it will allow you to do deep pagination.  When used, the page parameter will be ignored.\x12P\n\nnumperpage\x18\x03 \x01(\r:\x01\x31\x42\x39\x82\xb5\x18\x35(Optional) The number of results, per page to return.\x12\x35\n\rcreator_appid\x18\x04 \x01(\rB\x1e\x82\xb5\x18\x1a\x41pp that created the files\x12.\n\x05\x61ppid\x18\x05 \x01(\rB\x1f\x82\xb5\x18\x1b\x41pp that consumes the files\x12N\n\x0crequiredtags\x18\x06 \x03(\tB8\x82\xb5\x18\x34Tags to match on. See match_all_tags parameter below\x12l\n\x0c\x65xcludedtags\x18\x07 \x03(\tBV\x82\xb5\x18R(Optional) Tags that must NOT be present on a published file to satisfy the query.\x12\x8a\x01\n\x0ematch_all_tags\x18\x08 \x01(\x08:\x04trueBl\x82\xb5\x18hIf true, then items must have all the tags specified, otherwise they must have at least one of the tags.\x12Q\n\x0erequired_flags\x18\t \x03(\tB9\x82\xb5\x18\x35Required flags that must be set on any returned items\x12K\n\romitted_flags\x18\n \x03(\tB4\x82\xb5\x18\x30\x46lags that must not be set on any returned items\x12I\n\x0bsearch_text\x18\x0b \x01(\tB4\x82\xb5\x18\x30Text to match in the item\'s title or description\x12\x38\n\x08\x66iletype\x18\x0c \x01(\rB&\x82\xb5\x18\"EPublishedFileInfoMatchingFileType\x12P\n\x15\x63hild_publishedfileid\x18\r \x01(\x06\x42\x31\x82\xb5\x18-Find all items that reference the given item.\x12\x82\x01\n\x04\x64\x61ys\x18\x0e \x01(\rBt\x82\xb5\x18pIf query_type is k_PublishedFileQueryType_RankedByTrend, then this is the number of days to get votes for [1,7].\x12\xb0\x01\n\x19include_recent_votes_only\x18\x0f \x01(\x08\x42\x8c\x01\x82\xb5\x18\x87\x01If query_type is k_PublishedFileQueryType_RankedByTrend, then limit result set just to items that have votes within the day range given\x12j\n\x15\x63\x61\x63he_max_age_seconds\x18\x1f \x01(\r:\x01\x30\x42H\x82\xb5\x18\x44\x41llow stale data to be returned for the specified number of seconds.\x12`\n\x08language\x18! \x01(\x05:\x01\x30\x42K\x82\xb5\x18GLanguage to search in and also what gets returned. Defaults to English.\x12l\n\x10required_kv_tags\x18\" \x03(\x0b\x32(.CPublishedFile_QueryFiles_Request.KVTagB(\x82\xb5\x18$Required key-value tags to match on.\x12\xa1\x01\n\ttaggroups\x18* \x03(\x0b\x32+.CPublishedFile_QueryFiles_Request.TagGroupBa\x82\xb5\x18](Optional) At least one of the tags must be present on a published file to satisfy the query.\x12\x83\x01\n\x12\x64\x61te_range_created\x18, \x01(\x0b\x32,.CPublishedFile_QueryFiles_Request.DateRangeB9\x82\xb5\x18\x35(Optional) Filter to items created within this range.\x12\x83\x01\n\x12\x64\x61te_range_updated\x18- \x01(\x0b\x32,.CPublishedFile_QueryFiles_Request.DateRangeB9\x82\xb5\x18\x35(Optional) Filter to items updated within this range.\x12i\n\ttotalonly\x18\x10 \x01(\x08\x42V\x82\xb5\x18R(Optional) If true, only return the total number of files that satisfy this query.\x12n\n\x08ids_only\x18# \x01(\x08\x42\\\x82\xb5\x18X(Optional) If true, only return the published file ids of files that satisfy this query.\x12.\n\x10return_vote_data\x18\x11 \x01(\x08\x42\x14\x82\xb5\x18\x10Return vote data\x12\x38\n\x0breturn_tags\x18\x12 \x01(\x08\x42#\x82\xb5\x18\x1fReturn tags in the file details\x12\x45\n\x0ereturn_kv_tags\x18\x13 \x01(\x08\x42-\x82\xb5\x18)Return key-value tags in the file details\x12W\n\x0freturn_previews\x18\x14 \x01(\x08\x42>\x82\xb5\x18:Return preview image and video details in the file details\x12\x46\n\x0freturn_children\x18\x15 \x01(\x08\x42-\x82\xb5\x18)Return child item ids in the file details\x12\x66\n\x18return_short_description\x18\x16 \x01(\x08\x42\x44\x82\xb5\x18@Populate the short_description field instead of file_description\x12K\n\x14return_for_sale_data\x18\x1e \x01(\x08\x42-\x82\xb5\x18)Return pricing information, if applicable\x12\x39\n\x0freturn_metadata\x18  \x01(\x08:\x05\x66\x61lseB\x19\x82\xb5\x18\x15Populate the metadata\x12g\n\x15return_playtime_stats\x18$ \x01(\rBH\x82\xb5\x18\x44Return playtime stats for the specified number of days before today.\x12\xb7\x01\n\x0ereturn_details\x18% \x01(\x08\x42\x9e\x01\x82\xb5\x18\x99\x01\x42y default, if none of the other \'return_*\' fields are set, only some voting details are returned. Set this to true to return the default set of details.\x12\x46\n\x18strip_description_bbcode\x18& \x01(\x08\x42$\x82\xb5\x18 Strips BBCode from descriptions.\x12\x84\x01\n\x10\x64\x65sired_revision\x18( \x01(\x0e\x32\x17.EPublishedFileRevision: k_EPublishedFileRevision_DefaultB/\x82\xb5\x18+Return the data for the specified revision.\x12W\n\x10return_reactions\x18+ \x01(\x08:\x05\x66\x61lseB6\x82\xb5\x18\x32If true, then reactions to items will be returned.\x1a#\n\x05KVTag\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t\x1a\x18\n\x08TagGroup\x12\x0c\n\x04tags\x18\x01 \x03(\t\x1a\xd6\x01\n\tDateRange\x12\x64\n\x0ftimestamp_start\x18\x01 \x01(\rBK\x82\xb5\x18G(Optional) Include items with the relevant date field after this value.\x12\x63\n\rtimestamp_end\x18\x02 \x01(\rBL\x82\xb5\x18H(Optional) Include items with the relevant date field before this value.\"\x85\x03\n\"CPublishedFile_QueryFiles_Response\x12T\n\x05total\x18\x01 \x01(\rBE\x82\xb5\x18\x41Number of matches found, not necessarily number of items returned\x12\x8d\x01\n\x14publishedfiledetails\x18\x02 \x03(\x0b\x32\x15.PublishedFileDetailsBX\x82\xb5\x18TEach file details will be populated, depending on what return values were requested.\x12y\n\x0bnext_cursor\x18\x03 \x01(\tBd\x82\xb5\x18`If a paging cursor was used, then this will be the next cursor to use for paging through results\"i\n)CPublishedFile_AddAppRelationship_Request\x12\x17\n\x0fpublishedfileid\x18\x01 \x01(\x04\x12\r\n\x05\x61ppid\x18\x02 \x01(\r\x12\x14\n\x0crelationship\x18\x03 \x01(\r\",\n*CPublishedFile_AddAppRelationship_Response\"l\n,CPublishedFile_RemoveAppRelationship_Request\x12\x17\n\x0fpublishedfileid\x18\x01 \x01(\x04\x12\r\n\x05\x61ppid\x18\x02 \x01(\r\x12\x14\n\x0crelationship\x18\x03 \x01(\r\"/\n-CPublishedFile_RemoveAppRelationship_Response\"E\n*CPublishedFile_GetAppRelationships_Request\x12\x17\n\x0fpublishedfileid\x18\x01 \x01(\x04\"\xbe\x01\n+CPublishedFile_GetAppRelationships_Response\x12W\n\x11\x61pp_relationships\x18\x03 \x03(\x0b\x32<.CPublishedFile_GetAppRelationships_Response.AppRelationship\x1a\x36\n\x0f\x41ppRelationship\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x14\n\x0crelationship\x18\x02 \x01(\r\"W\n,CPublishedFile_StartPlaytimeTracking_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x18\n\x10publishedfileids\x18\x02 \x03(\x04\"/\n-CPublishedFile_StartPlaytimeTracking_Response\"V\n+CPublishedFile_StopPlaytimeTracking_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x18\n\x10publishedfileids\x18\x02 \x03(\x04\".\n,CPublishedFile_StopPlaytimeTracking_Response\"J\n9CPublishedFile_StopPlaytimeTrackingForAllAppItems_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\"<\n:CPublishedFile_StopPlaytimeTrackingForAllAppItems_Response\"\x81\x02\n6CPublishedFile_SetPlaytimeForControllerConfigs_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12n\n\x17\x63ontroller_config_usage\x18\x02 \x03(\x0b\x32M.CPublishedFile_SetPlaytimeForControllerConfigs_Request.ControllerConfigUsage\x1aH\n\x15\x43ontrollerConfigUsage\x12\x17\n\x0fpublishedfileid\x18\x01 \x01(\x04\x12\x16\n\x0eseconds_active\x18\x02 \x01(\x02\"9\n7CPublishedFile_SetPlaytimeForControllerConfigs_Response\"Y\n\x1f\x43PublishedFile_AddChild_Request\x12\x17\n\x0fpublishedfileid\x18\x01 \x01(\x04\x12\x1d\n\x15\x63hild_publishedfileid\x18\x02 \x01(\x04\"\"\n CPublishedFile_AddChild_Response\"\\\n\"CPublishedFile_RemoveChild_Request\x12\x17\n\x0fpublishedfileid\x18\x01 \x01(\x04\x12\x1d\n\x15\x63hild_publishedfileid\x18\x02 \x01(\x04\"%\n#CPublishedFile_RemoveChild_Response\"E\n)CPublishedFile_GetUserVoteSummary_Request\x12\x18\n\x10publishedfileids\x18\x01 \x03(\x06\"\xda\x01\n*CPublishedFile_GetUserVoteSummary_Response\x12J\n\tsummaries\x18\x01 \x03(\x0b\x32\x37.CPublishedFile_GetUserVoteSummary_Response.VoteSummary\x1a`\n\x0bVoteSummary\x12\x17\n\x0fpublishedfileid\x18\x01 \x01(\x06\x12\x10\n\x08vote_for\x18\x02 \x01(\x08\x12\x14\n\x0cvote_against\x18\x03 \x01(\x08\x12\x10\n\x08reported\x18\x04 \x01(\x08\"h\n%CPublishedFile_GetItemChanges_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x19\n\x11last_time_updated\x18\x02 \x01(\r\x12\x15\n\rnum_items_max\x18\x03 \x01(\r\"\xe9\x01\n&CPublishedFile_GetItemChanges_Response\x12\x13\n\x0bupdate_time\x18\x01 \x01(\r\x12P\n\x0eworkshop_items\x18\x02 \x03(\x0b\x32\x38.CPublishedFile_GetItemChanges_Response.WorkshopItemInfo\x1aX\n\x10WorkshopItemInfo\x12\x19\n\x11published_file_id\x18\x01 \x01(\x06\x12\x14\n\x0ctime_updated\x18\x02 \x01(\r\x12\x13\n\x0bmanifest_id\x18\x03 \x01(\x06\"\xaf\x05\n*CPublishedFile_FileSubscribed_Notification\x12@\n\x11published_file_id\x18\x01 \x01(\x06\x42%\x82\xb5\x18!PublishedFileID_t for the content\x12\x0e\n\x06\x61pp_id\x18\x02 \x01(\r\x12:\n\rfile_hcontent\x18\x03 \x01(\x06\x42#\x82\xb5\x18\x1fUGC file handle or manifest GID\x12\x11\n\tfile_size\x18\x04 \x01(\r\x12\x18\n\x10rtime_subscribed\x18\x05 \x01(\r\x12N\n\x10is_depot_content\x18\x06 \x01(\x08\x42\x34\x82\xb5\x18\x30True if workshop item is delivered via Steampipe\x12\x34\n\rrtime_updated\x18\x07 \x01(\rB\x1d\x82\xb5\x18\x19Last time content updated\x12\x82\x01\n\trevisions\x18\x08 \x03(\x0b\x32\x38.CPublishedFile_FileSubscribed_Notification.RevisionDataB5\x82\xb5\x18\x31\x44\x61ta for each of the revisions that this item has\x1a\xba\x01\n\x0cRevisionData\x12K\n\x08revision\x18\x01 \x01(\x0e\x32\x17.EPublishedFileRevision: k_EPublishedFileRevision_Default\x12\'\n\rfile_hcontent\x18\x02 \x01(\x06\x42\x10\x82\xb5\x18\x0cManifest GID\x12\x34\n\rrtime_updated\x18\x03 \x01(\rB\x1d\x82\xb5\x18\x19Last time content updated\"\x80\x01\n,CPublishedFile_FileUnsubscribed_Notification\x12@\n\x11published_file_id\x18\x01 \x01(\x06\x42%\x82\xb5\x18!PublishedFileID_t for the content\x12\x0e\n\x06\x61pp_id\x18\x02 \x01(\r\"\x82\x01\n.CPublishedFile_FileDeleted_Client_Notification\x12@\n\x11published_file_id\x18\x01 \x01(\x06\x42%\x82\xb5\x18!PublishedFileID_t for the content\x12\x0e\n\x06\x61pp_id\x18\x02 \x01(\r*\xab\x02\n\x16\x45PublishedFileRevision\x12$\n k_EPublishedFileRevision_Default\x10\x00\x12#\n\x1fk_EPublishedFileRevision_Latest\x10\x01\x12-\n)k_EPublishedFileRevision_ApprovedSnapshot\x10\x02\x12\x33\n/k_EPublishedFileRevision_ApprovedSnapshot_China\x10\x03\x12-\n)k_EPublishedFileRevision_RejectedSnapshot\x10\x04\x12\x33\n/k_EPublishedFileRevision_RejectedSnapshot_China\x10\x05*\xc8\x01\n\x1b\x45PublishedFileForSaleStatus\x12\x16\n\x12k_PFFSS_NotForSale\x10\x00\x12\x1b\n\x17k_PFFSS_PendingApproval\x10\x01\x12\x1b\n\x17k_PFFSS_ApprovedForSale\x10\x02\x12\x1b\n\x17k_PFFSS_RejectedForSale\x10\x03\x12\x1b\n\x17k_PFFSS_NoLongerForSale\x10\x04\x12\x1d\n\x19k_PFFSS_TentativeApproval\x10\x05\x32\xd3$\n\rPublishedFile\x12g\n\x04Vote\x12\x1c.CPublishedFile_Vote_Request\x1a\x1d.CPublishedFile_Vote_Response\"\"\x82\xb5\x18\x1eUser wants to vote on the item\x12\x81\x01\n\tSubscribe\x12!.CPublishedFile_Subscribe_Request\x1a\".CPublishedFile_Subscribe_Response\"-\x82\xb5\x18)Subscribes the user to the published file\x12\x8b\x01\n\x0bUnsubscribe\x12#.CPublishedFile_Unsubscribe_Request\x1a$.CPublishedFile_Unsubscribe_Response\"1\x82\xb5\x18-Unsubscribes the user from the published file\x12\x96\x01\n\x0c\x43\x61nSubscribe\x12$.CPublishedFile_CanSubscribe_Request\x1a%.CPublishedFile_CanSubscribe_Response\"9\x82\xb5\x18\x35\x43heck if the user can subscribe to the published file\x12\xb8\x01\n\x11GetSubSectionData\x12).CPublishedFile_GetSubSectionData_Request\x1a*.CPublishedFile_GetSubSectionData_Response\"L\x82\xb5\x18HGet sub section data (for table of contents, a specific section, or all)\x12\x80\x01\n\x07Publish\x12\x1f.CPublishedFile_Publish_Request\x1a .CPublishedFile_Publish_Response\"2\x82\xb5\x18.Publishes a clouded user file to the Workshop.\x12\x90\x01\n\nGetDetails\x12\".CPublishedFile_GetDetails_Request\x1a#.CPublishedFile_GetDetails_Response\"9\x82\xb5\x18\x35Retrieves information about a set of published files.\x12\x93\x01\n\x0bGetItemInfo\x12#.CPublishedFile_GetItemInfo_Request\x1a$.CPublishedFile_GetItemInfo_Response\"9\x82\xb5\x18\x35Retrieves information about a set of published files.\x12\x85\x01\n\x0cGetUserFiles\x12$.CPublishedFile_GetUserFiles_Request\x1a%.CPublishedFile_GetUserFiles_Response\"(\x82\xb5\x18$Retrieves files published by a user.\x12\xd7\x01\n\x10GetUserFileCount\x12$.CPublishedFile_GetUserFiles_Request\x1a%.CPublishedFile_GetUserFiles_Response\"v\x82\xb5\x18rRetrieves a count of files published by a user. Uses the same messages as GetUserFiles but totalonly must be true.\x12\xd5\x01\n\x1a\x41reFilesInSubscriptionList\x12\x32.CPublishedFile_AreFilesInSubscriptionList_Request\x1a\x33.CPublishedFile_AreFilesInSubscriptionList_Response\"N\x82\xb5\x18JDetermines which files in the given list are in a user\'s subscription list\x12z\n\x06Update\x12\x1e.CPublishedFile_Update_Request\x1a\x1f.CPublishedFile_Update_Response\"/\x82\xb5\x18+Updates information about a published file.\x12h\n\x06\x44\x65lete\x12\x1e.CPublishedFile_Delete_Request\x1a\x1f.CPublishedFile_Delete_Response\"\x1d\x82\xb5\x18\x19\x44\x65letes a published file.\x12\xc0\x01\n\x15GetChangeHistoryEntry\x12-.CPublishedFile_GetChangeHistoryEntry_Request\x1a..CPublishedFile_GetChangeHistoryEntry_Response\"H\x82\xb5\x18\x44Returns data on a specific change history entry for a published file\x12\xa4\x01\n\x10GetChangeHistory\x12(.CPublishedFile_GetChangeHistory_Request\x1a).CPublishedFile_GetChangeHistory_Response\";\x82\xb5\x18\x37Returns data on the change history for a published file\x12\x98\x01\n\x12RefreshVotingQueue\x12*.CPublishedFile_RefreshVotingQueue_Request\x1a+.CPublishedFile_RefreshVotingQueue_Response\")\x82\xb5\x18%Refresh the voting queue for the user\x12\x86\x01\n\nQueryFiles\x12\".CPublishedFile_QueryFiles_Request\x1a#.CPublishedFile_QueryFiles_Response\"/\x82\xb5\x18+Performs a search query for published files\x12\xb3\x01\n\x12\x41\x64\x64\x41ppRelationship\x12*.CPublishedFile_AddAppRelationship_Request\x1a+.CPublishedFile_AddAppRelationship_Response\"D\x82\xb5\x18@Adds a relationship between the published file and the given app\x12\xbe\x01\n\x15RemoveAppRelationship\x12-.CPublishedFile_RemoveAppRelationship_Request\x1a..CPublishedFile_RemoveAppRelationship_Response\"F\x82\xb5\x18\x42Remove a relationship between the published file and the given app\x12\xb3\x01\n\x13GetAppRelationships\x12+.CPublishedFile_GetAppRelationships_Request\x1a,.CPublishedFile_GetAppRelationships_Response\"A\x82\xb5\x18=Returns the list of app relationships for this published file\x12\xb3\x01\n\x15StartPlaytimeTracking\x12-.CPublishedFile_StartPlaytimeTracking_Request\x1a..CPublishedFile_StartPlaytimeTracking_Response\";\x82\xb5\x18\x37Start usage tracking for a given set of published files\x12\xb0\x01\n\x14StopPlaytimeTracking\x12,.CPublishedFile_StopPlaytimeTracking_Request\x1a-.CPublishedFile_StopPlaytimeTracking_Response\";\x82\xb5\x18\x37Stops usage tracking for a given set of published files\x12\xed\x01\n\"StopPlaytimeTrackingForAllAppItems\x12:.CPublishedFile_StopPlaytimeTrackingForAllAppItems_Request\x1a;.CPublishedFile_StopPlaytimeTrackingForAllAppItems_Response\"N\x82\xb5\x18JStops usage tracking for all items currently tracked for the specified app\x12\x98\x02\n\x1fSetPlaytimeForControllerConfigs\x12\x37.CPublishedFile_SetPlaytimeForControllerConfigs_Request\x1a\x38.CPublishedFile_SetPlaytimeForControllerConfigs_Response\"\x81\x01\x82\xb5\x18}Stops usage tracking all controller configs for the given app and set the usage time for the for the given controller configs\x12\x8f\x01\n\x08\x41\x64\x64\x43hild\x12 .CPublishedFile_AddChild_Request\x1a!.CPublishedFile_AddChild_Response\">\x82\xb5\x18:Adds a parent->child relationship between the given items.\x12\x99\x01\n\x0bRemoveChild\x12#.CPublishedFile_RemoveChild_Request\x1a$.CPublishedFile_RemoveChild_Response\"?\x82\xb5\x18;Removes parent->child relationship between the given items.\x12\x88\x01\n\x12GetUserVoteSummary\x12*.CPublishedFile_GetUserVoteSummary_Request\x1a+.CPublishedFile_GetUserVoteSummary_Response\"\x19\x82\xb5\x18\x15Get user vote summary\x12\x91\x01\n\x0eGetItemChanges\x12&.CPublishedFile_GetItemChanges_Request\x1a\'.CPublishedFile_GetItemChanges_Response\".\x82\xb5\x18*Get list of updated items since given date\x1a+\x82\xb5\x18\'A service to access published file data2\x8d\x04\n\x13PublishedFileClient\x12\x93\x01\n\x14NotifyFileSubscribed\x12+.CPublishedFile_FileSubscribed_Notification\x1a\x0b.NoResponse\"A\x82\xb5\x18=Notification from the server when a user subscribes to a file\x12\x9b\x01\n\x16NotifyFileUnsubscribed\x12-.CPublishedFile_FileUnsubscribed_Notification\x1a\x0b.NoResponse\"E\x82\xb5\x18\x41Notification from the server when a user unsubscribes from a file\x12\x94\x01\n\x11NotifyFileDeleted\x12/.CPublishedFile_FileDeleted_Client_Notification\x1a\x0b.NoResponse\"A\x82\xb5\x18=Notification from the server when a published file is deleted\x1a+\x82\xb5\x18#Published file client notifications\xc0\xb5\x18\x02\x42\x03\x90\x01\x01'
   ,
-  dependencies=[steammessages__unified__base__pb2.DESCRIPTOR,enums__pb2.DESCRIPTOR,])
+  dependencies=[steammessages__base__pb2.DESCRIPTOR,steammessages__unified__base__pb2.DESCRIPTOR,])
 
 _EPUBLISHEDFILEREVISION = _descriptor.EnumDescriptor(
   name='EPublishedFileRevision',
   full_name='EPublishedFileRevision',
   filename=None,
   file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
   values=[
     _descriptor.EnumValueDescriptor(
       name='k_EPublishedFileRevision_Default', index=0, number=0,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EPublishedFileRevision_Latest', index=1, number=1,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EPublishedFileRevision_ApprovedSnapshot', index=2, number=2,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EPublishedFileRevision_ApprovedSnapshot_China', index=3, number=3,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EPublishedFileRevision_RejectedSnapshot', index=4, number=4,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EPublishedFileRevision_RejectedSnapshot_China', index=5, number=5,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
   ],
   containing_type=None,
   serialized_options=None,
-  serialized_start=20641,
-  serialized_end=20940,
+  serialized_start=21547,
+  serialized_end=21846,
 )
 _sym_db.RegisterEnumDescriptor(_EPUBLISHEDFILEREVISION)
 
@@ -73,36 +79,43 @@ _EPUBLISHEDFILEFORSALESTATUS = _descriptor.EnumDescriptor(
   full_name='EPublishedFileForSaleStatus',
   filename=None,
   file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
   values=[
     _descriptor.EnumValueDescriptor(
       name='k_PFFSS_NotForSale', index=0, number=0,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_PFFSS_PendingApproval', index=1, number=1,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_PFFSS_ApprovedForSale', index=2, number=2,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_PFFSS_RejectedForSale', index=3, number=3,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_PFFSS_NoLongerForSale', index=4, number=4,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_PFFSS_TentativeApproval', index=5, number=5,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
   ],
   containing_type=None,
   serialized_options=None,
-  serialized_start=20943,
-  serialized_end=21143,
+  serialized_start=21849,
+  serialized_end=22049,
 )
 _sym_db.RegisterEnumDescriptor(_EPUBLISHEDFILEFORSALESTATUS)
 
@@ -122,12 +135,77 @@ k_PFFSS_TentativeApproval = 5
 
 
 
+_CPUBLISHEDFILE_VOTE_REQUEST = _descriptor.Descriptor(
+  name='CPublishedFile_Vote_Request',
+  full_name='CPublishedFile_Vote_Request',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='publishedfileid', full_name='CPublishedFile_Vote_Request.publishedfileid', index=0,
+      number=1, type=4, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='vote_up', full_name='CPublishedFile_Vote_Request.vote_up', index=1,
+      number=2, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=97,
+  serialized_end=168,
+)
+
+
+_CPUBLISHEDFILE_VOTE_RESPONSE = _descriptor.Descriptor(
+  name='CPublishedFile_Vote_Response',
+  full_name='CPublishedFile_Vote_Response',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=170,
+  serialized_end=200,
+)
+
+
 _CPUBLISHEDFILE_SUBSCRIBE_REQUEST = _descriptor.Descriptor(
   name='CPublishedFile_Subscribe_Request',
   full_name='CPublishedFile_Subscribe_Request',
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='publishedfileid', full_name='CPublishedFile_Subscribe_Request.publishedfileid', index=0,
@@ -135,28 +213,28 @@ _CPUBLISHEDFILE_SUBSCRIBE_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='list_type', full_name='CPublishedFile_Subscribe_Request.list_type', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='appid', full_name='CPublishedFile_Subscribe_Request.appid', index=2,
       number=3, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='notify_client', full_name='CPublishedFile_Subscribe_Request.notify_client', index=3,
       number=4, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -169,8 +247,8 @@ _CPUBLISHEDFILE_SUBSCRIBE_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=84,
-  serialized_end=200,
+  serialized_start=202,
+  serialized_end=318,
 )
 
 
@@ -180,6 +258,7 @@ _CPUBLISHEDFILE_SUBSCRIBE_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -193,8 +272,8 @@ _CPUBLISHEDFILE_SUBSCRIBE_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=202,
-  serialized_end=237,
+  serialized_start=320,
+  serialized_end=355,
 )
 
 
@@ -204,6 +283,7 @@ _CPUBLISHEDFILE_UNSUBSCRIBE_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='publishedfileid', full_name='CPublishedFile_Unsubscribe_Request.publishedfileid', index=0,
@@ -211,28 +291,28 @@ _CPUBLISHEDFILE_UNSUBSCRIBE_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='list_type', full_name='CPublishedFile_Unsubscribe_Request.list_type', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='appid', full_name='CPublishedFile_Unsubscribe_Request.appid', index=2,
       number=3, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='notify_client', full_name='CPublishedFile_Unsubscribe_Request.notify_client', index=3,
       number=4, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -245,8 +325,8 @@ _CPUBLISHEDFILE_UNSUBSCRIBE_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=239,
-  serialized_end=357,
+  serialized_start=357,
+  serialized_end=475,
 )
 
 
@@ -256,6 +336,7 @@ _CPUBLISHEDFILE_UNSUBSCRIBE_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -269,8 +350,8 @@ _CPUBLISHEDFILE_UNSUBSCRIBE_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=359,
-  serialized_end=396,
+  serialized_start=477,
+  serialized_end=514,
 )
 
 
@@ -280,6 +361,7 @@ _CPUBLISHEDFILE_CANSUBSCRIBE_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='publishedfileid', full_name='CPublishedFile_CanSubscribe_Request.publishedfileid', index=0,
@@ -287,7 +369,7 @@ _CPUBLISHEDFILE_CANSUBSCRIBE_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -300,8 +382,8 @@ _CPUBLISHEDFILE_CANSUBSCRIBE_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=398,
-  serialized_end=460,
+  serialized_start=516,
+  serialized_end=578,
 )
 
 
@@ -311,6 +393,7 @@ _CPUBLISHEDFILE_CANSUBSCRIBE_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='can_subscribe', full_name='CPublishedFile_CanSubscribe_Response.can_subscribe', index=0,
@@ -318,7 +401,60 @@ _CPUBLISHEDFILE_CANSUBSCRIBE_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=580,
+  serialized_end=641,
+)
+
+
+_CPUBLISHEDFILE_GETSUBSECTIONDATA_REQUEST = _descriptor.Descriptor(
+  name='CPublishedFile_GetSubSectionData_Request',
+  full_name='CPublishedFile_GetSubSectionData_Request',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='publishedfileid', full_name='CPublishedFile_GetSubSectionData_Request.publishedfileid', index=0,
+      number=1, type=4, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='for_table_of_contents', full_name='CPublishedFile_GetSubSectionData_Request.for_table_of_contents', index=1,
+      number=2, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='specific_sectionid', full_name='CPublishedFile_GetSubSectionData_Request.specific_sectionid', index=2,
+      number=3, type=4, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='desired_revision', full_name='CPublishedFile_GetSubSectionData_Request.desired_revision', index=3,
+      number=4, type=14, cpp_type=8, label=1,
+      has_default_value=True, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030+Return the data for the specified revision.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -331,8 +467,93 @@ _CPUBLISHEDFILE_CANSUBSCRIBE_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=462,
-  serialized_end=523,
+  serialized_start=644,
+  serialized_end=905,
+)
+
+
+_PUBLISHEDFILESUBSECTION = _descriptor.Descriptor(
+  name='PublishedFileSubSection',
+  full_name='PublishedFileSubSection',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='sectionid', full_name='PublishedFileSubSection.sectionid', index=0,
+      number=1, type=4, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='title', full_name='PublishedFileSubSection.title', index=1,
+      number=2, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='description_text', full_name='PublishedFileSubSection.description_text', index=2,
+      number=3, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='sort_order', full_name='PublishedFileSubSection.sort_order', index=3,
+      number=4, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=907,
+  serialized_end=1012,
+)
+
+
+_CPUBLISHEDFILE_GETSUBSECTIONDATA_RESPONSE = _descriptor.Descriptor(
+  name='CPublishedFile_GetSubSectionData_Response',
+  full_name='CPublishedFile_GetSubSectionData_Response',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='sub_sections', full_name='CPublishedFile_GetSubSectionData_Response.sub_sections', index=0,
+      number=1, type=11, cpp_type=10, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=1014,
+  serialized_end=1105,
 )
 
 
@@ -342,6 +563,7 @@ _CPUBLISHEDFILE_PUBLISH_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CPublishedFile_Publish_Request.appid', index=0,
@@ -349,112 +571,112 @@ _CPUBLISHEDFILE_PUBLISH_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030)App Id this file is being published FROM.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030)App Id this file is being published FROM.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='consumer_appid', full_name='CPublishedFile_Publish_Request.consumer_appid', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\'App Id this file is being published TO.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\'App Id this file is being published TO.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='cloudfilename', full_name='CPublishedFile_Publish_Request.cloudfilename', index=2,
       number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\0300Name of the file to publish in the user\'s cloud.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\0300Name of the file to publish in the user\'s cloud.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='preview_cloudfilename', full_name='CPublishedFile_Publish_Request.preview_cloudfilename', index=3,
       number=4, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\0308Name of the file to use as the published file\'s preview.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\0308Name of the file to use as the published file\'s preview.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='title', full_name='CPublishedFile_Publish_Request.title', index=4,
       number=5, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\"Text title for the published file.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\"Text title for the published file.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='file_description', full_name='CPublishedFile_Publish_Request.file_description', index=5,
       number=6, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030(Text description for the published file.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030(Text description for the published file.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='file_type', full_name='CPublishedFile_Publish_Request.file_type', index=6,
       number=7, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\0305(EWorkshopFileType) Type of Workshop file to publish.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\0305(EWorkshopFileType) Type of Workshop file to publish.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='consumer_shortcut_name', full_name='CPublishedFile_Publish_Request.consumer_shortcut_name', index=7,
       number=8, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030%Shortcut name for the published file.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030%Shortcut name for the published file.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='youtube_username', full_name='CPublishedFile_Publish_Request.youtube_username', index=8,
       number=9, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030+(Optional) User\'s YouTube account username.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030+(Optional) User\'s YouTube account username.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='youtube_videoid', full_name='CPublishedFile_Publish_Request.youtube_videoid', index=9,
       number=10, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030?(Optional) Video Id of a YouTube video for this published file.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030?(Optional) Video Id of a YouTube video for this published file.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='visibility', full_name='CPublishedFile_Publish_Request.visibility', index=10,
       number=11, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030i(ERemoteStoragePublishedFileVisibility) Visibility of the published file (private, friends, public, etc.)'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030i(ERemoteStoragePublishedFileVisibility) Visibility of the published file (private, friends, public, etc.)', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='redirect_uri', full_name='CPublishedFile_Publish_Request.redirect_uri', index=11,
       number=12, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030Q(Optional) If supplied, the resulting published file\'s Id is appended to the URI.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030Q(Optional) If supplied, the resulting published file\'s Id is appended to the URI.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='tags', full_name='CPublishedFile_Publish_Request.tags', index=12,
       number=13, type=9, cpp_type=9, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\0302Array of text tags to apply to the published file.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\0302Array of text tags to apply to the published file.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='collection_type', full_name='CPublishedFile_Publish_Request.collection_type', index=13,
       number=14, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030<(Optional) Type of collection the published file represents.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030<(Optional) Type of collection the published file represents.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='game_type', full_name='CPublishedFile_Publish_Request.game_type', index=14,
       number=15, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\0306(Optional) Type of game the published file represents.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\0306(Optional) Type of game the published file represents.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='url', full_name='CPublishedFile_Publish_Request.url', index=15,
       number=16, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030J(Optional) If this represents a game, this is the URL to that game\'s page.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030J(Optional) If this represents a game, this is the URL to that game\'s page.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -467,8 +689,8 @@ _CPUBLISHEDFILE_PUBLISH_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=526,
-  serialized_end=1882,
+  serialized_start=1108,
+  serialized_end=2464,
 )
 
 
@@ -478,6 +700,7 @@ _CPUBLISHEDFILE_PUBLISH_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='publishedfileid', full_name='CPublishedFile_Publish_Response.publishedfileid', index=0,
@@ -485,14 +708,14 @@ _CPUBLISHEDFILE_PUBLISH_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='redirect_uri', full_name='CPublishedFile_Publish_Response.redirect_uri', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -505,8 +728,8 @@ _CPUBLISHEDFILE_PUBLISH_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1884,
-  serialized_end=1964,
+  serialized_start=2466,
+  serialized_end=2546,
 )
 
 
@@ -516,6 +739,7 @@ _CPUBLISHEDFILE_GETDETAILS_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='publishedfileids', full_name='CPublishedFile_GetDetails_Request.publishedfileids', index=0,
@@ -523,105 +747,105 @@ _CPUBLISHEDFILE_GETDETAILS_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\0302Set of published file Ids to retrieve details for.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\0302Set of published file Ids to retrieve details for.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='includetags', full_name='CPublishedFile_GetDetails_Request.includetags', index=1,
       number=2, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\0308If true, return tag information in the returned details.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\0308If true, return tag information in the returned details.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='includeadditionalpreviews', full_name='CPublishedFile_GetDetails_Request.includeadditionalpreviews', index=2,
       number=3, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030<If true, return preview information in the returned details.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030<If true, return preview information in the returned details.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='includechildren', full_name='CPublishedFile_GetDetails_Request.includechildren', index=3,
       number=4, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\0301If true, return children in the returned details.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\0301If true, return children in the returned details.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='includekvtags', full_name='CPublishedFile_GetDetails_Request.includekvtags', index=4,
       number=5, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\0307If true, return key value tags in the returned details.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\0307If true, return key value tags in the returned details.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='includevotes', full_name='CPublishedFile_GetDetails_Request.includevotes', index=5,
       number=6, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\0302If true, return vote data in the returned details.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\0302If true, return vote data in the returned details.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='short_description', full_name='CPublishedFile_GetDetails_Request.short_description', index=6,
       number=8, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030DIf true, return a short description instead of the full description.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030DIf true, return a short description instead of the full description.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='includeforsaledata', full_name='CPublishedFile_GetDetails_Request.includeforsaledata', index=7,
       number=10, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030,If true, return pricing data, if applicable.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030,If true, return pricing data, if applicable.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='includemetadata', full_name='CPublishedFile_GetDetails_Request.includemetadata', index=8,
       number=11, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030%If true, populate the metadata field.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030%If true, populate the metadata field.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='language', full_name='CPublishedFile_GetDetails_Request.language', index=9,
       number=12, type=5, cpp_type=1, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030<Specifies the localized text to return. Defaults to English.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030<Specifies the localized text to return. Defaults to English.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='return_playtime_stats', full_name='CPublishedFile_GetDetails_Request.return_playtime_stats', index=10,
       number=13, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030DReturn playtime stats for the specified number of days before today.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030DReturn playtime stats for the specified number of days before today.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='appid', full_name='CPublishedFile_GetDetails_Request.appid', index=11,
       number=14, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='strip_description_bbcode', full_name='CPublishedFile_GetDetails_Request.strip_description_bbcode', index=12,
       number=15, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030 Strips BBCode from descriptions.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030 Strips BBCode from descriptions.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='desired_revision', full_name='CPublishedFile_GetDetails_Request.desired_revision', index=13,
       number=16, type=14, cpp_type=8, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030+Return the data for the specified revision.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030+Return the data for the specified revision.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='includereactions', full_name='CPublishedFile_GetDetails_Request.includereactions', index=14,
       number=17, type=8, cpp_type=7, label=1,
       has_default_value=True, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\0302If true, then reactions to items will be returned.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\0302If true, then reactions to items will be returned.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -634,8 +858,8 @@ _CPUBLISHEDFILE_GETDETAILS_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1967,
-  serialized_end=3260,
+  serialized_start=2549,
+  serialized_end=3842,
 )
 
 
@@ -645,28 +869,29 @@ _PUBLISHEDFILEDETAILS_TAG = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='tag', full_name='PublishedFileDetails.Tag.tag', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='adminonly', full_name='PublishedFileDetails.Tag.adminonly', index=1,
       number=2, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='display_name', full_name='PublishedFileDetails.Tag.display_name', index=2,
       number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -679,8 +904,8 @@ _PUBLISHEDFILEDETAILS_TAG = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=5712,
-  serialized_end=5771,
+  serialized_start=6294,
+  serialized_end=6353,
 )
 
 _PUBLISHEDFILEDETAILS_PREVIEW = _descriptor.Descriptor(
@@ -689,6 +914,7 @@ _PUBLISHEDFILEDETAILS_PREVIEW = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='previewid', full_name='PublishedFileDetails.Preview.previewid', index=0,
@@ -696,56 +922,56 @@ _PUBLISHEDFILEDETAILS_PREVIEW = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='sortorder', full_name='PublishedFileDetails.Preview.sortorder', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='url', full_name='PublishedFileDetails.Preview.url', index=2,
       number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='size', full_name='PublishedFileDetails.Preview.size', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='filename', full_name='PublishedFileDetails.Preview.filename', index=4,
       number=5, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='youtubevideoid', full_name='PublishedFileDetails.Preview.youtubevideoid', index=5,
       number=6, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='preview_type', full_name='PublishedFileDetails.Preview.preview_type', index=6,
       number=7, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='external_reference', full_name='PublishedFileDetails.Preview.external_reference', index=7,
       number=8, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -758,8 +984,8 @@ _PUBLISHEDFILEDETAILS_PREVIEW = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=5774,
-  serialized_end=5940,
+  serialized_start=6356,
+  serialized_end=6522,
 )
 
 _PUBLISHEDFILEDETAILS_CHILD = _descriptor.Descriptor(
@@ -768,6 +994,7 @@ _PUBLISHEDFILEDETAILS_CHILD = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='publishedfileid', full_name='PublishedFileDetails.Child.publishedfileid', index=0,
@@ -775,21 +1002,21 @@ _PUBLISHEDFILEDETAILS_CHILD = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='sortorder', full_name='PublishedFileDetails.Child.sortorder', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='file_type', full_name='PublishedFileDetails.Child.file_type', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -802,8 +1029,8 @@ _PUBLISHEDFILEDETAILS_CHILD = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=5942,
-  serialized_end=6012,
+  serialized_start=6524,
+  serialized_end=6594,
 )
 
 _PUBLISHEDFILEDETAILS_KVTAG = _descriptor.Descriptor(
@@ -812,21 +1039,22 @@ _PUBLISHEDFILEDETAILS_KVTAG = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='key', full_name='PublishedFileDetails.KVTag.key', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='value', full_name='PublishedFileDetails.KVTag.value', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -839,8 +1067,8 @@ _PUBLISHEDFILEDETAILS_KVTAG = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=6014,
-  serialized_end=6049,
+  serialized_start=6596,
+  serialized_end=6631,
 )
 
 _PUBLISHEDFILEDETAILS_VOTEDATA = _descriptor.Descriptor(
@@ -849,6 +1077,7 @@ _PUBLISHEDFILEDETAILS_VOTEDATA = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='score', full_name='PublishedFileDetails.VoteData.score', index=0,
@@ -856,21 +1085,21 @@ _PUBLISHEDFILEDETAILS_VOTEDATA = _descriptor.Descriptor(
       has_default_value=False, default_value=float(0),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='votes_up', full_name='PublishedFileDetails.VoteData.votes_up', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='votes_down', full_name='PublishedFileDetails.VoteData.votes_down', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -883,8 +1112,8 @@ _PUBLISHEDFILEDETAILS_VOTEDATA = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=6051,
-  serialized_end=6114,
+  serialized_start=6633,
+  serialized_end=6696,
 )
 
 _PUBLISHEDFILEDETAILS_FORSALEDATA = _descriptor.Descriptor(
@@ -893,6 +1122,7 @@ _PUBLISHEDFILEDETAILS_FORSALEDATA = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='is_for_sale', full_name='PublishedFileDetails.ForSaleData.is_for_sale', index=0,
@@ -900,42 +1130,42 @@ _PUBLISHEDFILEDETAILS_FORSALEDATA = _descriptor.Descriptor(
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='price_category', full_name='PublishedFileDetails.ForSaleData.price_category', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='estatus', full_name='PublishedFileDetails.ForSaleData.estatus', index=2,
       number=3, type=14, cpp_type=8, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='price_category_floor', full_name='PublishedFileDetails.ForSaleData.price_category_floor', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='price_is_pay_what_you_want', full_name='PublishedFileDetails.ForSaleData.price_is_pay_what_you_want', index=4,
       number=5, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='discount_percentage', full_name='PublishedFileDetails.ForSaleData.discount_percentage', index=5,
       number=6, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -948,8 +1178,8 @@ _PUBLISHEDFILEDETAILS_FORSALEDATA = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=6117,
-  serialized_end=6337,
+  serialized_start=6699,
+  serialized_end=6919,
 )
 
 _PUBLISHEDFILEDETAILS_PLAYTIMESTATS = _descriptor.Descriptor(
@@ -958,6 +1188,7 @@ _PUBLISHEDFILEDETAILS_PLAYTIMESTATS = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='playtime_seconds', full_name='PublishedFileDetails.PlaytimeStats.playtime_seconds', index=0,
@@ -965,14 +1196,14 @@ _PUBLISHEDFILEDETAILS_PLAYTIMESTATS = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='num_sessions', full_name='PublishedFileDetails.PlaytimeStats.num_sessions', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -985,8 +1216,8 @@ _PUBLISHEDFILEDETAILS_PLAYTIMESTATS = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=6339,
-  serialized_end=6402,
+  serialized_start=6921,
+  serialized_end=6984,
 )
 
 _PUBLISHEDFILEDETAILS_REACTION = _descriptor.Descriptor(
@@ -995,6 +1226,7 @@ _PUBLISHEDFILEDETAILS_REACTION = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='reactionid', full_name='PublishedFileDetails.Reaction.reactionid', index=0,
@@ -1002,14 +1234,14 @@ _PUBLISHEDFILEDETAILS_REACTION = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='count', full_name='PublishedFileDetails.Reaction.count', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1022,8 +1254,8 @@ _PUBLISHEDFILEDETAILS_REACTION = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=6404,
-  serialized_end=6449,
+  serialized_start=6986,
+  serialized_end=7031,
 )
 
 _PUBLISHEDFILEDETAILS = _descriptor.Descriptor(
@@ -1032,6 +1264,7 @@ _PUBLISHEDFILEDETAILS = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='result', full_name='PublishedFileDetails.result', index=0,
@@ -1039,483 +1272,483 @@ _PUBLISHEDFILEDETAILS = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='publishedfileid', full_name='PublishedFileDetails.publishedfileid', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='creator', full_name='PublishedFileDetails.creator', index=2,
       number=3, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='creator_appid', full_name='PublishedFileDetails.creator_appid', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='consumer_appid', full_name='PublishedFileDetails.consumer_appid', index=4,
       number=5, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='consumer_shortcutid', full_name='PublishedFileDetails.consumer_shortcutid', index=5,
       number=6, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='filename', full_name='PublishedFileDetails.filename', index=6,
       number=7, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='file_size', full_name='PublishedFileDetails.file_size', index=7,
       number=8, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='preview_file_size', full_name='PublishedFileDetails.preview_file_size', index=8,
       number=9, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='file_url', full_name='PublishedFileDetails.file_url', index=9,
       number=10, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='preview_url', full_name='PublishedFileDetails.preview_url', index=10,
       number=11, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='youtubevideoid', full_name='PublishedFileDetails.youtubevideoid', index=11,
       number=12, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='url', full_name='PublishedFileDetails.url', index=12,
       number=13, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='hcontent_file', full_name='PublishedFileDetails.hcontent_file', index=13,
       number=14, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='hcontent_preview', full_name='PublishedFileDetails.hcontent_preview', index=14,
       number=15, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='title', full_name='PublishedFileDetails.title', index=15,
       number=16, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='file_description', full_name='PublishedFileDetails.file_description', index=16,
       number=17, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='short_description', full_name='PublishedFileDetails.short_description', index=17,
       number=18, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='time_created', full_name='PublishedFileDetails.time_created', index=18,
       number=19, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='time_updated', full_name='PublishedFileDetails.time_updated', index=19,
       number=20, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='visibility', full_name='PublishedFileDetails.visibility', index=20,
       number=21, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='flags', full_name='PublishedFileDetails.flags', index=21,
       number=22, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='workshop_file', full_name='PublishedFileDetails.workshop_file', index=22,
       number=23, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='workshop_accepted', full_name='PublishedFileDetails.workshop_accepted', index=23,
       number=24, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='show_subscribe_all', full_name='PublishedFileDetails.show_subscribe_all', index=24,
       number=25, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='num_comments_developer', full_name='PublishedFileDetails.num_comments_developer', index=25,
       number=26, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='num_comments_public', full_name='PublishedFileDetails.num_comments_public', index=26,
       number=27, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='banned', full_name='PublishedFileDetails.banned', index=27,
       number=28, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='ban_reason', full_name='PublishedFileDetails.ban_reason', index=28,
       number=29, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='banner', full_name='PublishedFileDetails.banner', index=29,
       number=30, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='can_be_deleted', full_name='PublishedFileDetails.can_be_deleted', index=30,
       number=31, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='incompatible', full_name='PublishedFileDetails.incompatible', index=31,
       number=32, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='app_name', full_name='PublishedFileDetails.app_name', index=32,
       number=33, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='file_type', full_name='PublishedFileDetails.file_type', index=33,
       number=34, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='can_subscribe', full_name='PublishedFileDetails.can_subscribe', index=34,
       number=35, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='subscriptions', full_name='PublishedFileDetails.subscriptions', index=35,
       number=36, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='favorited', full_name='PublishedFileDetails.favorited', index=36,
       number=37, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='followers', full_name='PublishedFileDetails.followers', index=37,
       number=38, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='lifetime_subscriptions', full_name='PublishedFileDetails.lifetime_subscriptions', index=38,
       number=39, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='lifetime_favorited', full_name='PublishedFileDetails.lifetime_favorited', index=39,
       number=40, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='lifetime_followers', full_name='PublishedFileDetails.lifetime_followers', index=40,
       number=41, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='lifetime_playtime', full_name='PublishedFileDetails.lifetime_playtime', index=41,
       number=62, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='lifetime_playtime_sessions', full_name='PublishedFileDetails.lifetime_playtime_sessions', index=42,
       number=63, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='views', full_name='PublishedFileDetails.views', index=43,
       number=42, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='image_width', full_name='PublishedFileDetails.image_width', index=44,
       number=43, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='image_height', full_name='PublishedFileDetails.image_height', index=45,
       number=44, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='image_url', full_name='PublishedFileDetails.image_url', index=46,
       number=45, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='spoiler_tag', full_name='PublishedFileDetails.spoiler_tag', index=47,
       number=46, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='shortcutid', full_name='PublishedFileDetails.shortcutid', index=48,
       number=47, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='shortcutname', full_name='PublishedFileDetails.shortcutname', index=49,
       number=48, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='num_children', full_name='PublishedFileDetails.num_children', index=50,
       number=49, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='num_reports', full_name='PublishedFileDetails.num_reports', index=51,
       number=50, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='previews', full_name='PublishedFileDetails.previews', index=52,
       number=51, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='tags', full_name='PublishedFileDetails.tags', index=53,
       number=52, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='children', full_name='PublishedFileDetails.children', index=54,
       number=53, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='kvtags', full_name='PublishedFileDetails.kvtags', index=55,
       number=54, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='vote_data', full_name='PublishedFileDetails.vote_data', index=56,
       number=55, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='playtime_stats', full_name='PublishedFileDetails.playtime_stats', index=57,
       number=64, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='time_subscribed', full_name='PublishedFileDetails.time_subscribed', index=58,
       number=56, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030UOnly valid in PublishedFile.GetUserFiles and not normal PublishedFile.GetDetail calls'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030UOnly valid in PublishedFile.GetUserFiles and not normal PublishedFile.GetDetail calls', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='for_sale_data', full_name='PublishedFileDetails.for_sale_data', index=59,
       number=57, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030#Pricing information, if applicable.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030#Pricing information, if applicable.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='metadata', full_name='PublishedFileDetails.metadata', index=60,
       number=58, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030!Metadata associated with the item'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030!Metadata associated with the item', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='language', full_name='PublishedFileDetails.language', index=61,
       number=61, type=5, cpp_type=1, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030*The language of the title and description.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030*The language of the title and description.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='maybe_inappropriate_sex', full_name='PublishedFileDetails.maybe_inappropriate_sex', index=62,
       number=65, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='maybe_inappropriate_violence', full_name='PublishedFileDetails.maybe_inappropriate_violence', index=63,
       number=66, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='revision_change_number', full_name='PublishedFileDetails.revision_change_number', index=64,
       number=67, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030-The change number for the specified revision.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030-The change number for the specified revision.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='revision', full_name='PublishedFileDetails.revision', index=65,
       number=68, type=14, cpp_type=8, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\211\001The revision of the data returned, usually k_EPublishedFileRevision_Latest, but can be another revision/snapshot depending on the caller.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\211\001The revision of the data returned, usually k_EPublishedFileRevision_Latest, but can be another revision/snapshot depending on the caller.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='available_revisions', full_name='PublishedFileDetails.available_revisions', index=66,
       number=69, type=14, cpp_type=8, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\023Available revisions'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\023Available revisions', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='reactions', full_name='PublishedFileDetails.reactions', index=67,
       number=70, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\026Reactions to this item'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\026Reactions to this item', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='ban_text_check_result', full_name='PublishedFileDetails.ban_text_check_result', index=68,
       number=71, type=14, cpp_type=8, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1528,8 +1761,8 @@ _PUBLISHEDFILEDETAILS = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=3263,
-  serialized_end=6449,
+  serialized_start=3845,
+  serialized_end=7031,
 )
 
 
@@ -1539,6 +1772,7 @@ _CPUBLISHEDFILE_GETDETAILS_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='publishedfiledetails', full_name='CPublishedFile_GetDetails_Response.publishedfiledetails', index=0,
@@ -1546,7 +1780,7 @@ _CPUBLISHEDFILE_GETDETAILS_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1559,8 +1793,8 @@ _CPUBLISHEDFILE_GETDETAILS_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=6451,
-  serialized_end=6540,
+  serialized_start=7033,
+  serialized_end=7122,
 )
 
 
@@ -1570,6 +1804,7 @@ _CPUBLISHEDFILE_GETITEMINFO_REQUEST_WORKSHOPITEM = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='published_file_id', full_name='CPublishedFile_GetItemInfo_Request.WorkshopItem.published_file_id', index=0,
@@ -1577,21 +1812,21 @@ _CPUBLISHEDFILE_GETITEMINFO_REQUEST_WORKSHOPITEM = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='time_updated', full_name='CPublishedFile_GetItemInfo_Request.WorkshopItem.time_updated', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='desired_revision', full_name='CPublishedFile_GetItemInfo_Request.WorkshopItem.desired_revision', index=2,
       number=3, type=14, cpp_type=8, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030+Return the data for the specified revision.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030+Return the data for the specified revision.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1604,8 +1839,8 @@ _CPUBLISHEDFILE_GETITEMINFO_REQUEST_WORKSHOPITEM = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=6698,
-  serialized_end=6896,
+  serialized_start=7280,
+  serialized_end=7478,
 )
 
 _CPUBLISHEDFILE_GETITEMINFO_REQUEST = _descriptor.Descriptor(
@@ -1614,6 +1849,7 @@ _CPUBLISHEDFILE_GETITEMINFO_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CPublishedFile_GetItemInfo_Request.appid', index=0,
@@ -1621,21 +1857,21 @@ _CPUBLISHEDFILE_GETITEMINFO_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='last_time_updated', full_name='CPublishedFile_GetItemInfo_Request.last_time_updated', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='workshop_items', full_name='CPublishedFile_GetItemInfo_Request.workshop_items', index=2,
       number=3, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1648,8 +1884,8 @@ _CPUBLISHEDFILE_GETITEMINFO_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=6543,
-  serialized_end=6896,
+  serialized_start=7125,
+  serialized_end=7478,
 )
 
 
@@ -1659,6 +1895,7 @@ _CPUBLISHEDFILE_GETITEMINFO_RESPONSE_WORKSHOPITEMINFO = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='published_file_id', full_name='CPublishedFile_GetItemInfo_Response.WorkshopItemInfo.published_file_id', index=0,
@@ -1666,28 +1903,28 @@ _CPUBLISHEDFILE_GETITEMINFO_RESPONSE_WORKSHOPITEMINFO = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='time_updated', full_name='CPublishedFile_GetItemInfo_Response.WorkshopItemInfo.time_updated', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='manifest_id', full_name='CPublishedFile_GetItemInfo_Response.WorkshopItemInfo.manifest_id', index=2,
       number=3, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='flags', full_name='CPublishedFile_GetItemInfo_Response.WorkshopItemInfo.flags', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1700,8 +1937,8 @@ _CPUBLISHEDFILE_GETITEMINFO_RESPONSE_WORKSHOPITEMINFO = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=7061,
-  serialized_end=7164,
+  serialized_start=7643,
+  serialized_end=7746,
 )
 
 _CPUBLISHEDFILE_GETITEMINFO_RESPONSE = _descriptor.Descriptor(
@@ -1710,6 +1947,7 @@ _CPUBLISHEDFILE_GETITEMINFO_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='update_time', full_name='CPublishedFile_GetItemInfo_Response.update_time', index=0,
@@ -1717,21 +1955,21 @@ _CPUBLISHEDFILE_GETITEMINFO_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='workshop_items', full_name='CPublishedFile_GetItemInfo_Response.workshop_items', index=1,
       number=2, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='private_items', full_name='CPublishedFile_GetItemInfo_Response.private_items', index=2,
       number=3, type=6, cpp_type=4, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1744,8 +1982,8 @@ _CPUBLISHEDFILE_GETITEMINFO_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=6899,
-  serialized_end=7164,
+  serialized_start=7481,
+  serialized_end=7746,
 )
 
 
@@ -1755,21 +1993,22 @@ _CPUBLISHEDFILE_GETUSERFILES_REQUEST_KVTAG = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='key', full_name='CPublishedFile_GetUserFiles_Request.KVTag.key', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='value', full_name='CPublishedFile_GetUserFiles_Request.KVTag.value', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1782,8 +2021,8 @@ _CPUBLISHEDFILE_GETUSERFILES_REQUEST_KVTAG = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=6014,
-  serialized_end=6049,
+  serialized_start=6596,
+  serialized_end=6631,
 )
 
 _CPUBLISHEDFILE_GETUSERFILES_REQUEST_TAGGROUP = _descriptor.Descriptor(
@@ -1792,6 +2031,7 @@ _CPUBLISHEDFILE_GETUSERFILES_REQUEST_TAGGROUP = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='tags', full_name='CPublishedFile_GetUserFiles_Request.TagGroup.tags', index=0,
@@ -1799,7 +2039,7 @@ _CPUBLISHEDFILE_GETUSERFILES_REQUEST_TAGGROUP = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1812,8 +2052,8 @@ _CPUBLISHEDFILE_GETUSERFILES_REQUEST_TAGGROUP = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=9973,
-  serialized_end=9997,
+  serialized_start=10621,
+  serialized_end=10645,
 )
 
 _CPUBLISHEDFILE_GETUSERFILES_REQUEST = _descriptor.Descriptor(
@@ -1822,6 +2062,7 @@ _CPUBLISHEDFILE_GETUSERFILES_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CPublishedFile_GetUserFiles_Request.steamid', index=0,
@@ -1829,217 +2070,224 @@ _CPUBLISHEDFILE_GETUSERFILES_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\0305Steam ID of the user whose files are being requested.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\0305Steam ID of the user whose files are being requested.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='appid', full_name='CPublishedFile_GetUserFiles_Request.appid', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\0303App Id of the app that the files were published to.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\0303App Id of the app that the files were published to.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='page', full_name='CPublishedFile_GetUserFiles_Request.page', index=2,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=True, default_value=1,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030%(Optional) Starting page for results.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030%(Optional) Starting page for results.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='numperpage', full_name='CPublishedFile_GetUserFiles_Request.numperpage', index=3,
       number=5, type=13, cpp_type=3, label=1,
       has_default_value=True, default_value=1,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\0305(Optional) The number of results, per page to return.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\0305(Optional) The number of results, per page to return.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='type', full_name='CPublishedFile_GetUserFiles_Request.type', index=4,
       number=6, type=9, cpp_type=9, label=1,
-      has_default_value=True, default_value=_b("myfiles").decode('utf-8'),
+      has_default_value=True, default_value=b"myfiles".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030((Optional) Type of files to be returned.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030((Optional) Type of files to be returned.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='sortmethod', full_name='CPublishedFile_GetUserFiles_Request.sortmethod', index=5,
       number=7, type=9, cpp_type=9, label=1,
-      has_default_value=True, default_value=_b("lastupdated").decode('utf-8'),
+      has_default_value=True, default_value=b"lastupdated".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\0304(Optional) Sorting method to use on returned values.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\0304(Optional) Sorting method to use on returned values.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='privacy', full_name='CPublishedFile_GetUserFiles_Request.privacy', index=6,
       number=9, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030&(optional) Filter by privacy settings.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030&(optional) Filter by privacy settings.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='requiredtags', full_name='CPublishedFile_GetUserFiles_Request.requiredtags', index=7,
       number=10, type=9, cpp_type=9, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030N(Optional) Tags that must be present on a published file to satisfy the query.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030N(Optional) Tags that must be present on a published file to satisfy the query.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='excludedtags', full_name='CPublishedFile_GetUserFiles_Request.excludedtags', index=8,
       number=11, type=9, cpp_type=9, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030R(Optional) Tags that must NOT be present on a published file to satisfy the query.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030R(Optional) Tags that must NOT be present on a published file to satisfy the query.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='required_kv_tags', full_name='CPublishedFile_GetUserFiles_Request.required_kv_tags', index=9,
       number=30, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030$Required key-value tags to match on.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030$Required key-value tags to match on.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='filetype', full_name='CPublishedFile_GetUserFiles_Request.filetype', index=10,
       number=14, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\'(Optional) File type to match files to.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\'(Optional) File type to match files to.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='creator_appid', full_name='CPublishedFile_GetUserFiles_Request.creator_appid', index=11,
       number=15, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030FApp Id of the app that published the files, only matched if specified.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030FApp Id of the app that published the files, only matched if specified.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='match_cloud_filename', full_name='CPublishedFile_GetUserFiles_Request.match_cloud_filename', index=12,
       number=16, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\'Match this cloud filename if specified.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\'Match this cloud filename if specified.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='cache_max_age_seconds', full_name='CPublishedFile_GetUserFiles_Request.cache_max_age_seconds', index=13,
       number=27, type=13, cpp_type=3, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030DAllow stale data to be returned for the specified number of seconds.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030DAllow stale data to be returned for the specified number of seconds.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='language', full_name='CPublishedFile_GetUserFiles_Request.language', index=14,
       number=29, type=5, cpp_type=1, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030<Specifies the localized text to return. Defaults to English.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030<Specifies the localized text to return. Defaults to English.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='taggroups', full_name='CPublishedFile_GetUserFiles_Request.taggroups', index=15,
       number=34, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030](Optional) At least one of the tags must be present on a published file to satisfy the query.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030](Optional) At least one of the tags must be present on a published file to satisfy the query.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='totalonly', full_name='CPublishedFile_GetUserFiles_Request.totalonly', index=16,
       number=17, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030R(Optional) If true, only return the total number of files that satisfy this query.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030R(Optional) If true, only return the total number of files that satisfy this query.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='ids_only', full_name='CPublishedFile_GetUserFiles_Request.ids_only', index=17,
       number=18, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030X(Optional) If true, only return the published file ids of files that satisfy this query.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030X(Optional) If true, only return the published file ids of files that satisfy this query.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='return_vote_data', full_name='CPublishedFile_GetUserFiles_Request.return_vote_data', index=18,
       number=19, type=8, cpp_type=7, label=1,
       has_default_value=True, default_value=True,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\020Return vote data'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\020Return vote data', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='return_tags', full_name='CPublishedFile_GetUserFiles_Request.return_tags', index=19,
       number=20, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\037Return tags in the file details'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\037Return tags in the file details', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='return_kv_tags', full_name='CPublishedFile_GetUserFiles_Request.return_kv_tags', index=20,
       number=21, type=8, cpp_type=7, label=1,
       has_default_value=True, default_value=True,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030)Return key-value tags in the file details'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030)Return key-value tags in the file details', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='return_previews', full_name='CPublishedFile_GetUserFiles_Request.return_previews', index=21,
       number=22, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030:Return preview image and video details in the file details'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030:Return preview image and video details in the file details', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='return_children', full_name='CPublishedFile_GetUserFiles_Request.return_children', index=22,
       number=23, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030)Return child item ids in the file details'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030)Return child item ids in the file details', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='return_short_description', full_name='CPublishedFile_GetUserFiles_Request.return_short_description', index=23,
       number=24, type=8, cpp_type=7, label=1,
       has_default_value=True, default_value=True,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030@Populate the short_description field instead of file_description'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030@Populate the short_description field instead of file_description', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='return_for_sale_data', full_name='CPublishedFile_GetUserFiles_Request.return_for_sale_data', index=24,
       number=26, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030)Return pricing information, if applicable'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030)Return pricing information, if applicable', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='return_metadata', full_name='CPublishedFile_GetUserFiles_Request.return_metadata', index=25,
       number=28, type=8, cpp_type=7, label=1,
       has_default_value=True, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\033Populate the metadata field'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\033Populate the metadata field', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='return_playtime_stats', full_name='CPublishedFile_GetUserFiles_Request.return_playtime_stats', index=26,
       number=31, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030DReturn playtime stats for the specified number of days before today.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030DReturn playtime stats for the specified number of days before today.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='strip_description_bbcode', full_name='CPublishedFile_GetUserFiles_Request.strip_description_bbcode', index=27,
       number=32, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030 Strips BBCode from descriptions.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030 Strips BBCode from descriptions.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='return_reactions', full_name='CPublishedFile_GetUserFiles_Request.return_reactions', index=28,
       number=35, type=8, cpp_type=7, label=1,
       has_default_value=True, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\0302If true, then reactions to items will be returned.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\0302If true, then reactions to items will be returned.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='startindex_override', full_name='CPublishedFile_GetUserFiles_Request.startindex_override', index=29,
       number=25, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030$Backwards compatible for the client.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030$Backwards compatible for the client.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='desired_revision', full_name='CPublishedFile_GetUserFiles_Request.desired_revision', index=30,
       number=33, type=14, cpp_type=8, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030+Return the data for the specified revision.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030+Return the data for the specified revision.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='return_apps', full_name='CPublishedFile_GetUserFiles_Request.return_apps', index=31,
+      number=36, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\'Return list of apps the items belong to', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2052,8 +2300,8 @@ _CPUBLISHEDFILE_GETUSERFILES_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=7167,
-  serialized_end=9997,
+  serialized_start=7749,
+  serialized_end=10645,
 )
 
 
@@ -2063,6 +2311,7 @@ _CPUBLISHEDFILE_GETUSERFILES_RESPONSE_APP = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CPublishedFile_GetUserFiles_Response.App.appid', index=0,
@@ -2070,28 +2319,28 @@ _CPUBLISHEDFILE_GETUSERFILES_RESPONSE_APP = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='name', full_name='CPublishedFile_GetUserFiles_Response.App.name', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='shortcutid', full_name='CPublishedFile_GetUserFiles_Response.App.shortcutid', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='private', full_name='CPublishedFile_GetUserFiles_Response.App.private', index=3,
       number=4, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2104,8 +2353,8 @@ _CPUBLISHEDFILE_GETUSERFILES_RESPONSE_APP = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=10185,
-  serialized_end=10256,
+  serialized_start=10833,
+  serialized_end=10904,
 )
 
 _CPUBLISHEDFILE_GETUSERFILES_RESPONSE = _descriptor.Descriptor(
@@ -2114,6 +2363,7 @@ _CPUBLISHEDFILE_GETUSERFILES_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='total', full_name='CPublishedFile_GetUserFiles_Response.total', index=0,
@@ -2121,28 +2371,28 @@ _CPUBLISHEDFILE_GETUSERFILES_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='startindex', full_name='CPublishedFile_GetUserFiles_Response.startindex', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='publishedfiledetails', full_name='CPublishedFile_GetUserFiles_Response.publishedfiledetails', index=2,
       number=3, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='apps', full_name='CPublishedFile_GetUserFiles_Response.apps', index=3,
       number=4, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2155,8 +2405,8 @@ _CPUBLISHEDFILE_GETUSERFILES_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=10000,
-  serialized_end=10256,
+  serialized_start=10648,
+  serialized_end=10904,
 )
 
 
@@ -2166,6 +2416,7 @@ _CPUBLISHEDFILE_AREFILESINSUBSCRIPTIONLIST_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CPublishedFile_AreFilesInSubscriptionList_Request.appid', index=0,
@@ -2173,35 +2424,35 @@ _CPUBLISHEDFILE_AREFILESINSUBSCRIPTIONLIST_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='publishedfileids', full_name='CPublishedFile_AreFilesInSubscriptionList_Request.publishedfileids', index=1,
       number=2, type=6, cpp_type=4, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='listtype', full_name='CPublishedFile_AreFilesInSubscriptionList_Request.listtype', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\020See EUCMListType'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\020See EUCMListType', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='filetype', full_name='CPublishedFile_AreFilesInSubscriptionList_Request.filetype', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030&See EPublishedFileInfoMatchingFileType'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030&See EPublishedFileInfoMatchingFileType', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='workshopfiletype', full_name='CPublishedFile_AreFilesInSubscriptionList_Request.workshopfiletype', index=4,
       number=5, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\0308See EWorkshopFileType.  If specified, overrides filetype'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\0308See EWorkshopFileType.  If specified, overrides filetype', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2214,8 +2465,8 @@ _CPUBLISHEDFILE_AREFILESINSUBSCRIPTIONLIST_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=10259,
-  serialized_end=10541,
+  serialized_start=10907,
+  serialized_end=11189,
 )
 
 
@@ -2225,6 +2476,7 @@ _CPUBLISHEDFILE_AREFILESINSUBSCRIPTIONLIST_RESPONSE_INLIST = _descriptor.Descrip
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='publishedfileid', full_name='CPublishedFile_AreFilesInSubscriptionList_Response.InList.publishedfileid', index=0,
@@ -2232,14 +2484,14 @@ _CPUBLISHEDFILE_AREFILESINSUBSCRIPTIONLIST_RESPONSE_INLIST = _descriptor.Descrip
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='inlist', full_name='CPublishedFile_AreFilesInSubscriptionList_Response.InList.inlist', index=1,
       number=2, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2252,8 +2504,8 @@ _CPUBLISHEDFILE_AREFILESINSUBSCRIPTIONLIST_RESPONSE_INLIST = _descriptor.Descrip
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=10673,
-  serialized_end=10722,
+  serialized_start=11321,
+  serialized_end=11370,
 )
 
 _CPUBLISHEDFILE_AREFILESINSUBSCRIPTIONLIST_RESPONSE = _descriptor.Descriptor(
@@ -2262,6 +2514,7 @@ _CPUBLISHEDFILE_AREFILESINSUBSCRIPTIONLIST_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='files', full_name='CPublishedFile_AreFilesInSubscriptionList_Response.files', index=0,
@@ -2269,7 +2522,7 @@ _CPUBLISHEDFILE_AREFILESINSUBSCRIPTIONLIST_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2282,8 +2535,8 @@ _CPUBLISHEDFILE_AREFILESINSUBSCRIPTIONLIST_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=10544,
-  serialized_end=10722,
+  serialized_start=11192,
+  serialized_end=11370,
 )
 
 
@@ -2293,6 +2546,7 @@ _CPUBLISHEDFILE_UPDATE_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CPublishedFile_Update_Request.appid', index=0,
@@ -2300,70 +2554,77 @@ _CPUBLISHEDFILE_UPDATE_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030&App Id this published file belongs to.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030&App Id this published file belongs to.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='publishedfileid', full_name='CPublishedFile_Update_Request.publishedfileid', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030/Published file id of the file we\'d like update.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\0302Published file id of the file we\'d like to update.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='title', full_name='CPublishedFile_Update_Request.title', index=2,
       number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\'(Optional) Title of the published file.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\'(Optional) Title of the published file.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='file_description', full_name='CPublishedFile_Update_Request.file_description', index=3,
       number=4, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030-(Optional) Description of the published file.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030-(Optional) Description of the published file.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='visibility', full_name='CPublishedFile_Update_Request.visibility', index=4,
       number=5, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030,(Optional) Visibility of the published file.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030,(Optional) Visibility of the published file.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='tags', full_name='CPublishedFile_Update_Request.tags', index=5,
       number=6, type=9, cpp_type=9, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030.(Optional) Set of tags for the published file.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030.(Optional) Set of tags for the published file.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='filename', full_name='CPublishedFile_Update_Request.filename', index=6,
       number=7, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030+(Optional) Filename for the published file.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030+(Optional) Filename for the published file.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='preview_filename', full_name='CPublishedFile_Update_Request.preview_filename', index=7,
       number=8, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\0303(Optional) Preview filename for the published file.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\0303(Optional) Preview filename for the published file.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
-      name='image_width', full_name='CPublishedFile_Update_Request.image_width', index=8,
+      name='spoiler_tag', full_name='CPublishedFile_Update_Request.spoiler_tag', index=8,
+      number=10, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030P(Optional) Whether this published file should have a spoiler tag attached to it.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='image_width', full_name='CPublishedFile_Update_Request.image_width', index=9,
       number=15, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030E(Optional) If this is an image file, you can specify the image width.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030E(Optional) If this is an image file, you can specify the image width.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
-      name='image_height', full_name='CPublishedFile_Update_Request.image_height', index=9,
+      name='image_height', full_name='CPublishedFile_Update_Request.image_height', index=10,
       number=16, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030F(Optional) If this is an image file, you can specify the image height.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030F(Optional) If this is an image file, you can specify the image height.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2376,8 +2637,8 @@ _CPUBLISHEDFILE_UPDATE_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=10725,
-  serialized_end=11510,
+  serialized_start=11373,
+  serialized_end=12268,
 )
 
 
@@ -2387,7 +2648,40 @@ _CPUBLISHEDFILE_UPDATE_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=12270,
+  serialized_end=12302,
+)
+
+
+_CPUBLISHEDFILE_DELETE_REQUEST = _descriptor.Descriptor(
+  name='CPublishedFile_Delete_Request',
+  full_name='CPublishedFile_Delete_Request',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
+    _descriptor.FieldDescriptor(
+      name='publishedfileid', full_name='CPublishedFile_Delete_Request.publishedfileid', index=0,
+      number=1, type=6, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\0302Published file id of the file we\'d like to delete.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2400,8 +2694,33 @@ _CPUBLISHEDFILE_UPDATE_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=11512,
-  serialized_end=11544,
+  serialized_start=12304,
+  serialized_end=12416,
+)
+
+
+_CPUBLISHEDFILE_DELETE_RESPONSE = _descriptor.Descriptor(
+  name='CPublishedFile_Delete_Response',
+  full_name='CPublishedFile_Delete_Response',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=12418,
+  serialized_end=12450,
 )
 
 
@@ -2411,6 +2730,7 @@ _CPUBLISHEDFILE_GETCHANGEHISTORYENTRY_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='publishedfileid', full_name='CPublishedFile_GetChangeHistoryEntry_Request.publishedfileid', index=0,
@@ -2418,21 +2738,21 @@ _CPUBLISHEDFILE_GETCHANGEHISTORYENTRY_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030FPublished file id of the file we\'d like to get the change history for.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030FPublished file id of the file we\'d like to get the change history for.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='timestamp', full_name='CPublishedFile_GetChangeHistoryEntry_Request.timestamp', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='language', full_name='CPublishedFile_GetChangeHistoryEntry_Request.language', index=2,
       number=3, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2445,8 +2765,8 @@ _CPUBLISHEDFILE_GETCHANGEHISTORYENTRY_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=11547,
-  serialized_end=11731,
+  serialized_start=12453,
+  serialized_end=12637,
 )
 
 
@@ -2456,21 +2776,22 @@ _CPUBLISHEDFILE_GETCHANGEHISTORYENTRY_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='change_description', full_name='CPublishedFile_GetChangeHistoryEntry_Response.change_description', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='language', full_name='CPublishedFile_GetChangeHistoryEntry_Response.language', index=1,
       number=2, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2483,8 +2804,8 @@ _CPUBLISHEDFILE_GETCHANGEHISTORYENTRY_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=11733,
-  serialized_end=11826,
+  serialized_start=12639,
+  serialized_end=12732,
 )
 
 
@@ -2494,6 +2815,7 @@ _CPUBLISHEDFILE_GETCHANGEHISTORY_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='publishedfileid', full_name='CPublishedFile_GetChangeHistory_Request.publishedfileid', index=0,
@@ -2501,35 +2823,35 @@ _CPUBLISHEDFILE_GETCHANGEHISTORY_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030FPublished file id of the file we\'d like to get the change history for.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030FPublished file id of the file we\'d like to get the change history for.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='total_only', full_name='CPublishedFile_GetChangeHistory_Request.total_only', index=1,
       number=2, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030(Return the total number of changes only.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030(Return the total number of changes only.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='startindex', full_name='CPublishedFile_GetChangeHistory_Request.startindex', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='count', full_name='CPublishedFile_GetChangeHistory_Request.count', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='language', full_name='CPublishedFile_GetChangeHistory_Request.language', index=4,
       number=5, type=5, cpp_type=1, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\020Desired language'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\020Desired language', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2542,8 +2864,8 @@ _CPUBLISHEDFILE_GETCHANGEHISTORY_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=11829,
-  serialized_end=12115,
+  serialized_start=12735,
+  serialized_end=13021,
 )
 
 
@@ -2553,6 +2875,7 @@ _CPUBLISHEDFILE_GETCHANGEHISTORY_RESPONSE_CHANGELOG = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='timestamp', full_name='CPublishedFile_GetChangeHistory_Response.ChangeLog.timestamp', index=0,
@@ -2560,21 +2883,21 @@ _CPUBLISHEDFILE_GETCHANGEHISTORY_RESPONSE_CHANGELOG = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='change_description', full_name='CPublishedFile_GetChangeHistory_Response.ChangeLog.change_description', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='language', full_name='CPublishedFile_GetChangeHistory_Response.ChangeLog.language', index=2,
       number=3, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2587,8 +2910,8 @@ _CPUBLISHEDFILE_GETCHANGEHISTORY_RESPONSE_CHANGELOG = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=12247,
-  serialized_end=12323,
+  serialized_start=13153,
+  serialized_end=13229,
 )
 
 _CPUBLISHEDFILE_GETCHANGEHISTORY_RESPONSE = _descriptor.Descriptor(
@@ -2597,6 +2920,7 @@ _CPUBLISHEDFILE_GETCHANGEHISTORY_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='changes', full_name='CPublishedFile_GetChangeHistory_Response.changes', index=0,
@@ -2604,14 +2928,14 @@ _CPUBLISHEDFILE_GETCHANGEHISTORY_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='total', full_name='CPublishedFile_GetChangeHistory_Response.total', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2624,8 +2948,8 @@ _CPUBLISHEDFILE_GETCHANGEHISTORY_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=12118,
-  serialized_end=12323,
+  serialized_start=13024,
+  serialized_end=13229,
 )
 
 
@@ -2635,6 +2959,7 @@ _CPUBLISHEDFILE_REFRESHVOTINGQUEUE_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CPublishedFile_RefreshVotingQueue_Request.appid', index=0,
@@ -2642,49 +2967,49 @@ _CPUBLISHEDFILE_REFRESHVOTINGQUEUE_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='matching_file_type', full_name='CPublishedFile_RefreshVotingQueue_Request.matching_file_type', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\"EPublishedFileInfoMatchingFileType'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\"EPublishedFileInfoMatchingFileType', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='tags', full_name='CPublishedFile_RefreshVotingQueue_Request.tags', index=2,
       number=3, type=9, cpp_type=9, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030ZInclude files that have all the tags or any of the tags if match_all_tags is set to false.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030ZInclude files that have all the tags or any of the tags if match_all_tags is set to false.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='match_all_tags', full_name='CPublishedFile_RefreshVotingQueue_Request.match_all_tags', index=3,
       number=4, type=8, cpp_type=7, label=1,
       has_default_value=True, default_value=True,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030sIf true, then files must have all the tags specified.  If false, then must have at least one of the tags specified.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030sIf true, then files must have all the tags specified.  If false, then must have at least one of the tags specified.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='excluded_tags', full_name='CPublishedFile_RefreshVotingQueue_Request.excluded_tags', index=4,
       number=5, type=9, cpp_type=9, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030.Exclude any files that have any of these tags.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030.Exclude any files that have any of these tags.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='desired_queue_size', full_name='CPublishedFile_RefreshVotingQueue_Request.desired_queue_size', index=5,
       number=6, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030JDesired number of items in the voting queue.  May be clamped by the server'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030JDesired number of items in the voting queue.  May be clamped by the server', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='desired_revision', full_name='CPublishedFile_RefreshVotingQueue_Request.desired_revision', index=6,
       number=8, type=14, cpp_type=8, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030:Filter to items that have data for the specified revision.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030:Filter to items that have data for the specified revision.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2697,8 +3022,8 @@ _CPUBLISHEDFILE_REFRESHVOTINGQUEUE_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=12326,
-  serialized_end=13047,
+  serialized_start=13232,
+  serialized_end=13953,
 )
 
 
@@ -2708,6 +3033,7 @@ _CPUBLISHEDFILE_REFRESHVOTINGQUEUE_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -2721,8 +3047,8 @@ _CPUBLISHEDFILE_REFRESHVOTINGQUEUE_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=13049,
-  serialized_end=13093,
+  serialized_start=13955,
+  serialized_end=13999,
 )
 
 
@@ -2732,21 +3058,22 @@ _CPUBLISHEDFILE_QUERYFILES_REQUEST_KVTAG = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='key', full_name='CPublishedFile_QueryFiles_Request.KVTag.key', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='value', full_name='CPublishedFile_QueryFiles_Request.KVTag.value', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2759,8 +3086,8 @@ _CPUBLISHEDFILE_QUERYFILES_REQUEST_KVTAG = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=6014,
-  serialized_end=6049,
+  serialized_start=6596,
+  serialized_end=6631,
 )
 
 _CPUBLISHEDFILE_QUERYFILES_REQUEST_TAGGROUP = _descriptor.Descriptor(
@@ -2769,6 +3096,7 @@ _CPUBLISHEDFILE_QUERYFILES_REQUEST_TAGGROUP = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='tags', full_name='CPublishedFile_QueryFiles_Request.TagGroup.tags', index=0,
@@ -2776,7 +3104,7 @@ _CPUBLISHEDFILE_QUERYFILES_REQUEST_TAGGROUP = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2789,8 +3117,8 @@ _CPUBLISHEDFILE_QUERYFILES_REQUEST_TAGGROUP = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=9973,
-  serialized_end=9997,
+  serialized_start=10621,
+  serialized_end=10645,
 )
 
 _CPUBLISHEDFILE_QUERYFILES_REQUEST_DATERANGE = _descriptor.Descriptor(
@@ -2799,6 +3127,7 @@ _CPUBLISHEDFILE_QUERYFILES_REQUEST_DATERANGE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='timestamp_start', full_name='CPublishedFile_QueryFiles_Request.DateRange.timestamp_start', index=0,
@@ -2806,14 +3135,14 @@ _CPUBLISHEDFILE_QUERYFILES_REQUEST_DATERANGE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030G(Optional) Include items with the relevant date field after this value.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030G(Optional) Include items with the relevant date field after this value.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='timestamp_end', full_name='CPublishedFile_QueryFiles_Request.DateRange.timestamp_end', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030H(Optional) Include items with the relevant date field before this value.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030H(Optional) Include items with the relevant date field before this value.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2826,8 +3155,8 @@ _CPUBLISHEDFILE_QUERYFILES_REQUEST_DATERANGE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=16877,
-  serialized_end=17091,
+  serialized_start=17783,
+  serialized_end=17997,
 )
 
 _CPUBLISHEDFILE_QUERYFILES_REQUEST = _descriptor.Descriptor(
@@ -2836,6 +3165,7 @@ _CPUBLISHEDFILE_QUERYFILES_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='query_type', full_name='CPublishedFile_QueryFiles_Request.query_type', index=0,
@@ -2843,259 +3173,259 @@ _CPUBLISHEDFILE_QUERYFILES_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\0304enumeration EPublishedFileQueryType in clientenums.h'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\0304enumeration EPublishedFileQueryType in clientenums.h', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='page', full_name='CPublishedFile_QueryFiles_Request.page', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\014Current page'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\014Current page', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='cursor', full_name='CPublishedFile_QueryFiles_Request.cursor', index=2,
       number=39, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\322\001Cursor to paginate through the results (set to \'*\' for the first request).  Prefer this over using the page parameter, as it will allow you to do deep pagination.  When used, the page parameter will be ignored.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\322\001Cursor to paginate through the results (set to \'*\' for the first request).  Prefer this over using the page parameter, as it will allow you to do deep pagination.  When used, the page parameter will be ignored.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='numperpage', full_name='CPublishedFile_QueryFiles_Request.numperpage', index=3,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=True, default_value=1,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\0305(Optional) The number of results, per page to return.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\0305(Optional) The number of results, per page to return.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='creator_appid', full_name='CPublishedFile_QueryFiles_Request.creator_appid', index=4,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\032App that created the files'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\032App that created the files', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='appid', full_name='CPublishedFile_QueryFiles_Request.appid', index=5,
       number=5, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\033App that consumes the files'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\033App that consumes the files', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='requiredtags', full_name='CPublishedFile_QueryFiles_Request.requiredtags', index=6,
       number=6, type=9, cpp_type=9, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\0304Tags to match on. See match_all_tags parameter below'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\0304Tags to match on. See match_all_tags parameter below', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='excludedtags', full_name='CPublishedFile_QueryFiles_Request.excludedtags', index=7,
       number=7, type=9, cpp_type=9, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030R(Optional) Tags that must NOT be present on a published file to satisfy the query.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030R(Optional) Tags that must NOT be present on a published file to satisfy the query.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='match_all_tags', full_name='CPublishedFile_QueryFiles_Request.match_all_tags', index=8,
       number=8, type=8, cpp_type=7, label=1,
       has_default_value=True, default_value=True,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030hIf true, then items must have all the tags specified, otherwise they must have at least one of the tags.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030hIf true, then items must have all the tags specified, otherwise they must have at least one of the tags.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='required_flags', full_name='CPublishedFile_QueryFiles_Request.required_flags', index=9,
       number=9, type=9, cpp_type=9, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\0305Required flags that must be set on any returned items'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\0305Required flags that must be set on any returned items', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='omitted_flags', full_name='CPublishedFile_QueryFiles_Request.omitted_flags', index=10,
       number=10, type=9, cpp_type=9, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\0300Flags that must not be set on any returned items'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\0300Flags that must not be set on any returned items', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='search_text', full_name='CPublishedFile_QueryFiles_Request.search_text', index=11,
       number=11, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\0300Text to match in the item\'s title or description'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\0300Text to match in the item\'s title or description', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='filetype', full_name='CPublishedFile_QueryFiles_Request.filetype', index=12,
       number=12, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\"EPublishedFileInfoMatchingFileType'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\"EPublishedFileInfoMatchingFileType', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='child_publishedfileid', full_name='CPublishedFile_QueryFiles_Request.child_publishedfileid', index=13,
       number=13, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030-Find all items that reference the given item.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030-Find all items that reference the given item.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='days', full_name='CPublishedFile_QueryFiles_Request.days', index=14,
       number=14, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030pIf query_type is k_PublishedFileQueryType_RankedByTrend, then this is the number of days to get votes for [1,7].'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030pIf query_type is k_PublishedFileQueryType_RankedByTrend, then this is the number of days to get votes for [1,7].', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='include_recent_votes_only', full_name='CPublishedFile_QueryFiles_Request.include_recent_votes_only', index=15,
       number=15, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\207\001If query_type is k_PublishedFileQueryType_RankedByTrend, then limit result set just to items that have votes within the day range given'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\207\001If query_type is k_PublishedFileQueryType_RankedByTrend, then limit result set just to items that have votes within the day range given', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='cache_max_age_seconds', full_name='CPublishedFile_QueryFiles_Request.cache_max_age_seconds', index=16,
       number=31, type=13, cpp_type=3, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030DAllow stale data to be returned for the specified number of seconds.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030DAllow stale data to be returned for the specified number of seconds.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='language', full_name='CPublishedFile_QueryFiles_Request.language', index=17,
       number=33, type=5, cpp_type=1, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030GLanguage to search in and also what gets returned. Defaults to English.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030GLanguage to search in and also what gets returned. Defaults to English.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='required_kv_tags', full_name='CPublishedFile_QueryFiles_Request.required_kv_tags', index=18,
       number=34, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030$Required key-value tags to match on.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030$Required key-value tags to match on.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='taggroups', full_name='CPublishedFile_QueryFiles_Request.taggroups', index=19,
       number=42, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030](Optional) At least one of the tags must be present on a published file to satisfy the query.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030](Optional) At least one of the tags must be present on a published file to satisfy the query.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='date_range_created', full_name='CPublishedFile_QueryFiles_Request.date_range_created', index=20,
       number=44, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\0305(Optional) Filter to items created within this range.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\0305(Optional) Filter to items created within this range.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='date_range_updated', full_name='CPublishedFile_QueryFiles_Request.date_range_updated', index=21,
       number=45, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\0305(Optional) Filter to items updated within this range.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\0305(Optional) Filter to items updated within this range.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='totalonly', full_name='CPublishedFile_QueryFiles_Request.totalonly', index=22,
       number=16, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030R(Optional) If true, only return the total number of files that satisfy this query.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030R(Optional) If true, only return the total number of files that satisfy this query.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='ids_only', full_name='CPublishedFile_QueryFiles_Request.ids_only', index=23,
       number=35, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030X(Optional) If true, only return the published file ids of files that satisfy this query.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030X(Optional) If true, only return the published file ids of files that satisfy this query.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='return_vote_data', full_name='CPublishedFile_QueryFiles_Request.return_vote_data', index=24,
       number=17, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\020Return vote data'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\020Return vote data', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='return_tags', full_name='CPublishedFile_QueryFiles_Request.return_tags', index=25,
       number=18, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\037Return tags in the file details'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\037Return tags in the file details', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='return_kv_tags', full_name='CPublishedFile_QueryFiles_Request.return_kv_tags', index=26,
       number=19, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030)Return key-value tags in the file details'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030)Return key-value tags in the file details', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='return_previews', full_name='CPublishedFile_QueryFiles_Request.return_previews', index=27,
       number=20, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030:Return preview image and video details in the file details'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030:Return preview image and video details in the file details', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='return_children', full_name='CPublishedFile_QueryFiles_Request.return_children', index=28,
       number=21, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030)Return child item ids in the file details'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030)Return child item ids in the file details', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='return_short_description', full_name='CPublishedFile_QueryFiles_Request.return_short_description', index=29,
       number=22, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030@Populate the short_description field instead of file_description'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030@Populate the short_description field instead of file_description', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='return_for_sale_data', full_name='CPublishedFile_QueryFiles_Request.return_for_sale_data', index=30,
       number=30, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030)Return pricing information, if applicable'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030)Return pricing information, if applicable', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='return_metadata', full_name='CPublishedFile_QueryFiles_Request.return_metadata', index=31,
       number=32, type=8, cpp_type=7, label=1,
       has_default_value=True, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\025Populate the metadata'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\025Populate the metadata', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='return_playtime_stats', full_name='CPublishedFile_QueryFiles_Request.return_playtime_stats', index=32,
       number=36, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030DReturn playtime stats for the specified number of days before today.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030DReturn playtime stats for the specified number of days before today.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='return_details', full_name='CPublishedFile_QueryFiles_Request.return_details', index=33,
       number=37, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\231\001By default, if none of the other \'return_*\' fields are set, only some voting details are returned. Set this to true to return the default set of details.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\231\001By default, if none of the other \'return_*\' fields are set, only some voting details are returned. Set this to true to return the default set of details.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='strip_description_bbcode', full_name='CPublishedFile_QueryFiles_Request.strip_description_bbcode', index=34,
       number=38, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030 Strips BBCode from descriptions.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030 Strips BBCode from descriptions.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='desired_revision', full_name='CPublishedFile_QueryFiles_Request.desired_revision', index=35,
       number=40, type=14, cpp_type=8, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030+Return the data for the specified revision.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030+Return the data for the specified revision.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='return_reactions', full_name='CPublishedFile_QueryFiles_Request.return_reactions', index=36,
       number=43, type=8, cpp_type=7, label=1,
       has_default_value=True, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\0302If true, then reactions to items will be returned.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\0302If true, then reactions to items will be returned.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3108,8 +3438,8 @@ _CPUBLISHEDFILE_QUERYFILES_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=13096,
-  serialized_end=17091,
+  serialized_start=14002,
+  serialized_end=17997,
 )
 
 
@@ -3119,6 +3449,7 @@ _CPUBLISHEDFILE_QUERYFILES_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='total', full_name='CPublishedFile_QueryFiles_Response.total', index=0,
@@ -3126,21 +3457,21 @@ _CPUBLISHEDFILE_QUERYFILES_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030ANumber of matches found, not necessarily number of items returned'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030ANumber of matches found, not necessarily number of items returned', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='publishedfiledetails', full_name='CPublishedFile_QueryFiles_Response.publishedfiledetails', index=1,
       number=2, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030TEach file details will be populated, depending on what return values were requested.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030TEach file details will be populated, depending on what return values were requested.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='next_cursor', full_name='CPublishedFile_QueryFiles_Response.next_cursor', index=2,
       number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030`If a paging cursor was used, then this will be the next cursor to use for paging through results'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030`If a paging cursor was used, then this will be the next cursor to use for paging through results', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3153,8 +3484,8 @@ _CPUBLISHEDFILE_QUERYFILES_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=17094,
-  serialized_end=17483,
+  serialized_start=18000,
+  serialized_end=18389,
 )
 
 
@@ -3164,6 +3495,7 @@ _CPUBLISHEDFILE_ADDAPPRELATIONSHIP_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='publishedfileid', full_name='CPublishedFile_AddAppRelationship_Request.publishedfileid', index=0,
@@ -3171,21 +3503,21 @@ _CPUBLISHEDFILE_ADDAPPRELATIONSHIP_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='appid', full_name='CPublishedFile_AddAppRelationship_Request.appid', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='relationship', full_name='CPublishedFile_AddAppRelationship_Request.relationship', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3198,8 +3530,8 @@ _CPUBLISHEDFILE_ADDAPPRELATIONSHIP_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=17485,
-  serialized_end=17590,
+  serialized_start=18391,
+  serialized_end=18496,
 )
 
 
@@ -3209,6 +3541,7 @@ _CPUBLISHEDFILE_ADDAPPRELATIONSHIP_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -3222,8 +3555,8 @@ _CPUBLISHEDFILE_ADDAPPRELATIONSHIP_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=17592,
-  serialized_end=17636,
+  serialized_start=18498,
+  serialized_end=18542,
 )
 
 
@@ -3233,6 +3566,7 @@ _CPUBLISHEDFILE_REMOVEAPPRELATIONSHIP_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='publishedfileid', full_name='CPublishedFile_RemoveAppRelationship_Request.publishedfileid', index=0,
@@ -3240,21 +3574,21 @@ _CPUBLISHEDFILE_REMOVEAPPRELATIONSHIP_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='appid', full_name='CPublishedFile_RemoveAppRelationship_Request.appid', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='relationship', full_name='CPublishedFile_RemoveAppRelationship_Request.relationship', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3267,8 +3601,8 @@ _CPUBLISHEDFILE_REMOVEAPPRELATIONSHIP_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=17638,
-  serialized_end=17746,
+  serialized_start=18544,
+  serialized_end=18652,
 )
 
 
@@ -3278,6 +3612,7 @@ _CPUBLISHEDFILE_REMOVEAPPRELATIONSHIP_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -3291,8 +3626,8 @@ _CPUBLISHEDFILE_REMOVEAPPRELATIONSHIP_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=17748,
-  serialized_end=17795,
+  serialized_start=18654,
+  serialized_end=18701,
 )
 
 
@@ -3302,6 +3637,7 @@ _CPUBLISHEDFILE_GETAPPRELATIONSHIPS_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='publishedfileid', full_name='CPublishedFile_GetAppRelationships_Request.publishedfileid', index=0,
@@ -3309,7 +3645,7 @@ _CPUBLISHEDFILE_GETAPPRELATIONSHIPS_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3322,8 +3658,8 @@ _CPUBLISHEDFILE_GETAPPRELATIONSHIPS_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=17797,
-  serialized_end=17866,
+  serialized_start=18703,
+  serialized_end=18772,
 )
 
 
@@ -3333,6 +3669,7 @@ _CPUBLISHEDFILE_GETAPPRELATIONSHIPS_RESPONSE_APPRELATIONSHIP = _descriptor.Descr
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CPublishedFile_GetAppRelationships_Response.AppRelationship.appid', index=0,
@@ -3340,14 +3677,14 @@ _CPUBLISHEDFILE_GETAPPRELATIONSHIPS_RESPONSE_APPRELATIONSHIP = _descriptor.Descr
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='relationship', full_name='CPublishedFile_GetAppRelationships_Response.AppRelationship.relationship', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3360,8 +3697,8 @@ _CPUBLISHEDFILE_GETAPPRELATIONSHIPS_RESPONSE_APPRELATIONSHIP = _descriptor.Descr
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=18005,
-  serialized_end=18059,
+  serialized_start=18911,
+  serialized_end=18965,
 )
 
 _CPUBLISHEDFILE_GETAPPRELATIONSHIPS_RESPONSE = _descriptor.Descriptor(
@@ -3370,6 +3707,7 @@ _CPUBLISHEDFILE_GETAPPRELATIONSHIPS_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='app_relationships', full_name='CPublishedFile_GetAppRelationships_Response.app_relationships', index=0,
@@ -3377,7 +3715,7 @@ _CPUBLISHEDFILE_GETAPPRELATIONSHIPS_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3390,8 +3728,8 @@ _CPUBLISHEDFILE_GETAPPRELATIONSHIPS_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=17869,
-  serialized_end=18059,
+  serialized_start=18775,
+  serialized_end=18965,
 )
 
 
@@ -3401,6 +3739,7 @@ _CPUBLISHEDFILE_STARTPLAYTIMETRACKING_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CPublishedFile_StartPlaytimeTracking_Request.appid', index=0,
@@ -3408,14 +3747,14 @@ _CPUBLISHEDFILE_STARTPLAYTIMETRACKING_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='publishedfileids', full_name='CPublishedFile_StartPlaytimeTracking_Request.publishedfileids', index=1,
       number=2, type=4, cpp_type=4, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3428,8 +3767,8 @@ _CPUBLISHEDFILE_STARTPLAYTIMETRACKING_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=18061,
-  serialized_end=18148,
+  serialized_start=18967,
+  serialized_end=19054,
 )
 
 
@@ -3439,6 +3778,7 @@ _CPUBLISHEDFILE_STARTPLAYTIMETRACKING_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -3452,8 +3792,8 @@ _CPUBLISHEDFILE_STARTPLAYTIMETRACKING_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=18150,
-  serialized_end=18197,
+  serialized_start=19056,
+  serialized_end=19103,
 )
 
 
@@ -3463,6 +3803,7 @@ _CPUBLISHEDFILE_STOPPLAYTIMETRACKING_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CPublishedFile_StopPlaytimeTracking_Request.appid', index=0,
@@ -3470,14 +3811,14 @@ _CPUBLISHEDFILE_STOPPLAYTIMETRACKING_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='publishedfileids', full_name='CPublishedFile_StopPlaytimeTracking_Request.publishedfileids', index=1,
       number=2, type=4, cpp_type=4, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3490,8 +3831,8 @@ _CPUBLISHEDFILE_STOPPLAYTIMETRACKING_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=18199,
-  serialized_end=18285,
+  serialized_start=19105,
+  serialized_end=19191,
 )
 
 
@@ -3501,6 +3842,7 @@ _CPUBLISHEDFILE_STOPPLAYTIMETRACKING_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -3514,8 +3856,8 @@ _CPUBLISHEDFILE_STOPPLAYTIMETRACKING_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=18287,
-  serialized_end=18333,
+  serialized_start=19193,
+  serialized_end=19239,
 )
 
 
@@ -3525,6 +3867,7 @@ _CPUBLISHEDFILE_STOPPLAYTIMETRACKINGFORALLAPPITEMS_REQUEST = _descriptor.Descrip
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CPublishedFile_StopPlaytimeTrackingForAllAppItems_Request.appid', index=0,
@@ -3532,7 +3875,7 @@ _CPUBLISHEDFILE_STOPPLAYTIMETRACKINGFORALLAPPITEMS_REQUEST = _descriptor.Descrip
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3545,8 +3888,8 @@ _CPUBLISHEDFILE_STOPPLAYTIMETRACKINGFORALLAPPITEMS_REQUEST = _descriptor.Descrip
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=18335,
-  serialized_end=18409,
+  serialized_start=19241,
+  serialized_end=19315,
 )
 
 
@@ -3556,6 +3899,7 @@ _CPUBLISHEDFILE_STOPPLAYTIMETRACKINGFORALLAPPITEMS_RESPONSE = _descriptor.Descri
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -3569,8 +3913,8 @@ _CPUBLISHEDFILE_STOPPLAYTIMETRACKINGFORALLAPPITEMS_RESPONSE = _descriptor.Descri
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=18411,
-  serialized_end=18471,
+  serialized_start=19317,
+  serialized_end=19377,
 )
 
 
@@ -3580,6 +3924,7 @@ _CPUBLISHEDFILE_SETPLAYTIMEFORCONTROLLERCONFIGS_REQUEST_CONTROLLERCONFIGUSAGE =
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='publishedfileid', full_name='CPublishedFile_SetPlaytimeForControllerConfigs_Request.ControllerConfigUsage.publishedfileid', index=0,
@@ -3587,14 +3932,14 @@ _CPUBLISHEDFILE_SETPLAYTIMEFORCONTROLLERCONFIGS_REQUEST_CONTROLLERCONFIGUSAGE =
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='seconds_active', full_name='CPublishedFile_SetPlaytimeForControllerConfigs_Request.ControllerConfigUsage.seconds_active', index=1,
       number=2, type=2, cpp_type=6, label=1,
       has_default_value=False, default_value=float(0),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3607,8 +3952,8 @@ _CPUBLISHEDFILE_SETPLAYTIMEFORCONTROLLERCONFIGS_REQUEST_CONTROLLERCONFIGUSAGE =
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=18659,
-  serialized_end=18731,
+  serialized_start=19565,
+  serialized_end=19637,
 )
 
 _CPUBLISHEDFILE_SETPLAYTIMEFORCONTROLLERCONFIGS_REQUEST = _descriptor.Descriptor(
@@ -3617,6 +3962,7 @@ _CPUBLISHEDFILE_SETPLAYTIMEFORCONTROLLERCONFIGS_REQUEST = _descriptor.Descriptor
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CPublishedFile_SetPlaytimeForControllerConfigs_Request.appid', index=0,
@@ -3624,14 +3970,14 @@ _CPUBLISHEDFILE_SETPLAYTIMEFORCONTROLLERCONFIGS_REQUEST = _descriptor.Descriptor
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='controller_config_usage', full_name='CPublishedFile_SetPlaytimeForControllerConfigs_Request.controller_config_usage', index=1,
       number=2, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3644,8 +3990,8 @@ _CPUBLISHEDFILE_SETPLAYTIMEFORCONTROLLERCONFIGS_REQUEST = _descriptor.Descriptor
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=18474,
-  serialized_end=18731,
+  serialized_start=19380,
+  serialized_end=19637,
 )
 
 
@@ -3655,6 +4001,7 @@ _CPUBLISHEDFILE_SETPLAYTIMEFORCONTROLLERCONFIGS_RESPONSE = _descriptor.Descripto
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -3668,8 +4015,8 @@ _CPUBLISHEDFILE_SETPLAYTIMEFORCONTROLLERCONFIGS_RESPONSE = _descriptor.Descripto
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=18733,
-  serialized_end=18790,
+  serialized_start=19639,
+  serialized_end=19696,
 )
 
 
@@ -3679,6 +4026,7 @@ _CPUBLISHEDFILE_ADDCHILD_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='publishedfileid', full_name='CPublishedFile_AddChild_Request.publishedfileid', index=0,
@@ -3686,14 +4034,14 @@ _CPUBLISHEDFILE_ADDCHILD_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='child_publishedfileid', full_name='CPublishedFile_AddChild_Request.child_publishedfileid', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3706,8 +4054,8 @@ _CPUBLISHEDFILE_ADDCHILD_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=18792,
-  serialized_end=18881,
+  serialized_start=19698,
+  serialized_end=19787,
 )
 
 
@@ -3717,6 +4065,7 @@ _CPUBLISHEDFILE_ADDCHILD_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -3730,8 +4079,8 @@ _CPUBLISHEDFILE_ADDCHILD_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=18883,
-  serialized_end=18917,
+  serialized_start=19789,
+  serialized_end=19823,
 )
 
 
@@ -3741,6 +4090,7 @@ _CPUBLISHEDFILE_REMOVECHILD_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='publishedfileid', full_name='CPublishedFile_RemoveChild_Request.publishedfileid', index=0,
@@ -3748,14 +4098,14 @@ _CPUBLISHEDFILE_REMOVECHILD_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='child_publishedfileid', full_name='CPublishedFile_RemoveChild_Request.child_publishedfileid', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3768,8 +4118,8 @@ _CPUBLISHEDFILE_REMOVECHILD_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=18919,
-  serialized_end=19011,
+  serialized_start=19825,
+  serialized_end=19917,
 )
 
 
@@ -3779,6 +4129,7 @@ _CPUBLISHEDFILE_REMOVECHILD_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -3792,8 +4143,8 @@ _CPUBLISHEDFILE_REMOVECHILD_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=19013,
-  serialized_end=19050,
+  serialized_start=19919,
+  serialized_end=19956,
 )
 
 
@@ -3803,6 +4154,7 @@ _CPUBLISHEDFILE_GETUSERVOTESUMMARY_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='publishedfileids', full_name='CPublishedFile_GetUserVoteSummary_Request.publishedfileids', index=0,
@@ -3810,7 +4162,7 @@ _CPUBLISHEDFILE_GETUSERVOTESUMMARY_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3823,8 +4175,8 @@ _CPUBLISHEDFILE_GETUSERVOTESUMMARY_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=19052,
-  serialized_end=19121,
+  serialized_start=19958,
+  serialized_end=20027,
 )
 
 
@@ -3834,6 +4186,7 @@ _CPUBLISHEDFILE_GETUSERVOTESUMMARY_RESPONSE_VOTESUMMARY = _descriptor.Descriptor
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='publishedfileid', full_name='CPublishedFile_GetUserVoteSummary_Response.VoteSummary.publishedfileid', index=0,
@@ -3841,28 +4194,28 @@ _CPUBLISHEDFILE_GETUSERVOTESUMMARY_RESPONSE_VOTESUMMARY = _descriptor.Descriptor
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='vote_for', full_name='CPublishedFile_GetUserVoteSummary_Response.VoteSummary.vote_for', index=1,
       number=2, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='vote_against', full_name='CPublishedFile_GetUserVoteSummary_Response.VoteSummary.vote_against', index=2,
       number=3, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='reported', full_name='CPublishedFile_GetUserVoteSummary_Response.VoteSummary.reported', index=3,
       number=4, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3875,8 +4228,8 @@ _CPUBLISHEDFILE_GETUSERVOTESUMMARY_RESPONSE_VOTESUMMARY = _descriptor.Descriptor
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=19246,
-  serialized_end=19342,
+  serialized_start=20152,
+  serialized_end=20248,
 )
 
 _CPUBLISHEDFILE_GETUSERVOTESUMMARY_RESPONSE = _descriptor.Descriptor(
@@ -3885,6 +4238,7 @@ _CPUBLISHEDFILE_GETUSERVOTESUMMARY_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='summaries', full_name='CPublishedFile_GetUserVoteSummary_Response.summaries', index=0,
@@ -3892,7 +4246,7 @@ _CPUBLISHEDFILE_GETUSERVOTESUMMARY_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3905,8 +4259,8 @@ _CPUBLISHEDFILE_GETUSERVOTESUMMARY_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=19124,
-  serialized_end=19342,
+  serialized_start=20030,
+  serialized_end=20248,
 )
 
 
@@ -3916,6 +4270,7 @@ _CPUBLISHEDFILE_GETITEMCHANGES_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CPublishedFile_GetItemChanges_Request.appid', index=0,
@@ -3923,21 +4278,21 @@ _CPUBLISHEDFILE_GETITEMCHANGES_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='last_time_updated', full_name='CPublishedFile_GetItemChanges_Request.last_time_updated', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='num_items_max', full_name='CPublishedFile_GetItemChanges_Request.num_items_max', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3950,8 +4305,8 @@ _CPUBLISHEDFILE_GETITEMCHANGES_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=19344,
-  serialized_end=19448,
+  serialized_start=20250,
+  serialized_end=20354,
 )
 
 
@@ -3961,6 +4316,7 @@ _CPUBLISHEDFILE_GETITEMCHANGES_RESPONSE_WORKSHOPITEMINFO = _descriptor.Descripto
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='published_file_id', full_name='CPublishedFile_GetItemChanges_Response.WorkshopItemInfo.published_file_id', index=0,
@@ -3968,21 +4324,21 @@ _CPUBLISHEDFILE_GETITEMCHANGES_RESPONSE_WORKSHOPITEMINFO = _descriptor.Descripto
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='time_updated', full_name='CPublishedFile_GetItemChanges_Response.WorkshopItemInfo.time_updated', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='manifest_id', full_name='CPublishedFile_GetItemChanges_Response.WorkshopItemInfo.manifest_id', index=2,
       number=3, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3995,8 +4351,8 @@ _CPUBLISHEDFILE_GETITEMCHANGES_RESPONSE_WORKSHOPITEMINFO = _descriptor.Descripto
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=7061,
-  serialized_end=7149,
+  serialized_start=7643,
+  serialized_end=7731,
 )
 
 _CPUBLISHEDFILE_GETITEMCHANGES_RESPONSE = _descriptor.Descriptor(
@@ -4005,6 +4361,7 @@ _CPUBLISHEDFILE_GETITEMCHANGES_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='update_time', full_name='CPublishedFile_GetItemChanges_Response.update_time', index=0,
@@ -4012,14 +4369,14 @@ _CPUBLISHEDFILE_GETITEMCHANGES_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='workshop_items', full_name='CPublishedFile_GetItemChanges_Response.workshop_items', index=1,
       number=2, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4032,8 +4389,8 @@ _CPUBLISHEDFILE_GETITEMCHANGES_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=19451,
-  serialized_end=19684,
+  serialized_start=20357,
+  serialized_end=20590,
 )
 
 
@@ -4043,6 +4400,7 @@ _CPUBLISHEDFILE_FILESUBSCRIBED_NOTIFICATION_REVISIONDATA = _descriptor.Descripto
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='revision', full_name='CPublishedFile_FileSubscribed_Notification.RevisionData.revision', index=0,
@@ -4050,21 +4408,21 @@ _CPUBLISHEDFILE_FILESUBSCRIBED_NOTIFICATION_REVISIONDATA = _descriptor.Descripto
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='file_hcontent', full_name='CPublishedFile_FileSubscribed_Notification.RevisionData.file_hcontent', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\014Manifest GID'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\014Manifest GID', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='rtime_updated', full_name='CPublishedFile_FileSubscribed_Notification.RevisionData.rtime_updated', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\031Last time content updated'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\031Last time content updated', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4077,8 +4435,8 @@ _CPUBLISHEDFILE_FILESUBSCRIBED_NOTIFICATION_REVISIONDATA = _descriptor.Descripto
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=20188,
-  serialized_end=20374,
+  serialized_start=21094,
+  serialized_end=21280,
 )
 
 _CPUBLISHEDFILE_FILESUBSCRIBED_NOTIFICATION = _descriptor.Descriptor(
@@ -4087,6 +4445,7 @@ _CPUBLISHEDFILE_FILESUBSCRIBED_NOTIFICATION = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='published_file_id', full_name='CPublishedFile_FileSubscribed_Notification.published_file_id', index=0,
@@ -4094,56 +4453,56 @@ _CPUBLISHEDFILE_FILESUBSCRIBED_NOTIFICATION = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030!PublishedFileID_t for the content'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030!PublishedFileID_t for the content', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CPublishedFile_FileSubscribed_Notification.app_id', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='file_hcontent', full_name='CPublishedFile_FileSubscribed_Notification.file_hcontent', index=2,
       number=3, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\037UGC file handle or manifest GID'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\037UGC file handle or manifest GID', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='file_size', full_name='CPublishedFile_FileSubscribed_Notification.file_size', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='rtime_subscribed', full_name='CPublishedFile_FileSubscribed_Notification.rtime_subscribed', index=4,
       number=5, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='is_depot_content', full_name='CPublishedFile_FileSubscribed_Notification.is_depot_content', index=5,
       number=6, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\0300True if workshop item is delivered via Steampipe'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\0300True if workshop item is delivered via Steampipe', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='rtime_updated', full_name='CPublishedFile_FileSubscribed_Notification.rtime_updated', index=6,
       number=7, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\031Last time content updated'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\031Last time content updated', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='revisions', full_name='CPublishedFile_FileSubscribed_Notification.revisions', index=7,
       number=8, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\0301Data for each of the revisions that this item has'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\0301Data for each of the revisions that this item has', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4156,8 +4515,8 @@ _CPUBLISHEDFILE_FILESUBSCRIBED_NOTIFICATION = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=19687,
-  serialized_end=20374,
+  serialized_start=20593,
+  serialized_end=21280,
 )
 
 
@@ -4167,6 +4526,7 @@ _CPUBLISHEDFILE_FILEUNSUBSCRIBED_NOTIFICATION = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='published_file_id', full_name='CPublishedFile_FileUnsubscribed_Notification.published_file_id', index=0,
@@ -4174,14 +4534,14 @@ _CPUBLISHEDFILE_FILEUNSUBSCRIBED_NOTIFICATION = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030!PublishedFileID_t for the content'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030!PublishedFileID_t for the content', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CPublishedFile_FileUnsubscribed_Notification.app_id', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4194,8 +4554,8 @@ _CPUBLISHEDFILE_FILEUNSUBSCRIBED_NOTIFICATION = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=20377,
-  serialized_end=20505,
+  serialized_start=21283,
+  serialized_end=21411,
 )
 
 
@@ -4205,6 +4565,7 @@ _CPUBLISHEDFILE_FILEDELETED_CLIENT_NOTIFICATION = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='published_file_id', full_name='CPublishedFile_FileDeleted_Client_Notification.published_file_id', index=0,
@@ -4212,14 +4573,14 @@ _CPUBLISHEDFILE_FILEDELETED_CLIENT_NOTIFICATION = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030!PublishedFileID_t for the content'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030!PublishedFileID_t for the content', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CPublishedFile_FileDeleted_Client_Notification.app_id', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4232,10 +4593,12 @@ _CPUBLISHEDFILE_FILEDELETED_CLIENT_NOTIFICATION = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=20508,
-  serialized_end=20638,
+  serialized_start=21414,
+  serialized_end=21544,
 )
 
+_CPUBLISHEDFILE_GETSUBSECTIONDATA_REQUEST.fields_by_name['desired_revision'].enum_type = _EPUBLISHEDFILEREVISION
+_CPUBLISHEDFILE_GETSUBSECTIONDATA_RESPONSE.fields_by_name['sub_sections'].message_type = _PUBLISHEDFILESUBSECTION
 _CPUBLISHEDFILE_GETDETAILS_REQUEST.fields_by_name['desired_revision'].enum_type = _EPUBLISHEDFILEREVISION
 _PUBLISHEDFILEDETAILS_TAG.containing_type = _PUBLISHEDFILEDETAILS
 _PUBLISHEDFILEDETAILS_PREVIEW.containing_type = _PUBLISHEDFILEDETAILS
@@ -4256,7 +4619,7 @@ _PUBLISHEDFILEDETAILS.fields_by_name['for_sale_data'].message_type = _PUBLISHEDF
 _PUBLISHEDFILEDETAILS.fields_by_name['revision'].enum_type = _EPUBLISHEDFILEREVISION
 _PUBLISHEDFILEDETAILS.fields_by_name['available_revisions'].enum_type = _EPUBLISHEDFILEREVISION
 _PUBLISHEDFILEDETAILS.fields_by_name['reactions'].message_type = _PUBLISHEDFILEDETAILS_REACTION
-_PUBLISHEDFILEDETAILS.fields_by_name['ban_text_check_result'].enum_type = enums__pb2._EBANCONTENTCHECKRESULT
+_PUBLISHEDFILEDETAILS.fields_by_name['ban_text_check_result'].enum_type = steammessages__base__pb2._EBANCONTENTCHECKRESULT
 _CPUBLISHEDFILE_GETDETAILS_RESPONSE.fields_by_name['publishedfiledetails'].message_type = _PUBLISHEDFILEDETAILS
 _CPUBLISHEDFILE_GETITEMINFO_REQUEST_WORKSHOPITEM.fields_by_name['desired_revision'].enum_type = _EPUBLISHEDFILEREVISION
 _CPUBLISHEDFILE_GETITEMINFO_REQUEST_WORKSHOPITEM.containing_type = _CPUBLISHEDFILE_GETITEMINFO_REQUEST
@@ -4296,12 +4659,17 @@ _CPUBLISHEDFILE_GETITEMCHANGES_RESPONSE.fields_by_name['workshop_items'].message
 _CPUBLISHEDFILE_FILESUBSCRIBED_NOTIFICATION_REVISIONDATA.fields_by_name['revision'].enum_type = _EPUBLISHEDFILEREVISION
 _CPUBLISHEDFILE_FILESUBSCRIBED_NOTIFICATION_REVISIONDATA.containing_type = _CPUBLISHEDFILE_FILESUBSCRIBED_NOTIFICATION
 _CPUBLISHEDFILE_FILESUBSCRIBED_NOTIFICATION.fields_by_name['revisions'].message_type = _CPUBLISHEDFILE_FILESUBSCRIBED_NOTIFICATION_REVISIONDATA
+DESCRIPTOR.message_types_by_name['CPublishedFile_Vote_Request'] = _CPUBLISHEDFILE_VOTE_REQUEST
+DESCRIPTOR.message_types_by_name['CPublishedFile_Vote_Response'] = _CPUBLISHEDFILE_VOTE_RESPONSE
 DESCRIPTOR.message_types_by_name['CPublishedFile_Subscribe_Request'] = _CPUBLISHEDFILE_SUBSCRIBE_REQUEST
 DESCRIPTOR.message_types_by_name['CPublishedFile_Subscribe_Response'] = _CPUBLISHEDFILE_SUBSCRIBE_RESPONSE
 DESCRIPTOR.message_types_by_name['CPublishedFile_Unsubscribe_Request'] = _CPUBLISHEDFILE_UNSUBSCRIBE_REQUEST
 DESCRIPTOR.message_types_by_name['CPublishedFile_Unsubscribe_Response'] = _CPUBLISHEDFILE_UNSUBSCRIBE_RESPONSE
 DESCRIPTOR.message_types_by_name['CPublishedFile_CanSubscribe_Request'] = _CPUBLISHEDFILE_CANSUBSCRIBE_REQUEST
 DESCRIPTOR.message_types_by_name['CPublishedFile_CanSubscribe_Response'] = _CPUBLISHEDFILE_CANSUBSCRIBE_RESPONSE
+DESCRIPTOR.message_types_by_name['CPublishedFile_GetSubSectionData_Request'] = _CPUBLISHEDFILE_GETSUBSECTIONDATA_REQUEST
+DESCRIPTOR.message_types_by_name['PublishedFileSubSection'] = _PUBLISHEDFILESUBSECTION
+DESCRIPTOR.message_types_by_name['CPublishedFile_GetSubSectionData_Response'] = _CPUBLISHEDFILE_GETSUBSECTIONDATA_RESPONSE
 DESCRIPTOR.message_types_by_name['CPublishedFile_Publish_Request'] = _CPUBLISHEDFILE_PUBLISH_REQUEST
 DESCRIPTOR.message_types_by_name['CPublishedFile_Publish_Response'] = _CPUBLISHEDFILE_PUBLISH_RESPONSE
 DESCRIPTOR.message_types_by_name['CPublishedFile_GetDetails_Request'] = _CPUBLISHEDFILE_GETDETAILS_REQUEST
@@ -4315,6 +4683,8 @@ DESCRIPTOR.message_types_by_name['CPublishedFile_AreFilesInSubscriptionList_Requ
 DESCRIPTOR.message_types_by_name['CPublishedFile_AreFilesInSubscriptionList_Response'] = _CPUBLISHEDFILE_AREFILESINSUBSCRIPTIONLIST_RESPONSE
 DESCRIPTOR.message_types_by_name['CPublishedFile_Update_Request'] = _CPUBLISHEDFILE_UPDATE_REQUEST
 DESCRIPTOR.message_types_by_name['CPublishedFile_Update_Response'] = _CPUBLISHEDFILE_UPDATE_RESPONSE
+DESCRIPTOR.message_types_by_name['CPublishedFile_Delete_Request'] = _CPUBLISHEDFILE_DELETE_REQUEST
+DESCRIPTOR.message_types_by_name['CPublishedFile_Delete_Response'] = _CPUBLISHEDFILE_DELETE_RESPONSE
 DESCRIPTOR.message_types_by_name['CPublishedFile_GetChangeHistoryEntry_Request'] = _CPUBLISHEDFILE_GETCHANGEHISTORYENTRY_REQUEST
 DESCRIPTOR.message_types_by_name['CPublishedFile_GetChangeHistoryEntry_Response'] = _CPUBLISHEDFILE_GETCHANGEHISTORYENTRY_RESPONSE
 DESCRIPTOR.message_types_by_name['CPublishedFile_GetChangeHistory_Request'] = _CPUBLISHEDFILE_GETCHANGEHISTORY_REQUEST
@@ -4352,130 +4722,165 @@ DESCRIPTOR.enum_types_by_name['EPublishedFileRevision'] = _EPUBLISHEDFILEREVISIO
 DESCRIPTOR.enum_types_by_name['EPublishedFileForSaleStatus'] = _EPUBLISHEDFILEFORSALESTATUS
 _sym_db.RegisterFileDescriptor(DESCRIPTOR)
 
-CPublishedFile_Subscribe_Request = _reflection.GeneratedProtocolMessageType('CPublishedFile_Subscribe_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CPUBLISHEDFILE_SUBSCRIBE_REQUEST,
-  __module__ = 'steammessages_publishedfile_pb2'
+CPublishedFile_Vote_Request = _reflection.GeneratedProtocolMessageType('CPublishedFile_Vote_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPUBLISHEDFILE_VOTE_REQUEST,
+  '__module__' : 'steammessages_publishedfile_pb2'
+  # @@protoc_insertion_point(class_scope:CPublishedFile_Vote_Request)
+  })
+_sym_db.RegisterMessage(CPublishedFile_Vote_Request)
+
+CPublishedFile_Vote_Response = _reflection.GeneratedProtocolMessageType('CPublishedFile_Vote_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CPUBLISHEDFILE_VOTE_RESPONSE,
+  '__module__' : 'steammessages_publishedfile_pb2'
+  # @@protoc_insertion_point(class_scope:CPublishedFile_Vote_Response)
+  })
+_sym_db.RegisterMessage(CPublishedFile_Vote_Response)
+
+CPublishedFile_Subscribe_Request = _reflection.GeneratedProtocolMessageType('CPublishedFile_Subscribe_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPUBLISHEDFILE_SUBSCRIBE_REQUEST,
+  '__module__' : 'steammessages_publishedfile_pb2'
   # @@protoc_insertion_point(class_scope:CPublishedFile_Subscribe_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CPublishedFile_Subscribe_Request)
 
-CPublishedFile_Subscribe_Response = _reflection.GeneratedProtocolMessageType('CPublishedFile_Subscribe_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CPUBLISHEDFILE_SUBSCRIBE_RESPONSE,
-  __module__ = 'steammessages_publishedfile_pb2'
+CPublishedFile_Subscribe_Response = _reflection.GeneratedProtocolMessageType('CPublishedFile_Subscribe_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CPUBLISHEDFILE_SUBSCRIBE_RESPONSE,
+  '__module__' : 'steammessages_publishedfile_pb2'
   # @@protoc_insertion_point(class_scope:CPublishedFile_Subscribe_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CPublishedFile_Subscribe_Response)
 
-CPublishedFile_Unsubscribe_Request = _reflection.GeneratedProtocolMessageType('CPublishedFile_Unsubscribe_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CPUBLISHEDFILE_UNSUBSCRIBE_REQUEST,
-  __module__ = 'steammessages_publishedfile_pb2'
+CPublishedFile_Unsubscribe_Request = _reflection.GeneratedProtocolMessageType('CPublishedFile_Unsubscribe_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPUBLISHEDFILE_UNSUBSCRIBE_REQUEST,
+  '__module__' : 'steammessages_publishedfile_pb2'
   # @@protoc_insertion_point(class_scope:CPublishedFile_Unsubscribe_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CPublishedFile_Unsubscribe_Request)
 
-CPublishedFile_Unsubscribe_Response = _reflection.GeneratedProtocolMessageType('CPublishedFile_Unsubscribe_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CPUBLISHEDFILE_UNSUBSCRIBE_RESPONSE,
-  __module__ = 'steammessages_publishedfile_pb2'
+CPublishedFile_Unsubscribe_Response = _reflection.GeneratedProtocolMessageType('CPublishedFile_Unsubscribe_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CPUBLISHEDFILE_UNSUBSCRIBE_RESPONSE,
+  '__module__' : 'steammessages_publishedfile_pb2'
   # @@protoc_insertion_point(class_scope:CPublishedFile_Unsubscribe_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CPublishedFile_Unsubscribe_Response)
 
-CPublishedFile_CanSubscribe_Request = _reflection.GeneratedProtocolMessageType('CPublishedFile_CanSubscribe_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CPUBLISHEDFILE_CANSUBSCRIBE_REQUEST,
-  __module__ = 'steammessages_publishedfile_pb2'
+CPublishedFile_CanSubscribe_Request = _reflection.GeneratedProtocolMessageType('CPublishedFile_CanSubscribe_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPUBLISHEDFILE_CANSUBSCRIBE_REQUEST,
+  '__module__' : 'steammessages_publishedfile_pb2'
   # @@protoc_insertion_point(class_scope:CPublishedFile_CanSubscribe_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CPublishedFile_CanSubscribe_Request)
 
-CPublishedFile_CanSubscribe_Response = _reflection.GeneratedProtocolMessageType('CPublishedFile_CanSubscribe_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CPUBLISHEDFILE_CANSUBSCRIBE_RESPONSE,
-  __module__ = 'steammessages_publishedfile_pb2'
+CPublishedFile_CanSubscribe_Response = _reflection.GeneratedProtocolMessageType('CPublishedFile_CanSubscribe_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CPUBLISHEDFILE_CANSUBSCRIBE_RESPONSE,
+  '__module__' : 'steammessages_publishedfile_pb2'
   # @@protoc_insertion_point(class_scope:CPublishedFile_CanSubscribe_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CPublishedFile_CanSubscribe_Response)
 
-CPublishedFile_Publish_Request = _reflection.GeneratedProtocolMessageType('CPublishedFile_Publish_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CPUBLISHEDFILE_PUBLISH_REQUEST,
-  __module__ = 'steammessages_publishedfile_pb2'
+CPublishedFile_GetSubSectionData_Request = _reflection.GeneratedProtocolMessageType('CPublishedFile_GetSubSectionData_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPUBLISHEDFILE_GETSUBSECTIONDATA_REQUEST,
+  '__module__' : 'steammessages_publishedfile_pb2'
+  # @@protoc_insertion_point(class_scope:CPublishedFile_GetSubSectionData_Request)
+  })
+_sym_db.RegisterMessage(CPublishedFile_GetSubSectionData_Request)
+
+PublishedFileSubSection = _reflection.GeneratedProtocolMessageType('PublishedFileSubSection', (_message.Message,), {
+  'DESCRIPTOR' : _PUBLISHEDFILESUBSECTION,
+  '__module__' : 'steammessages_publishedfile_pb2'
+  # @@protoc_insertion_point(class_scope:PublishedFileSubSection)
+  })
+_sym_db.RegisterMessage(PublishedFileSubSection)
+
+CPublishedFile_GetSubSectionData_Response = _reflection.GeneratedProtocolMessageType('CPublishedFile_GetSubSectionData_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CPUBLISHEDFILE_GETSUBSECTIONDATA_RESPONSE,
+  '__module__' : 'steammessages_publishedfile_pb2'
+  # @@protoc_insertion_point(class_scope:CPublishedFile_GetSubSectionData_Response)
+  })
+_sym_db.RegisterMessage(CPublishedFile_GetSubSectionData_Response)
+
+CPublishedFile_Publish_Request = _reflection.GeneratedProtocolMessageType('CPublishedFile_Publish_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPUBLISHEDFILE_PUBLISH_REQUEST,
+  '__module__' : 'steammessages_publishedfile_pb2'
   # @@protoc_insertion_point(class_scope:CPublishedFile_Publish_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CPublishedFile_Publish_Request)
 
-CPublishedFile_Publish_Response = _reflection.GeneratedProtocolMessageType('CPublishedFile_Publish_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CPUBLISHEDFILE_PUBLISH_RESPONSE,
-  __module__ = 'steammessages_publishedfile_pb2'
+CPublishedFile_Publish_Response = _reflection.GeneratedProtocolMessageType('CPublishedFile_Publish_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CPUBLISHEDFILE_PUBLISH_RESPONSE,
+  '__module__' : 'steammessages_publishedfile_pb2'
   # @@protoc_insertion_point(class_scope:CPublishedFile_Publish_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CPublishedFile_Publish_Response)
 
-CPublishedFile_GetDetails_Request = _reflection.GeneratedProtocolMessageType('CPublishedFile_GetDetails_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CPUBLISHEDFILE_GETDETAILS_REQUEST,
-  __module__ = 'steammessages_publishedfile_pb2'
+CPublishedFile_GetDetails_Request = _reflection.GeneratedProtocolMessageType('CPublishedFile_GetDetails_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPUBLISHEDFILE_GETDETAILS_REQUEST,
+  '__module__' : 'steammessages_publishedfile_pb2'
   # @@protoc_insertion_point(class_scope:CPublishedFile_GetDetails_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CPublishedFile_GetDetails_Request)
 
-PublishedFileDetails = _reflection.GeneratedProtocolMessageType('PublishedFileDetails', (_message.Message,), dict(
+PublishedFileDetails = _reflection.GeneratedProtocolMessageType('PublishedFileDetails', (_message.Message,), {
 
-  Tag = _reflection.GeneratedProtocolMessageType('Tag', (_message.Message,), dict(
-    DESCRIPTOR = _PUBLISHEDFILEDETAILS_TAG,
-    __module__ = 'steammessages_publishedfile_pb2'
+  'Tag' : _reflection.GeneratedProtocolMessageType('Tag', (_message.Message,), {
+    'DESCRIPTOR' : _PUBLISHEDFILEDETAILS_TAG,
+    '__module__' : 'steammessages_publishedfile_pb2'
     # @@protoc_insertion_point(class_scope:PublishedFileDetails.Tag)
-    ))
+    })
   ,
 
-  Preview = _reflection.GeneratedProtocolMessageType('Preview', (_message.Message,), dict(
-    DESCRIPTOR = _PUBLISHEDFILEDETAILS_PREVIEW,
-    __module__ = 'steammessages_publishedfile_pb2'
+  'Preview' : _reflection.GeneratedProtocolMessageType('Preview', (_message.Message,), {
+    'DESCRIPTOR' : _PUBLISHEDFILEDETAILS_PREVIEW,
+    '__module__' : 'steammessages_publishedfile_pb2'
     # @@protoc_insertion_point(class_scope:PublishedFileDetails.Preview)
-    ))
+    })
   ,
 
-  Child = _reflection.GeneratedProtocolMessageType('Child', (_message.Message,), dict(
-    DESCRIPTOR = _PUBLISHEDFILEDETAILS_CHILD,
-    __module__ = 'steammessages_publishedfile_pb2'
+  'Child' : _reflection.GeneratedProtocolMessageType('Child', (_message.Message,), {
+    'DESCRIPTOR' : _PUBLISHEDFILEDETAILS_CHILD,
+    '__module__' : 'steammessages_publishedfile_pb2'
     # @@protoc_insertion_point(class_scope:PublishedFileDetails.Child)
-    ))
+    })
   ,
 
-  KVTag = _reflection.GeneratedProtocolMessageType('KVTag', (_message.Message,), dict(
-    DESCRIPTOR = _PUBLISHEDFILEDETAILS_KVTAG,
-    __module__ = 'steammessages_publishedfile_pb2'
+  'KVTag' : _reflection.GeneratedProtocolMessageType('KVTag', (_message.Message,), {
+    'DESCRIPTOR' : _PUBLISHEDFILEDETAILS_KVTAG,
+    '__module__' : 'steammessages_publishedfile_pb2'
     # @@protoc_insertion_point(class_scope:PublishedFileDetails.KVTag)
-    ))
+    })
   ,
 
-  VoteData = _reflection.GeneratedProtocolMessageType('VoteData', (_message.Message,), dict(
-    DESCRIPTOR = _PUBLISHEDFILEDETAILS_VOTEDATA,
-    __module__ = 'steammessages_publishedfile_pb2'
+  'VoteData' : _reflection.GeneratedProtocolMessageType('VoteData', (_message.Message,), {
+    'DESCRIPTOR' : _PUBLISHEDFILEDETAILS_VOTEDATA,
+    '__module__' : 'steammessages_publishedfile_pb2'
     # @@protoc_insertion_point(class_scope:PublishedFileDetails.VoteData)
-    ))
+    })
   ,
 
-  ForSaleData = _reflection.GeneratedProtocolMessageType('ForSaleData', (_message.Message,), dict(
-    DESCRIPTOR = _PUBLISHEDFILEDETAILS_FORSALEDATA,
-    __module__ = 'steammessages_publishedfile_pb2'
+  'ForSaleData' : _reflection.GeneratedProtocolMessageType('ForSaleData', (_message.Message,), {
+    'DESCRIPTOR' : _PUBLISHEDFILEDETAILS_FORSALEDATA,
+    '__module__' : 'steammessages_publishedfile_pb2'
     # @@protoc_insertion_point(class_scope:PublishedFileDetails.ForSaleData)
-    ))
+    })
   ,
 
-  PlaytimeStats = _reflection.GeneratedProtocolMessageType('PlaytimeStats', (_message.Message,), dict(
-    DESCRIPTOR = _PUBLISHEDFILEDETAILS_PLAYTIMESTATS,
-    __module__ = 'steammessages_publishedfile_pb2'
+  'PlaytimeStats' : _reflection.GeneratedProtocolMessageType('PlaytimeStats', (_message.Message,), {
+    'DESCRIPTOR' : _PUBLISHEDFILEDETAILS_PLAYTIMESTATS,
+    '__module__' : 'steammessages_publishedfile_pb2'
     # @@protoc_insertion_point(class_scope:PublishedFileDetails.PlaytimeStats)
-    ))
+    })
   ,
 
-  Reaction = _reflection.GeneratedProtocolMessageType('Reaction', (_message.Message,), dict(
-    DESCRIPTOR = _PUBLISHEDFILEDETAILS_REACTION,
-    __module__ = 'steammessages_publishedfile_pb2'
+  'Reaction' : _reflection.GeneratedProtocolMessageType('Reaction', (_message.Message,), {
+    'DESCRIPTOR' : _PUBLISHEDFILEDETAILS_REACTION,
+    '__module__' : 'steammessages_publishedfile_pb2'
     # @@protoc_insertion_point(class_scope:PublishedFileDetails.Reaction)
-    ))
+    })
   ,
-  DESCRIPTOR = _PUBLISHEDFILEDETAILS,
-  __module__ = 'steammessages_publishedfile_pb2'
+  'DESCRIPTOR' : _PUBLISHEDFILEDETAILS,
+  '__module__' : 'steammessages_publishedfile_pb2'
   # @@protoc_insertion_point(class_scope:PublishedFileDetails)
-  ))
+  })
 _sym_db.RegisterMessage(PublishedFileDetails)
 _sym_db.RegisterMessage(PublishedFileDetails.Tag)
 _sym_db.RegisterMessage(PublishedFileDetails.Preview)
@@ -4486,422 +4891,437 @@ _sym_db.RegisterMessage(PublishedFileDetails.ForSaleData)
 _sym_db.RegisterMessage(PublishedFileDetails.PlaytimeStats)
 _sym_db.RegisterMessage(PublishedFileDetails.Reaction)
 
-CPublishedFile_GetDetails_Response = _reflection.GeneratedProtocolMessageType('CPublishedFile_GetDetails_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CPUBLISHEDFILE_GETDETAILS_RESPONSE,
-  __module__ = 'steammessages_publishedfile_pb2'
+CPublishedFile_GetDetails_Response = _reflection.GeneratedProtocolMessageType('CPublishedFile_GetDetails_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CPUBLISHEDFILE_GETDETAILS_RESPONSE,
+  '__module__' : 'steammessages_publishedfile_pb2'
   # @@protoc_insertion_point(class_scope:CPublishedFile_GetDetails_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CPublishedFile_GetDetails_Response)
 
-CPublishedFile_GetItemInfo_Request = _reflection.GeneratedProtocolMessageType('CPublishedFile_GetItemInfo_Request', (_message.Message,), dict(
+CPublishedFile_GetItemInfo_Request = _reflection.GeneratedProtocolMessageType('CPublishedFile_GetItemInfo_Request', (_message.Message,), {
 
-  WorkshopItem = _reflection.GeneratedProtocolMessageType('WorkshopItem', (_message.Message,), dict(
-    DESCRIPTOR = _CPUBLISHEDFILE_GETITEMINFO_REQUEST_WORKSHOPITEM,
-    __module__ = 'steammessages_publishedfile_pb2'
+  'WorkshopItem' : _reflection.GeneratedProtocolMessageType('WorkshopItem', (_message.Message,), {
+    'DESCRIPTOR' : _CPUBLISHEDFILE_GETITEMINFO_REQUEST_WORKSHOPITEM,
+    '__module__' : 'steammessages_publishedfile_pb2'
     # @@protoc_insertion_point(class_scope:CPublishedFile_GetItemInfo_Request.WorkshopItem)
-    ))
+    })
   ,
-  DESCRIPTOR = _CPUBLISHEDFILE_GETITEMINFO_REQUEST,
-  __module__ = 'steammessages_publishedfile_pb2'
+  'DESCRIPTOR' : _CPUBLISHEDFILE_GETITEMINFO_REQUEST,
+  '__module__' : 'steammessages_publishedfile_pb2'
   # @@protoc_insertion_point(class_scope:CPublishedFile_GetItemInfo_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CPublishedFile_GetItemInfo_Request)
 _sym_db.RegisterMessage(CPublishedFile_GetItemInfo_Request.WorkshopItem)
 
-CPublishedFile_GetItemInfo_Response = _reflection.GeneratedProtocolMessageType('CPublishedFile_GetItemInfo_Response', (_message.Message,), dict(
+CPublishedFile_GetItemInfo_Response = _reflection.GeneratedProtocolMessageType('CPublishedFile_GetItemInfo_Response', (_message.Message,), {
 
-  WorkshopItemInfo = _reflection.GeneratedProtocolMessageType('WorkshopItemInfo', (_message.Message,), dict(
-    DESCRIPTOR = _CPUBLISHEDFILE_GETITEMINFO_RESPONSE_WORKSHOPITEMINFO,
-    __module__ = 'steammessages_publishedfile_pb2'
+  'WorkshopItemInfo' : _reflection.GeneratedProtocolMessageType('WorkshopItemInfo', (_message.Message,), {
+    'DESCRIPTOR' : _CPUBLISHEDFILE_GETITEMINFO_RESPONSE_WORKSHOPITEMINFO,
+    '__module__' : 'steammessages_publishedfile_pb2'
     # @@protoc_insertion_point(class_scope:CPublishedFile_GetItemInfo_Response.WorkshopItemInfo)
-    ))
+    })
   ,
-  DESCRIPTOR = _CPUBLISHEDFILE_GETITEMINFO_RESPONSE,
-  __module__ = 'steammessages_publishedfile_pb2'
+  'DESCRIPTOR' : _CPUBLISHEDFILE_GETITEMINFO_RESPONSE,
+  '__module__' : 'steammessages_publishedfile_pb2'
   # @@protoc_insertion_point(class_scope:CPublishedFile_GetItemInfo_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CPublishedFile_GetItemInfo_Response)
 _sym_db.RegisterMessage(CPublishedFile_GetItemInfo_Response.WorkshopItemInfo)
 
-CPublishedFile_GetUserFiles_Request = _reflection.GeneratedProtocolMessageType('CPublishedFile_GetUserFiles_Request', (_message.Message,), dict(
+CPublishedFile_GetUserFiles_Request = _reflection.GeneratedProtocolMessageType('CPublishedFile_GetUserFiles_Request', (_message.Message,), {
 
-  KVTag = _reflection.GeneratedProtocolMessageType('KVTag', (_message.Message,), dict(
-    DESCRIPTOR = _CPUBLISHEDFILE_GETUSERFILES_REQUEST_KVTAG,
-    __module__ = 'steammessages_publishedfile_pb2'
+  'KVTag' : _reflection.GeneratedProtocolMessageType('KVTag', (_message.Message,), {
+    'DESCRIPTOR' : _CPUBLISHEDFILE_GETUSERFILES_REQUEST_KVTAG,
+    '__module__' : 'steammessages_publishedfile_pb2'
     # @@protoc_insertion_point(class_scope:CPublishedFile_GetUserFiles_Request.KVTag)
-    ))
+    })
   ,
 
-  TagGroup = _reflection.GeneratedProtocolMessageType('TagGroup', (_message.Message,), dict(
-    DESCRIPTOR = _CPUBLISHEDFILE_GETUSERFILES_REQUEST_TAGGROUP,
-    __module__ = 'steammessages_publishedfile_pb2'
+  'TagGroup' : _reflection.GeneratedProtocolMessageType('TagGroup', (_message.Message,), {
+    'DESCRIPTOR' : _CPUBLISHEDFILE_GETUSERFILES_REQUEST_TAGGROUP,
+    '__module__' : 'steammessages_publishedfile_pb2'
     # @@protoc_insertion_point(class_scope:CPublishedFile_GetUserFiles_Request.TagGroup)
-    ))
+    })
   ,
-  DESCRIPTOR = _CPUBLISHEDFILE_GETUSERFILES_REQUEST,
-  __module__ = 'steammessages_publishedfile_pb2'
+  'DESCRIPTOR' : _CPUBLISHEDFILE_GETUSERFILES_REQUEST,
+  '__module__' : 'steammessages_publishedfile_pb2'
   # @@protoc_insertion_point(class_scope:CPublishedFile_GetUserFiles_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CPublishedFile_GetUserFiles_Request)
 _sym_db.RegisterMessage(CPublishedFile_GetUserFiles_Request.KVTag)
 _sym_db.RegisterMessage(CPublishedFile_GetUserFiles_Request.TagGroup)
 
-CPublishedFile_GetUserFiles_Response = _reflection.GeneratedProtocolMessageType('CPublishedFile_GetUserFiles_Response', (_message.Message,), dict(
+CPublishedFile_GetUserFiles_Response = _reflection.GeneratedProtocolMessageType('CPublishedFile_GetUserFiles_Response', (_message.Message,), {
 
-  App = _reflection.GeneratedProtocolMessageType('App', (_message.Message,), dict(
-    DESCRIPTOR = _CPUBLISHEDFILE_GETUSERFILES_RESPONSE_APP,
-    __module__ = 'steammessages_publishedfile_pb2'
+  'App' : _reflection.GeneratedProtocolMessageType('App', (_message.Message,), {
+    'DESCRIPTOR' : _CPUBLISHEDFILE_GETUSERFILES_RESPONSE_APP,
+    '__module__' : 'steammessages_publishedfile_pb2'
     # @@protoc_insertion_point(class_scope:CPublishedFile_GetUserFiles_Response.App)
-    ))
+    })
   ,
-  DESCRIPTOR = _CPUBLISHEDFILE_GETUSERFILES_RESPONSE,
-  __module__ = 'steammessages_publishedfile_pb2'
+  'DESCRIPTOR' : _CPUBLISHEDFILE_GETUSERFILES_RESPONSE,
+  '__module__' : 'steammessages_publishedfile_pb2'
   # @@protoc_insertion_point(class_scope:CPublishedFile_GetUserFiles_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CPublishedFile_GetUserFiles_Response)
 _sym_db.RegisterMessage(CPublishedFile_GetUserFiles_Response.App)
 
-CPublishedFile_AreFilesInSubscriptionList_Request = _reflection.GeneratedProtocolMessageType('CPublishedFile_AreFilesInSubscriptionList_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CPUBLISHEDFILE_AREFILESINSUBSCRIPTIONLIST_REQUEST,
-  __module__ = 'steammessages_publishedfile_pb2'
+CPublishedFile_AreFilesInSubscriptionList_Request = _reflection.GeneratedProtocolMessageType('CPublishedFile_AreFilesInSubscriptionList_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPUBLISHEDFILE_AREFILESINSUBSCRIPTIONLIST_REQUEST,
+  '__module__' : 'steammessages_publishedfile_pb2'
   # @@protoc_insertion_point(class_scope:CPublishedFile_AreFilesInSubscriptionList_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CPublishedFile_AreFilesInSubscriptionList_Request)
 
-CPublishedFile_AreFilesInSubscriptionList_Response = _reflection.GeneratedProtocolMessageType('CPublishedFile_AreFilesInSubscriptionList_Response', (_message.Message,), dict(
+CPublishedFile_AreFilesInSubscriptionList_Response = _reflection.GeneratedProtocolMessageType('CPublishedFile_AreFilesInSubscriptionList_Response', (_message.Message,), {
 
-  InList = _reflection.GeneratedProtocolMessageType('InList', (_message.Message,), dict(
-    DESCRIPTOR = _CPUBLISHEDFILE_AREFILESINSUBSCRIPTIONLIST_RESPONSE_INLIST,
-    __module__ = 'steammessages_publishedfile_pb2'
+  'InList' : _reflection.GeneratedProtocolMessageType('InList', (_message.Message,), {
+    'DESCRIPTOR' : _CPUBLISHEDFILE_AREFILESINSUBSCRIPTIONLIST_RESPONSE_INLIST,
+    '__module__' : 'steammessages_publishedfile_pb2'
     # @@protoc_insertion_point(class_scope:CPublishedFile_AreFilesInSubscriptionList_Response.InList)
-    ))
+    })
   ,
-  DESCRIPTOR = _CPUBLISHEDFILE_AREFILESINSUBSCRIPTIONLIST_RESPONSE,
-  __module__ = 'steammessages_publishedfile_pb2'
+  'DESCRIPTOR' : _CPUBLISHEDFILE_AREFILESINSUBSCRIPTIONLIST_RESPONSE,
+  '__module__' : 'steammessages_publishedfile_pb2'
   # @@protoc_insertion_point(class_scope:CPublishedFile_AreFilesInSubscriptionList_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CPublishedFile_AreFilesInSubscriptionList_Response)
 _sym_db.RegisterMessage(CPublishedFile_AreFilesInSubscriptionList_Response.InList)
 
-CPublishedFile_Update_Request = _reflection.GeneratedProtocolMessageType('CPublishedFile_Update_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CPUBLISHEDFILE_UPDATE_REQUEST,
-  __module__ = 'steammessages_publishedfile_pb2'
+CPublishedFile_Update_Request = _reflection.GeneratedProtocolMessageType('CPublishedFile_Update_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPUBLISHEDFILE_UPDATE_REQUEST,
+  '__module__' : 'steammessages_publishedfile_pb2'
   # @@protoc_insertion_point(class_scope:CPublishedFile_Update_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CPublishedFile_Update_Request)
 
-CPublishedFile_Update_Response = _reflection.GeneratedProtocolMessageType('CPublishedFile_Update_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CPUBLISHEDFILE_UPDATE_RESPONSE,
-  __module__ = 'steammessages_publishedfile_pb2'
+CPublishedFile_Update_Response = _reflection.GeneratedProtocolMessageType('CPublishedFile_Update_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CPUBLISHEDFILE_UPDATE_RESPONSE,
+  '__module__' : 'steammessages_publishedfile_pb2'
   # @@protoc_insertion_point(class_scope:CPublishedFile_Update_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CPublishedFile_Update_Response)
 
-CPublishedFile_GetChangeHistoryEntry_Request = _reflection.GeneratedProtocolMessageType('CPublishedFile_GetChangeHistoryEntry_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CPUBLISHEDFILE_GETCHANGEHISTORYENTRY_REQUEST,
-  __module__ = 'steammessages_publishedfile_pb2'
+CPublishedFile_Delete_Request = _reflection.GeneratedProtocolMessageType('CPublishedFile_Delete_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPUBLISHEDFILE_DELETE_REQUEST,
+  '__module__' : 'steammessages_publishedfile_pb2'
+  # @@protoc_insertion_point(class_scope:CPublishedFile_Delete_Request)
+  })
+_sym_db.RegisterMessage(CPublishedFile_Delete_Request)
+
+CPublishedFile_Delete_Response = _reflection.GeneratedProtocolMessageType('CPublishedFile_Delete_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CPUBLISHEDFILE_DELETE_RESPONSE,
+  '__module__' : 'steammessages_publishedfile_pb2'
+  # @@protoc_insertion_point(class_scope:CPublishedFile_Delete_Response)
+  })
+_sym_db.RegisterMessage(CPublishedFile_Delete_Response)
+
+CPublishedFile_GetChangeHistoryEntry_Request = _reflection.GeneratedProtocolMessageType('CPublishedFile_GetChangeHistoryEntry_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPUBLISHEDFILE_GETCHANGEHISTORYENTRY_REQUEST,
+  '__module__' : 'steammessages_publishedfile_pb2'
   # @@protoc_insertion_point(class_scope:CPublishedFile_GetChangeHistoryEntry_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CPublishedFile_GetChangeHistoryEntry_Request)
 
-CPublishedFile_GetChangeHistoryEntry_Response = _reflection.GeneratedProtocolMessageType('CPublishedFile_GetChangeHistoryEntry_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CPUBLISHEDFILE_GETCHANGEHISTORYENTRY_RESPONSE,
-  __module__ = 'steammessages_publishedfile_pb2'
+CPublishedFile_GetChangeHistoryEntry_Response = _reflection.GeneratedProtocolMessageType('CPublishedFile_GetChangeHistoryEntry_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CPUBLISHEDFILE_GETCHANGEHISTORYENTRY_RESPONSE,
+  '__module__' : 'steammessages_publishedfile_pb2'
   # @@protoc_insertion_point(class_scope:CPublishedFile_GetChangeHistoryEntry_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CPublishedFile_GetChangeHistoryEntry_Response)
 
-CPublishedFile_GetChangeHistory_Request = _reflection.GeneratedProtocolMessageType('CPublishedFile_GetChangeHistory_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CPUBLISHEDFILE_GETCHANGEHISTORY_REQUEST,
-  __module__ = 'steammessages_publishedfile_pb2'
+CPublishedFile_GetChangeHistory_Request = _reflection.GeneratedProtocolMessageType('CPublishedFile_GetChangeHistory_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPUBLISHEDFILE_GETCHANGEHISTORY_REQUEST,
+  '__module__' : 'steammessages_publishedfile_pb2'
   # @@protoc_insertion_point(class_scope:CPublishedFile_GetChangeHistory_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CPublishedFile_GetChangeHistory_Request)
 
-CPublishedFile_GetChangeHistory_Response = _reflection.GeneratedProtocolMessageType('CPublishedFile_GetChangeHistory_Response', (_message.Message,), dict(
+CPublishedFile_GetChangeHistory_Response = _reflection.GeneratedProtocolMessageType('CPublishedFile_GetChangeHistory_Response', (_message.Message,), {
 
-  ChangeLog = _reflection.GeneratedProtocolMessageType('ChangeLog', (_message.Message,), dict(
-    DESCRIPTOR = _CPUBLISHEDFILE_GETCHANGEHISTORY_RESPONSE_CHANGELOG,
-    __module__ = 'steammessages_publishedfile_pb2'
+  'ChangeLog' : _reflection.GeneratedProtocolMessageType('ChangeLog', (_message.Message,), {
+    'DESCRIPTOR' : _CPUBLISHEDFILE_GETCHANGEHISTORY_RESPONSE_CHANGELOG,
+    '__module__' : 'steammessages_publishedfile_pb2'
     # @@protoc_insertion_point(class_scope:CPublishedFile_GetChangeHistory_Response.ChangeLog)
-    ))
+    })
   ,
-  DESCRIPTOR = _CPUBLISHEDFILE_GETCHANGEHISTORY_RESPONSE,
-  __module__ = 'steammessages_publishedfile_pb2'
+  'DESCRIPTOR' : _CPUBLISHEDFILE_GETCHANGEHISTORY_RESPONSE,
+  '__module__' : 'steammessages_publishedfile_pb2'
   # @@protoc_insertion_point(class_scope:CPublishedFile_GetChangeHistory_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CPublishedFile_GetChangeHistory_Response)
 _sym_db.RegisterMessage(CPublishedFile_GetChangeHistory_Response.ChangeLog)
 
-CPublishedFile_RefreshVotingQueue_Request = _reflection.GeneratedProtocolMessageType('CPublishedFile_RefreshVotingQueue_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CPUBLISHEDFILE_REFRESHVOTINGQUEUE_REQUEST,
-  __module__ = 'steammessages_publishedfile_pb2'
+CPublishedFile_RefreshVotingQueue_Request = _reflection.GeneratedProtocolMessageType('CPublishedFile_RefreshVotingQueue_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPUBLISHEDFILE_REFRESHVOTINGQUEUE_REQUEST,
+  '__module__' : 'steammessages_publishedfile_pb2'
   # @@protoc_insertion_point(class_scope:CPublishedFile_RefreshVotingQueue_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CPublishedFile_RefreshVotingQueue_Request)
 
-CPublishedFile_RefreshVotingQueue_Response = _reflection.GeneratedProtocolMessageType('CPublishedFile_RefreshVotingQueue_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CPUBLISHEDFILE_REFRESHVOTINGQUEUE_RESPONSE,
-  __module__ = 'steammessages_publishedfile_pb2'
+CPublishedFile_RefreshVotingQueue_Response = _reflection.GeneratedProtocolMessageType('CPublishedFile_RefreshVotingQueue_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CPUBLISHEDFILE_REFRESHVOTINGQUEUE_RESPONSE,
+  '__module__' : 'steammessages_publishedfile_pb2'
   # @@protoc_insertion_point(class_scope:CPublishedFile_RefreshVotingQueue_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CPublishedFile_RefreshVotingQueue_Response)
 
-CPublishedFile_QueryFiles_Request = _reflection.GeneratedProtocolMessageType('CPublishedFile_QueryFiles_Request', (_message.Message,), dict(
+CPublishedFile_QueryFiles_Request = _reflection.GeneratedProtocolMessageType('CPublishedFile_QueryFiles_Request', (_message.Message,), {
 
-  KVTag = _reflection.GeneratedProtocolMessageType('KVTag', (_message.Message,), dict(
-    DESCRIPTOR = _CPUBLISHEDFILE_QUERYFILES_REQUEST_KVTAG,
-    __module__ = 'steammessages_publishedfile_pb2'
+  'KVTag' : _reflection.GeneratedProtocolMessageType('KVTag', (_message.Message,), {
+    'DESCRIPTOR' : _CPUBLISHEDFILE_QUERYFILES_REQUEST_KVTAG,
+    '__module__' : 'steammessages_publishedfile_pb2'
     # @@protoc_insertion_point(class_scope:CPublishedFile_QueryFiles_Request.KVTag)
-    ))
+    })
   ,
 
-  TagGroup = _reflection.GeneratedProtocolMessageType('TagGroup', (_message.Message,), dict(
-    DESCRIPTOR = _CPUBLISHEDFILE_QUERYFILES_REQUEST_TAGGROUP,
-    __module__ = 'steammessages_publishedfile_pb2'
+  'TagGroup' : _reflection.GeneratedProtocolMessageType('TagGroup', (_message.Message,), {
+    'DESCRIPTOR' : _CPUBLISHEDFILE_QUERYFILES_REQUEST_TAGGROUP,
+    '__module__' : 'steammessages_publishedfile_pb2'
     # @@protoc_insertion_point(class_scope:CPublishedFile_QueryFiles_Request.TagGroup)
-    ))
+    })
   ,
 
-  DateRange = _reflection.GeneratedProtocolMessageType('DateRange', (_message.Message,), dict(
-    DESCRIPTOR = _CPUBLISHEDFILE_QUERYFILES_REQUEST_DATERANGE,
-    __module__ = 'steammessages_publishedfile_pb2'
+  'DateRange' : _reflection.GeneratedProtocolMessageType('DateRange', (_message.Message,), {
+    'DESCRIPTOR' : _CPUBLISHEDFILE_QUERYFILES_REQUEST_DATERANGE,
+    '__module__' : 'steammessages_publishedfile_pb2'
     # @@protoc_insertion_point(class_scope:CPublishedFile_QueryFiles_Request.DateRange)
-    ))
+    })
   ,
-  DESCRIPTOR = _CPUBLISHEDFILE_QUERYFILES_REQUEST,
-  __module__ = 'steammessages_publishedfile_pb2'
+  'DESCRIPTOR' : _CPUBLISHEDFILE_QUERYFILES_REQUEST,
+  '__module__' : 'steammessages_publishedfile_pb2'
   # @@protoc_insertion_point(class_scope:CPublishedFile_QueryFiles_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CPublishedFile_QueryFiles_Request)
 _sym_db.RegisterMessage(CPublishedFile_QueryFiles_Request.KVTag)
 _sym_db.RegisterMessage(CPublishedFile_QueryFiles_Request.TagGroup)
 _sym_db.RegisterMessage(CPublishedFile_QueryFiles_Request.DateRange)
 
-CPublishedFile_QueryFiles_Response = _reflection.GeneratedProtocolMessageType('CPublishedFile_QueryFiles_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CPUBLISHEDFILE_QUERYFILES_RESPONSE,
-  __module__ = 'steammessages_publishedfile_pb2'
+CPublishedFile_QueryFiles_Response = _reflection.GeneratedProtocolMessageType('CPublishedFile_QueryFiles_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CPUBLISHEDFILE_QUERYFILES_RESPONSE,
+  '__module__' : 'steammessages_publishedfile_pb2'
   # @@protoc_insertion_point(class_scope:CPublishedFile_QueryFiles_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CPublishedFile_QueryFiles_Response)
 
-CPublishedFile_AddAppRelationship_Request = _reflection.GeneratedProtocolMessageType('CPublishedFile_AddAppRelationship_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CPUBLISHEDFILE_ADDAPPRELATIONSHIP_REQUEST,
-  __module__ = 'steammessages_publishedfile_pb2'
+CPublishedFile_AddAppRelationship_Request = _reflection.GeneratedProtocolMessageType('CPublishedFile_AddAppRelationship_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPUBLISHEDFILE_ADDAPPRELATIONSHIP_REQUEST,
+  '__module__' : 'steammessages_publishedfile_pb2'
   # @@protoc_insertion_point(class_scope:CPublishedFile_AddAppRelationship_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CPublishedFile_AddAppRelationship_Request)
 
-CPublishedFile_AddAppRelationship_Response = _reflection.GeneratedProtocolMessageType('CPublishedFile_AddAppRelationship_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CPUBLISHEDFILE_ADDAPPRELATIONSHIP_RESPONSE,
-  __module__ = 'steammessages_publishedfile_pb2'
+CPublishedFile_AddAppRelationship_Response = _reflection.GeneratedProtocolMessageType('CPublishedFile_AddAppRelationship_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CPUBLISHEDFILE_ADDAPPRELATIONSHIP_RESPONSE,
+  '__module__' : 'steammessages_publishedfile_pb2'
   # @@protoc_insertion_point(class_scope:CPublishedFile_AddAppRelationship_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CPublishedFile_AddAppRelationship_Response)
 
-CPublishedFile_RemoveAppRelationship_Request = _reflection.GeneratedProtocolMessageType('CPublishedFile_RemoveAppRelationship_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CPUBLISHEDFILE_REMOVEAPPRELATIONSHIP_REQUEST,
-  __module__ = 'steammessages_publishedfile_pb2'
+CPublishedFile_RemoveAppRelationship_Request = _reflection.GeneratedProtocolMessageType('CPublishedFile_RemoveAppRelationship_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPUBLISHEDFILE_REMOVEAPPRELATIONSHIP_REQUEST,
+  '__module__' : 'steammessages_publishedfile_pb2'
   # @@protoc_insertion_point(class_scope:CPublishedFile_RemoveAppRelationship_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CPublishedFile_RemoveAppRelationship_Request)
 
-CPublishedFile_RemoveAppRelationship_Response = _reflection.GeneratedProtocolMessageType('CPublishedFile_RemoveAppRelationship_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CPUBLISHEDFILE_REMOVEAPPRELATIONSHIP_RESPONSE,
-  __module__ = 'steammessages_publishedfile_pb2'
+CPublishedFile_RemoveAppRelationship_Response = _reflection.GeneratedProtocolMessageType('CPublishedFile_RemoveAppRelationship_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CPUBLISHEDFILE_REMOVEAPPRELATIONSHIP_RESPONSE,
+  '__module__' : 'steammessages_publishedfile_pb2'
   # @@protoc_insertion_point(class_scope:CPublishedFile_RemoveAppRelationship_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CPublishedFile_RemoveAppRelationship_Response)
 
-CPublishedFile_GetAppRelationships_Request = _reflection.GeneratedProtocolMessageType('CPublishedFile_GetAppRelationships_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CPUBLISHEDFILE_GETAPPRELATIONSHIPS_REQUEST,
-  __module__ = 'steammessages_publishedfile_pb2'
+CPublishedFile_GetAppRelationships_Request = _reflection.GeneratedProtocolMessageType('CPublishedFile_GetAppRelationships_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPUBLISHEDFILE_GETAPPRELATIONSHIPS_REQUEST,
+  '__module__' : 'steammessages_publishedfile_pb2'
   # @@protoc_insertion_point(class_scope:CPublishedFile_GetAppRelationships_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CPublishedFile_GetAppRelationships_Request)
 
-CPublishedFile_GetAppRelationships_Response = _reflection.GeneratedProtocolMessageType('CPublishedFile_GetAppRelationships_Response', (_message.Message,), dict(
+CPublishedFile_GetAppRelationships_Response = _reflection.GeneratedProtocolMessageType('CPublishedFile_GetAppRelationships_Response', (_message.Message,), {
 
-  AppRelationship = _reflection.GeneratedProtocolMessageType('AppRelationship', (_message.Message,), dict(
-    DESCRIPTOR = _CPUBLISHEDFILE_GETAPPRELATIONSHIPS_RESPONSE_APPRELATIONSHIP,
-    __module__ = 'steammessages_publishedfile_pb2'
+  'AppRelationship' : _reflection.GeneratedProtocolMessageType('AppRelationship', (_message.Message,), {
+    'DESCRIPTOR' : _CPUBLISHEDFILE_GETAPPRELATIONSHIPS_RESPONSE_APPRELATIONSHIP,
+    '__module__' : 'steammessages_publishedfile_pb2'
     # @@protoc_insertion_point(class_scope:CPublishedFile_GetAppRelationships_Response.AppRelationship)
-    ))
+    })
   ,
-  DESCRIPTOR = _CPUBLISHEDFILE_GETAPPRELATIONSHIPS_RESPONSE,
-  __module__ = 'steammessages_publishedfile_pb2'
+  'DESCRIPTOR' : _CPUBLISHEDFILE_GETAPPRELATIONSHIPS_RESPONSE,
+  '__module__' : 'steammessages_publishedfile_pb2'
   # @@protoc_insertion_point(class_scope:CPublishedFile_GetAppRelationships_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CPublishedFile_GetAppRelationships_Response)
 _sym_db.RegisterMessage(CPublishedFile_GetAppRelationships_Response.AppRelationship)
 
-CPublishedFile_StartPlaytimeTracking_Request = _reflection.GeneratedProtocolMessageType('CPublishedFile_StartPlaytimeTracking_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CPUBLISHEDFILE_STARTPLAYTIMETRACKING_REQUEST,
-  __module__ = 'steammessages_publishedfile_pb2'
+CPublishedFile_StartPlaytimeTracking_Request = _reflection.GeneratedProtocolMessageType('CPublishedFile_StartPlaytimeTracking_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPUBLISHEDFILE_STARTPLAYTIMETRACKING_REQUEST,
+  '__module__' : 'steammessages_publishedfile_pb2'
   # @@protoc_insertion_point(class_scope:CPublishedFile_StartPlaytimeTracking_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CPublishedFile_StartPlaytimeTracking_Request)
 
-CPublishedFile_StartPlaytimeTracking_Response = _reflection.GeneratedProtocolMessageType('CPublishedFile_StartPlaytimeTracking_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CPUBLISHEDFILE_STARTPLAYTIMETRACKING_RESPONSE,
-  __module__ = 'steammessages_publishedfile_pb2'
+CPublishedFile_StartPlaytimeTracking_Response = _reflection.GeneratedProtocolMessageType('CPublishedFile_StartPlaytimeTracking_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CPUBLISHEDFILE_STARTPLAYTIMETRACKING_RESPONSE,
+  '__module__' : 'steammessages_publishedfile_pb2'
   # @@protoc_insertion_point(class_scope:CPublishedFile_StartPlaytimeTracking_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CPublishedFile_StartPlaytimeTracking_Response)
 
-CPublishedFile_StopPlaytimeTracking_Request = _reflection.GeneratedProtocolMessageType('CPublishedFile_StopPlaytimeTracking_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CPUBLISHEDFILE_STOPPLAYTIMETRACKING_REQUEST,
-  __module__ = 'steammessages_publishedfile_pb2'
+CPublishedFile_StopPlaytimeTracking_Request = _reflection.GeneratedProtocolMessageType('CPublishedFile_StopPlaytimeTracking_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPUBLISHEDFILE_STOPPLAYTIMETRACKING_REQUEST,
+  '__module__' : 'steammessages_publishedfile_pb2'
   # @@protoc_insertion_point(class_scope:CPublishedFile_StopPlaytimeTracking_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CPublishedFile_StopPlaytimeTracking_Request)
 
-CPublishedFile_StopPlaytimeTracking_Response = _reflection.GeneratedProtocolMessageType('CPublishedFile_StopPlaytimeTracking_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CPUBLISHEDFILE_STOPPLAYTIMETRACKING_RESPONSE,
-  __module__ = 'steammessages_publishedfile_pb2'
+CPublishedFile_StopPlaytimeTracking_Response = _reflection.GeneratedProtocolMessageType('CPublishedFile_StopPlaytimeTracking_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CPUBLISHEDFILE_STOPPLAYTIMETRACKING_RESPONSE,
+  '__module__' : 'steammessages_publishedfile_pb2'
   # @@protoc_insertion_point(class_scope:CPublishedFile_StopPlaytimeTracking_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CPublishedFile_StopPlaytimeTracking_Response)
 
-CPublishedFile_StopPlaytimeTrackingForAllAppItems_Request = _reflection.GeneratedProtocolMessageType('CPublishedFile_StopPlaytimeTrackingForAllAppItems_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CPUBLISHEDFILE_STOPPLAYTIMETRACKINGFORALLAPPITEMS_REQUEST,
-  __module__ = 'steammessages_publishedfile_pb2'
+CPublishedFile_StopPlaytimeTrackingForAllAppItems_Request = _reflection.GeneratedProtocolMessageType('CPublishedFile_StopPlaytimeTrackingForAllAppItems_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPUBLISHEDFILE_STOPPLAYTIMETRACKINGFORALLAPPITEMS_REQUEST,
+  '__module__' : 'steammessages_publishedfile_pb2'
   # @@protoc_insertion_point(class_scope:CPublishedFile_StopPlaytimeTrackingForAllAppItems_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CPublishedFile_StopPlaytimeTrackingForAllAppItems_Request)
 
-CPublishedFile_StopPlaytimeTrackingForAllAppItems_Response = _reflection.GeneratedProtocolMessageType('CPublishedFile_StopPlaytimeTrackingForAllAppItems_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CPUBLISHEDFILE_STOPPLAYTIMETRACKINGFORALLAPPITEMS_RESPONSE,
-  __module__ = 'steammessages_publishedfile_pb2'
+CPublishedFile_StopPlaytimeTrackingForAllAppItems_Response = _reflection.GeneratedProtocolMessageType('CPublishedFile_StopPlaytimeTrackingForAllAppItems_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CPUBLISHEDFILE_STOPPLAYTIMETRACKINGFORALLAPPITEMS_RESPONSE,
+  '__module__' : 'steammessages_publishedfile_pb2'
   # @@protoc_insertion_point(class_scope:CPublishedFile_StopPlaytimeTrackingForAllAppItems_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CPublishedFile_StopPlaytimeTrackingForAllAppItems_Response)
 
-CPublishedFile_SetPlaytimeForControllerConfigs_Request = _reflection.GeneratedProtocolMessageType('CPublishedFile_SetPlaytimeForControllerConfigs_Request', (_message.Message,), dict(
+CPublishedFile_SetPlaytimeForControllerConfigs_Request = _reflection.GeneratedProtocolMessageType('CPublishedFile_SetPlaytimeForControllerConfigs_Request', (_message.Message,), {
 
-  ControllerConfigUsage = _reflection.GeneratedProtocolMessageType('ControllerConfigUsage', (_message.Message,), dict(
-    DESCRIPTOR = _CPUBLISHEDFILE_SETPLAYTIMEFORCONTROLLERCONFIGS_REQUEST_CONTROLLERCONFIGUSAGE,
-    __module__ = 'steammessages_publishedfile_pb2'
+  'ControllerConfigUsage' : _reflection.GeneratedProtocolMessageType('ControllerConfigUsage', (_message.Message,), {
+    'DESCRIPTOR' : _CPUBLISHEDFILE_SETPLAYTIMEFORCONTROLLERCONFIGS_REQUEST_CONTROLLERCONFIGUSAGE,
+    '__module__' : 'steammessages_publishedfile_pb2'
     # @@protoc_insertion_point(class_scope:CPublishedFile_SetPlaytimeForControllerConfigs_Request.ControllerConfigUsage)
-    ))
+    })
   ,
-  DESCRIPTOR = _CPUBLISHEDFILE_SETPLAYTIMEFORCONTROLLERCONFIGS_REQUEST,
-  __module__ = 'steammessages_publishedfile_pb2'
+  'DESCRIPTOR' : _CPUBLISHEDFILE_SETPLAYTIMEFORCONTROLLERCONFIGS_REQUEST,
+  '__module__' : 'steammessages_publishedfile_pb2'
   # @@protoc_insertion_point(class_scope:CPublishedFile_SetPlaytimeForControllerConfigs_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CPublishedFile_SetPlaytimeForControllerConfigs_Request)
 _sym_db.RegisterMessage(CPublishedFile_SetPlaytimeForControllerConfigs_Request.ControllerConfigUsage)
 
-CPublishedFile_SetPlaytimeForControllerConfigs_Response = _reflection.GeneratedProtocolMessageType('CPublishedFile_SetPlaytimeForControllerConfigs_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CPUBLISHEDFILE_SETPLAYTIMEFORCONTROLLERCONFIGS_RESPONSE,
-  __module__ = 'steammessages_publishedfile_pb2'
+CPublishedFile_SetPlaytimeForControllerConfigs_Response = _reflection.GeneratedProtocolMessageType('CPublishedFile_SetPlaytimeForControllerConfigs_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CPUBLISHEDFILE_SETPLAYTIMEFORCONTROLLERCONFIGS_RESPONSE,
+  '__module__' : 'steammessages_publishedfile_pb2'
   # @@protoc_insertion_point(class_scope:CPublishedFile_SetPlaytimeForControllerConfigs_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CPublishedFile_SetPlaytimeForControllerConfigs_Response)
 
-CPublishedFile_AddChild_Request = _reflection.GeneratedProtocolMessageType('CPublishedFile_AddChild_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CPUBLISHEDFILE_ADDCHILD_REQUEST,
-  __module__ = 'steammessages_publishedfile_pb2'
+CPublishedFile_AddChild_Request = _reflection.GeneratedProtocolMessageType('CPublishedFile_AddChild_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPUBLISHEDFILE_ADDCHILD_REQUEST,
+  '__module__' : 'steammessages_publishedfile_pb2'
   # @@protoc_insertion_point(class_scope:CPublishedFile_AddChild_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CPublishedFile_AddChild_Request)
 
-CPublishedFile_AddChild_Response = _reflection.GeneratedProtocolMessageType('CPublishedFile_AddChild_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CPUBLISHEDFILE_ADDCHILD_RESPONSE,
-  __module__ = 'steammessages_publishedfile_pb2'
+CPublishedFile_AddChild_Response = _reflection.GeneratedProtocolMessageType('CPublishedFile_AddChild_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CPUBLISHEDFILE_ADDCHILD_RESPONSE,
+  '__module__' : 'steammessages_publishedfile_pb2'
   # @@protoc_insertion_point(class_scope:CPublishedFile_AddChild_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CPublishedFile_AddChild_Response)
 
-CPublishedFile_RemoveChild_Request = _reflection.GeneratedProtocolMessageType('CPublishedFile_RemoveChild_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CPUBLISHEDFILE_REMOVECHILD_REQUEST,
-  __module__ = 'steammessages_publishedfile_pb2'
+CPublishedFile_RemoveChild_Request = _reflection.GeneratedProtocolMessageType('CPublishedFile_RemoveChild_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPUBLISHEDFILE_REMOVECHILD_REQUEST,
+  '__module__' : 'steammessages_publishedfile_pb2'
   # @@protoc_insertion_point(class_scope:CPublishedFile_RemoveChild_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CPublishedFile_RemoveChild_Request)
 
-CPublishedFile_RemoveChild_Response = _reflection.GeneratedProtocolMessageType('CPublishedFile_RemoveChild_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CPUBLISHEDFILE_REMOVECHILD_RESPONSE,
-  __module__ = 'steammessages_publishedfile_pb2'
+CPublishedFile_RemoveChild_Response = _reflection.GeneratedProtocolMessageType('CPublishedFile_RemoveChild_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CPUBLISHEDFILE_REMOVECHILD_RESPONSE,
+  '__module__' : 'steammessages_publishedfile_pb2'
   # @@protoc_insertion_point(class_scope:CPublishedFile_RemoveChild_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CPublishedFile_RemoveChild_Response)
 
-CPublishedFile_GetUserVoteSummary_Request = _reflection.GeneratedProtocolMessageType('CPublishedFile_GetUserVoteSummary_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CPUBLISHEDFILE_GETUSERVOTESUMMARY_REQUEST,
-  __module__ = 'steammessages_publishedfile_pb2'
+CPublishedFile_GetUserVoteSummary_Request = _reflection.GeneratedProtocolMessageType('CPublishedFile_GetUserVoteSummary_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPUBLISHEDFILE_GETUSERVOTESUMMARY_REQUEST,
+  '__module__' : 'steammessages_publishedfile_pb2'
   # @@protoc_insertion_point(class_scope:CPublishedFile_GetUserVoteSummary_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CPublishedFile_GetUserVoteSummary_Request)
 
-CPublishedFile_GetUserVoteSummary_Response = _reflection.GeneratedProtocolMessageType('CPublishedFile_GetUserVoteSummary_Response', (_message.Message,), dict(
+CPublishedFile_GetUserVoteSummary_Response = _reflection.GeneratedProtocolMessageType('CPublishedFile_GetUserVoteSummary_Response', (_message.Message,), {
 
-  VoteSummary = _reflection.GeneratedProtocolMessageType('VoteSummary', (_message.Message,), dict(
-    DESCRIPTOR = _CPUBLISHEDFILE_GETUSERVOTESUMMARY_RESPONSE_VOTESUMMARY,
-    __module__ = 'steammessages_publishedfile_pb2'
+  'VoteSummary' : _reflection.GeneratedProtocolMessageType('VoteSummary', (_message.Message,), {
+    'DESCRIPTOR' : _CPUBLISHEDFILE_GETUSERVOTESUMMARY_RESPONSE_VOTESUMMARY,
+    '__module__' : 'steammessages_publishedfile_pb2'
     # @@protoc_insertion_point(class_scope:CPublishedFile_GetUserVoteSummary_Response.VoteSummary)
-    ))
+    })
   ,
-  DESCRIPTOR = _CPUBLISHEDFILE_GETUSERVOTESUMMARY_RESPONSE,
-  __module__ = 'steammessages_publishedfile_pb2'
+  'DESCRIPTOR' : _CPUBLISHEDFILE_GETUSERVOTESUMMARY_RESPONSE,
+  '__module__' : 'steammessages_publishedfile_pb2'
   # @@protoc_insertion_point(class_scope:CPublishedFile_GetUserVoteSummary_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CPublishedFile_GetUserVoteSummary_Response)
 _sym_db.RegisterMessage(CPublishedFile_GetUserVoteSummary_Response.VoteSummary)
 
-CPublishedFile_GetItemChanges_Request = _reflection.GeneratedProtocolMessageType('CPublishedFile_GetItemChanges_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CPUBLISHEDFILE_GETITEMCHANGES_REQUEST,
-  __module__ = 'steammessages_publishedfile_pb2'
+CPublishedFile_GetItemChanges_Request = _reflection.GeneratedProtocolMessageType('CPublishedFile_GetItemChanges_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CPUBLISHEDFILE_GETITEMCHANGES_REQUEST,
+  '__module__' : 'steammessages_publishedfile_pb2'
   # @@protoc_insertion_point(class_scope:CPublishedFile_GetItemChanges_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CPublishedFile_GetItemChanges_Request)
 
-CPublishedFile_GetItemChanges_Response = _reflection.GeneratedProtocolMessageType('CPublishedFile_GetItemChanges_Response', (_message.Message,), dict(
+CPublishedFile_GetItemChanges_Response = _reflection.GeneratedProtocolMessageType('CPublishedFile_GetItemChanges_Response', (_message.Message,), {
 
-  WorkshopItemInfo = _reflection.GeneratedProtocolMessageType('WorkshopItemInfo', (_message.Message,), dict(
-    DESCRIPTOR = _CPUBLISHEDFILE_GETITEMCHANGES_RESPONSE_WORKSHOPITEMINFO,
-    __module__ = 'steammessages_publishedfile_pb2'
+  'WorkshopItemInfo' : _reflection.GeneratedProtocolMessageType('WorkshopItemInfo', (_message.Message,), {
+    'DESCRIPTOR' : _CPUBLISHEDFILE_GETITEMCHANGES_RESPONSE_WORKSHOPITEMINFO,
+    '__module__' : 'steammessages_publishedfile_pb2'
     # @@protoc_insertion_point(class_scope:CPublishedFile_GetItemChanges_Response.WorkshopItemInfo)
-    ))
+    })
   ,
-  DESCRIPTOR = _CPUBLISHEDFILE_GETITEMCHANGES_RESPONSE,
-  __module__ = 'steammessages_publishedfile_pb2'
+  'DESCRIPTOR' : _CPUBLISHEDFILE_GETITEMCHANGES_RESPONSE,
+  '__module__' : 'steammessages_publishedfile_pb2'
   # @@protoc_insertion_point(class_scope:CPublishedFile_GetItemChanges_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CPublishedFile_GetItemChanges_Response)
 _sym_db.RegisterMessage(CPublishedFile_GetItemChanges_Response.WorkshopItemInfo)
 
-CPublishedFile_FileSubscribed_Notification = _reflection.GeneratedProtocolMessageType('CPublishedFile_FileSubscribed_Notification', (_message.Message,), dict(
+CPublishedFile_FileSubscribed_Notification = _reflection.GeneratedProtocolMessageType('CPublishedFile_FileSubscribed_Notification', (_message.Message,), {
 
-  RevisionData = _reflection.GeneratedProtocolMessageType('RevisionData', (_message.Message,), dict(
-    DESCRIPTOR = _CPUBLISHEDFILE_FILESUBSCRIBED_NOTIFICATION_REVISIONDATA,
-    __module__ = 'steammessages_publishedfile_pb2'
+  'RevisionData' : _reflection.GeneratedProtocolMessageType('RevisionData', (_message.Message,), {
+    'DESCRIPTOR' : _CPUBLISHEDFILE_FILESUBSCRIBED_NOTIFICATION_REVISIONDATA,
+    '__module__' : 'steammessages_publishedfile_pb2'
     # @@protoc_insertion_point(class_scope:CPublishedFile_FileSubscribed_Notification.RevisionData)
-    ))
+    })
   ,
-  DESCRIPTOR = _CPUBLISHEDFILE_FILESUBSCRIBED_NOTIFICATION,
-  __module__ = 'steammessages_publishedfile_pb2'
+  'DESCRIPTOR' : _CPUBLISHEDFILE_FILESUBSCRIBED_NOTIFICATION,
+  '__module__' : 'steammessages_publishedfile_pb2'
   # @@protoc_insertion_point(class_scope:CPublishedFile_FileSubscribed_Notification)
-  ))
+  })
 _sym_db.RegisterMessage(CPublishedFile_FileSubscribed_Notification)
 _sym_db.RegisterMessage(CPublishedFile_FileSubscribed_Notification.RevisionData)
 
-CPublishedFile_FileUnsubscribed_Notification = _reflection.GeneratedProtocolMessageType('CPublishedFile_FileUnsubscribed_Notification', (_message.Message,), dict(
-  DESCRIPTOR = _CPUBLISHEDFILE_FILEUNSUBSCRIBED_NOTIFICATION,
-  __module__ = 'steammessages_publishedfile_pb2'
+CPublishedFile_FileUnsubscribed_Notification = _reflection.GeneratedProtocolMessageType('CPublishedFile_FileUnsubscribed_Notification', (_message.Message,), {
+  'DESCRIPTOR' : _CPUBLISHEDFILE_FILEUNSUBSCRIBED_NOTIFICATION,
+  '__module__' : 'steammessages_publishedfile_pb2'
   # @@protoc_insertion_point(class_scope:CPublishedFile_FileUnsubscribed_Notification)
-  ))
+  })
 _sym_db.RegisterMessage(CPublishedFile_FileUnsubscribed_Notification)
 
-CPublishedFile_FileDeleted_Client_Notification = _reflection.GeneratedProtocolMessageType('CPublishedFile_FileDeleted_Client_Notification', (_message.Message,), dict(
-  DESCRIPTOR = _CPUBLISHEDFILE_FILEDELETED_CLIENT_NOTIFICATION,
-  __module__ = 'steammessages_publishedfile_pb2'
+CPublishedFile_FileDeleted_Client_Notification = _reflection.GeneratedProtocolMessageType('CPublishedFile_FileDeleted_Client_Notification', (_message.Message,), {
+  'DESCRIPTOR' : _CPUBLISHEDFILE_FILEDELETED_CLIENT_NOTIFICATION,
+  '__module__' : 'steammessages_publishedfile_pb2'
   # @@protoc_insertion_point(class_scope:CPublishedFile_FileDeleted_Client_Notification)
-  ))
+  })
 _sym_db.RegisterMessage(CPublishedFile_FileDeleted_Client_Notification)
 
 
 DESCRIPTOR._options = None
+_CPUBLISHEDFILE_GETSUBSECTIONDATA_REQUEST.fields_by_name['desired_revision']._options = None
 _CPUBLISHEDFILE_PUBLISH_REQUEST.fields_by_name['appid']._options = None
 _CPUBLISHEDFILE_PUBLISH_REQUEST.fields_by_name['consumer_appid']._options = None
 _CPUBLISHEDFILE_PUBLISH_REQUEST.fields_by_name['cloudfilename']._options = None
@@ -4972,6 +5392,7 @@ _CPUBLISHEDFILE_GETUSERFILES_REQUEST.fields_by_name['strip_description_bbcode'].
 _CPUBLISHEDFILE_GETUSERFILES_REQUEST.fields_by_name['return_reactions']._options = None
 _CPUBLISHEDFILE_GETUSERFILES_REQUEST.fields_by_name['startindex_override']._options = None
 _CPUBLISHEDFILE_GETUSERFILES_REQUEST.fields_by_name['desired_revision']._options = None
+_CPUBLISHEDFILE_GETUSERFILES_REQUEST.fields_by_name['return_apps']._options = None
 _CPUBLISHEDFILE_AREFILESINSUBSCRIPTIONLIST_REQUEST.fields_by_name['listtype']._options = None
 _CPUBLISHEDFILE_AREFILESINSUBSCRIPTIONLIST_REQUEST.fields_by_name['filetype']._options = None
 _CPUBLISHEDFILE_AREFILESINSUBSCRIPTIONLIST_REQUEST.fields_by_name['workshopfiletype']._options = None
@@ -4983,8 +5404,10 @@ _CPUBLISHEDFILE_UPDATE_REQUEST.fields_by_name['visibility']._options = None
 _CPUBLISHEDFILE_UPDATE_REQUEST.fields_by_name['tags']._options = None
 _CPUBLISHEDFILE_UPDATE_REQUEST.fields_by_name['filename']._options = None
 _CPUBLISHEDFILE_UPDATE_REQUEST.fields_by_name['preview_filename']._options = None
+_CPUBLISHEDFILE_UPDATE_REQUEST.fields_by_name['spoiler_tag']._options = None
 _CPUBLISHEDFILE_UPDATE_REQUEST.fields_by_name['image_width']._options = None
 _CPUBLISHEDFILE_UPDATE_REQUEST.fields_by_name['image_height']._options = None
+_CPUBLISHEDFILE_DELETE_REQUEST.fields_by_name['publishedfileid']._options = None
 _CPUBLISHEDFILE_GETCHANGEHISTORYENTRY_REQUEST.fields_by_name['publishedfileid']._options = None
 _CPUBLISHEDFILE_GETCHANGEHISTORY_REQUEST.fields_by_name['publishedfileid']._options = None
 _CPUBLISHEDFILE_GETCHANGEHISTORY_REQUEST.fields_by_name['total_only']._options = None
@@ -5052,225 +5475,290 @@ _PUBLISHEDFILE = _descriptor.ServiceDescriptor(
   full_name='PublishedFile',
   file=DESCRIPTOR,
   index=0,
-  serialized_options=_b('\202\265\030\'A service to access published file data'),
-  serialized_start=21146,
-  serialized_end=25221,
+  serialized_options=b'\202\265\030\'A service to access published file data',
+  create_key=_descriptor._internal_create_key,
+  serialized_start=22052,
+  serialized_end=26743,
   methods=[
+  _descriptor.MethodDescriptor(
+    name='Vote',
+    full_name='PublishedFile.Vote',
+    index=0,
+    containing_service=None,
+    input_type=_CPUBLISHEDFILE_VOTE_REQUEST,
+    output_type=_CPUBLISHEDFILE_VOTE_RESPONSE,
+    serialized_options=b'\202\265\030\036User wants to vote on the item',
+    create_key=_descriptor._internal_create_key,
+  ),
   _descriptor.MethodDescriptor(
     name='Subscribe',
     full_name='PublishedFile.Subscribe',
-    index=0,
+    index=1,
     containing_service=None,
     input_type=_CPUBLISHEDFILE_SUBSCRIBE_REQUEST,
     output_type=_CPUBLISHEDFILE_SUBSCRIBE_RESPONSE,
-    serialized_options=_b('\202\265\030)Subscribes the user to the published file'),
+    serialized_options=b'\202\265\030)Subscribes the user to the published file',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='Unsubscribe',
     full_name='PublishedFile.Unsubscribe',
-    index=1,
+    index=2,
     containing_service=None,
     input_type=_CPUBLISHEDFILE_UNSUBSCRIBE_REQUEST,
     output_type=_CPUBLISHEDFILE_UNSUBSCRIBE_RESPONSE,
-    serialized_options=_b('\202\265\030-Unsubscribes the user from the published file'),
+    serialized_options=b'\202\265\030-Unsubscribes the user from the published file',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='CanSubscribe',
     full_name='PublishedFile.CanSubscribe',
-    index=2,
+    index=3,
     containing_service=None,
     input_type=_CPUBLISHEDFILE_CANSUBSCRIBE_REQUEST,
     output_type=_CPUBLISHEDFILE_CANSUBSCRIBE_RESPONSE,
-    serialized_options=_b('\202\265\0305Check if the user can subscribe to the published file'),
+    serialized_options=b'\202\265\0305Check if the user can subscribe to the published file',
+    create_key=_descriptor._internal_create_key,
+  ),
+  _descriptor.MethodDescriptor(
+    name='GetSubSectionData',
+    full_name='PublishedFile.GetSubSectionData',
+    index=4,
+    containing_service=None,
+    input_type=_CPUBLISHEDFILE_GETSUBSECTIONDATA_REQUEST,
+    output_type=_CPUBLISHEDFILE_GETSUBSECTIONDATA_RESPONSE,
+    serialized_options=b'\202\265\030HGet sub section data (for table of contents, a specific section, or all)',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='Publish',
     full_name='PublishedFile.Publish',
-    index=3,
+    index=5,
     containing_service=None,
     input_type=_CPUBLISHEDFILE_PUBLISH_REQUEST,
     output_type=_CPUBLISHEDFILE_PUBLISH_RESPONSE,
-    serialized_options=_b('\202\265\030.Publishes a clouded user file to the Workshop.'),
+    serialized_options=b'\202\265\030.Publishes a clouded user file to the Workshop.',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetDetails',
     full_name='PublishedFile.GetDetails',
-    index=4,
+    index=6,
     containing_service=None,
     input_type=_CPUBLISHEDFILE_GETDETAILS_REQUEST,
     output_type=_CPUBLISHEDFILE_GETDETAILS_RESPONSE,
-    serialized_options=_b('\202\265\0305Retrieves information about a set of published files.'),
+    serialized_options=b'\202\265\0305Retrieves information about a set of published files.',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetItemInfo',
     full_name='PublishedFile.GetItemInfo',
-    index=5,
+    index=7,
     containing_service=None,
     input_type=_CPUBLISHEDFILE_GETITEMINFO_REQUEST,
     output_type=_CPUBLISHEDFILE_GETITEMINFO_RESPONSE,
-    serialized_options=_b('\202\265\0305Retrieves information about a set of published files.'),
+    serialized_options=b'\202\265\0305Retrieves information about a set of published files.',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetUserFiles',
     full_name='PublishedFile.GetUserFiles',
-    index=6,
+    index=8,
+    containing_service=None,
+    input_type=_CPUBLISHEDFILE_GETUSERFILES_REQUEST,
+    output_type=_CPUBLISHEDFILE_GETUSERFILES_RESPONSE,
+    serialized_options=b'\202\265\030$Retrieves files published by a user.',
+    create_key=_descriptor._internal_create_key,
+  ),
+  _descriptor.MethodDescriptor(
+    name='GetUserFileCount',
+    full_name='PublishedFile.GetUserFileCount',
+    index=9,
     containing_service=None,
     input_type=_CPUBLISHEDFILE_GETUSERFILES_REQUEST,
     output_type=_CPUBLISHEDFILE_GETUSERFILES_RESPONSE,
-    serialized_options=_b('\202\265\030$Retrieves files published by a user.'),
+    serialized_options=b'\202\265\030rRetrieves a count of files published by a user. Uses the same messages as GetUserFiles but totalonly must be true.',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='AreFilesInSubscriptionList',
     full_name='PublishedFile.AreFilesInSubscriptionList',
-    index=7,
+    index=10,
     containing_service=None,
     input_type=_CPUBLISHEDFILE_AREFILESINSUBSCRIPTIONLIST_REQUEST,
     output_type=_CPUBLISHEDFILE_AREFILESINSUBSCRIPTIONLIST_RESPONSE,
-    serialized_options=_b('\202\265\030JDetermines which files in the given list are in a user\'s subscription list'),
+    serialized_options=b'\202\265\030JDetermines which files in the given list are in a user\'s subscription list',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='Update',
     full_name='PublishedFile.Update',
-    index=8,
+    index=11,
     containing_service=None,
     input_type=_CPUBLISHEDFILE_UPDATE_REQUEST,
     output_type=_CPUBLISHEDFILE_UPDATE_RESPONSE,
-    serialized_options=_b('\202\265\030+Updates information about a published file.'),
+    serialized_options=b'\202\265\030+Updates information about a published file.',
+    create_key=_descriptor._internal_create_key,
+  ),
+  _descriptor.MethodDescriptor(
+    name='Delete',
+    full_name='PublishedFile.Delete',
+    index=12,
+    containing_service=None,
+    input_type=_CPUBLISHEDFILE_DELETE_REQUEST,
+    output_type=_CPUBLISHEDFILE_DELETE_RESPONSE,
+    serialized_options=b'\202\265\030\031Deletes a published file.',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetChangeHistoryEntry',
     full_name='PublishedFile.GetChangeHistoryEntry',
-    index=9,
+    index=13,
     containing_service=None,
     input_type=_CPUBLISHEDFILE_GETCHANGEHISTORYENTRY_REQUEST,
     output_type=_CPUBLISHEDFILE_GETCHANGEHISTORYENTRY_RESPONSE,
-    serialized_options=_b('\202\265\030DReturns data on a specific change history entry for a published file'),
+    serialized_options=b'\202\265\030DReturns data on a specific change history entry for a published file',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetChangeHistory',
     full_name='PublishedFile.GetChangeHistory',
-    index=10,
+    index=14,
     containing_service=None,
     input_type=_CPUBLISHEDFILE_GETCHANGEHISTORY_REQUEST,
     output_type=_CPUBLISHEDFILE_GETCHANGEHISTORY_RESPONSE,
-    serialized_options=_b('\202\265\0307Returns data on the change history for a published file'),
+    serialized_options=b'\202\265\0307Returns data on the change history for a published file',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='RefreshVotingQueue',
     full_name='PublishedFile.RefreshVotingQueue',
-    index=11,
+    index=15,
     containing_service=None,
     input_type=_CPUBLISHEDFILE_REFRESHVOTINGQUEUE_REQUEST,
     output_type=_CPUBLISHEDFILE_REFRESHVOTINGQUEUE_RESPONSE,
-    serialized_options=_b('\202\265\030%Refresh the voting queue for the user'),
+    serialized_options=b'\202\265\030%Refresh the voting queue for the user',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='QueryFiles',
     full_name='PublishedFile.QueryFiles',
-    index=12,
+    index=16,
     containing_service=None,
     input_type=_CPUBLISHEDFILE_QUERYFILES_REQUEST,
     output_type=_CPUBLISHEDFILE_QUERYFILES_RESPONSE,
-    serialized_options=_b('\202\265\030+Performs a search query for published files'),
+    serialized_options=b'\202\265\030+Performs a search query for published files',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='AddAppRelationship',
     full_name='PublishedFile.AddAppRelationship',
-    index=13,
+    index=17,
     containing_service=None,
     input_type=_CPUBLISHEDFILE_ADDAPPRELATIONSHIP_REQUEST,
     output_type=_CPUBLISHEDFILE_ADDAPPRELATIONSHIP_RESPONSE,
-    serialized_options=_b('\202\265\030@Adds a relationship between the published file and the given app'),
+    serialized_options=b'\202\265\030@Adds a relationship between the published file and the given app',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='RemoveAppRelationship',
     full_name='PublishedFile.RemoveAppRelationship',
-    index=14,
+    index=18,
     containing_service=None,
     input_type=_CPUBLISHEDFILE_REMOVEAPPRELATIONSHIP_REQUEST,
     output_type=_CPUBLISHEDFILE_REMOVEAPPRELATIONSHIP_RESPONSE,
-    serialized_options=_b('\202\265\030BRemove a relationship between the published file and the given app'),
+    serialized_options=b'\202\265\030BRemove a relationship between the published file and the given app',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetAppRelationships',
     full_name='PublishedFile.GetAppRelationships',
-    index=15,
+    index=19,
     containing_service=None,
     input_type=_CPUBLISHEDFILE_GETAPPRELATIONSHIPS_REQUEST,
     output_type=_CPUBLISHEDFILE_GETAPPRELATIONSHIPS_RESPONSE,
-    serialized_options=_b('\202\265\030=Returns the list of app relationships for this published file'),
+    serialized_options=b'\202\265\030=Returns the list of app relationships for this published file',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='StartPlaytimeTracking',
     full_name='PublishedFile.StartPlaytimeTracking',
-    index=16,
+    index=20,
     containing_service=None,
     input_type=_CPUBLISHEDFILE_STARTPLAYTIMETRACKING_REQUEST,
     output_type=_CPUBLISHEDFILE_STARTPLAYTIMETRACKING_RESPONSE,
-    serialized_options=_b('\202\265\0307Start usage tracking for a given set of published files'),
+    serialized_options=b'\202\265\0307Start usage tracking for a given set of published files',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='StopPlaytimeTracking',
     full_name='PublishedFile.StopPlaytimeTracking',
-    index=17,
+    index=21,
     containing_service=None,
     input_type=_CPUBLISHEDFILE_STOPPLAYTIMETRACKING_REQUEST,
     output_type=_CPUBLISHEDFILE_STOPPLAYTIMETRACKING_RESPONSE,
-    serialized_options=_b('\202\265\0307Stops usage tracking for a given set of published files'),
+    serialized_options=b'\202\265\0307Stops usage tracking for a given set of published files',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='StopPlaytimeTrackingForAllAppItems',
     full_name='PublishedFile.StopPlaytimeTrackingForAllAppItems',
-    index=18,
+    index=22,
     containing_service=None,
     input_type=_CPUBLISHEDFILE_STOPPLAYTIMETRACKINGFORALLAPPITEMS_REQUEST,
     output_type=_CPUBLISHEDFILE_STOPPLAYTIMETRACKINGFORALLAPPITEMS_RESPONSE,
-    serialized_options=_b('\202\265\030JStops usage tracking for all items currently tracked for the specified app'),
+    serialized_options=b'\202\265\030JStops usage tracking for all items currently tracked for the specified app',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='SetPlaytimeForControllerConfigs',
     full_name='PublishedFile.SetPlaytimeForControllerConfigs',
-    index=19,
+    index=23,
     containing_service=None,
     input_type=_CPUBLISHEDFILE_SETPLAYTIMEFORCONTROLLERCONFIGS_REQUEST,
     output_type=_CPUBLISHEDFILE_SETPLAYTIMEFORCONTROLLERCONFIGS_RESPONSE,
-    serialized_options=_b('\202\265\030}Stops usage tracking all controller configs for the given app and set the usage time for the for the given controller configs'),
+    serialized_options=b'\202\265\030}Stops usage tracking all controller configs for the given app and set the usage time for the for the given controller configs',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='AddChild',
     full_name='PublishedFile.AddChild',
-    index=20,
+    index=24,
     containing_service=None,
     input_type=_CPUBLISHEDFILE_ADDCHILD_REQUEST,
     output_type=_CPUBLISHEDFILE_ADDCHILD_RESPONSE,
-    serialized_options=_b('\202\265\030:Adds a parent->child relationship between the given items.'),
+    serialized_options=b'\202\265\030:Adds a parent->child relationship between the given items.',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='RemoveChild',
     full_name='PublishedFile.RemoveChild',
-    index=21,
+    index=25,
     containing_service=None,
     input_type=_CPUBLISHEDFILE_REMOVECHILD_REQUEST,
     output_type=_CPUBLISHEDFILE_REMOVECHILD_RESPONSE,
-    serialized_options=_b('\202\265\030;Removes parent->child relationship between the given items.'),
+    serialized_options=b'\202\265\030;Removes parent->child relationship between the given items.',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetUserVoteSummary',
     full_name='PublishedFile.GetUserVoteSummary',
-    index=22,
+    index=26,
     containing_service=None,
     input_type=_CPUBLISHEDFILE_GETUSERVOTESUMMARY_REQUEST,
     output_type=_CPUBLISHEDFILE_GETUSERVOTESUMMARY_RESPONSE,
-    serialized_options=_b('\202\265\030\025Get user vote summary'),
+    serialized_options=b'\202\265\030\025Get user vote summary',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetItemChanges',
     full_name='PublishedFile.GetItemChanges',
-    index=23,
+    index=27,
     containing_service=None,
     input_type=_CPUBLISHEDFILE_GETITEMCHANGES_REQUEST,
     output_type=_CPUBLISHEDFILE_GETITEMCHANGES_RESPONSE,
-    serialized_options=_b('\202\265\030*Get list of updated items since given date'),
+    serialized_options=b'\202\265\030*Get list of updated items since given date',
+    create_key=_descriptor._internal_create_key,
   ),
 ])
 _sym_db.RegisterServiceDescriptor(_PUBLISHEDFILE)
@@ -5283,9 +5771,10 @@ _PUBLISHEDFILECLIENT = _descriptor.ServiceDescriptor(
   full_name='PublishedFileClient',
   file=DESCRIPTOR,
   index=1,
-  serialized_options=_b('\202\265\030#Published file client notifications\300\265\030\002'),
-  serialized_start=25224,
-  serialized_end=25749,
+  serialized_options=b'\202\265\030#Published file client notifications\300\265\030\002',
+  create_key=_descriptor._internal_create_key,
+  serialized_start=26746,
+  serialized_end=27271,
   methods=[
   _descriptor.MethodDescriptor(
     name='NotifyFileSubscribed',
@@ -5294,7 +5783,8 @@ _PUBLISHEDFILECLIENT = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CPUBLISHEDFILE_FILESUBSCRIBED_NOTIFICATION,
     output_type=steammessages__unified__base__pb2._NORESPONSE,
-    serialized_options=_b('\202\265\030=Notification from the server when a user subscribes to a file'),
+    serialized_options=b'\202\265\030=Notification from the server when a user subscribes to a file',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='NotifyFileUnsubscribed',
@@ -5303,7 +5793,8 @@ _PUBLISHEDFILECLIENT = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CPUBLISHEDFILE_FILEUNSUBSCRIBED_NOTIFICATION,
     output_type=steammessages__unified__base__pb2._NORESPONSE,
-    serialized_options=_b('\202\265\030ANotification from the server when a user unsubscribes from a file'),
+    serialized_options=b'\202\265\030ANotification from the server when a user unsubscribes from a file',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='NotifyFileDeleted',
@@ -5312,7 +5803,8 @@ _PUBLISHEDFILECLIENT = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CPUBLISHEDFILE_FILEDELETED_CLIENT_NOTIFICATION,
     output_type=steammessages__unified__base__pb2._NORESPONSE,
-    serialized_options=_b('\202\265\030=Notification from the server when a published file is deleted'),
+    serialized_options=b'\202\265\030=Notification from the server when a published file is deleted',
+    create_key=_descriptor._internal_create_key,
   ),
 ])
 _sym_db.RegisterServiceDescriptor(_PUBLISHEDFILECLIENT)
diff --git a/steam/protobufs/steammessages_qms_pb2.py b/steam/protobufs/steammessages_qms_pb2.py
index acac639..a22031b 100644
--- a/steam/protobufs/steammessages_qms_pb2.py
+++ b/steam/protobufs/steammessages_qms_pb2.py
@@ -1,9 +1,7 @@
 # -*- coding: utf-8 -*-
 # Generated by the protocol buffer compiler.  DO NOT EDIT!
 # source: steammessages_qms.proto
-
-import sys
-_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1'))
+"""Generated protocol buffer code."""
 from google.protobuf.internal import enum_type_wrapper
 from google.protobuf import descriptor as _descriptor
 from google.protobuf import message as _message
@@ -16,6 +14,7 @@ from google.protobuf import service_reflection
 _sym_db = _symbol_database.Default()
 
 
+import steam.protobufs.steammessages_base_pb2 as steammessages__base__pb2
 import steam.protobufs.steammessages_unified_base_pb2 as steammessages__unified__base__pb2
 
 
@@ -23,38 +22,44 @@ DESCRIPTOR = _descriptor.FileDescriptor(
   name='steammessages_qms.proto',
   package='',
   syntax='proto2',
-  serialized_options=_b('\220\001\001'),
-  serialized_pb=_b('\n\x17steammessages_qms.proto\x1a steammessages_unified_base.proto\"2\n\x0fGameSearchParam\x12\x10\n\x08key_name\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x03(\t\"\xe9\x01\n(CQueuedMatchmaking_SearchForGame_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12<\n\x06\x61\x63tion\x18\x02 \x01(\x0e\x32\x12.EGameSearchAction:\x18k_EGameSearchAction_None\x12 \n\x06params\x18\x03 \x03(\x0b\x32\x10.GameSearchParam\x12\x12\n\nplayer_min\x18\x04 \x01(\r\x12\x12\n\nplayer_max\x18\x05 \x01(\r\x12\x14\n\x0csteamidlobby\x18\x06 \x01(\x06\x12\x10\n\x08searchid\x18\x07 \x01(\x04\"\x87\x03\n)CQueuedMatchmaking_SearchForGame_Response\x12I\n\x10gamesearchresult\x18\x01 \x01(\x0e\x32\x12.EGameSearchResult:\x1bk_EGameSearchResult_Invalid\x12\x10\n\x08searchid\x18\x02 \x01(\x04\x12\x1d\n\x15seconds_time_estimate\x18\x03 \x01(\r\x12\x16\n\x0epoll_frequency\x18\x04 \x01(\r\x12\x17\n\x0f\x63ount_searching\x18\x05 \x01(\r\x12\x18\n\x10players_in_match\x18\x06 \x01(\r\x12\x18\n\x10players_accepted\x18\x07 \x01(\r\x12\x16\n\x0e\x63onnect_string\x18\t \x01(\t\x12\x13\n\x0bsteamidhost\x18\n \x01(\x06\x12\x18\n\x10rtime_match_made\x18\x0b \x01(\r\x12\x11\n\trtime_now\x18\x0c \x01(\r\x12\x1f\n\x17steamid_canceled_search\x18\r \x01(\x06\"\x97\x02\n3CQueuedMatchmakingGameHost_SearchForPlayers_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12<\n\x06\x61\x63tion\x18\x02 \x01(\x0e\x32\x12.EGameSearchAction:\x18k_EGameSearchAction_None\x12 \n\x06params\x18\x03 \x03(\x0b\x32\x10.GameSearchParam\x12\x12\n\nplayer_min\x18\x04 \x01(\r\x12\x12\n\nplayer_max\x18\x05 \x01(\r\x12\x1c\n\x14player_max_team_size\x18\x06 \x01(\r\x12\x19\n\x11\x63onnection_string\x18\x07 \x01(\t\x12\x10\n\x08searchid\x18\x08 \x01(\x04\"\x93\x01\n\x0bPlayerFound\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12<\n\x06\x61\x63tion\x18\x02 \x01(\x0e\x32\x12.EGameSearchAction:\x18k_EGameSearchAction_None\x12 \n\x06params\x18\x03 \x03(\x0b\x32\x10.GameSearchParam\x12\x13\n\x0bteam_number\x18\x04 \x01(\r\"\x88\x02\n4CQueuedMatchmakingGameHost_SearchForPlayers_Response\x12I\n\x10gamesearchresult\x18\x01 \x01(\x0e\x32\x12.EGameSearchResult:\x1bk_EGameSearchResult_Invalid\x12\x10\n\x08searchid\x18\x02 \x01(\x04\x12\x16\n\x0epoll_frequency\x18\x03 \x01(\r\x12\x0f\n\x07matchid\x18\x04 \x01(\x04\x12\x1d\n\x07players\x18\x05 \x03(\x0b\x32\x0c.PlayerFound\x12\x18\n\x10rtime_match_made\x18\x06 \x01(\r\x12\x11\n\trtime_now\x18\x07 \x01(\r\".\n\x0cPlayerResult\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12\r\n\x05value\x18\x02 \x01(\r\"~\n5CQueuedMatchmakingGameHost_SubmitPlayerResult_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x0f\n\x07matchid\x18\x02 \x01(\x04\x12%\n\x0eplayer_results\x18\x03 \x03(\x0b\x32\r.PlayerResult\"8\n6CQueuedMatchmakingGameHost_SubmitPlayerResult_Response\"L\n*CQueuedMatchmakingGameHost_EndGame_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x0f\n\x07matchid\x18\x02 \x01(\x04\"-\n+CQueuedMatchmakingGameHost_EndGame_Response*\x92\x01\n\x11\x45GameSearchAction\x12\x1c\n\x18k_EGameSearchAction_None\x10\x00\x12\x1e\n\x1ak_EGameSearchAction_Accept\x10\x01\x12\x1f\n\x1bk_EGameSearchAction_Decline\x10\x02\x12\x1e\n\x1ak_EGameSearchAction_Cancel\x10\x03*\xbc\x02\n\x11\x45GameSearchResult\x12\x1f\n\x1bk_EGameSearchResult_Invalid\x10\x00\x12(\n$k_EGameSearchResult_SearchInProgress\x10\x01\x12+\n\'k_EGameSearchResult_SearchFailedNoHosts\x10\x02\x12\'\n#k_EGameSearchResult_SearchGameFound\x10\x03\x12.\n*k_EGameSearchResult_SearchCompleteAccepted\x10\x04\x12.\n*k_EGameSearchResult_SearchCompleteDeclined\x10\x05\x12&\n\"k_EGameSearchResult_SearchCanceled\x10\x06\x32\xb2\x01\n\x11QueuedMatchmaking\x12}\n\rSearchForGame\x12).CQueuedMatchmaking_SearchForGame_Request\x1a*.CQueuedMatchmaking_SearchForGame_Response\"\x15\x82\xb5\x18\x11Search for a game\x1a\x1e\x82\xb5\x18\x1aQueued matchmaking service2\xeb\x03\n\x19QueuedMatchmakingGameHost\x12\x95\x01\n\x10SearchForPlayers\x12\x34.CQueuedMatchmakingGameHost_SearchForPlayers_Request\x1a\x35.CQueuedMatchmakingGameHost_SearchForPlayers_Response\"\x14\x82\xb5\x18\x10SearchForPlayers\x12\x9d\x01\n\x12SubmitPlayerResult\x12\x36.CQueuedMatchmakingGameHost_SubmitPlayerResult_Request\x1a\x37.CQueuedMatchmakingGameHost_SubmitPlayerResult_Response\"\x16\x82\xb5\x18\x12SubmitPlayerResult\x12q\n\x07\x45ndGame\x12+.CQueuedMatchmakingGameHost_EndGame_Request\x1a,.CQueuedMatchmakingGameHost_EndGame_Response\"\x0b\x82\xb5\x18\x07\x45ndGame\x1a#\x82\xb5\x18\x1fQueued matchmaking host serviceB\x03\x90\x01\x01')
+  serialized_options=b'\220\001\001',
+  create_key=_descriptor._internal_create_key,
+  serialized_pb=b'\n\x17steammessages_qms.proto\x1a\x18steammessages_base.proto\x1a steammessages_unified_base.proto\"2\n\x0fGameSearchParam\x12\x10\n\x08key_name\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x03(\t\"\xe9\x01\n(CQueuedMatchmaking_SearchForGame_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12<\n\x06\x61\x63tion\x18\x02 \x01(\x0e\x32\x12.EGameSearchAction:\x18k_EGameSearchAction_None\x12 \n\x06params\x18\x03 \x03(\x0b\x32\x10.GameSearchParam\x12\x12\n\nplayer_min\x18\x04 \x01(\r\x12\x12\n\nplayer_max\x18\x05 \x01(\r\x12\x14\n\x0csteamidlobby\x18\x06 \x01(\x06\x12\x10\n\x08searchid\x18\x07 \x01(\x04\"\x87\x03\n)CQueuedMatchmaking_SearchForGame_Response\x12I\n\x10gamesearchresult\x18\x01 \x01(\x0e\x32\x12.EGameSearchResult:\x1bk_EGameSearchResult_Invalid\x12\x10\n\x08searchid\x18\x02 \x01(\x04\x12\x1d\n\x15seconds_time_estimate\x18\x03 \x01(\r\x12\x16\n\x0epoll_frequency\x18\x04 \x01(\r\x12\x17\n\x0f\x63ount_searching\x18\x05 \x01(\r\x12\x18\n\x10players_in_match\x18\x06 \x01(\r\x12\x18\n\x10players_accepted\x18\x07 \x01(\r\x12\x16\n\x0e\x63onnect_string\x18\t \x01(\t\x12\x13\n\x0bsteamidhost\x18\n \x01(\x06\x12\x18\n\x10rtime_match_made\x18\x0b \x01(\r\x12\x11\n\trtime_now\x18\x0c \x01(\r\x12\x1f\n\x17steamid_canceled_search\x18\r \x01(\x06\"\x97\x02\n3CQueuedMatchmakingGameHost_SearchForPlayers_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12<\n\x06\x61\x63tion\x18\x02 \x01(\x0e\x32\x12.EGameSearchAction:\x18k_EGameSearchAction_None\x12 \n\x06params\x18\x03 \x03(\x0b\x32\x10.GameSearchParam\x12\x12\n\nplayer_min\x18\x04 \x01(\r\x12\x12\n\nplayer_max\x18\x05 \x01(\r\x12\x1c\n\x14player_max_team_size\x18\x06 \x01(\r\x12\x19\n\x11\x63onnection_string\x18\x07 \x01(\t\x12\x10\n\x08searchid\x18\x08 \x01(\x04\"\x93\x01\n\x0bPlayerFound\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12<\n\x06\x61\x63tion\x18\x02 \x01(\x0e\x32\x12.EGameSearchAction:\x18k_EGameSearchAction_None\x12 \n\x06params\x18\x03 \x03(\x0b\x32\x10.GameSearchParam\x12\x13\n\x0bteam_number\x18\x04 \x01(\r\"\x88\x02\n4CQueuedMatchmakingGameHost_SearchForPlayers_Response\x12I\n\x10gamesearchresult\x18\x01 \x01(\x0e\x32\x12.EGameSearchResult:\x1bk_EGameSearchResult_Invalid\x12\x10\n\x08searchid\x18\x02 \x01(\x04\x12\x16\n\x0epoll_frequency\x18\x03 \x01(\r\x12\x0f\n\x07matchid\x18\x04 \x01(\x04\x12\x1d\n\x07players\x18\x05 \x03(\x0b\x32\x0c.PlayerFound\x12\x18\n\x10rtime_match_made\x18\x06 \x01(\r\x12\x11\n\trtime_now\x18\x07 \x01(\r\".\n\x0cPlayerResult\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12\r\n\x05value\x18\x02 \x01(\r\"~\n5CQueuedMatchmakingGameHost_SubmitPlayerResult_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x0f\n\x07matchid\x18\x02 \x01(\x04\x12%\n\x0eplayer_results\x18\x03 \x03(\x0b\x32\r.PlayerResult\"8\n6CQueuedMatchmakingGameHost_SubmitPlayerResult_Response\"L\n*CQueuedMatchmakingGameHost_EndGame_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x0f\n\x07matchid\x18\x02 \x01(\x04\"-\n+CQueuedMatchmakingGameHost_EndGame_Response*\x92\x01\n\x11\x45GameSearchAction\x12\x1c\n\x18k_EGameSearchAction_None\x10\x00\x12\x1e\n\x1ak_EGameSearchAction_Accept\x10\x01\x12\x1f\n\x1bk_EGameSearchAction_Decline\x10\x02\x12\x1e\n\x1ak_EGameSearchAction_Cancel\x10\x03*\xbc\x02\n\x11\x45GameSearchResult\x12\x1f\n\x1bk_EGameSearchResult_Invalid\x10\x00\x12(\n$k_EGameSearchResult_SearchInProgress\x10\x01\x12+\n\'k_EGameSearchResult_SearchFailedNoHosts\x10\x02\x12\'\n#k_EGameSearchResult_SearchGameFound\x10\x03\x12.\n*k_EGameSearchResult_SearchCompleteAccepted\x10\x04\x12.\n*k_EGameSearchResult_SearchCompleteDeclined\x10\x05\x12&\n\"k_EGameSearchResult_SearchCanceled\x10\x06\x32\xb2\x01\n\x11QueuedMatchmaking\x12}\n\rSearchForGame\x12).CQueuedMatchmaking_SearchForGame_Request\x1a*.CQueuedMatchmaking_SearchForGame_Response\"\x15\x82\xb5\x18\x11Search for a game\x1a\x1e\x82\xb5\x18\x1aQueued matchmaking service2\xeb\x03\n\x19QueuedMatchmakingGameHost\x12\x95\x01\n\x10SearchForPlayers\x12\x34.CQueuedMatchmakingGameHost_SearchForPlayers_Request\x1a\x35.CQueuedMatchmakingGameHost_SearchForPlayers_Response\"\x14\x82\xb5\x18\x10SearchForPlayers\x12\x9d\x01\n\x12SubmitPlayerResult\x12\x36.CQueuedMatchmakingGameHost_SubmitPlayerResult_Request\x1a\x37.CQueuedMatchmakingGameHost_SubmitPlayerResult_Response\"\x16\x82\xb5\x18\x12SubmitPlayerResult\x12q\n\x07\x45ndGame\x12+.CQueuedMatchmakingGameHost_EndGame_Request\x1a,.CQueuedMatchmakingGameHost_EndGame_Response\"\x0b\x82\xb5\x18\x07\x45ndGame\x1a#\x82\xb5\x18\x1fQueued matchmaking host serviceB\x03\x90\x01\x01'
   ,
-  dependencies=[steammessages__unified__base__pb2.DESCRIPTOR,])
+  dependencies=[steammessages__base__pb2.DESCRIPTOR,steammessages__unified__base__pb2.DESCRIPTOR,])
 
 _EGAMESEARCHACTION = _descriptor.EnumDescriptor(
   name='EGameSearchAction',
   full_name='EGameSearchAction',
   filename=None,
   file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
   values=[
     _descriptor.EnumValueDescriptor(
       name='k_EGameSearchAction_None', index=0, number=0,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EGameSearchAction_Accept', index=1, number=1,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EGameSearchAction_Decline', index=2, number=2,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EGameSearchAction_Cancel', index=3, number=3,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
   ],
   containing_type=None,
   serialized_options=None,
-  serialized_start=1802,
-  serialized_end=1948,
+  serialized_start=1828,
+  serialized_end=1974,
 )
 _sym_db.RegisterEnumDescriptor(_EGAMESEARCHACTION)
 
@@ -64,40 +69,48 @@ _EGAMESEARCHRESULT = _descriptor.EnumDescriptor(
   full_name='EGameSearchResult',
   filename=None,
   file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
   values=[
     _descriptor.EnumValueDescriptor(
       name='k_EGameSearchResult_Invalid', index=0, number=0,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EGameSearchResult_SearchInProgress', index=1, number=1,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EGameSearchResult_SearchFailedNoHosts', index=2, number=2,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EGameSearchResult_SearchGameFound', index=3, number=3,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EGameSearchResult_SearchCompleteAccepted', index=4, number=4,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EGameSearchResult_SearchCompleteDeclined', index=5, number=5,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EGameSearchResult_SearchCanceled', index=6, number=6,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
   ],
   containing_type=None,
   serialized_options=None,
-  serialized_start=1951,
-  serialized_end=2267,
+  serialized_start=1977,
+  serialized_end=2293,
 )
 _sym_db.RegisterEnumDescriptor(_EGAMESEARCHRESULT)
 
@@ -122,21 +135,22 @@ _GAMESEARCHPARAM = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='key_name', full_name='GameSearchParam.key_name', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='value', full_name='GameSearchParam.value', index=1,
       number=2, type=9, cpp_type=9, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -149,8 +163,8 @@ _GAMESEARCHPARAM = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=61,
-  serialized_end=111,
+  serialized_start=87,
+  serialized_end=137,
 )
 
 
@@ -160,6 +174,7 @@ _CQUEUEDMATCHMAKING_SEARCHFORGAME_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CQueuedMatchmaking_SearchForGame_Request.appid', index=0,
@@ -167,49 +182,49 @@ _CQUEUEDMATCHMAKING_SEARCHFORGAME_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='action', full_name='CQueuedMatchmaking_SearchForGame_Request.action', index=1,
       number=2, type=14, cpp_type=8, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='params', full_name='CQueuedMatchmaking_SearchForGame_Request.params', index=2,
       number=3, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='player_min', full_name='CQueuedMatchmaking_SearchForGame_Request.player_min', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='player_max', full_name='CQueuedMatchmaking_SearchForGame_Request.player_max', index=4,
       number=5, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steamidlobby', full_name='CQueuedMatchmaking_SearchForGame_Request.steamidlobby', index=5,
       number=6, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='searchid', full_name='CQueuedMatchmaking_SearchForGame_Request.searchid', index=6,
       number=7, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -222,8 +237,8 @@ _CQUEUEDMATCHMAKING_SEARCHFORGAME_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=114,
-  serialized_end=347,
+  serialized_start=140,
+  serialized_end=373,
 )
 
 
@@ -233,6 +248,7 @@ _CQUEUEDMATCHMAKING_SEARCHFORGAME_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='gamesearchresult', full_name='CQueuedMatchmaking_SearchForGame_Response.gamesearchresult', index=0,
@@ -240,84 +256,84 @@ _CQUEUEDMATCHMAKING_SEARCHFORGAME_RESPONSE = _descriptor.Descriptor(
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='searchid', full_name='CQueuedMatchmaking_SearchForGame_Response.searchid', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='seconds_time_estimate', full_name='CQueuedMatchmaking_SearchForGame_Response.seconds_time_estimate', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='poll_frequency', full_name='CQueuedMatchmaking_SearchForGame_Response.poll_frequency', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='count_searching', full_name='CQueuedMatchmaking_SearchForGame_Response.count_searching', index=4,
       number=5, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='players_in_match', full_name='CQueuedMatchmaking_SearchForGame_Response.players_in_match', index=5,
       number=6, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='players_accepted', full_name='CQueuedMatchmaking_SearchForGame_Response.players_accepted', index=6,
       number=7, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='connect_string', full_name='CQueuedMatchmaking_SearchForGame_Response.connect_string', index=7,
       number=9, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steamidhost', full_name='CQueuedMatchmaking_SearchForGame_Response.steamidhost', index=8,
       number=10, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='rtime_match_made', full_name='CQueuedMatchmaking_SearchForGame_Response.rtime_match_made', index=9,
       number=11, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='rtime_now', full_name='CQueuedMatchmaking_SearchForGame_Response.rtime_now', index=10,
       number=12, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steamid_canceled_search', full_name='CQueuedMatchmaking_SearchForGame_Response.steamid_canceled_search', index=11,
       number=13, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -330,8 +346,8 @@ _CQUEUEDMATCHMAKING_SEARCHFORGAME_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=350,
-  serialized_end=741,
+  serialized_start=376,
+  serialized_end=767,
 )
 
 
@@ -341,6 +357,7 @@ _CQUEUEDMATCHMAKINGGAMEHOST_SEARCHFORPLAYERS_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CQueuedMatchmakingGameHost_SearchForPlayers_Request.appid', index=0,
@@ -348,56 +365,56 @@ _CQUEUEDMATCHMAKINGGAMEHOST_SEARCHFORPLAYERS_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='action', full_name='CQueuedMatchmakingGameHost_SearchForPlayers_Request.action', index=1,
       number=2, type=14, cpp_type=8, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='params', full_name='CQueuedMatchmakingGameHost_SearchForPlayers_Request.params', index=2,
       number=3, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='player_min', full_name='CQueuedMatchmakingGameHost_SearchForPlayers_Request.player_min', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='player_max', full_name='CQueuedMatchmakingGameHost_SearchForPlayers_Request.player_max', index=4,
       number=5, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='player_max_team_size', full_name='CQueuedMatchmakingGameHost_SearchForPlayers_Request.player_max_team_size', index=5,
       number=6, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='connection_string', full_name='CQueuedMatchmakingGameHost_SearchForPlayers_Request.connection_string', index=6,
       number=7, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='searchid', full_name='CQueuedMatchmakingGameHost_SearchForPlayers_Request.searchid', index=7,
       number=8, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -410,8 +427,8 @@ _CQUEUEDMATCHMAKINGGAMEHOST_SEARCHFORPLAYERS_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=744,
-  serialized_end=1023,
+  serialized_start=770,
+  serialized_end=1049,
 )
 
 
@@ -421,6 +438,7 @@ _PLAYERFOUND = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid', full_name='PlayerFound.steamid', index=0,
@@ -428,28 +446,28 @@ _PLAYERFOUND = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='action', full_name='PlayerFound.action', index=1,
       number=2, type=14, cpp_type=8, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='params', full_name='PlayerFound.params', index=2,
       number=3, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='team_number', full_name='PlayerFound.team_number', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -462,8 +480,8 @@ _PLAYERFOUND = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1026,
-  serialized_end=1173,
+  serialized_start=1052,
+  serialized_end=1199,
 )
 
 
@@ -473,6 +491,7 @@ _CQUEUEDMATCHMAKINGGAMEHOST_SEARCHFORPLAYERS_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='gamesearchresult', full_name='CQueuedMatchmakingGameHost_SearchForPlayers_Response.gamesearchresult', index=0,
@@ -480,49 +499,49 @@ _CQUEUEDMATCHMAKINGGAMEHOST_SEARCHFORPLAYERS_RESPONSE = _descriptor.Descriptor(
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='searchid', full_name='CQueuedMatchmakingGameHost_SearchForPlayers_Response.searchid', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='poll_frequency', full_name='CQueuedMatchmakingGameHost_SearchForPlayers_Response.poll_frequency', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='matchid', full_name='CQueuedMatchmakingGameHost_SearchForPlayers_Response.matchid', index=3,
       number=4, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='players', full_name='CQueuedMatchmakingGameHost_SearchForPlayers_Response.players', index=4,
       number=5, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='rtime_match_made', full_name='CQueuedMatchmakingGameHost_SearchForPlayers_Response.rtime_match_made', index=5,
       number=6, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='rtime_now', full_name='CQueuedMatchmakingGameHost_SearchForPlayers_Response.rtime_now', index=6,
       number=7, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -535,8 +554,8 @@ _CQUEUEDMATCHMAKINGGAMEHOST_SEARCHFORPLAYERS_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1176,
-  serialized_end=1440,
+  serialized_start=1202,
+  serialized_end=1466,
 )
 
 
@@ -546,6 +565,7 @@ _PLAYERRESULT = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid', full_name='PlayerResult.steamid', index=0,
@@ -553,14 +573,14 @@ _PLAYERRESULT = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='value', full_name='PlayerResult.value', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -573,8 +593,8 @@ _PLAYERRESULT = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1442,
-  serialized_end=1488,
+  serialized_start=1468,
+  serialized_end=1514,
 )
 
 
@@ -584,6 +604,7 @@ _CQUEUEDMATCHMAKINGGAMEHOST_SUBMITPLAYERRESULT_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CQueuedMatchmakingGameHost_SubmitPlayerResult_Request.appid', index=0,
@@ -591,21 +612,21 @@ _CQUEUEDMATCHMAKINGGAMEHOST_SUBMITPLAYERRESULT_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='matchid', full_name='CQueuedMatchmakingGameHost_SubmitPlayerResult_Request.matchid', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='player_results', full_name='CQueuedMatchmakingGameHost_SubmitPlayerResult_Request.player_results', index=2,
       number=3, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -618,8 +639,8 @@ _CQUEUEDMATCHMAKINGGAMEHOST_SUBMITPLAYERRESULT_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1490,
-  serialized_end=1616,
+  serialized_start=1516,
+  serialized_end=1642,
 )
 
 
@@ -629,6 +650,7 @@ _CQUEUEDMATCHMAKINGGAMEHOST_SUBMITPLAYERRESULT_RESPONSE = _descriptor.Descriptor
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -642,8 +664,8 @@ _CQUEUEDMATCHMAKINGGAMEHOST_SUBMITPLAYERRESULT_RESPONSE = _descriptor.Descriptor
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1618,
-  serialized_end=1674,
+  serialized_start=1644,
+  serialized_end=1700,
 )
 
 
@@ -653,6 +675,7 @@ _CQUEUEDMATCHMAKINGGAMEHOST_ENDGAME_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CQueuedMatchmakingGameHost_EndGame_Request.appid', index=0,
@@ -660,14 +683,14 @@ _CQUEUEDMATCHMAKINGGAMEHOST_ENDGAME_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='matchid', full_name='CQueuedMatchmakingGameHost_EndGame_Request.matchid', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -680,8 +703,8 @@ _CQUEUEDMATCHMAKINGGAMEHOST_ENDGAME_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1676,
-  serialized_end=1752,
+  serialized_start=1702,
+  serialized_end=1778,
 )
 
 
@@ -691,6 +714,7 @@ _CQUEUEDMATCHMAKINGGAMEHOST_ENDGAME_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -704,8 +728,8 @@ _CQUEUEDMATCHMAKINGGAMEHOST_ENDGAME_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1754,
-  serialized_end=1799,
+  serialized_start=1780,
+  serialized_end=1825,
 )
 
 _CQUEUEDMATCHMAKING_SEARCHFORGAME_REQUEST.fields_by_name['action'].enum_type = _EGAMESEARCHACTION
@@ -733,81 +757,81 @@ DESCRIPTOR.enum_types_by_name['EGameSearchAction'] = _EGAMESEARCHACTION
 DESCRIPTOR.enum_types_by_name['EGameSearchResult'] = _EGAMESEARCHRESULT
 _sym_db.RegisterFileDescriptor(DESCRIPTOR)
 
-GameSearchParam = _reflection.GeneratedProtocolMessageType('GameSearchParam', (_message.Message,), dict(
-  DESCRIPTOR = _GAMESEARCHPARAM,
-  __module__ = 'steammessages_qms_pb2'
+GameSearchParam = _reflection.GeneratedProtocolMessageType('GameSearchParam', (_message.Message,), {
+  'DESCRIPTOR' : _GAMESEARCHPARAM,
+  '__module__' : 'steammessages_qms_pb2'
   # @@protoc_insertion_point(class_scope:GameSearchParam)
-  ))
+  })
 _sym_db.RegisterMessage(GameSearchParam)
 
-CQueuedMatchmaking_SearchForGame_Request = _reflection.GeneratedProtocolMessageType('CQueuedMatchmaking_SearchForGame_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CQUEUEDMATCHMAKING_SEARCHFORGAME_REQUEST,
-  __module__ = 'steammessages_qms_pb2'
+CQueuedMatchmaking_SearchForGame_Request = _reflection.GeneratedProtocolMessageType('CQueuedMatchmaking_SearchForGame_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CQUEUEDMATCHMAKING_SEARCHFORGAME_REQUEST,
+  '__module__' : 'steammessages_qms_pb2'
   # @@protoc_insertion_point(class_scope:CQueuedMatchmaking_SearchForGame_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CQueuedMatchmaking_SearchForGame_Request)
 
-CQueuedMatchmaking_SearchForGame_Response = _reflection.GeneratedProtocolMessageType('CQueuedMatchmaking_SearchForGame_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CQUEUEDMATCHMAKING_SEARCHFORGAME_RESPONSE,
-  __module__ = 'steammessages_qms_pb2'
+CQueuedMatchmaking_SearchForGame_Response = _reflection.GeneratedProtocolMessageType('CQueuedMatchmaking_SearchForGame_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CQUEUEDMATCHMAKING_SEARCHFORGAME_RESPONSE,
+  '__module__' : 'steammessages_qms_pb2'
   # @@protoc_insertion_point(class_scope:CQueuedMatchmaking_SearchForGame_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CQueuedMatchmaking_SearchForGame_Response)
 
-CQueuedMatchmakingGameHost_SearchForPlayers_Request = _reflection.GeneratedProtocolMessageType('CQueuedMatchmakingGameHost_SearchForPlayers_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CQUEUEDMATCHMAKINGGAMEHOST_SEARCHFORPLAYERS_REQUEST,
-  __module__ = 'steammessages_qms_pb2'
+CQueuedMatchmakingGameHost_SearchForPlayers_Request = _reflection.GeneratedProtocolMessageType('CQueuedMatchmakingGameHost_SearchForPlayers_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CQUEUEDMATCHMAKINGGAMEHOST_SEARCHFORPLAYERS_REQUEST,
+  '__module__' : 'steammessages_qms_pb2'
   # @@protoc_insertion_point(class_scope:CQueuedMatchmakingGameHost_SearchForPlayers_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CQueuedMatchmakingGameHost_SearchForPlayers_Request)
 
-PlayerFound = _reflection.GeneratedProtocolMessageType('PlayerFound', (_message.Message,), dict(
-  DESCRIPTOR = _PLAYERFOUND,
-  __module__ = 'steammessages_qms_pb2'
+PlayerFound = _reflection.GeneratedProtocolMessageType('PlayerFound', (_message.Message,), {
+  'DESCRIPTOR' : _PLAYERFOUND,
+  '__module__' : 'steammessages_qms_pb2'
   # @@protoc_insertion_point(class_scope:PlayerFound)
-  ))
+  })
 _sym_db.RegisterMessage(PlayerFound)
 
-CQueuedMatchmakingGameHost_SearchForPlayers_Response = _reflection.GeneratedProtocolMessageType('CQueuedMatchmakingGameHost_SearchForPlayers_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CQUEUEDMATCHMAKINGGAMEHOST_SEARCHFORPLAYERS_RESPONSE,
-  __module__ = 'steammessages_qms_pb2'
+CQueuedMatchmakingGameHost_SearchForPlayers_Response = _reflection.GeneratedProtocolMessageType('CQueuedMatchmakingGameHost_SearchForPlayers_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CQUEUEDMATCHMAKINGGAMEHOST_SEARCHFORPLAYERS_RESPONSE,
+  '__module__' : 'steammessages_qms_pb2'
   # @@protoc_insertion_point(class_scope:CQueuedMatchmakingGameHost_SearchForPlayers_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CQueuedMatchmakingGameHost_SearchForPlayers_Response)
 
-PlayerResult = _reflection.GeneratedProtocolMessageType('PlayerResult', (_message.Message,), dict(
-  DESCRIPTOR = _PLAYERRESULT,
-  __module__ = 'steammessages_qms_pb2'
+PlayerResult = _reflection.GeneratedProtocolMessageType('PlayerResult', (_message.Message,), {
+  'DESCRIPTOR' : _PLAYERRESULT,
+  '__module__' : 'steammessages_qms_pb2'
   # @@protoc_insertion_point(class_scope:PlayerResult)
-  ))
+  })
 _sym_db.RegisterMessage(PlayerResult)
 
-CQueuedMatchmakingGameHost_SubmitPlayerResult_Request = _reflection.GeneratedProtocolMessageType('CQueuedMatchmakingGameHost_SubmitPlayerResult_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CQUEUEDMATCHMAKINGGAMEHOST_SUBMITPLAYERRESULT_REQUEST,
-  __module__ = 'steammessages_qms_pb2'
+CQueuedMatchmakingGameHost_SubmitPlayerResult_Request = _reflection.GeneratedProtocolMessageType('CQueuedMatchmakingGameHost_SubmitPlayerResult_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CQUEUEDMATCHMAKINGGAMEHOST_SUBMITPLAYERRESULT_REQUEST,
+  '__module__' : 'steammessages_qms_pb2'
   # @@protoc_insertion_point(class_scope:CQueuedMatchmakingGameHost_SubmitPlayerResult_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CQueuedMatchmakingGameHost_SubmitPlayerResult_Request)
 
-CQueuedMatchmakingGameHost_SubmitPlayerResult_Response = _reflection.GeneratedProtocolMessageType('CQueuedMatchmakingGameHost_SubmitPlayerResult_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CQUEUEDMATCHMAKINGGAMEHOST_SUBMITPLAYERRESULT_RESPONSE,
-  __module__ = 'steammessages_qms_pb2'
+CQueuedMatchmakingGameHost_SubmitPlayerResult_Response = _reflection.GeneratedProtocolMessageType('CQueuedMatchmakingGameHost_SubmitPlayerResult_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CQUEUEDMATCHMAKINGGAMEHOST_SUBMITPLAYERRESULT_RESPONSE,
+  '__module__' : 'steammessages_qms_pb2'
   # @@protoc_insertion_point(class_scope:CQueuedMatchmakingGameHost_SubmitPlayerResult_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CQueuedMatchmakingGameHost_SubmitPlayerResult_Response)
 
-CQueuedMatchmakingGameHost_EndGame_Request = _reflection.GeneratedProtocolMessageType('CQueuedMatchmakingGameHost_EndGame_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CQUEUEDMATCHMAKINGGAMEHOST_ENDGAME_REQUEST,
-  __module__ = 'steammessages_qms_pb2'
+CQueuedMatchmakingGameHost_EndGame_Request = _reflection.GeneratedProtocolMessageType('CQueuedMatchmakingGameHost_EndGame_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CQUEUEDMATCHMAKINGGAMEHOST_ENDGAME_REQUEST,
+  '__module__' : 'steammessages_qms_pb2'
   # @@protoc_insertion_point(class_scope:CQueuedMatchmakingGameHost_EndGame_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CQueuedMatchmakingGameHost_EndGame_Request)
 
-CQueuedMatchmakingGameHost_EndGame_Response = _reflection.GeneratedProtocolMessageType('CQueuedMatchmakingGameHost_EndGame_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CQUEUEDMATCHMAKINGGAMEHOST_ENDGAME_RESPONSE,
-  __module__ = 'steammessages_qms_pb2'
+CQueuedMatchmakingGameHost_EndGame_Response = _reflection.GeneratedProtocolMessageType('CQueuedMatchmakingGameHost_EndGame_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CQUEUEDMATCHMAKINGGAMEHOST_ENDGAME_RESPONSE,
+  '__module__' : 'steammessages_qms_pb2'
   # @@protoc_insertion_point(class_scope:CQueuedMatchmakingGameHost_EndGame_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CQueuedMatchmakingGameHost_EndGame_Response)
 
 
@@ -818,9 +842,10 @@ _QUEUEDMATCHMAKING = _descriptor.ServiceDescriptor(
   full_name='QueuedMatchmaking',
   file=DESCRIPTOR,
   index=0,
-  serialized_options=_b('\202\265\030\032Queued matchmaking service'),
-  serialized_start=2270,
-  serialized_end=2448,
+  serialized_options=b'\202\265\030\032Queued matchmaking service',
+  create_key=_descriptor._internal_create_key,
+  serialized_start=2296,
+  serialized_end=2474,
   methods=[
   _descriptor.MethodDescriptor(
     name='SearchForGame',
@@ -829,7 +854,8 @@ _QUEUEDMATCHMAKING = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CQUEUEDMATCHMAKING_SEARCHFORGAME_REQUEST,
     output_type=_CQUEUEDMATCHMAKING_SEARCHFORGAME_RESPONSE,
-    serialized_options=_b('\202\265\030\021Search for a game'),
+    serialized_options=b'\202\265\030\021Search for a game',
+    create_key=_descriptor._internal_create_key,
   ),
 ])
 _sym_db.RegisterServiceDescriptor(_QUEUEDMATCHMAKING)
@@ -842,9 +868,10 @@ _QUEUEDMATCHMAKINGGAMEHOST = _descriptor.ServiceDescriptor(
   full_name='QueuedMatchmakingGameHost',
   file=DESCRIPTOR,
   index=1,
-  serialized_options=_b('\202\265\030\037Queued matchmaking host service'),
-  serialized_start=2451,
-  serialized_end=2942,
+  serialized_options=b'\202\265\030\037Queued matchmaking host service',
+  create_key=_descriptor._internal_create_key,
+  serialized_start=2477,
+  serialized_end=2968,
   methods=[
   _descriptor.MethodDescriptor(
     name='SearchForPlayers',
@@ -853,7 +880,8 @@ _QUEUEDMATCHMAKINGGAMEHOST = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CQUEUEDMATCHMAKINGGAMEHOST_SEARCHFORPLAYERS_REQUEST,
     output_type=_CQUEUEDMATCHMAKINGGAMEHOST_SEARCHFORPLAYERS_RESPONSE,
-    serialized_options=_b('\202\265\030\020SearchForPlayers'),
+    serialized_options=b'\202\265\030\020SearchForPlayers',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='SubmitPlayerResult',
@@ -862,7 +890,8 @@ _QUEUEDMATCHMAKINGGAMEHOST = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CQUEUEDMATCHMAKINGGAMEHOST_SUBMITPLAYERRESULT_REQUEST,
     output_type=_CQUEUEDMATCHMAKINGGAMEHOST_SUBMITPLAYERRESULT_RESPONSE,
-    serialized_options=_b('\202\265\030\022SubmitPlayerResult'),
+    serialized_options=b'\202\265\030\022SubmitPlayerResult',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='EndGame',
@@ -871,7 +900,8 @@ _QUEUEDMATCHMAKINGGAMEHOST = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CQUEUEDMATCHMAKINGGAMEHOST_ENDGAME_REQUEST,
     output_type=_CQUEUEDMATCHMAKINGGAMEHOST_ENDGAME_RESPONSE,
-    serialized_options=_b('\202\265\030\007EndGame'),
+    serialized_options=b'\202\265\030\007EndGame',
+    create_key=_descriptor._internal_create_key,
   ),
 ])
 _sym_db.RegisterServiceDescriptor(_QUEUEDMATCHMAKINGGAMEHOST)
diff --git a/steam/protobufs/steammessages_remoteplay_pb2.py b/steam/protobufs/steammessages_remoteplay_pb2.py
index bf30b7e..ebf871a 100644
--- a/steam/protobufs/steammessages_remoteplay_pb2.py
+++ b/steam/protobufs/steammessages_remoteplay_pb2.py
@@ -1,9 +1,7 @@
 # -*- coding: utf-8 -*-
 # Generated by the protocol buffer compiler.  DO NOT EDIT!
 # source: steammessages_remoteplay.proto
-
-import sys
-_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1'))
+"""Generated protocol buffer code."""
 from google.protobuf.internal import enum_type_wrapper
 from google.protobuf import descriptor as _descriptor
 from google.protobuf import message as _message
@@ -20,8 +18,9 @@ DESCRIPTOR = _descriptor.FileDescriptor(
   name='steammessages_remoteplay.proto',
   package='',
   syntax='proto2',
-  serialized_options=_b('H\001\220\001\000'),
-  serialized_pb=_b('\n\x1esteammessages_remoteplay.proto\"H\n\x15\x43\x44iscoveryPingRequest\x12\x10\n\x08sequence\x18\x01 \x01(\r\x12\x1d\n\x15packet_size_requested\x18\x02 \x01(\r\"H\n\x16\x43\x44iscoveryPingResponse\x12\x10\n\x08sequence\x18\x01 \x01(\r\x12\x1c\n\x14packet_size_received\x18\x02 \x01(\r\"5\n\x1d\x43StreamingClientHandshakeInfo\x12\x14\n\x0cnetwork_test\x18\x02 \x01(\x05\"C\n\x13\x43\x43lientHandshakeMsg\x12,\n\x04info\x18\x01 \x02(\x0b\x32\x1e.CStreamingClientHandshakeInfo\",\n\x1d\x43StreamingServerHandshakeInfo\x12\x0b\n\x03mtu\x18\x01 \x01(\x05\"C\n\x13\x43ServerHandshakeMsg\x12,\n\x04info\x18\x01 \x02(\x0b\x32\x1e.CStreamingServerHandshakeInfo\"s\n\x19\x43\x41uthenticationRequestMsg\x12\r\n\x05token\x18\x01 \x01(\x0c\x12\x36\n\x07version\x18\x02 \x01(\x0e\x32\x0f.EStreamVersion:\x14k_EStreamVersionNone\x12\x0f\n\x07steamid\x18\x03 \x01(\x04\"\xd4\x01\n\x1a\x43\x41uthenticationResponseMsg\x12K\n\x06result\x18\x01 \x01(\x0e\x32\x30.CAuthenticationResponseMsg.AuthenticationResult:\tSUCCEEDED\x12\x36\n\x07version\x18\x02 \x01(\x0e\x32\x0f.EStreamVersion:\x14k_EStreamVersionNone\"1\n\x14\x41uthenticationResult\x12\r\n\tSUCCEEDED\x10\x00\x12\n\n\x06\x46\x41ILED\x10\x01\"\x0f\n\rCKeepAliveMsg\"\x83\x01\n\x14\x43StartNetworkTestMsg\x12\x0e\n\x06\x66rames\x18\x01 \x01(\r\x12\x11\n\tframerate\x18\x02 \x01(\r\x12\x14\n\x0c\x62itrate_kbps\x18\x03 \x01(\r\x12\x1a\n\x12\x62urst_bitrate_kbps\x18\x04 \x01(\r\x12\x16\n\x0e\x62\x61ndwidth_test\x18\x05 \x01(\x08\"\x89\x01\n\x10\x43StreamVideoMode\x12\r\n\x05width\x18\x01 \x02(\r\x12\x0e\n\x06height\x18\x02 \x02(\r\x12\x14\n\x0crefresh_rate\x18\x03 \x01(\r\x12\x1e\n\x16refresh_rate_numerator\x18\x04 \x01(\r\x12 \n\x18refresh_rate_denominator\x18\x05 \x01(\r\"\xf8\x02\n\x14\x43StreamingClientCaps\x12\x13\n\x0bsystem_info\x18\x01 \x01(\t\x12\x1a\n\x12system_can_suspend\x18\x02 \x01(\x08\x12#\n\x1bmaximum_decode_bitrate_kbps\x18\x03 \x01(\x05\x12\"\n\x1amaximum_burst_bitrate_kbps\x18\x04 \x01(\x05\x12\x1b\n\x13supports_video_hevc\x18\x05 \x01(\x08\x12\x1b\n\x13\x64isable_steam_store\x18\x06 \x01(\x08\x12\x1d\n\x15\x64isable_client_cursor\x18\x07 \x01(\x08\x12\'\n\x1f\x64isable_intel_hardware_encoding\x18\x08 \x01(\x08\x12%\n\x1d\x64isable_amd_hardware_encoding\x18\t \x01(\x08\x12(\n disable_nvidia_hardware_encoding\x18\n \x01(\x08\x12\x13\n\x0b\x66orm_factor\x18\x0b \x01(\x05\"\xea\x05\n\x16\x43StreamingClientConfig\x12\x44\n\x07quality\x18\x01 \x01(\x0e\x32\x19.EStreamQualityPreference:\x18k_EStreamQualityBalanced\x12\x1c\n\x14maximum_resolution_x\x18\x02 \x01(\r\x12\x1c\n\x14maximum_resolution_y\x18\x03 \x01(\r\x12#\n\x1bmaximum_framerate_numerator\x18\x04 \x01(\r\x12%\n\x1dmaximum_framerate_denominator\x18\x05 \x01(\r\x12 \n\x14maximum_bitrate_kbps\x18\x06 \x01(\x05:\x02-1\x12&\n\x18\x65nable_hardware_decoding\x18\x07 \x01(\x08:\x04true\x12)\n\x1a\x65nable_performance_overlay\x18\x08 \x01(\x08:\x05\x66\x61lse\x12$\n\x16\x65nable_video_streaming\x18\t \x01(\x08:\x04true\x12$\n\x16\x65nable_audio_streaming\x18\n \x01(\x08:\x04true\x12$\n\x16\x65nable_input_streaming\x18\x0b \x01(\x08:\x04true\x12\x19\n\x0e\x61udio_channels\x18\x0c \x01(\x05:\x01\x32\x12 \n\x11\x65nable_video_hevc\x18\r \x01(\x08:\x05\x66\x61lse\x12&\n\x18\x65nable_performance_icons\x18\x0e \x01(\x08:\x04true\x12*\n\x1b\x65nable_microphone_streaming\x18\x0f \x01(\x08:\x05\x66\x61lse\x12!\n\x19\x63ontroller_overlay_hotkey\x18\x10 \x01(\t\x12&\n\x17\x65nable_touch_controller\x18\x11 \x01(\x08:\x05\x66\x61lse\x12?\n\tp2p_scope\x18\x13 \x01(\x0e\x32\x10.EStreamP2PScope:\x1ak_EStreamP2PScopeAutomatic\"\x94\x03\n\x16\x43StreamingServerConfig\x12!\n\x19\x63hange_desktop_resolution\x18\x01 \x01(\x08\x12%\n\x1d\x64ynamically_adjust_resolution\x18\x02 \x01(\x08\x12\x1c\n\x14\x65nable_capture_nvfbc\x18\x03 \x01(\x08\x12\'\n\x1f\x65nable_hardware_encoding_nvidia\x18\x04 \x01(\x08\x12$\n\x1c\x65nable_hardware_encoding_amd\x18\x05 \x01(\x08\x12&\n\x1e\x65nable_hardware_encoding_intel\x18\x06 \x01(\x08\x12!\n\x19software_encoding_threads\x18\x07 \x01(\x05\x12\x1f\n\x17\x65nable_traffic_priority\x18\x08 \x01(\x08\x12W\n\x0fhost_play_audio\x18\t \x01(\x0e\x32\x1f.EStreamHostPlayAudioPreference:\x1dk_EStreamHostPlayAudioDefault\"\xa9\x02\n\x11\x43NegotiatedConfig\x12\x15\n\rreliable_data\x18\x01 \x01(\x08\x12I\n\x14selected_audio_codec\x18\x02 \x01(\x0e\x32\x12.EStreamAudioCodec:\x17k_EStreamAudioCodecNone\x12I\n\x14selected_video_codec\x18\x03 \x01(\x0e\x32\x12.EStreamVideoCodec:\x17k_EStreamVideoCodecNone\x12\x30\n\x15\x61vailable_video_modes\x18\x04 \x03(\x0b\x32\x11.CStreamVideoMode\x12\x19\n\x11\x65nable_remote_hid\x18\x05 \x01(\x08\x12\x1a\n\x12\x65nable_touch_input\x18\x06 \x01(\x08\"\xcf\x01\n\x13\x43NegotiationInitMsg\x12\x15\n\rreliable_data\x18\x01 \x01(\x08\x12\x32\n\x16supported_audio_codecs\x18\x02 \x03(\x0e\x32\x12.EStreamAudioCodec\x12\x32\n\x16supported_video_codecs\x18\x03 \x03(\x0e\x32\x12.EStreamVideoCodec\x12\x1b\n\x13supports_remote_hid\x18\x04 \x01(\x08\x12\x1c\n\x14supports_touch_input\x18\x05 \x01(\x08\"\xae\x01\n\x18\x43NegotiationSetConfigMsg\x12\"\n\x06\x63onfig\x18\x01 \x02(\x0b\x32\x12.CNegotiatedConfig\x12\x38\n\x17streaming_client_config\x18\x02 \x01(\x0b\x32\x17.CStreamingClientConfig\x12\x34\n\x15streaming_client_caps\x18\x03 \x01(\x0b\x32\x15.CStreamingClientCaps\"\x19\n\x17\x43NegotiationCompleteMsg\"\x9a\x01\n\x12\x43StartAudioDataMsg\x12\x0f\n\x07\x63hannel\x18\x02 \x02(\r\x12:\n\x05\x63odec\x18\x03 \x01(\x0e\x32\x12.EStreamAudioCodec:\x17k_EStreamAudioCodecNone\x12\x12\n\ncodec_data\x18\x04 \x01(\x0c\x12\x11\n\tfrequency\x18\x05 \x01(\r\x12\x10\n\x08\x63hannels\x18\x06 \x01(\r\"\x13\n\x11\x43StopAudioDataMsg\"\x94\x01\n\x12\x43StartVideoDataMsg\x12\x0f\n\x07\x63hannel\x18\x01 \x02(\r\x12:\n\x05\x63odec\x18\x02 \x01(\x0e\x32\x12.EStreamVideoCodec:\x17k_EStreamVideoCodecNone\x12\x12\n\ncodec_data\x18\x03 \x01(\x0c\x12\r\n\x05width\x18\x04 \x01(\r\x12\x0e\n\x06height\x18\x05 \x01(\r\"\x13\n\x11\x43StopVideoDataMsg\"\xc5\x04\n\x0e\x43RecordedInput\x12K\n\x04type\x18\x01 \x01(\x0e\x32\x16.EStreamControlMessage:%k_EStreamControlAuthenticationRequest\x12\x11\n\ttimestamp\x18\x02 \x01(\r\x12\x30\n\x0b\x66inger_down\x18\x03 \x01(\x0b\x32\x19.CInputTouchFingerDownMsgH\x00\x12\x34\n\rfinger_motion\x18\x04 \x01(\x0b\x32\x1b.CInputTouchFingerMotionMsgH\x00\x12,\n\tfinger_up\x18\x05 \x01(\x0b\x32\x17.CInputTouchFingerUpMsgH\x00\x12-\n\x0cmouse_motion\x18\x06 \x01(\x0b\x32\x15.CInputMouseMotionMsgH\x00\x12+\n\x0bmouse_wheel\x18\x07 \x01(\x0b\x32\x14.CInputMouseWheelMsgH\x00\x12)\n\nmouse_down\x18\x08 \x01(\x0b\x32\x13.CInputMouseDownMsgH\x00\x12%\n\x08mouse_up\x18\t \x01(\x0b\x32\x11.CInputMouseUpMsgH\x00\x12%\n\x08key_down\x18\n \x01(\x0b\x32\x11.CInputKeyDownMsgH\x00\x12!\n\x06key_up\x18\x0b \x01(\x0b\x32\x0f.CInputKeyUpMsgH\x00\x12\x1e\n\x04text\x18\x0c \x01(\x0b\x32\x0e.CInputTextMsgH\x00\x12\x1d\n\x03hid\x18\r \x01(\x0b\x32\x0e.CRemoteHIDMsgH\x00\x42\x06\n\x04\x64\x61ta\"8\n\x14\x43RecordedInputStream\x12 \n\x07\x65ntries\x18\x01 \x03(\x0b\x32\x0f.CRecordedInput\"9\n\x14\x43InputLatencyTestMsg\x12\x12\n\ninput_mark\x18\x01 \x02(\r\x12\r\n\x05\x63olor\x18\x02 \x01(\r\"l\n\x18\x43InputTouchFingerDownMsg\x12\x12\n\ninput_mark\x18\x01 \x01(\r\x12\x10\n\x08\x66ingerid\x18\x02 \x01(\x04\x12\x14\n\x0cx_normalized\x18\x03 \x01(\x02\x12\x14\n\x0cy_normalized\x18\x04 \x01(\x02\"n\n\x1a\x43InputTouchFingerMotionMsg\x12\x12\n\ninput_mark\x18\x01 \x01(\r\x12\x10\n\x08\x66ingerid\x18\x02 \x01(\x04\x12\x14\n\x0cx_normalized\x18\x03 \x01(\x02\x12\x14\n\x0cy_normalized\x18\x04 \x01(\x02\"j\n\x16\x43InputTouchFingerUpMsg\x12\x12\n\ninput_mark\x18\x01 \x01(\r\x12\x10\n\x08\x66ingerid\x18\x02 \x01(\x04\x12\x14\n\x0cx_normalized\x18\x03 \x01(\x02\x12\x14\n\x0cy_normalized\x18\x04 \x01(\x02\"n\n\x14\x43InputMouseMotionMsg\x12\x12\n\ninput_mark\x18\x01 \x01(\r\x12\x14\n\x0cx_normalized\x18\x02 \x01(\x02\x12\x14\n\x0cy_normalized\x18\x03 \x01(\x02\x12\n\n\x02\x64x\x18\x04 \x01(\x05\x12\n\n\x02\x64y\x18\x05 \x01(\x05\"p\n\x13\x43InputMouseWheelMsg\x12\x12\n\ninput_mark\x18\x01 \x01(\r\x12\x45\n\tdirection\x18\x02 \x02(\x0e\x32\x1b.EStreamMouseWheelDirection:\x15k_EStreamMouseWheelUp\"g\n\x12\x43InputMouseDownMsg\x12\x12\n\ninput_mark\x18\x01 \x01(\r\x12=\n\x06\x62utton\x18\x02 \x02(\x0e\x32\x13.EStreamMouseButton:\x18k_EStreamMouseButtonLeft\"e\n\x10\x43InputMouseUpMsg\x12\x12\n\ninput_mark\x18\x01 \x01(\r\x12=\n\x06\x62utton\x18\x02 \x02(\x0e\x32\x13.EStreamMouseButton:\x18k_EStreamMouseButtonLeft\"8\n\x10\x43InputKeyDownMsg\x12\x12\n\ninput_mark\x18\x01 \x01(\r\x12\x10\n\x08scancode\x18\x02 \x02(\r\"6\n\x0e\x43InputKeyUpMsg\x12\x12\n\ninput_mark\x18\x01 \x01(\r\x12\x10\n\x08scancode\x18\x02 \x02(\r\"6\n\rCInputTextMsg\x12\x12\n\ninput_mark\x18\x01 \x01(\r\x12\x11\n\ttext_utf8\x18\x02 \x02(\t\"\x1c\n\x0c\x43SetTitleMsg\x12\x0c\n\x04text\x18\x01 \x01(\t\"3\n\x12\x43SetCaptureSizeMsg\x12\r\n\x05width\x18\x01 \x01(\x05\x12\x0e\n\x06height\x18\x02 \x01(\x05\";\n\x0b\x43SetIconMsg\x12\r\n\x05width\x18\x01 \x01(\x05\x12\x0e\n\x06height\x18\x02 \x01(\x05\x12\r\n\x05image\x18\x03 \x01(\x0c\"E\n\x11\x43SetFlashStateMsg\x12\r\n\x05\x66lags\x18\x01 \x01(\r\x12\r\n\x05\x63ount\x18\x02 \x01(\r\x12\x12\n\ntimeout_ms\x18\x03 \x01(\r\"<\n\x0e\x43ShowCursorMsg\x12\x14\n\x0cx_normalized\x18\x01 \x01(\x02\x12\x14\n\x0cy_normalized\x18\x02 \x01(\x02\"\x10\n\x0e\x43HideCursorMsg\"\"\n\rCSetCursorMsg\x12\x11\n\tcursor_id\x18\x01 \x02(\x04\"\'\n\x12\x43GetCursorImageMsg\x12\x11\n\tcursor_id\x18\x01 \x02(\x04\"s\n\x12\x43SetCursorImageMsg\x12\x11\n\tcursor_id\x18\x01 \x02(\x04\x12\r\n\x05width\x18\x02 \x01(\x05\x12\x0e\n\x06height\x18\x03 \x01(\x05\x12\r\n\x05hot_x\x18\x04 \x01(\x05\x12\r\n\x05hot_y\x18\x05 \x01(\x05\x12\r\n\x05image\x18\x06 \x01(\x0c\"5\n\x14\x43VideoDecoderInfoMsg\x12\x0c\n\x04info\x18\x01 \x01(\t\x12\x0f\n\x07threads\x18\x02 \x01(\x05\"$\n\x14\x43VideoEncoderInfoMsg\x12\x0c\n\x04info\x18\x01 \x01(\t\"\x0b\n\tCPauseMsg\"\x0c\n\nCResumeMsg\"\x1a\n\x18\x43\x45nableHighResCaptureMsg\"\x1b\n\x19\x43\x44isableHighResCaptureMsg\"\x19\n\x17\x43ToggleMagnificationMsg\"\"\n\x0f\x43SetCapslockMsg\x12\x0f\n\x07pressed\x18\x01 \x01(\x08\"\x8c\x02\n\x15\x43StreamingKeymapEntry\x12\x10\n\x08scancode\x18\x01 \x01(\x05\x12\x16\n\x0enormal_keycode\x18\x02 \x01(\x05\x12\x15\n\rshift_keycode\x18\x03 \x01(\x05\x12\x18\n\x10\x63\x61pslock_keycode\x18\x04 \x01(\x05\x12\x1e\n\x16shift_capslock_keycode\x18\x05 \x01(\x05\x12\x15\n\raltgr_keycode\x18\x06 \x01(\x05\x12\x1b\n\x13\x61ltgr_shift_keycode\x18\x07 \x01(\x05\x12\x1e\n\x16\x61ltgr_capslock_keycode\x18\x08 \x01(\x05\x12$\n\x1c\x61ltgr_shift_capslock_keycode\x18\t \x01(\x05\";\n\x10\x43StreamingKeymap\x12\'\n\x07\x65ntries\x18\x01 \x03(\x0b\x32\x16.CStreamingKeymapEntry\"2\n\rCSetKeymapMsg\x12!\n\x06keymap\x18\x01 \x01(\x0b\x32\x11.CStreamingKeymap\"\x0e\n\x0c\x43StopRequest\"\x0e\n\x0c\x43QuitRequest\"%\n\x10\x43\x44\x65leteCursorMsg\x12\x11\n\tcursor_id\x18\x01 \x02(\x04\"D\n\x19\x43SetStreamingClientConfig\x12\'\n\x06\x63onfig\x18\x01 \x02(\x0b\x32\x17.CStreamingClientConfig\"\x1d\n\nCSetQoSMsg\x12\x0f\n\x07use_qos\x18\x01 \x02(\x08\"x\n\x16\x43SetTargetFramerateMsg\x12\x11\n\tframerate\x18\x01 \x02(\r\x12\x0f\n\x07reasons\x18\x02 \x01(\r\x12\x1b\n\x13\x66ramerate_numerator\x18\x03 \x01(\r\x12\x1d\n\x15\x66ramerate_denominator\x18\x04 \x01(\r\"\'\n\x14\x43SetTargetBitrateMsg\x12\x0f\n\x07\x62itrate\x18\x01 \x02(\x05\"%\n\x12\x43OverlayEnabledMsg\x12\x0f\n\x07\x65nabled\x18\x01 \x02(\x08\"&\n\x10\x43SetGammaRampMsg\x12\x12\n\ngamma_ramp\x18\x01 \x01(\x0c\"~\n\x0f\x43SetActivityMsg\x12\x39\n\x08\x61\x63tivity\x18\x01 \x01(\x0e\x32\x10.EStreamActivity:\x15k_EStreamActivityIdle\x12\r\n\x05\x61ppid\x18\x02 \x01(\r\x12\x0e\n\x06gameid\x18\x03 \x01(\x04\x12\x11\n\tgame_name\x18\x04 \x01(\t\"\x13\n\x11\x43SystemSuspendMsg\"*\n\x16\x43VirtualHereRequestMsg\x12\x10\n\x08hostname\x18\x01 \x01(\t\"5\n\x14\x43VirtualHereReadyMsg\x12\x1d\n\x15licensed_device_count\x18\x01 \x01(\r\"4\n\x1a\x43VirtualHereShareDeviceMsg\x12\x16\n\x0e\x64\x65vice_address\x18\x01 \x01(\t\"\'\n\x14\x43SetSpectatorModeMsg\x12\x0f\n\x07\x65nabled\x18\x01 \x01(\x08\"\x1d\n\rCRemoteHIDMsg\x12\x0c\n\x04\x64\x61ta\x18\x01 \x01(\x0c\"I\n\x15\x43TouchConfigActiveMsg\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x10\n\x08revision\x18\x02 \x01(\r\x12\x0f\n\x07\x63reator\x18\x03 \x01(\x04\"\'\n\x16\x43GetTouchConfigDataMsg\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\"h\n\x16\x43SetTouchConfigDataMsg\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x10\n\x08revision\x18\x02 \x01(\r\x12\x0c\n\x04\x64\x61ta\x18\x03 \x01(\x0c\x12\x0e\n\x06layout\x18\x04 \x01(\x0c\x12\x0f\n\x07\x63reator\x18\x05 \x01(\x04\":\n\x19\x43SaveTouchConfigLayoutMsg\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x0e\n\x06layout\x18\x04 \x01(\x0c\"?\n\x18\x43TouchActionSetActiveMsg\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x14\n\x0c\x61\x63tionset_id\x18\x02 \x01(\x05\"C\n\x1c\x43TouchActionSetLayerAddedMsg\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x14\n\x0c\x61\x63tionset_id\x18\x02 \x01(\x05\"E\n\x1e\x43TouchActionSetLayerRemovedMsg\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x14\n\x0c\x61\x63tionset_id\x18\x02 \x01(\x05\"3\n\x14\x43GetTouchIconDataMsg\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x0c\n\x04icon\x18\x02 \x01(\t\"A\n\x14\x43SetTouchIconDataMsg\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x0c\n\x04icon\x18\x02 \x01(\t\x12\x0c\n\x04\x64\x61ta\x18\x03 \x01(\x0c\"\xea\x02\n!CRemotePlayTogetherGroupUpdateMsg\x12:\n\x07players\x18\x01 \x03(\x0b\x32).CRemotePlayTogetherGroupUpdateMsg.Player\x12\x14\n\x0cplayer_index\x18\x02 \x01(\x05\x12\x1c\n\x14miniprofile_location\x18\x03 \x01(\t\x12\x11\n\tgame_name\x18\x04 \x01(\t\x12\x17\n\x0f\x61vatar_location\x18\x05 \x01(\t\x1a\xa8\x01\n\x06Player\x12\x11\n\taccountid\x18\x01 \x01(\r\x12\x0f\n\x07guestid\x18\x02 \x01(\r\x12\x18\n\x10keyboard_enabled\x18\x03 \x01(\x08\x12\x15\n\rmouse_enabled\x18\x04 \x01(\x08\x12\x1a\n\x12\x63ontroller_enabled\x18\x05 \x01(\x08\x12\x18\n\x10\x63ontroller_slots\x18\x06 \x03(\r\x12\x13\n\x0b\x61vatar_hash\x18\x07 \x01(\x0c\"3\n\x1f\x43SetInputTemporarilyDisabledMsg\x12\x10\n\x08\x64isabled\x18\x01 \x01(\x08\"\'\n\x16\x43SetQualityOverrideMsg\x12\r\n\x05value\x18\x01 \x01(\x05\"\'\n\x16\x43SetBitrateOverrideMsg\x12\r\n\x05value\x18\x01 \x01(\x05\"%\n\x12\x43StreamDataLostMsg\x12\x0f\n\x07packets\x18\x01 \x03(\r\"f\n\x0c\x43\x41udioFormat\x12\x31\n\x06\x66ormat\x18\x01 \x02(\x0e\x32\r.EAudioFormat:\x12k_EAudioFormatNone\x12\x11\n\tfrequency\x18\x02 \x01(\r\x12\x10\n\x08\x63hannels\x18\x03 \x01(\r\"`\n\x0c\x43VideoFormat\x12\x31\n\x06\x66ormat\x18\x01 \x02(\x0e\x32\r.EVideoFormat:\x12k_EVideoFormatNone\x12\r\n\x05width\x18\x02 \x01(\r\x12\x0e\n\x06height\x18\x03 \x01(\r\"`\n\x0b\x43\x46rameEvent\x12>\n\x08\x65vent_id\x18\x01 \x02(\x0e\x32\x12.EStreamFrameEvent:\x18k_EStreamInputEventStart\x12\x11\n\ttimestamp\x18\x02 \x02(\r\"\xcf\x02\n\x0b\x43\x46rameStats\x12\x10\n\x08\x66rame_id\x18\x01 \x02(\r\x12\x12\n\ninput_mark\x18\x02 \x01(\r\x12\x1c\n\x06\x65vents\x18\x03 \x03(\x0b\x32\x0c.CFrameEvent\x12@\n\x06result\x18\x04 \x02(\x0e\x32\x13.EStreamFrameResult:\x1bk_EStreamFrameResultPending\x12\x19\n\x11\x66rame_start_delta\x18\x05 \x01(\x02\x12\x1b\n\x13\x66rame_display_delta\x18\x06 \x01(\x02\x12\x11\n\tping_time\x18\x07 \x01(\x02\x12\x16\n\x0eserver_bitrate\x18\x08 \x01(\x02\x12\x16\n\x0e\x63lient_bitrate\x18\t \x01(\x02\x12\x16\n\x0elink_bandwidth\x18\n \x01(\x02\x12\x13\n\x0bpacket_loss\x18\x0b \x01(\x02\x12\x12\n\nframe_size\x18\x0c \x01(\r\"\x88\x01\n\x1a\x43\x46rameStatAccumulatedValue\x12:\n\tstat_type\x18\x01 \x02(\x0e\x32\x16.EFrameAccumulatedStat:\x0fk_EFrameStatFPS\x12\r\n\x05\x63ount\x18\x02 \x02(\x05\x12\x0f\n\x07\x61verage\x18\x03 \x02(\x02\x12\x0e\n\x06stddev\x18\x04 \x01(\x02\"\xc1\x01\n\x12\x43\x46rameStatsListMsg\x12=\n\tdata_type\x18\x01 \x02(\x0e\x32\x13.EStreamingDataType:\x15k_EStreamingAudioData\x12\x1b\n\x05stats\x18\x02 \x03(\x0b\x32\x0c.CFrameStats\x12\x36\n\x11\x61\x63\x63umulated_stats\x18\x03 \x03(\x0b\x32\x1b.CFrameStatAccumulatedValue\x12\x17\n\x0flatest_frame_id\x18\x04 \x02(\x05\"x\n\x16\x43StreamingSessionStats\x12\x1d\n\x15\x66rame_loss_percentage\x18\x01 \x01(\x02\x12\x1f\n\x17\x61verage_network_time_ms\x18\x02 \x01(\x02\x12\x1e\n\x16stddev_network_time_ms\x18\x03 \x01(\x02\"#\n\rCDebugDumpMsg\x12\x12\n\nscreenshot\x18\x01 \x01(\x0c\"(\n\x07\x43LogMsg\x12\x0c\n\x04type\x18\x01 \x01(\x05\x12\x0f\n\x07message\x18\x02 \x01(\t\"P\n\rCLogUploadMsg\x12\x31\n\x04type\x18\x01 \x01(\x0e\x32\r.ELogFileType:\x14k_ELogFileSystemBoot\x12\x0c\n\x04\x64\x61ta\x18\x03 \x01(\x0c\"\xb3\x02\n\x13\x43TransportSignalMsg\x12\x32\n\x06webrtc\x18\x01 \x01(\x0b\x32\".CTransportSignalMsg.WebRTCMessage\x12\x0b\n\x03sdr\x18\x02 \x03(\x0c\x1a\xda\x01\n\rWebRTCMessage\x12\x12\n\x08greeting\x18\x01 \x01(\x08H\x00\x12\x0f\n\x05offer\x18\x02 \x01(\tH\x00\x12\x10\n\x06\x61nswer\x18\x03 \x01(\tH\x00\x12\x41\n\tcandidate\x18\x04 \x01(\x0b\x32,.CTransportSignalMsg.WebRTCMessage.CandidateH\x00\x1aH\n\tCandidate\x12\x0f\n\x07sdp_mid\x18\x01 \x01(\t\x12\x17\n\x0fsdp_mline_index\x18\x02 \x01(\x05\x12\x11\n\tcandidate\x18\x03 \x01(\tB\x05\n\x03msg*\xb3\x01\n\x0e\x45StreamChannel\x12$\n\x17k_EStreamChannelInvalid\x10\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01\x12\x1d\n\x19k_EStreamChannelDiscovery\x10\x00\x12\x1b\n\x17k_EStreamChannelControl\x10\x01\x12\x19\n\x15k_EStreamChannelStats\x10\x02\x12$\n k_EStreamChannelDataChannelStart\x10\x03*`\n\x17\x45StreamDiscoveryMessage\x12!\n\x1dk_EStreamDiscoveryPingRequest\x10\x01\x12\"\n\x1ek_EStreamDiscoveryPingResponse\x10\x02*\xdb\x1b\n\x15\x45StreamControlMessage\x12)\n%k_EStreamControlAuthenticationRequest\x10\x01\x12*\n&k_EStreamControlAuthenticationResponse\x10\x02\x12#\n\x1fk_EStreamControlNegotiationInit\x10\x03\x12(\n$k_EStreamControlNegotiationSetConfig\x10\x04\x12\'\n#k_EStreamControlNegotiationComplete\x10\x05\x12#\n\x1fk_EStreamControlClientHandshake\x10\x06\x12#\n\x1fk_EStreamControlServerHandshake\x10\x07\x12$\n k_EStreamControlStartNetworkTest\x10\x08\x12\x1d\n\x19k_EStreamControlKeepAlive\x10\t\x12\'\n#k_EStreamControl_LAST_SETUP_MESSAGE\x10\x0f\x12\"\n\x1ek_EStreamControlStartAudioData\x10\x32\x12!\n\x1dk_EStreamControlStopAudioData\x10\x33\x12\"\n\x1ek_EStreamControlStartVideoData\x10\x34\x12!\n\x1dk_EStreamControlStopVideoData\x10\x35\x12$\n k_EStreamControlInputMouseMotion\x10\x36\x12#\n\x1fk_EStreamControlInputMouseWheel\x10\x37\x12\"\n\x1ek_EStreamControlInputMouseDown\x10\x38\x12 \n\x1ck_EStreamControlInputMouseUp\x10\x39\x12 \n\x1ck_EStreamControlInputKeyDown\x10:\x12\x1e\n\x1ak_EStreamControlInputKeyUp\x10;\x12\x31\n-k_EStreamControlInputGamepadAttached_OBSOLETE\x10<\x12.\n*k_EStreamControlInputGamepadEvent_OBSOLETE\x10=\x12\x31\n-k_EStreamControlInputGamepadDetached_OBSOLETE\x10>\x12\x1e\n\x1ak_EStreamControlShowCursor\x10?\x12\x1e\n\x1ak_EStreamControlHideCursor\x10@\x12\x1d\n\x19k_EStreamControlSetCursor\x10\x41\x12\"\n\x1ek_EStreamControlGetCursorImage\x10\x42\x12\"\n\x1ek_EStreamControlSetCursorImage\x10\x43\x12 \n\x1ck_EStreamControlDeleteCursor\x10\x44\x12&\n\"k_EStreamControlSetTargetFramerate\x10\x45\x12$\n k_EStreamControlInputLatencyTest\x10\x46\x12*\n&k_EStreamControlGamepadRumble_OBSOLETE\x10G\x12\"\n\x1ek_EStreamControlOverlayEnabled\x10J\x12\x34\n0k_EStreamControlInputControllerAttached_OBSOLETE\x10K\x12\x31\n-k_EStreamControlInputControllerState_OBSOLETE\x10L\x12/\n+k_EStreamControlTriggerHapticPulse_OBSOLETE\x10M\x12\x34\n0k_EStreamControlInputControllerDetached_OBSOLETE\x10N\x12$\n k_EStreamControlVideoDecoderInfo\x10P\x12\x1c\n\x18k_EStreamControlSetTitle\x10Q\x12\x1b\n\x17k_EStreamControlSetIcon\x10R\x12\x1f\n\x1bk_EStreamControlQuitRequest\x10S\x12\x1a\n\x16k_EStreamControlSetQoS\x10W\x12<\n8k_EStreamControlInputControllerWirelessPresence_OBSOLETE\x10X\x12 \n\x1ck_EStreamControlSetGammaRamp\x10Y\x12$\n k_EStreamControlVideoEncoderInfo\x10Z\x12\x34\n0k_EStreamControlInputControllerStateHID_OBSOLETE\x10]\x12$\n k_EStreamControlSetTargetBitrate\x10^\x12\x38\n4k_EStreamControlSetControllerPairingEnabled_OBSOLETE\x10_\x12\x37\n3k_EStreamControlSetControllerPairingResult_OBSOLETE\x10`\x12\x38\n4k_EStreamControlTriggerControllerDisconnect_OBSOLETE\x10\x61\x12\x1f\n\x1bk_EStreamControlSetActivity\x10\x62\x12,\n(k_EStreamControlSetStreamingClientConfig\x10\x63\x12!\n\x1dk_EStreamControlSystemSuspend\x10\x64\x12\x32\n.k_EStreamControlSetControllerSettings_OBSOLETE\x10\x65\x12&\n\"k_EStreamControlVirtualHereRequest\x10\x66\x12$\n k_EStreamControlVirtualHereReady\x10g\x12*\n&k_EStreamControlVirtualHereShareDevice\x10h\x12$\n k_EStreamControlSetSpectatorMode\x10i\x12\x1d\n\x19k_EStreamControlRemoteHID\x10j\x12\'\n#k_EStreamControlStartMicrophoneData\x10k\x12&\n\"k_EStreamControlStopMicrophoneData\x10l\x12\x1d\n\x19k_EStreamControlInputText\x10m\x12%\n!k_EStreamControlTouchConfigActive\x10n\x12&\n\"k_EStreamControlGetTouchConfigData\x10o\x12&\n\"k_EStreamControlSetTouchConfigData\x10p\x12)\n%k_EStreamControlSaveTouchConfigLayout\x10q\x12(\n$k_EStreamControlTouchActionSetActive\x10r\x12$\n k_EStreamControlGetTouchIconData\x10s\x12$\n k_EStreamControlSetTouchIconData\x10t\x12(\n$k_EStreamControlInputTouchFingerDown\x10u\x12*\n&k_EStreamControlInputTouchFingerMotion\x10v\x12&\n\"k_EStreamControlInputTouchFingerUp\x10w\x12\"\n\x1ek_EStreamControlSetCaptureSize\x10x\x12!\n\x1dk_EStreamControlSetFlashState\x10y\x12\x19\n\x15k_EStreamControlPause\x10z\x12\x1a\n\x16k_EStreamControlResume\x10{\x12(\n$k_EStreamControlEnableHighResCapture\x10|\x12)\n%k_EStreamControlDisableHighResCapture\x10}\x12\'\n#k_EStreamControlToggleMagnification\x10~\x12\x1f\n\x1bk_EStreamControlSetCapslock\x10\x7f\x12\x1e\n\x19k_EStreamControlSetKeymap\x10\x80\x01\x12 \n\x1bk_EStreamControlStopRequest\x10\x81\x01\x12-\n(k_EStreamControlTouchActionSetLayerAdded\x10\x82\x01\x12/\n*k_EStreamControlTouchActionSetLayerRemoved\x10\x83\x01\x12\x32\n-k_EStreamControlRemotePlayTogetherGroupUpdate\x10\x84\x01\x12\x30\n+k_EStreamControlSetInputTemporarilyDisabled\x10\x85\x01\x12\'\n\"k_EStreamControlSetQualityOverride\x10\x86\x01\x12\'\n\"k_EStreamControlSetBitrateOverride\x10\x87\x01*G\n\x0e\x45StreamVersion\x12\x18\n\x14k_EStreamVersionNone\x10\x00\x12\x1b\n\x17k_EStreamVersionCurrent\x10\x01*\xc0\x01\n\x11\x45StreamAudioCodec\x12\x1b\n\x17k_EStreamAudioCodecNone\x10\x00\x12\x1a\n\x16k_EStreamAudioCodecRaw\x10\x01\x12\x1d\n\x19k_EStreamAudioCodecVorbis\x10\x02\x12\x1b\n\x17k_EStreamAudioCodecOpus\x10\x03\x12\x1a\n\x16k_EStreamAudioCodecMP3\x10\x04\x12\x1a\n\x16k_EStreamAudioCodecAAC\x10\x05*\xfa\x01\n\x11\x45StreamVideoCodec\x12\x1b\n\x17k_EStreamVideoCodecNone\x10\x00\x12\x1a\n\x16k_EStreamVideoCodecRaw\x10\x01\x12\x1a\n\x16k_EStreamVideoCodecVP8\x10\x02\x12\x1a\n\x16k_EStreamVideoCodecVP9\x10\x03\x12\x1b\n\x17k_EStreamVideoCodecH264\x10\x04\x12\x1b\n\x17k_EStreamVideoCodecHEVC\x10\x05\x12\x1c\n\x18k_EStreamVideoCodecORBX1\x10\x06\x12\x1c\n\x18k_EStreamVideoCodecORBX2\x10\x07*\x99\x01\n\x18\x45StreamQualityPreference\x12&\n\x19k_EStreamQualityAutomatic\x10\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01\x12\x18\n\x14k_EStreamQualityFast\x10\x01\x12\x1c\n\x18k_EStreamQualityBalanced\x10\x02\x12\x1d\n\x19k_EStreamQualityBeautiful\x10\x03*X\n\x0e\x45StreamBitrate\x12\'\n\x1ak_EStreamBitrateAutodetect\x10\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01\x12\x1d\n\x19k_EStreamBitrateUnlimited\x10\x00*\xaa\x01\n\x0f\x45StreamP2PScope\x12\x1e\n\x1ak_EStreamP2PScopeAutomatic\x10\x00\x12\x1d\n\x19k_EStreamP2PScopeDisabled\x10\x01\x12\x1b\n\x17k_EStreamP2PScopeOnlyMe\x10\x02\x12\x1c\n\x18k_EStreamP2PScopeFriends\x10\x03\x12\x1d\n\x19k_EStreamP2PScopeEveryone\x10\x04*e\n\x1e\x45StreamHostPlayAudioPreference\x12!\n\x1dk_EStreamHostPlayAudioDefault\x10\x00\x12 \n\x1ck_EStreamHostPlayAudioAlways\x10\x01*j\n\x12\x45StreamingDataType\x12\x19\n\x15k_EStreamingAudioData\x10\x00\x12\x19\n\x15k_EStreamingVideoData\x10\x01\x12\x1e\n\x1ak_EStreamingMicrophoneData\x10\x02*\xcb\x01\n\x12\x45StreamMouseButton\x12\x1c\n\x18k_EStreamMouseButtonLeft\x10\x01\x12\x1d\n\x19k_EStreamMouseButtonRight\x10\x02\x12\x1e\n\x1ak_EStreamMouseButtonMiddle\x10\x10\x12\x1a\n\x16k_EStreamMouseButtonX1\x10 \x12\x1a\n\x16k_EStreamMouseButtonX2\x10@\x12 \n\x1bk_EStreamMouseButtonUnknown\x10\x80 *\x98\x01\n\x1a\x45StreamMouseWheelDirection\x12\x19\n\x15k_EStreamMouseWheelUp\x10x\x12$\n\x17k_EStreamMouseWheelDown\x10\x88\xff\xff\xff\xff\xff\xff\xff\xff\x01\x12\x1b\n\x17k_EStreamMouseWheelLeft\x10\x03\x12\x1c\n\x18k_EStreamMouseWheelRight\x10\x04*\x89\x02\n\x17\x45StreamFramerateLimiter\x12!\n\x1dk_EStreamFramerateSlowCapture\x10\x01\x12!\n\x1dk_EStreamFramerateSlowConvert\x10\x02\x12 \n\x1ck_EStreamFramerateSlowEncode\x10\x04\x12!\n\x1dk_EStreamFramerateSlowNetwork\x10\x08\x12 \n\x1ck_EStreamFramerateSlowDecode\x10\x10\x12\x1e\n\x1ak_EStreamFramerateSlowGame\x10 \x12!\n\x1dk_EStreamFramerateSlowDisplay\x10@*\xa5\x01\n\x0f\x45StreamActivity\x12\x19\n\x15k_EStreamActivityIdle\x10\x01\x12\x19\n\x15k_EStreamActivityGame\x10\x02\x12\x1c\n\x18k_EStreamActivityDesktop\x10\x03\x12\"\n\x1ek_EStreamActivitySecureDesktop\x10\x04\x12\x1a\n\x16k_EStreamActivityMusic\x10\x05*D\n\x12\x45StreamDataMessage\x12\x17\n\x13k_EStreamDataPacket\x10\x01\x12\x15\n\x11k_EStreamDataLost\x10\x02*d\n\x0c\x45\x41udioFormat\x12\x16\n\x12k_EAudioFormatNone\x10\x00\x12#\n\x1fk_EAudioFormat16BitLittleEndian\x10\x01\x12\x17\n\x13k_EAudioFormatFloat\x10\x02*W\n\x0c\x45VideoFormat\x12\x16\n\x12k_EVideoFormatNone\x10\x00\x12\x16\n\x12k_EVideoFormatYV12\x10\x01\x12\x17\n\x13k_EVideoFormatAccel\x10\x02*\xd7\x01\n\x13\x45StreamStatsMessage\x12\x1d\n\x19k_EStreamStatsFrameEvents\x10\x01\x12\x1b\n\x17k_EStreamStatsDebugDump\x10\x02\x12\x1c\n\x18k_EStreamStatsLogMessage\x10\x03\x12 \n\x1ck_EStreamStatsLogUploadBegin\x10\x04\x12\x1f\n\x1bk_EStreamStatsLogUploadData\x10\x05\x12#\n\x1fk_EStreamStatsLogUploadComplete\x10\x06*\x85\x05\n\x11\x45StreamFrameEvent\x12\x1c\n\x18k_EStreamInputEventStart\x10\x00\x12\x1b\n\x17k_EStreamInputEventSend\x10\x01\x12\x1b\n\x17k_EStreamInputEventRecv\x10\x02\x12\x1d\n\x19k_EStreamInputEventQueued\x10\x03\x12\x1e\n\x1ak_EStreamInputEventHandled\x10\x04\x12\x1c\n\x18k_EStreamFrameEventStart\x10\x05\x12#\n\x1fk_EStreamFrameEventCaptureBegin\x10\x06\x12!\n\x1dk_EStreamFrameEventCaptureEnd\x10\x07\x12#\n\x1fk_EStreamFrameEventConvertBegin\x10\x08\x12!\n\x1dk_EStreamFrameEventConvertEnd\x10\t\x12\"\n\x1ek_EStreamFrameEventEncodeBegin\x10\n\x12 \n\x1ck_EStreamFrameEventEncodeEnd\x10\x0b\x12\x1b\n\x17k_EStreamFrameEventSend\x10\x0c\x12\x1b\n\x17k_EStreamFrameEventRecv\x10\r\x12\"\n\x1ek_EStreamFrameEventDecodeBegin\x10\x0e\x12 \n\x1ck_EStreamFrameEventDecodeEnd\x10\x0f\x12\"\n\x1ek_EStreamFrameEventUploadBegin\x10\x10\x12 \n\x1ck_EStreamFrameEventUploadEnd\x10\x11\x12\x1f\n\x1bk_EStreamFrameEventComplete\x10\x12*\xd4\x02\n\x12\x45StreamFrameResult\x12\x1f\n\x1bk_EStreamFrameResultPending\x10\x00\x12!\n\x1dk_EStreamFrameResultDisplayed\x10\x01\x12*\n&k_EStreamFrameResultDroppedNetworkSlow\x10\x02\x12*\n&k_EStreamFrameResultDroppedNetworkLost\x10\x03\x12)\n%k_EStreamFrameResultDroppedDecodeSlow\x10\x04\x12,\n(k_EStreamFrameResultDroppedDecodeCorrupt\x10\x05\x12#\n\x1fk_EStreamFrameResultDroppedLate\x10\x06\x12$\n k_EStreamFrameResultDroppedReset\x10\x07*\xa2\x05\n\x15\x45\x46rameAccumulatedStat\x12\x13\n\x0fk_EFrameStatFPS\x10\x00\x12!\n\x1dk_EFrameStatCaptureDurationMS\x10\x01\x12!\n\x1dk_EFrameStatConvertDurationMS\x10\x02\x12 \n\x1ck_EFrameStatEncodeDurationMS\x10\x03\x12\x1f\n\x1bk_EFrameStatSteamDurationMS\x10\x04\x12 \n\x1ck_EFrameStatServerDurationMS\x10\x05\x12!\n\x1dk_EFrameStatNetworkDurationMS\x10\x06\x12 \n\x1ck_EFrameStatDecodeDurationMS\x10\x07\x12!\n\x1dk_EFrameStatDisplayDurationMS\x10\x08\x12 \n\x1ck_EFrameStatClientDurationMS\x10\t\x12\x1f\n\x1bk_EFrameStatFrameDurationMS\x10\n\x12\x1e\n\x1ak_EFrameStatInputLatencyMS\x10\x0b\x12\x1d\n\x19k_EFrameStatGameLatencyMS\x10\x0c\x12\"\n\x1ek_EFrameStatRoundTripLatencyMS\x10\r\x12\x1a\n\x16k_EFrameStatPingTimeMS\x10\x0e\x12\'\n#k_EFrameStatServerBitrateKbitPerSec\x10\x0f\x12\'\n#k_EFrameStatClientBitrateKbitPerSec\x10\x10\x12\'\n#k_EFrameStatLinkBandwidthKbitPerSec\x10\x11\x12$\n k_EFrameStatPacketLossPercentage\x10\x12*^\n\x0c\x45LogFileType\x12\x18\n\x14k_ELogFileSystemBoot\x10\x00\x12\x19\n\x15k_ELogFileSystemReset\x10\x01\x12\x19\n\x15k_ELogFileSystemDebug\x10\x02\x42\x05H\x01\x90\x01\x00')
+  serialized_options=b'H\001\220\001\000',
+  create_key=_descriptor._internal_create_key,
+  serialized_pb=b'\n\x1esteammessages_remoteplay.proto\"H\n\x15\x43\x44iscoveryPingRequest\x12\x10\n\x08sequence\x18\x01 \x01(\r\x12\x1d\n\x15packet_size_requested\x18\x02 \x01(\r\"H\n\x16\x43\x44iscoveryPingResponse\x12\x10\n\x08sequence\x18\x01 \x01(\r\x12\x1c\n\x14packet_size_received\x18\x02 \x01(\r\"5\n\x1d\x43StreamingClientHandshakeInfo\x12\x14\n\x0cnetwork_test\x18\x02 \x01(\x05\"C\n\x13\x43\x43lientHandshakeMsg\x12,\n\x04info\x18\x01 \x02(\x0b\x32\x1e.CStreamingClientHandshakeInfo\",\n\x1d\x43StreamingServerHandshakeInfo\x12\x0b\n\x03mtu\x18\x01 \x01(\x05\"C\n\x13\x43ServerHandshakeMsg\x12,\n\x04info\x18\x01 \x02(\x0b\x32\x1e.CStreamingServerHandshakeInfo\"s\n\x19\x43\x41uthenticationRequestMsg\x12\r\n\x05token\x18\x01 \x01(\x0c\x12\x36\n\x07version\x18\x02 \x01(\x0e\x32\x0f.EStreamVersion:\x14k_EStreamVersionNone\x12\x0f\n\x07steamid\x18\x03 \x01(\x04\"\xd4\x01\n\x1a\x43\x41uthenticationResponseMsg\x12K\n\x06result\x18\x01 \x01(\x0e\x32\x30.CAuthenticationResponseMsg.AuthenticationResult:\tSUCCEEDED\x12\x36\n\x07version\x18\x02 \x01(\x0e\x32\x0f.EStreamVersion:\x14k_EStreamVersionNone\"1\n\x14\x41uthenticationResult\x12\r\n\tSUCCEEDED\x10\x00\x12\n\n\x06\x46\x41ILED\x10\x01\"\x0f\n\rCKeepAliveMsg\"\x83\x01\n\x14\x43StartNetworkTestMsg\x12\x0e\n\x06\x66rames\x18\x01 \x01(\r\x12\x11\n\tframerate\x18\x02 \x01(\r\x12\x14\n\x0c\x62itrate_kbps\x18\x03 \x01(\r\x12\x1a\n\x12\x62urst_bitrate_kbps\x18\x04 \x01(\r\x12\x16\n\x0e\x62\x61ndwidth_test\x18\x05 \x01(\x08\"\x89\x01\n\x10\x43StreamVideoMode\x12\r\n\x05width\x18\x01 \x02(\r\x12\x0e\n\x06height\x18\x02 \x02(\r\x12\x14\n\x0crefresh_rate\x18\x03 \x01(\r\x12\x1e\n\x16refresh_rate_numerator\x18\x04 \x01(\r\x12 \n\x18refresh_rate_denominator\x18\x05 \x01(\r\"\xcb\x03\n\x14\x43StreamingClientCaps\x12\x13\n\x0bsystem_info\x18\x01 \x01(\t\x12\x1a\n\x12system_can_suspend\x18\x02 \x01(\x08\x12#\n\x1bmaximum_decode_bitrate_kbps\x18\x03 \x01(\x05\x12\"\n\x1amaximum_burst_bitrate_kbps\x18\x04 \x01(\x05\x12\x1b\n\x13supports_video_hevc\x18\x05 \x01(\x08\x12\x1b\n\x13\x64isable_steam_store\x18\x06 \x01(\x08\x12\x1d\n\x15\x64isable_client_cursor\x18\x07 \x01(\x08\x12\'\n\x1f\x64isable_intel_hardware_encoding\x18\x08 \x01(\x08\x12%\n\x1d\x64isable_amd_hardware_encoding\x18\t \x01(\x08\x12(\n disable_nvidia_hardware_encoding\x18\n \x01(\x08\x12\x13\n\x0b\x66orm_factor\x18\x0b \x01(\x05\x12\x1e\n\x16has_on_screen_keyboard\x18\x0c \x01(\x08\x12\x31\n\x15supported_colorspaces\x18\r \x03(\x0e\x32\x12.EStreamColorspace\"\xea\x05\n\x16\x43StreamingClientConfig\x12\x44\n\x07quality\x18\x01 \x01(\x0e\x32\x19.EStreamQualityPreference:\x18k_EStreamQualityBalanced\x12\x1c\n\x14maximum_resolution_x\x18\x02 \x01(\r\x12\x1c\n\x14maximum_resolution_y\x18\x03 \x01(\r\x12#\n\x1bmaximum_framerate_numerator\x18\x04 \x01(\r\x12%\n\x1dmaximum_framerate_denominator\x18\x05 \x01(\r\x12 \n\x14maximum_bitrate_kbps\x18\x06 \x01(\x05:\x02-1\x12&\n\x18\x65nable_hardware_decoding\x18\x07 \x01(\x08:\x04true\x12)\n\x1a\x65nable_performance_overlay\x18\x08 \x01(\x08:\x05\x66\x61lse\x12$\n\x16\x65nable_video_streaming\x18\t \x01(\x08:\x04true\x12$\n\x16\x65nable_audio_streaming\x18\n \x01(\x08:\x04true\x12$\n\x16\x65nable_input_streaming\x18\x0b \x01(\x08:\x04true\x12\x19\n\x0e\x61udio_channels\x18\x0c \x01(\x05:\x01\x32\x12 \n\x11\x65nable_video_hevc\x18\r \x01(\x08:\x05\x66\x61lse\x12&\n\x18\x65nable_performance_icons\x18\x0e \x01(\x08:\x04true\x12*\n\x1b\x65nable_microphone_streaming\x18\x0f \x01(\x08:\x05\x66\x61lse\x12!\n\x19\x63ontroller_overlay_hotkey\x18\x10 \x01(\t\x12&\n\x17\x65nable_touch_controller\x18\x11 \x01(\x08:\x05\x66\x61lse\x12?\n\tp2p_scope\x18\x13 \x01(\x0e\x32\x10.EStreamP2PScope:\x1ak_EStreamP2PScopeAutomatic\"\x94\x03\n\x16\x43StreamingServerConfig\x12!\n\x19\x63hange_desktop_resolution\x18\x01 \x01(\x08\x12%\n\x1d\x64ynamically_adjust_resolution\x18\x02 \x01(\x08\x12\x1c\n\x14\x65nable_capture_nvfbc\x18\x03 \x01(\x08\x12\'\n\x1f\x65nable_hardware_encoding_nvidia\x18\x04 \x01(\x08\x12$\n\x1c\x65nable_hardware_encoding_amd\x18\x05 \x01(\x08\x12&\n\x1e\x65nable_hardware_encoding_intel\x18\x06 \x01(\x08\x12!\n\x19software_encoding_threads\x18\x07 \x01(\x05\x12\x1f\n\x17\x65nable_traffic_priority\x18\x08 \x01(\x08\x12W\n\x0fhost_play_audio\x18\t \x01(\x0e\x32\x1f.EStreamHostPlayAudioPreference:\x1dk_EStreamHostPlayAudioDefault\"\xc8\x02\n\x11\x43NegotiatedConfig\x12\x15\n\rreliable_data\x18\x01 \x01(\x08\x12I\n\x14selected_audio_codec\x18\x02 \x01(\x0e\x32\x12.EStreamAudioCodec:\x17k_EStreamAudioCodecNone\x12I\n\x14selected_video_codec\x18\x03 \x01(\x0e\x32\x12.EStreamVideoCodec:\x17k_EStreamVideoCodecNone\x12\x30\n\x15\x61vailable_video_modes\x18\x04 \x03(\x0b\x32\x11.CStreamVideoMode\x12\x19\n\x11\x65nable_remote_hid\x18\x05 \x01(\x08\x12\x1a\n\x12\x65nable_touch_input\x18\x06 \x01(\x08\x12\x1d\n\x15\x64isable_client_cursor\x18\x07 \x01(\x08\"\xcf\x01\n\x13\x43NegotiationInitMsg\x12\x15\n\rreliable_data\x18\x01 \x01(\x08\x12\x32\n\x16supported_audio_codecs\x18\x02 \x03(\x0e\x32\x12.EStreamAudioCodec\x12\x32\n\x16supported_video_codecs\x18\x03 \x03(\x0e\x32\x12.EStreamVideoCodec\x12\x1b\n\x13supports_remote_hid\x18\x04 \x01(\x08\x12\x1c\n\x14supports_touch_input\x18\x05 \x01(\x08\"\xae\x01\n\x18\x43NegotiationSetConfigMsg\x12\"\n\x06\x63onfig\x18\x01 \x02(\x0b\x32\x12.CNegotiatedConfig\x12\x38\n\x17streaming_client_config\x18\x02 \x01(\x0b\x32\x17.CStreamingClientConfig\x12\x34\n\x15streaming_client_caps\x18\x03 \x01(\x0b\x32\x15.CStreamingClientCaps\"\x19\n\x17\x43NegotiationCompleteMsg\"\x9a\x01\n\x12\x43StartAudioDataMsg\x12\x0f\n\x07\x63hannel\x18\x02 \x02(\r\x12:\n\x05\x63odec\x18\x03 \x01(\x0e\x32\x12.EStreamAudioCodec:\x17k_EStreamAudioCodecNone\x12\x12\n\ncodec_data\x18\x04 \x01(\x0c\x12\x11\n\tfrequency\x18\x05 \x01(\r\x12\x10\n\x08\x63hannels\x18\x06 \x01(\r\"\x13\n\x11\x43StopAudioDataMsg\"\x94\x01\n\x12\x43StartVideoDataMsg\x12\x0f\n\x07\x63hannel\x18\x01 \x02(\r\x12:\n\x05\x63odec\x18\x02 \x01(\x0e\x32\x12.EStreamVideoCodec:\x17k_EStreamVideoCodecNone\x12\x12\n\ncodec_data\x18\x03 \x01(\x0c\x12\r\n\x05width\x18\x04 \x01(\r\x12\x0e\n\x06height\x18\x05 \x01(\r\"\x13\n\x11\x43StopVideoDataMsg\"\xc5\x04\n\x0e\x43RecordedInput\x12K\n\x04type\x18\x01 \x01(\x0e\x32\x16.EStreamControlMessage:%k_EStreamControlAuthenticationRequest\x12\x11\n\ttimestamp\x18\x02 \x01(\r\x12\x30\n\x0b\x66inger_down\x18\x03 \x01(\x0b\x32\x19.CInputTouchFingerDownMsgH\x00\x12\x34\n\rfinger_motion\x18\x04 \x01(\x0b\x32\x1b.CInputTouchFingerMotionMsgH\x00\x12,\n\tfinger_up\x18\x05 \x01(\x0b\x32\x17.CInputTouchFingerUpMsgH\x00\x12-\n\x0cmouse_motion\x18\x06 \x01(\x0b\x32\x15.CInputMouseMotionMsgH\x00\x12+\n\x0bmouse_wheel\x18\x07 \x01(\x0b\x32\x14.CInputMouseWheelMsgH\x00\x12)\n\nmouse_down\x18\x08 \x01(\x0b\x32\x13.CInputMouseDownMsgH\x00\x12%\n\x08mouse_up\x18\t \x01(\x0b\x32\x11.CInputMouseUpMsgH\x00\x12%\n\x08key_down\x18\n \x01(\x0b\x32\x11.CInputKeyDownMsgH\x00\x12!\n\x06key_up\x18\x0b \x01(\x0b\x32\x0f.CInputKeyUpMsgH\x00\x12\x1e\n\x04text\x18\x0c \x01(\x0b\x32\x0e.CInputTextMsgH\x00\x12\x1d\n\x03hid\x18\r \x01(\x0b\x32\x0e.CRemoteHIDMsgH\x00\x42\x06\n\x04\x64\x61ta\"8\n\x14\x43RecordedInputStream\x12 \n\x07\x65ntries\x18\x01 \x03(\x0b\x32\x0f.CRecordedInput\"9\n\x14\x43InputLatencyTestMsg\x12\x12\n\ninput_mark\x18\x01 \x02(\r\x12\r\n\x05\x63olor\x18\x02 \x01(\r\"l\n\x18\x43InputTouchFingerDownMsg\x12\x12\n\ninput_mark\x18\x01 \x01(\r\x12\x10\n\x08\x66ingerid\x18\x02 \x01(\x04\x12\x14\n\x0cx_normalized\x18\x03 \x01(\x02\x12\x14\n\x0cy_normalized\x18\x04 \x01(\x02\"n\n\x1a\x43InputTouchFingerMotionMsg\x12\x12\n\ninput_mark\x18\x01 \x01(\r\x12\x10\n\x08\x66ingerid\x18\x02 \x01(\x04\x12\x14\n\x0cx_normalized\x18\x03 \x01(\x02\x12\x14\n\x0cy_normalized\x18\x04 \x01(\x02\"j\n\x16\x43InputTouchFingerUpMsg\x12\x12\n\ninput_mark\x18\x01 \x01(\r\x12\x10\n\x08\x66ingerid\x18\x02 \x01(\x04\x12\x14\n\x0cx_normalized\x18\x03 \x01(\x02\x12\x14\n\x0cy_normalized\x18\x04 \x01(\x02\"n\n\x14\x43InputMouseMotionMsg\x12\x12\n\ninput_mark\x18\x01 \x01(\r\x12\x14\n\x0cx_normalized\x18\x02 \x01(\x02\x12\x14\n\x0cy_normalized\x18\x03 \x01(\x02\x12\n\n\x02\x64x\x18\x04 \x01(\x05\x12\n\n\x02\x64y\x18\x05 \x01(\x05\"p\n\x13\x43InputMouseWheelMsg\x12\x12\n\ninput_mark\x18\x01 \x01(\r\x12\x45\n\tdirection\x18\x02 \x02(\x0e\x32\x1b.EStreamMouseWheelDirection:\x15k_EStreamMouseWheelUp\"g\n\x12\x43InputMouseDownMsg\x12\x12\n\ninput_mark\x18\x01 \x01(\r\x12=\n\x06\x62utton\x18\x02 \x02(\x0e\x32\x13.EStreamMouseButton:\x18k_EStreamMouseButtonLeft\"e\n\x10\x43InputMouseUpMsg\x12\x12\n\ninput_mark\x18\x01 \x01(\r\x12=\n\x06\x62utton\x18\x02 \x02(\x0e\x32\x13.EStreamMouseButton:\x18k_EStreamMouseButtonLeft\"8\n\x10\x43InputKeyDownMsg\x12\x12\n\ninput_mark\x18\x01 \x01(\r\x12\x10\n\x08scancode\x18\x02 \x02(\r\"6\n\x0e\x43InputKeyUpMsg\x12\x12\n\ninput_mark\x18\x01 \x01(\r\x12\x10\n\x08scancode\x18\x02 \x02(\r\"6\n\rCInputTextMsg\x12\x12\n\ninput_mark\x18\x01 \x01(\r\x12\x11\n\ttext_utf8\x18\x02 \x02(\t\"\x1c\n\x0c\x43SetTitleMsg\x12\x0c\n\x04text\x18\x01 \x01(\t\"3\n\x12\x43SetCaptureSizeMsg\x12\r\n\x05width\x18\x01 \x01(\x05\x12\x0e\n\x06height\x18\x02 \x01(\x05\";\n\x0b\x43SetIconMsg\x12\r\n\x05width\x18\x01 \x01(\x05\x12\x0e\n\x06height\x18\x02 \x01(\x05\x12\r\n\x05image\x18\x03 \x01(\x0c\"E\n\x11\x43SetFlashStateMsg\x12\r\n\x05\x66lags\x18\x01 \x01(\r\x12\r\n\x05\x63ount\x18\x02 \x01(\r\x12\x12\n\ntimeout_ms\x18\x03 \x01(\r\"<\n\x0e\x43ShowCursorMsg\x12\x14\n\x0cx_normalized\x18\x01 \x01(\x02\x12\x14\n\x0cy_normalized\x18\x02 \x01(\x02\"\x10\n\x0e\x43HideCursorMsg\"\"\n\rCSetCursorMsg\x12\x11\n\tcursor_id\x18\x01 \x02(\x04\"\'\n\x12\x43GetCursorImageMsg\x12\x11\n\tcursor_id\x18\x01 \x02(\x04\"s\n\x12\x43SetCursorImageMsg\x12\x11\n\tcursor_id\x18\x01 \x02(\x04\x12\r\n\x05width\x18\x02 \x01(\x05\x12\x0e\n\x06height\x18\x03 \x01(\x05\x12\r\n\x05hot_x\x18\x04 \x01(\x05\x12\r\n\x05hot_y\x18\x05 \x01(\x05\x12\r\n\x05image\x18\x06 \x01(\x0c\"5\n\x14\x43VideoDecoderInfoMsg\x12\x0c\n\x04info\x18\x01 \x01(\t\x12\x0f\n\x07threads\x18\x02 \x01(\x05\"$\n\x14\x43VideoEncoderInfoMsg\x12\x0c\n\x04info\x18\x01 \x01(\t\"\x0b\n\tCPauseMsg\"\x0c\n\nCResumeMsg\"\x1a\n\x18\x43\x45nableHighResCaptureMsg\"\x1b\n\x19\x43\x44isableHighResCaptureMsg\"\x19\n\x17\x43ToggleMagnificationMsg\"\"\n\x0f\x43SetCapslockMsg\x12\x0f\n\x07pressed\x18\x01 \x01(\x08\"\x8c\x02\n\x15\x43StreamingKeymapEntry\x12\x10\n\x08scancode\x18\x01 \x01(\x05\x12\x16\n\x0enormal_keycode\x18\x02 \x01(\x05\x12\x15\n\rshift_keycode\x18\x03 \x01(\x05\x12\x18\n\x10\x63\x61pslock_keycode\x18\x04 \x01(\x05\x12\x1e\n\x16shift_capslock_keycode\x18\x05 \x01(\x05\x12\x15\n\raltgr_keycode\x18\x06 \x01(\x05\x12\x1b\n\x13\x61ltgr_shift_keycode\x18\x07 \x01(\x05\x12\x1e\n\x16\x61ltgr_capslock_keycode\x18\x08 \x01(\x05\x12$\n\x1c\x61ltgr_shift_capslock_keycode\x18\t \x01(\x05\";\n\x10\x43StreamingKeymap\x12\'\n\x07\x65ntries\x18\x01 \x03(\x0b\x32\x16.CStreamingKeymapEntry\"2\n\rCSetKeymapMsg\x12!\n\x06keymap\x18\x01 \x01(\x0b\x32\x11.CStreamingKeymap\"\x0e\n\x0c\x43StopRequest\"\x0e\n\x0c\x43QuitRequest\"%\n\x10\x43\x44\x65leteCursorMsg\x12\x11\n\tcursor_id\x18\x01 \x02(\x04\"D\n\x19\x43SetStreamingClientConfig\x12\'\n\x06\x63onfig\x18\x01 \x02(\x0b\x32\x17.CStreamingClientConfig\"\x1d\n\nCSetQoSMsg\x12\x0f\n\x07use_qos\x18\x01 \x02(\x08\"x\n\x16\x43SetTargetFramerateMsg\x12\x11\n\tframerate\x18\x01 \x02(\r\x12\x0f\n\x07reasons\x18\x02 \x01(\r\x12\x1b\n\x13\x66ramerate_numerator\x18\x03 \x01(\r\x12\x1d\n\x15\x66ramerate_denominator\x18\x04 \x01(\r\"\'\n\x14\x43SetTargetBitrateMsg\x12\x0f\n\x07\x62itrate\x18\x01 \x02(\x05\"%\n\x12\x43OverlayEnabledMsg\x12\x0f\n\x07\x65nabled\x18\x01 \x02(\x08\"&\n\x10\x43SetGammaRampMsg\x12\x12\n\ngamma_ramp\x18\x01 \x01(\x0c\"~\n\x0f\x43SetActivityMsg\x12\x39\n\x08\x61\x63tivity\x18\x01 \x01(\x0e\x32\x10.EStreamActivity:\x15k_EStreamActivityIdle\x12\r\n\x05\x61ppid\x18\x02 \x01(\r\x12\x0e\n\x06gameid\x18\x03 \x01(\x04\x12\x11\n\tgame_name\x18\x04 \x01(\t\"\x13\n\x11\x43SystemSuspendMsg\"*\n\x16\x43VirtualHereRequestMsg\x12\x10\n\x08hostname\x18\x01 \x01(\t\"5\n\x14\x43VirtualHereReadyMsg\x12\x1d\n\x15licensed_device_count\x18\x01 \x01(\r\"4\n\x1a\x43VirtualHereShareDeviceMsg\x12\x16\n\x0e\x64\x65vice_address\x18\x01 \x01(\t\"\'\n\x14\x43SetSpectatorModeMsg\x12\x0f\n\x07\x65nabled\x18\x01 \x01(\x08\"3\n\rCRemoteHIDMsg\x12\x0c\n\x04\x64\x61ta\x18\x01 \x01(\x0c\x12\x14\n\x0c\x61\x63tive_input\x18\x02 \x01(\x08\"I\n\x15\x43TouchConfigActiveMsg\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x10\n\x08revision\x18\x02 \x01(\r\x12\x0f\n\x07\x63reator\x18\x03 \x01(\x04\"\'\n\x16\x43GetTouchConfigDataMsg\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\"h\n\x16\x43SetTouchConfigDataMsg\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x10\n\x08revision\x18\x02 \x01(\r\x12\x0c\n\x04\x64\x61ta\x18\x03 \x01(\x0c\x12\x0e\n\x06layout\x18\x04 \x01(\x0c\x12\x0f\n\x07\x63reator\x18\x05 \x01(\x04\":\n\x19\x43SaveTouchConfigLayoutMsg\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x0e\n\x06layout\x18\x04 \x01(\x0c\"?\n\x18\x43TouchActionSetActiveMsg\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x14\n\x0c\x61\x63tionset_id\x18\x02 \x01(\x05\"C\n\x1c\x43TouchActionSetLayerAddedMsg\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x14\n\x0c\x61\x63tionset_id\x18\x02 \x01(\x05\"E\n\x1e\x43TouchActionSetLayerRemovedMsg\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x14\n\x0c\x61\x63tionset_id\x18\x02 \x01(\x05\"3\n\x14\x43GetTouchIconDataMsg\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x0c\n\x04icon\x18\x02 \x01(\t\"A\n\x14\x43SetTouchIconDataMsg\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x0c\n\x04icon\x18\x02 \x01(\t\x12\x0c\n\x04\x64\x61ta\x18\x03 \x01(\x0c\"\xea\x02\n!CRemotePlayTogetherGroupUpdateMsg\x12:\n\x07players\x18\x01 \x03(\x0b\x32).CRemotePlayTogetherGroupUpdateMsg.Player\x12\x14\n\x0cplayer_index\x18\x02 \x01(\x05\x12\x1c\n\x14miniprofile_location\x18\x03 \x01(\t\x12\x11\n\tgame_name\x18\x04 \x01(\t\x12\x17\n\x0f\x61vatar_location\x18\x05 \x01(\t\x1a\xa8\x01\n\x06Player\x12\x11\n\taccountid\x18\x01 \x01(\r\x12\x0f\n\x07guestid\x18\x02 \x01(\r\x12\x18\n\x10keyboard_enabled\x18\x03 \x01(\x08\x12\x15\n\rmouse_enabled\x18\x04 \x01(\x08\x12\x1a\n\x12\x63ontroller_enabled\x18\x05 \x01(\x08\x12\x18\n\x10\x63ontroller_slots\x18\x06 \x03(\r\x12\x13\n\x0b\x61vatar_hash\x18\x07 \x01(\x0c\"3\n\x1f\x43SetInputTemporarilyDisabledMsg\x12\x10\n\x08\x64isabled\x18\x01 \x01(\x08\"\'\n\x16\x43SetQualityOverrideMsg\x12\r\n\x05value\x18\x01 \x01(\x05\"\'\n\x16\x43SetBitrateOverrideMsg\x12\r\n\x05value\x18\x01 \x01(\x05\"\x1a\n\x18\x43ShowOnScreenKeyboardMsg\"%\n\x12\x43StreamDataLostMsg\x12\x0f\n\x07packets\x18\x01 \x03(\r\"f\n\x0c\x43\x41udioFormat\x12\x31\n\x06\x66ormat\x18\x01 \x02(\x0e\x32\r.EAudioFormat:\x12k_EAudioFormatNone\x12\x11\n\tfrequency\x18\x02 \x01(\r\x12\x10\n\x08\x63hannels\x18\x03 \x01(\r\"`\n\x0c\x43VideoFormat\x12\x31\n\x06\x66ormat\x18\x01 \x02(\x0e\x32\r.EVideoFormat:\x12k_EVideoFormatNone\x12\r\n\x05width\x18\x02 \x01(\r\x12\x0e\n\x06height\x18\x03 \x01(\r\"`\n\x0b\x43\x46rameEvent\x12>\n\x08\x65vent_id\x18\x01 \x02(\x0e\x32\x12.EStreamFrameEvent:\x18k_EStreamInputEventStart\x12\x11\n\ttimestamp\x18\x02 \x02(\r\"\xcf\x02\n\x0b\x43\x46rameStats\x12\x10\n\x08\x66rame_id\x18\x01 \x02(\r\x12\x12\n\ninput_mark\x18\x02 \x01(\r\x12\x1c\n\x06\x65vents\x18\x03 \x03(\x0b\x32\x0c.CFrameEvent\x12@\n\x06result\x18\x04 \x02(\x0e\x32\x13.EStreamFrameResult:\x1bk_EStreamFrameResultPending\x12\x19\n\x11\x66rame_start_delta\x18\x05 \x01(\x02\x12\x1b\n\x13\x66rame_display_delta\x18\x06 \x01(\x02\x12\x11\n\tping_time\x18\x07 \x01(\x02\x12\x16\n\x0eserver_bitrate\x18\x08 \x01(\x02\x12\x16\n\x0e\x63lient_bitrate\x18\t \x01(\x02\x12\x16\n\x0elink_bandwidth\x18\n \x01(\x02\x12\x13\n\x0bpacket_loss\x18\x0b \x01(\x02\x12\x12\n\nframe_size\x18\x0c \x01(\r\"\x88\x01\n\x1a\x43\x46rameStatAccumulatedValue\x12:\n\tstat_type\x18\x01 \x02(\x0e\x32\x16.EFrameAccumulatedStat:\x0fk_EFrameStatFPS\x12\r\n\x05\x63ount\x18\x02 \x02(\x05\x12\x0f\n\x07\x61verage\x18\x03 \x02(\x02\x12\x0e\n\x06stddev\x18\x04 \x01(\x02\"\xc1\x01\n\x12\x43\x46rameStatsListMsg\x12=\n\tdata_type\x18\x01 \x02(\x0e\x32\x13.EStreamingDataType:\x15k_EStreamingAudioData\x12\x1b\n\x05stats\x18\x02 \x03(\x0b\x32\x0c.CFrameStats\x12\x36\n\x11\x61\x63\x63umulated_stats\x18\x03 \x03(\x0b\x32\x1b.CFrameStatAccumulatedValue\x12\x17\n\x0flatest_frame_id\x18\x04 \x02(\x05\"x\n\x16\x43StreamingSessionStats\x12\x1d\n\x15\x66rame_loss_percentage\x18\x01 \x01(\x02\x12\x1f\n\x17\x61verage_network_time_ms\x18\x02 \x01(\x02\x12\x1e\n\x16stddev_network_time_ms\x18\x03 \x01(\x02\"#\n\rCDebugDumpMsg\x12\x12\n\nscreenshot\x18\x01 \x01(\x0c\"(\n\x07\x43LogMsg\x12\x0c\n\x04type\x18\x01 \x01(\x05\x12\x0f\n\x07message\x18\x02 \x01(\t\"P\n\rCLogUploadMsg\x12\x31\n\x04type\x18\x01 \x01(\x0e\x32\r.ELogFileType:\x14k_ELogFileSystemBoot\x12\x0c\n\x04\x64\x61ta\x18\x03 \x01(\x0c\"\xb3\x02\n\x13\x43TransportSignalMsg\x12\x32\n\x06webrtc\x18\x01 \x01(\x0b\x32\".CTransportSignalMsg.WebRTCMessage\x12\x0b\n\x03sdr\x18\x02 \x03(\x0c\x1a\xda\x01\n\rWebRTCMessage\x12\x12\n\x08greeting\x18\x01 \x01(\x08H\x00\x12\x0f\n\x05offer\x18\x02 \x01(\tH\x00\x12\x10\n\x06\x61nswer\x18\x03 \x01(\tH\x00\x12\x41\n\tcandidate\x18\x04 \x01(\x0b\x32,.CTransportSignalMsg.WebRTCMessage.CandidateH\x00\x1aH\n\tCandidate\x12\x0f\n\x07sdp_mid\x18\x01 \x01(\t\x12\x17\n\x0fsdp_mline_index\x18\x02 \x01(\x05\x12\x11\n\tcandidate\x18\x03 \x01(\tB\x05\n\x03msg\"\xde\x06\n\x14\x43\x43ontrollerConfigMsg\x12\\\n\x04type\x18\x01 \x02(\x0e\x32\x1b.EStreamControllerConfigMsg:1k_EStreamControllerConfigMsg_RequestConfigsForApp\x12\x16\n\x0e\x63ontrollerPath\x18\x02 \x01(\t\x12\r\n\x05\x61ppid\x18\x03 \x01(\r\x12X\n\x17personalizationResponse\x18\x04 \x01(\x0b\x32\x37.CControllerConfigMsg.ControllerPersonalizationResponse\x12\x46\n\x0e\x63onfigResponse\x18\x06 \x03(\x0b\x32..CControllerConfigMsg.ControllerConfigResponse\x12N\n\x15\x61\x63tiveConfigChangeMsg\x18\x07 \x01(\x0b\x32/.CControllerConfigMsg.ControllerActiveConfigMsg\x1a\x99\x01\n\x18\x43ontrollerConfigResponse\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x11\n\tconfigURL\x18\x02 \x01(\t\x12\x16\n\x0e\x63ontrollerType\x18\x03 \x01(\r\x12\x16\n\x0e\x63ontrollerData\x18\x04 \x01(\t\x12\x16\n\x0eselectionOrder\x18\x05 \x01(\r\x12\x13\n\x0b\x61\x63tionBlock\x18\x06 \x01(\x08\x1a@\n!ControllerPersonalizationResponse\x12\x1b\n\x13personalizationData\x18\x01 \x01(\t\x1a\x81\x01\n$ControllerActiveConfigChangeResponse\x12\x11\n\tconfigURL\x18\x02 \x01(\t\x12\x16\n\x0e\x63ontrollerType\x18\x03 \x01(\r\x12\x16\n\x0e\x63ontrollerData\x18\x04 \x01(\t\x12\x16\n\x0eselectionOrder\x18\x05 \x01(\r\x1am\n\x19\x43ontrollerActiveConfigMsg\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x11\n\tconfigURL\x18\x02 \x01(\t\x12\x16\n\x0e\x63ontrollerType\x18\x03 \x01(\r\x12\x16\n\x0e\x63ontrollerData\x18\x04 \x01(\t*\xb3\x01\n\x0e\x45StreamChannel\x12$\n\x17k_EStreamChannelInvalid\x10\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01\x12\x1d\n\x19k_EStreamChannelDiscovery\x10\x00\x12\x1b\n\x17k_EStreamChannelControl\x10\x01\x12\x19\n\x15k_EStreamChannelStats\x10\x02\x12$\n k_EStreamChannelDataChannelStart\x10\x03*`\n\x17\x45StreamDiscoveryMessage\x12!\n\x1dk_EStreamDiscoveryPingRequest\x10\x01\x12\"\n\x1ek_EStreamDiscoveryPingResponse\x10\x02*\xb0\x1c\n\x15\x45StreamControlMessage\x12)\n%k_EStreamControlAuthenticationRequest\x10\x01\x12*\n&k_EStreamControlAuthenticationResponse\x10\x02\x12#\n\x1fk_EStreamControlNegotiationInit\x10\x03\x12(\n$k_EStreamControlNegotiationSetConfig\x10\x04\x12\'\n#k_EStreamControlNegotiationComplete\x10\x05\x12#\n\x1fk_EStreamControlClientHandshake\x10\x06\x12#\n\x1fk_EStreamControlServerHandshake\x10\x07\x12$\n k_EStreamControlStartNetworkTest\x10\x08\x12\x1d\n\x19k_EStreamControlKeepAlive\x10\t\x12\'\n#k_EStreamControl_LAST_SETUP_MESSAGE\x10\x0f\x12\"\n\x1ek_EStreamControlStartAudioData\x10\x32\x12!\n\x1dk_EStreamControlStopAudioData\x10\x33\x12\"\n\x1ek_EStreamControlStartVideoData\x10\x34\x12!\n\x1dk_EStreamControlStopVideoData\x10\x35\x12$\n k_EStreamControlInputMouseMotion\x10\x36\x12#\n\x1fk_EStreamControlInputMouseWheel\x10\x37\x12\"\n\x1ek_EStreamControlInputMouseDown\x10\x38\x12 \n\x1ck_EStreamControlInputMouseUp\x10\x39\x12 \n\x1ck_EStreamControlInputKeyDown\x10:\x12\x1e\n\x1ak_EStreamControlInputKeyUp\x10;\x12\x31\n-k_EStreamControlInputGamepadAttached_OBSOLETE\x10<\x12.\n*k_EStreamControlInputGamepadEvent_OBSOLETE\x10=\x12\x31\n-k_EStreamControlInputGamepadDetached_OBSOLETE\x10>\x12\x1e\n\x1ak_EStreamControlShowCursor\x10?\x12\x1e\n\x1ak_EStreamControlHideCursor\x10@\x12\x1d\n\x19k_EStreamControlSetCursor\x10\x41\x12\"\n\x1ek_EStreamControlGetCursorImage\x10\x42\x12\"\n\x1ek_EStreamControlSetCursorImage\x10\x43\x12 \n\x1ck_EStreamControlDeleteCursor\x10\x44\x12&\n\"k_EStreamControlSetTargetFramerate\x10\x45\x12$\n k_EStreamControlInputLatencyTest\x10\x46\x12*\n&k_EStreamControlGamepadRumble_OBSOLETE\x10G\x12\"\n\x1ek_EStreamControlOverlayEnabled\x10J\x12\x34\n0k_EStreamControlInputControllerAttached_OBSOLETE\x10K\x12\x31\n-k_EStreamControlInputControllerState_OBSOLETE\x10L\x12/\n+k_EStreamControlTriggerHapticPulse_OBSOLETE\x10M\x12\x34\n0k_EStreamControlInputControllerDetached_OBSOLETE\x10N\x12$\n k_EStreamControlVideoDecoderInfo\x10P\x12\x1c\n\x18k_EStreamControlSetTitle\x10Q\x12\x1b\n\x17k_EStreamControlSetIcon\x10R\x12\x1f\n\x1bk_EStreamControlQuitRequest\x10S\x12\x1a\n\x16k_EStreamControlSetQoS\x10W\x12<\n8k_EStreamControlInputControllerWirelessPresence_OBSOLETE\x10X\x12 \n\x1ck_EStreamControlSetGammaRamp\x10Y\x12$\n k_EStreamControlVideoEncoderInfo\x10Z\x12\x34\n0k_EStreamControlInputControllerStateHID_OBSOLETE\x10]\x12$\n k_EStreamControlSetTargetBitrate\x10^\x12\x38\n4k_EStreamControlSetControllerPairingEnabled_OBSOLETE\x10_\x12\x37\n3k_EStreamControlSetControllerPairingResult_OBSOLETE\x10`\x12\x38\n4k_EStreamControlTriggerControllerDisconnect_OBSOLETE\x10\x61\x12\x1f\n\x1bk_EStreamControlSetActivity\x10\x62\x12,\n(k_EStreamControlSetStreamingClientConfig\x10\x63\x12!\n\x1dk_EStreamControlSystemSuspend\x10\x64\x12\x32\n.k_EStreamControlSetControllerSettings_OBSOLETE\x10\x65\x12&\n\"k_EStreamControlVirtualHereRequest\x10\x66\x12$\n k_EStreamControlVirtualHereReady\x10g\x12*\n&k_EStreamControlVirtualHereShareDevice\x10h\x12$\n k_EStreamControlSetSpectatorMode\x10i\x12\x1d\n\x19k_EStreamControlRemoteHID\x10j\x12\'\n#k_EStreamControlStartMicrophoneData\x10k\x12&\n\"k_EStreamControlStopMicrophoneData\x10l\x12\x1d\n\x19k_EStreamControlInputText\x10m\x12%\n!k_EStreamControlTouchConfigActive\x10n\x12&\n\"k_EStreamControlGetTouchConfigData\x10o\x12&\n\"k_EStreamControlSetTouchConfigData\x10p\x12)\n%k_EStreamControlSaveTouchConfigLayout\x10q\x12(\n$k_EStreamControlTouchActionSetActive\x10r\x12$\n k_EStreamControlGetTouchIconData\x10s\x12$\n k_EStreamControlSetTouchIconData\x10t\x12(\n$k_EStreamControlInputTouchFingerDown\x10u\x12*\n&k_EStreamControlInputTouchFingerMotion\x10v\x12&\n\"k_EStreamControlInputTouchFingerUp\x10w\x12\"\n\x1ek_EStreamControlSetCaptureSize\x10x\x12!\n\x1dk_EStreamControlSetFlashState\x10y\x12\x19\n\x15k_EStreamControlPause\x10z\x12\x1a\n\x16k_EStreamControlResume\x10{\x12(\n$k_EStreamControlEnableHighResCapture\x10|\x12)\n%k_EStreamControlDisableHighResCapture\x10}\x12\'\n#k_EStreamControlToggleMagnification\x10~\x12\x1f\n\x1bk_EStreamControlSetCapslock\x10\x7f\x12\x1e\n\x19k_EStreamControlSetKeymap\x10\x80\x01\x12 \n\x1bk_EStreamControlStopRequest\x10\x81\x01\x12-\n(k_EStreamControlTouchActionSetLayerAdded\x10\x82\x01\x12/\n*k_EStreamControlTouchActionSetLayerRemoved\x10\x83\x01\x12\x32\n-k_EStreamControlRemotePlayTogetherGroupUpdate\x10\x84\x01\x12\x30\n+k_EStreamControlSetInputTemporarilyDisabled\x10\x85\x01\x12\'\n\"k_EStreamControlSetQualityOverride\x10\x86\x01\x12\'\n\"k_EStreamControlSetBitrateOverride\x10\x87\x01\x12)\n$k_EStreamControlShowOnScreenKeyboard\x10\x88\x01\x12(\n#k_EStreamControlControllerConfigMsg\x10\x89\x01*G\n\x0e\x45StreamVersion\x12\x18\n\x14k_EStreamVersionNone\x10\x00\x12\x1b\n\x17k_EStreamVersionCurrent\x10\x01*\xc0\x01\n\x11\x45StreamAudioCodec\x12\x1b\n\x17k_EStreamAudioCodecNone\x10\x00\x12\x1a\n\x16k_EStreamAudioCodecRaw\x10\x01\x12\x1d\n\x19k_EStreamAudioCodecVorbis\x10\x02\x12\x1b\n\x17k_EStreamAudioCodecOpus\x10\x03\x12\x1a\n\x16k_EStreamAudioCodecMP3\x10\x04\x12\x1a\n\x16k_EStreamAudioCodecAAC\x10\x05*\xfa\x01\n\x11\x45StreamVideoCodec\x12\x1b\n\x17k_EStreamVideoCodecNone\x10\x00\x12\x1a\n\x16k_EStreamVideoCodecRaw\x10\x01\x12\x1a\n\x16k_EStreamVideoCodecVP8\x10\x02\x12\x1a\n\x16k_EStreamVideoCodecVP9\x10\x03\x12\x1b\n\x17k_EStreamVideoCodecH264\x10\x04\x12\x1b\n\x17k_EStreamVideoCodecHEVC\x10\x05\x12\x1c\n\x18k_EStreamVideoCodecORBX1\x10\x06\x12\x1c\n\x18k_EStreamVideoCodecORBX2\x10\x07*\x99\x01\n\x18\x45StreamQualityPreference\x12&\n\x19k_EStreamQualityAutomatic\x10\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01\x12\x18\n\x14k_EStreamQualityFast\x10\x01\x12\x1c\n\x18k_EStreamQualityBalanced\x10\x02\x12\x1d\n\x19k_EStreamQualityBeautiful\x10\x03*X\n\x0e\x45StreamBitrate\x12\'\n\x1ak_EStreamBitrateAutodetect\x10\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01\x12\x1d\n\x19k_EStreamBitrateUnlimited\x10\x00*\xba\x01\n\x11\x45StreamColorspace\x12\x1f\n\x1bk_EStreamColorspace_Unknown\x10\x00\x12\x1d\n\x19k_EStreamColorspace_BT601\x10\x01\x12\"\n\x1ek_EStreamColorspace_BT601_Full\x10\x02\x12\x1d\n\x19k_EStreamColorspace_BT709\x10\x03\x12\"\n\x1ek_EStreamColorspace_BT709_Full\x10\x04*\xaa\x01\n\x0f\x45StreamP2PScope\x12\x1e\n\x1ak_EStreamP2PScopeAutomatic\x10\x00\x12\x1d\n\x19k_EStreamP2PScopeDisabled\x10\x01\x12\x1b\n\x17k_EStreamP2PScopeOnlyMe\x10\x02\x12\x1c\n\x18k_EStreamP2PScopeFriends\x10\x03\x12\x1d\n\x19k_EStreamP2PScopeEveryone\x10\x04*e\n\x1e\x45StreamHostPlayAudioPreference\x12!\n\x1dk_EStreamHostPlayAudioDefault\x10\x00\x12 \n\x1ck_EStreamHostPlayAudioAlways\x10\x01*j\n\x12\x45StreamingDataType\x12\x19\n\x15k_EStreamingAudioData\x10\x00\x12\x19\n\x15k_EStreamingVideoData\x10\x01\x12\x1e\n\x1ak_EStreamingMicrophoneData\x10\x02*\xcb\x01\n\x12\x45StreamMouseButton\x12\x1c\n\x18k_EStreamMouseButtonLeft\x10\x01\x12\x1d\n\x19k_EStreamMouseButtonRight\x10\x02\x12\x1e\n\x1ak_EStreamMouseButtonMiddle\x10\x10\x12\x1a\n\x16k_EStreamMouseButtonX1\x10 \x12\x1a\n\x16k_EStreamMouseButtonX2\x10@\x12 \n\x1bk_EStreamMouseButtonUnknown\x10\x80 *\x98\x01\n\x1a\x45StreamMouseWheelDirection\x12\x19\n\x15k_EStreamMouseWheelUp\x10x\x12$\n\x17k_EStreamMouseWheelDown\x10\x88\xff\xff\xff\xff\xff\xff\xff\xff\x01\x12\x1b\n\x17k_EStreamMouseWheelLeft\x10\x03\x12\x1c\n\x18k_EStreamMouseWheelRight\x10\x04*\x89\x02\n\x17\x45StreamFramerateLimiter\x12!\n\x1dk_EStreamFramerateSlowCapture\x10\x01\x12!\n\x1dk_EStreamFramerateSlowConvert\x10\x02\x12 \n\x1ck_EStreamFramerateSlowEncode\x10\x04\x12!\n\x1dk_EStreamFramerateSlowNetwork\x10\x08\x12 \n\x1ck_EStreamFramerateSlowDecode\x10\x10\x12\x1e\n\x1ak_EStreamFramerateSlowGame\x10 \x12!\n\x1dk_EStreamFramerateSlowDisplay\x10@*\xa5\x01\n\x0f\x45StreamActivity\x12\x19\n\x15k_EStreamActivityIdle\x10\x01\x12\x19\n\x15k_EStreamActivityGame\x10\x02\x12\x1c\n\x18k_EStreamActivityDesktop\x10\x03\x12\"\n\x1ek_EStreamActivitySecureDesktop\x10\x04\x12\x1a\n\x16k_EStreamActivityMusic\x10\x05*D\n\x12\x45StreamDataMessage\x12\x17\n\x13k_EStreamDataPacket\x10\x01\x12\x15\n\x11k_EStreamDataLost\x10\x02*d\n\x0c\x45\x41udioFormat\x12\x16\n\x12k_EAudioFormatNone\x10\x00\x12#\n\x1fk_EAudioFormat16BitLittleEndian\x10\x01\x12\x17\n\x13k_EAudioFormatFloat\x10\x02*W\n\x0c\x45VideoFormat\x12\x16\n\x12k_EVideoFormatNone\x10\x00\x12\x16\n\x12k_EVideoFormatYV12\x10\x01\x12\x17\n\x13k_EVideoFormatAccel\x10\x02*\xd7\x01\n\x13\x45StreamStatsMessage\x12\x1d\n\x19k_EStreamStatsFrameEvents\x10\x01\x12\x1b\n\x17k_EStreamStatsDebugDump\x10\x02\x12\x1c\n\x18k_EStreamStatsLogMessage\x10\x03\x12 \n\x1ck_EStreamStatsLogUploadBegin\x10\x04\x12\x1f\n\x1bk_EStreamStatsLogUploadData\x10\x05\x12#\n\x1fk_EStreamStatsLogUploadComplete\x10\x06*\x85\x05\n\x11\x45StreamFrameEvent\x12\x1c\n\x18k_EStreamInputEventStart\x10\x00\x12\x1b\n\x17k_EStreamInputEventSend\x10\x01\x12\x1b\n\x17k_EStreamInputEventRecv\x10\x02\x12\x1d\n\x19k_EStreamInputEventQueued\x10\x03\x12\x1e\n\x1ak_EStreamInputEventHandled\x10\x04\x12\x1c\n\x18k_EStreamFrameEventStart\x10\x05\x12#\n\x1fk_EStreamFrameEventCaptureBegin\x10\x06\x12!\n\x1dk_EStreamFrameEventCaptureEnd\x10\x07\x12#\n\x1fk_EStreamFrameEventConvertBegin\x10\x08\x12!\n\x1dk_EStreamFrameEventConvertEnd\x10\t\x12\"\n\x1ek_EStreamFrameEventEncodeBegin\x10\n\x12 \n\x1ck_EStreamFrameEventEncodeEnd\x10\x0b\x12\x1b\n\x17k_EStreamFrameEventSend\x10\x0c\x12\x1b\n\x17k_EStreamFrameEventRecv\x10\r\x12\"\n\x1ek_EStreamFrameEventDecodeBegin\x10\x0e\x12 \n\x1ck_EStreamFrameEventDecodeEnd\x10\x0f\x12\"\n\x1ek_EStreamFrameEventUploadBegin\x10\x10\x12 \n\x1ck_EStreamFrameEventUploadEnd\x10\x11\x12\x1f\n\x1bk_EStreamFrameEventComplete\x10\x12*\xd4\x02\n\x12\x45StreamFrameResult\x12\x1f\n\x1bk_EStreamFrameResultPending\x10\x00\x12!\n\x1dk_EStreamFrameResultDisplayed\x10\x01\x12*\n&k_EStreamFrameResultDroppedNetworkSlow\x10\x02\x12*\n&k_EStreamFrameResultDroppedNetworkLost\x10\x03\x12)\n%k_EStreamFrameResultDroppedDecodeSlow\x10\x04\x12,\n(k_EStreamFrameResultDroppedDecodeCorrupt\x10\x05\x12#\n\x1fk_EStreamFrameResultDroppedLate\x10\x06\x12$\n k_EStreamFrameResultDroppedReset\x10\x07*\xa2\x05\n\x15\x45\x46rameAccumulatedStat\x12\x13\n\x0fk_EFrameStatFPS\x10\x00\x12!\n\x1dk_EFrameStatCaptureDurationMS\x10\x01\x12!\n\x1dk_EFrameStatConvertDurationMS\x10\x02\x12 \n\x1ck_EFrameStatEncodeDurationMS\x10\x03\x12\x1f\n\x1bk_EFrameStatSteamDurationMS\x10\x04\x12 \n\x1ck_EFrameStatServerDurationMS\x10\x05\x12!\n\x1dk_EFrameStatNetworkDurationMS\x10\x06\x12 \n\x1ck_EFrameStatDecodeDurationMS\x10\x07\x12!\n\x1dk_EFrameStatDisplayDurationMS\x10\x08\x12 \n\x1ck_EFrameStatClientDurationMS\x10\t\x12\x1f\n\x1bk_EFrameStatFrameDurationMS\x10\n\x12\x1e\n\x1ak_EFrameStatInputLatencyMS\x10\x0b\x12\x1d\n\x19k_EFrameStatGameLatencyMS\x10\x0c\x12\"\n\x1ek_EFrameStatRoundTripLatencyMS\x10\r\x12\x1a\n\x16k_EFrameStatPingTimeMS\x10\x0e\x12\'\n#k_EFrameStatServerBitrateKbitPerSec\x10\x0f\x12\'\n#k_EFrameStatClientBitrateKbitPerSec\x10\x10\x12\'\n#k_EFrameStatLinkBandwidthKbitPerSec\x10\x11\x12$\n k_EFrameStatPacketLossPercentage\x10\x12*^\n\x0c\x45LogFileType\x12\x18\n\x14k_ELogFileSystemBoot\x10\x00\x12\x19\n\x15k_ELogFileSystemReset\x10\x01\x12\x19\n\x15k_ELogFileSystemDebug\x10\x02*\xa9\x02\n\x1a\x45StreamControllerConfigMsg\x12\x35\n1k_EStreamControllerConfigMsg_RequestConfigsForApp\x10\x00\x12/\n+k_EStreamControllerConfigMsg_ConfigResponse\x10\x01\x12\x38\n4k_EStreamControllerConfigMsg_PersonalizationResponse\x10\x02\x12\x33\n/k_EStreamControllerConfigMsg_ActiveConfigChange\x10\x03\x12\x34\n0k_EStreamControllerConfigMsg_RequestActiveConfig\x10\x04\x42\x05H\x01\x90\x01\x00'
 )
 
 _ESTREAMCHANNEL = _descriptor.EnumDescriptor(
@@ -29,32 +28,38 @@ _ESTREAMCHANNEL = _descriptor.EnumDescriptor(
   full_name='EStreamChannel',
   filename=None,
   file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
   values=[
     _descriptor.EnumValueDescriptor(
       name='k_EStreamChannelInvalid', index=0, number=-1,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamChannelDiscovery', index=1, number=0,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamChannelControl', index=2, number=1,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamChannelStats', index=3, number=2,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamChannelDataChannelStart', index=4, number=3,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
   ],
   containing_type=None,
   serialized_options=None,
-  serialized_start=9892,
-  serialized_end=10071,
+  serialized_start=10921,
+  serialized_end=11100,
 )
 _sym_db.RegisterEnumDescriptor(_ESTREAMCHANNEL)
 
@@ -64,20 +69,23 @@ _ESTREAMDISCOVERYMESSAGE = _descriptor.EnumDescriptor(
   full_name='EStreamDiscoveryMessage',
   filename=None,
   file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
   values=[
     _descriptor.EnumValueDescriptor(
       name='k_EStreamDiscoveryPingRequest', index=0, number=1,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamDiscoveryPingResponse', index=1, number=2,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
   ],
   containing_type=None,
   serialized_options=None,
-  serialized_start=10073,
-  serialized_end=10169,
+  serialized_start=11102,
+  serialized_end=11198,
 )
 _sym_db.RegisterEnumDescriptor(_ESTREAMDISCOVERYMESSAGE)
 
@@ -87,364 +95,463 @@ _ESTREAMCONTROLMESSAGE = _descriptor.EnumDescriptor(
   full_name='EStreamControlMessage',
   filename=None,
   file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
   values=[
     _descriptor.EnumValueDescriptor(
       name='k_EStreamControlAuthenticationRequest', index=0, number=1,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamControlAuthenticationResponse', index=1, number=2,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamControlNegotiationInit', index=2, number=3,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamControlNegotiationSetConfig', index=3, number=4,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamControlNegotiationComplete', index=4, number=5,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamControlClientHandshake', index=5, number=6,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamControlServerHandshake', index=6, number=7,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamControlStartNetworkTest', index=7, number=8,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamControlKeepAlive', index=8, number=9,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamControl_LAST_SETUP_MESSAGE', index=9, number=15,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamControlStartAudioData', index=10, number=50,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamControlStopAudioData', index=11, number=51,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamControlStartVideoData', index=12, number=52,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamControlStopVideoData', index=13, number=53,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamControlInputMouseMotion', index=14, number=54,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamControlInputMouseWheel', index=15, number=55,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamControlInputMouseDown', index=16, number=56,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamControlInputMouseUp', index=17, number=57,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamControlInputKeyDown', index=18, number=58,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamControlInputKeyUp', index=19, number=59,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamControlInputGamepadAttached_OBSOLETE', index=20, number=60,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamControlInputGamepadEvent_OBSOLETE', index=21, number=61,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamControlInputGamepadDetached_OBSOLETE', index=22, number=62,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamControlShowCursor', index=23, number=63,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamControlHideCursor', index=24, number=64,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamControlSetCursor', index=25, number=65,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamControlGetCursorImage', index=26, number=66,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamControlSetCursorImage', index=27, number=67,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamControlDeleteCursor', index=28, number=68,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamControlSetTargetFramerate', index=29, number=69,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamControlInputLatencyTest', index=30, number=70,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamControlGamepadRumble_OBSOLETE', index=31, number=71,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamControlOverlayEnabled', index=32, number=74,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamControlInputControllerAttached_OBSOLETE', index=33, number=75,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamControlInputControllerState_OBSOLETE', index=34, number=76,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamControlTriggerHapticPulse_OBSOLETE', index=35, number=77,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamControlInputControllerDetached_OBSOLETE', index=36, number=78,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamControlVideoDecoderInfo', index=37, number=80,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamControlSetTitle', index=38, number=81,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamControlSetIcon', index=39, number=82,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamControlQuitRequest', index=40, number=83,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamControlSetQoS', index=41, number=87,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamControlInputControllerWirelessPresence_OBSOLETE', index=42, number=88,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamControlSetGammaRamp', index=43, number=89,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamControlVideoEncoderInfo', index=44, number=90,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamControlInputControllerStateHID_OBSOLETE', index=45, number=93,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamControlSetTargetBitrate', index=46, number=94,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamControlSetControllerPairingEnabled_OBSOLETE', index=47, number=95,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamControlSetControllerPairingResult_OBSOLETE', index=48, number=96,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamControlTriggerControllerDisconnect_OBSOLETE', index=49, number=97,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamControlSetActivity', index=50, number=98,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamControlSetStreamingClientConfig', index=51, number=99,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamControlSystemSuspend', index=52, number=100,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamControlSetControllerSettings_OBSOLETE', index=53, number=101,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamControlVirtualHereRequest', index=54, number=102,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamControlVirtualHereReady', index=55, number=103,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamControlVirtualHereShareDevice', index=56, number=104,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamControlSetSpectatorMode', index=57, number=105,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamControlRemoteHID', index=58, number=106,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamControlStartMicrophoneData', index=59, number=107,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamControlStopMicrophoneData', index=60, number=108,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamControlInputText', index=61, number=109,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamControlTouchConfigActive', index=62, number=110,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamControlGetTouchConfigData', index=63, number=111,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamControlSetTouchConfigData', index=64, number=112,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamControlSaveTouchConfigLayout', index=65, number=113,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamControlTouchActionSetActive', index=66, number=114,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamControlGetTouchIconData', index=67, number=115,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamControlSetTouchIconData', index=68, number=116,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamControlInputTouchFingerDown', index=69, number=117,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamControlInputTouchFingerMotion', index=70, number=118,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamControlInputTouchFingerUp', index=71, number=119,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamControlSetCaptureSize', index=72, number=120,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamControlSetFlashState', index=73, number=121,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamControlPause', index=74, number=122,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamControlResume', index=75, number=123,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamControlEnableHighResCapture', index=76, number=124,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamControlDisableHighResCapture', index=77, number=125,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamControlToggleMagnification', index=78, number=126,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamControlSetCapslock', index=79, number=127,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamControlSetKeymap', index=80, number=128,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamControlStopRequest', index=81, number=129,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamControlTouchActionSetLayerAdded', index=82, number=130,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamControlTouchActionSetLayerRemoved', index=83, number=131,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamControlRemotePlayTogetherGroupUpdate', index=84, number=132,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamControlSetInputTemporarilyDisabled', index=85, number=133,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamControlSetQualityOverride', index=86, number=134,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamControlSetBitrateOverride', index=87, number=135,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EStreamControlShowOnScreenKeyboard', index=88, number=136,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EStreamControlControllerConfigMsg', index=89, number=137,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
   ],
   containing_type=None,
   serialized_options=None,
-  serialized_start=10172,
-  serialized_end=13719,
+  serialized_start=11201,
+  serialized_end=14833,
 )
 _sym_db.RegisterEnumDescriptor(_ESTREAMCONTROLMESSAGE)
 
@@ -454,20 +561,23 @@ _ESTREAMVERSION = _descriptor.EnumDescriptor(
   full_name='EStreamVersion',
   filename=None,
   file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
   values=[
     _descriptor.EnumValueDescriptor(
       name='k_EStreamVersionNone', index=0, number=0,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamVersionCurrent', index=1, number=1,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
   ],
   containing_type=None,
   serialized_options=None,
-  serialized_start=13721,
-  serialized_end=13792,
+  serialized_start=14835,
+  serialized_end=14906,
 )
 _sym_db.RegisterEnumDescriptor(_ESTREAMVERSION)
 
@@ -477,36 +587,43 @@ _ESTREAMAUDIOCODEC = _descriptor.EnumDescriptor(
   full_name='EStreamAudioCodec',
   filename=None,
   file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
   values=[
     _descriptor.EnumValueDescriptor(
       name='k_EStreamAudioCodecNone', index=0, number=0,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamAudioCodecRaw', index=1, number=1,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamAudioCodecVorbis', index=2, number=2,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamAudioCodecOpus', index=3, number=3,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamAudioCodecMP3', index=4, number=4,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamAudioCodecAAC', index=5, number=5,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
   ],
   containing_type=None,
   serialized_options=None,
-  serialized_start=13795,
-  serialized_end=13987,
+  serialized_start=14909,
+  serialized_end=15101,
 )
 _sym_db.RegisterEnumDescriptor(_ESTREAMAUDIOCODEC)
 
@@ -516,44 +633,53 @@ _ESTREAMVIDEOCODEC = _descriptor.EnumDescriptor(
   full_name='EStreamVideoCodec',
   filename=None,
   file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
   values=[
     _descriptor.EnumValueDescriptor(
       name='k_EStreamVideoCodecNone', index=0, number=0,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamVideoCodecRaw', index=1, number=1,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamVideoCodecVP8', index=2, number=2,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamVideoCodecVP9', index=3, number=3,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamVideoCodecH264', index=4, number=4,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamVideoCodecHEVC', index=5, number=5,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamVideoCodecORBX1', index=6, number=6,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamVideoCodecORBX2', index=7, number=7,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
   ],
   containing_type=None,
   serialized_options=None,
-  serialized_start=13990,
-  serialized_end=14240,
+  serialized_start=15104,
+  serialized_end=15354,
 )
 _sym_db.RegisterEnumDescriptor(_ESTREAMVIDEOCODEC)
 
@@ -563,28 +689,33 @@ _ESTREAMQUALITYPREFERENCE = _descriptor.EnumDescriptor(
   full_name='EStreamQualityPreference',
   filename=None,
   file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
   values=[
     _descriptor.EnumValueDescriptor(
       name='k_EStreamQualityAutomatic', index=0, number=-1,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamQualityFast', index=1, number=1,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamQualityBalanced', index=2, number=2,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamQualityBeautiful', index=3, number=3,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
   ],
   containing_type=None,
   serialized_options=None,
-  serialized_start=14243,
-  serialized_end=14396,
+  serialized_start=15357,
+  serialized_end=15510,
 )
 _sym_db.RegisterEnumDescriptor(_ESTREAMQUALITYPREFERENCE)
 
@@ -594,55 +725,105 @@ _ESTREAMBITRATE = _descriptor.EnumDescriptor(
   full_name='EStreamBitrate',
   filename=None,
   file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
   values=[
     _descriptor.EnumValueDescriptor(
       name='k_EStreamBitrateAutodetect', index=0, number=-1,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamBitrateUnlimited', index=1, number=0,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
   ],
   containing_type=None,
   serialized_options=None,
-  serialized_start=14398,
-  serialized_end=14486,
+  serialized_start=15512,
+  serialized_end=15600,
 )
 _sym_db.RegisterEnumDescriptor(_ESTREAMBITRATE)
 
 EStreamBitrate = enum_type_wrapper.EnumTypeWrapper(_ESTREAMBITRATE)
+_ESTREAMCOLORSPACE = _descriptor.EnumDescriptor(
+  name='EStreamColorspace',
+  full_name='EStreamColorspace',
+  filename=None,
+  file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
+  values=[
+    _descriptor.EnumValueDescriptor(
+      name='k_EStreamColorspace_Unknown', index=0, number=0,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EStreamColorspace_BT601', index=1, number=1,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EStreamColorspace_BT601_Full', index=2, number=2,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EStreamColorspace_BT709', index=3, number=3,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EStreamColorspace_BT709_Full', index=4, number=4,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+  ],
+  containing_type=None,
+  serialized_options=None,
+  serialized_start=15603,
+  serialized_end=15789,
+)
+_sym_db.RegisterEnumDescriptor(_ESTREAMCOLORSPACE)
+
+EStreamColorspace = enum_type_wrapper.EnumTypeWrapper(_ESTREAMCOLORSPACE)
 _ESTREAMP2PSCOPE = _descriptor.EnumDescriptor(
   name='EStreamP2PScope',
   full_name='EStreamP2PScope',
   filename=None,
   file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
   values=[
     _descriptor.EnumValueDescriptor(
       name='k_EStreamP2PScopeAutomatic', index=0, number=0,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamP2PScopeDisabled', index=1, number=1,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamP2PScopeOnlyMe', index=2, number=2,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamP2PScopeFriends', index=3, number=3,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamP2PScopeEveryone', index=4, number=4,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
   ],
   containing_type=None,
   serialized_options=None,
-  serialized_start=14489,
-  serialized_end=14659,
+  serialized_start=15792,
+  serialized_end=15962,
 )
 _sym_db.RegisterEnumDescriptor(_ESTREAMP2PSCOPE)
 
@@ -652,20 +833,23 @@ _ESTREAMHOSTPLAYAUDIOPREFERENCE = _descriptor.EnumDescriptor(
   full_name='EStreamHostPlayAudioPreference',
   filename=None,
   file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
   values=[
     _descriptor.EnumValueDescriptor(
       name='k_EStreamHostPlayAudioDefault', index=0, number=0,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamHostPlayAudioAlways', index=1, number=1,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
   ],
   containing_type=None,
   serialized_options=None,
-  serialized_start=14661,
-  serialized_end=14762,
+  serialized_start=15964,
+  serialized_end=16065,
 )
 _sym_db.RegisterEnumDescriptor(_ESTREAMHOSTPLAYAUDIOPREFERENCE)
 
@@ -675,24 +859,28 @@ _ESTREAMINGDATATYPE = _descriptor.EnumDescriptor(
   full_name='EStreamingDataType',
   filename=None,
   file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
   values=[
     _descriptor.EnumValueDescriptor(
       name='k_EStreamingAudioData', index=0, number=0,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamingVideoData', index=1, number=1,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamingMicrophoneData', index=2, number=2,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
   ],
   containing_type=None,
   serialized_options=None,
-  serialized_start=14764,
-  serialized_end=14870,
+  serialized_start=16067,
+  serialized_end=16173,
 )
 _sym_db.RegisterEnumDescriptor(_ESTREAMINGDATATYPE)
 
@@ -702,36 +890,43 @@ _ESTREAMMOUSEBUTTON = _descriptor.EnumDescriptor(
   full_name='EStreamMouseButton',
   filename=None,
   file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
   values=[
     _descriptor.EnumValueDescriptor(
       name='k_EStreamMouseButtonLeft', index=0, number=1,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamMouseButtonRight', index=1, number=2,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamMouseButtonMiddle', index=2, number=16,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamMouseButtonX1', index=3, number=32,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamMouseButtonX2', index=4, number=64,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamMouseButtonUnknown', index=5, number=4096,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
   ],
   containing_type=None,
   serialized_options=None,
-  serialized_start=14873,
-  serialized_end=15076,
+  serialized_start=16176,
+  serialized_end=16379,
 )
 _sym_db.RegisterEnumDescriptor(_ESTREAMMOUSEBUTTON)
 
@@ -741,28 +936,33 @@ _ESTREAMMOUSEWHEELDIRECTION = _descriptor.EnumDescriptor(
   full_name='EStreamMouseWheelDirection',
   filename=None,
   file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
   values=[
     _descriptor.EnumValueDescriptor(
       name='k_EStreamMouseWheelUp', index=0, number=120,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamMouseWheelDown', index=1, number=-120,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamMouseWheelLeft', index=2, number=3,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamMouseWheelRight', index=3, number=4,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
   ],
   containing_type=None,
   serialized_options=None,
-  serialized_start=15079,
-  serialized_end=15231,
+  serialized_start=16382,
+  serialized_end=16534,
 )
 _sym_db.RegisterEnumDescriptor(_ESTREAMMOUSEWHEELDIRECTION)
 
@@ -772,40 +972,48 @@ _ESTREAMFRAMERATELIMITER = _descriptor.EnumDescriptor(
   full_name='EStreamFramerateLimiter',
   filename=None,
   file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
   values=[
     _descriptor.EnumValueDescriptor(
       name='k_EStreamFramerateSlowCapture', index=0, number=1,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamFramerateSlowConvert', index=1, number=2,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamFramerateSlowEncode', index=2, number=4,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamFramerateSlowNetwork', index=3, number=8,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamFramerateSlowDecode', index=4, number=16,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamFramerateSlowGame', index=5, number=32,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamFramerateSlowDisplay', index=6, number=64,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
   ],
   containing_type=None,
   serialized_options=None,
-  serialized_start=15234,
-  serialized_end=15499,
+  serialized_start=16537,
+  serialized_end=16802,
 )
 _sym_db.RegisterEnumDescriptor(_ESTREAMFRAMERATELIMITER)
 
@@ -815,32 +1023,38 @@ _ESTREAMACTIVITY = _descriptor.EnumDescriptor(
   full_name='EStreamActivity',
   filename=None,
   file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
   values=[
     _descriptor.EnumValueDescriptor(
       name='k_EStreamActivityIdle', index=0, number=1,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamActivityGame', index=1, number=2,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamActivityDesktop', index=2, number=3,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamActivitySecureDesktop', index=3, number=4,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamActivityMusic', index=4, number=5,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
   ],
   containing_type=None,
   serialized_options=None,
-  serialized_start=15502,
-  serialized_end=15667,
+  serialized_start=16805,
+  serialized_end=16970,
 )
 _sym_db.RegisterEnumDescriptor(_ESTREAMACTIVITY)
 
@@ -850,20 +1064,23 @@ _ESTREAMDATAMESSAGE = _descriptor.EnumDescriptor(
   full_name='EStreamDataMessage',
   filename=None,
   file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
   values=[
     _descriptor.EnumValueDescriptor(
       name='k_EStreamDataPacket', index=0, number=1,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamDataLost', index=1, number=2,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
   ],
   containing_type=None,
   serialized_options=None,
-  serialized_start=15669,
-  serialized_end=15737,
+  serialized_start=16972,
+  serialized_end=17040,
 )
 _sym_db.RegisterEnumDescriptor(_ESTREAMDATAMESSAGE)
 
@@ -873,24 +1090,28 @@ _EAUDIOFORMAT = _descriptor.EnumDescriptor(
   full_name='EAudioFormat',
   filename=None,
   file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
   values=[
     _descriptor.EnumValueDescriptor(
       name='k_EAudioFormatNone', index=0, number=0,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EAudioFormat16BitLittleEndian', index=1, number=1,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EAudioFormatFloat', index=2, number=2,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
   ],
   containing_type=None,
   serialized_options=None,
-  serialized_start=15739,
-  serialized_end=15839,
+  serialized_start=17042,
+  serialized_end=17142,
 )
 _sym_db.RegisterEnumDescriptor(_EAUDIOFORMAT)
 
@@ -900,24 +1121,28 @@ _EVIDEOFORMAT = _descriptor.EnumDescriptor(
   full_name='EVideoFormat',
   filename=None,
   file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
   values=[
     _descriptor.EnumValueDescriptor(
       name='k_EVideoFormatNone', index=0, number=0,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EVideoFormatYV12', index=1, number=1,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EVideoFormatAccel', index=2, number=2,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
   ],
   containing_type=None,
   serialized_options=None,
-  serialized_start=15841,
-  serialized_end=15928,
+  serialized_start=17144,
+  serialized_end=17231,
 )
 _sym_db.RegisterEnumDescriptor(_EVIDEOFORMAT)
 
@@ -927,36 +1152,43 @@ _ESTREAMSTATSMESSAGE = _descriptor.EnumDescriptor(
   full_name='EStreamStatsMessage',
   filename=None,
   file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
   values=[
     _descriptor.EnumValueDescriptor(
       name='k_EStreamStatsFrameEvents', index=0, number=1,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamStatsDebugDump', index=1, number=2,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamStatsLogMessage', index=2, number=3,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamStatsLogUploadBegin', index=3, number=4,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamStatsLogUploadData', index=4, number=5,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamStatsLogUploadComplete', index=5, number=6,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
   ],
   containing_type=None,
   serialized_options=None,
-  serialized_start=15931,
-  serialized_end=16146,
+  serialized_start=17234,
+  serialized_end=17449,
 )
 _sym_db.RegisterEnumDescriptor(_ESTREAMSTATSMESSAGE)
 
@@ -966,88 +1198,108 @@ _ESTREAMFRAMEEVENT = _descriptor.EnumDescriptor(
   full_name='EStreamFrameEvent',
   filename=None,
   file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
   values=[
     _descriptor.EnumValueDescriptor(
       name='k_EStreamInputEventStart', index=0, number=0,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamInputEventSend', index=1, number=1,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamInputEventRecv', index=2, number=2,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamInputEventQueued', index=3, number=3,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamInputEventHandled', index=4, number=4,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamFrameEventStart', index=5, number=5,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamFrameEventCaptureBegin', index=6, number=6,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamFrameEventCaptureEnd', index=7, number=7,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamFrameEventConvertBegin', index=8, number=8,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamFrameEventConvertEnd', index=9, number=9,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamFrameEventEncodeBegin', index=10, number=10,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamFrameEventEncodeEnd', index=11, number=11,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamFrameEventSend', index=12, number=12,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamFrameEventRecv', index=13, number=13,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamFrameEventDecodeBegin', index=14, number=14,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamFrameEventDecodeEnd', index=15, number=15,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamFrameEventUploadBegin', index=16, number=16,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamFrameEventUploadEnd', index=17, number=17,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamFrameEventComplete', index=18, number=18,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
   ],
   containing_type=None,
   serialized_options=None,
-  serialized_start=16149,
-  serialized_end=16794,
+  serialized_start=17452,
+  serialized_end=18097,
 )
 _sym_db.RegisterEnumDescriptor(_ESTREAMFRAMEEVENT)
 
@@ -1057,44 +1309,53 @@ _ESTREAMFRAMERESULT = _descriptor.EnumDescriptor(
   full_name='EStreamFrameResult',
   filename=None,
   file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
   values=[
     _descriptor.EnumValueDescriptor(
       name='k_EStreamFrameResultPending', index=0, number=0,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamFrameResultDisplayed', index=1, number=1,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamFrameResultDroppedNetworkSlow', index=2, number=2,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamFrameResultDroppedNetworkLost', index=3, number=3,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamFrameResultDroppedDecodeSlow', index=4, number=4,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamFrameResultDroppedDecodeCorrupt', index=5, number=5,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamFrameResultDroppedLate', index=6, number=6,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EStreamFrameResultDroppedReset', index=7, number=7,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
   ],
   containing_type=None,
   serialized_options=None,
-  serialized_start=16797,
-  serialized_end=17137,
+  serialized_start=18100,
+  serialized_end=18440,
 )
 _sym_db.RegisterEnumDescriptor(_ESTREAMFRAMERESULT)
 
@@ -1104,88 +1365,108 @@ _EFRAMEACCUMULATEDSTAT = _descriptor.EnumDescriptor(
   full_name='EFrameAccumulatedStat',
   filename=None,
   file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
   values=[
     _descriptor.EnumValueDescriptor(
       name='k_EFrameStatFPS', index=0, number=0,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EFrameStatCaptureDurationMS', index=1, number=1,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EFrameStatConvertDurationMS', index=2, number=2,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EFrameStatEncodeDurationMS', index=3, number=3,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EFrameStatSteamDurationMS', index=4, number=4,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EFrameStatServerDurationMS', index=5, number=5,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EFrameStatNetworkDurationMS', index=6, number=6,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EFrameStatDecodeDurationMS', index=7, number=7,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EFrameStatDisplayDurationMS', index=8, number=8,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EFrameStatClientDurationMS', index=9, number=9,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EFrameStatFrameDurationMS', index=10, number=10,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EFrameStatInputLatencyMS', index=11, number=11,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EFrameStatGameLatencyMS', index=12, number=12,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EFrameStatRoundTripLatencyMS', index=13, number=13,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EFrameStatPingTimeMS', index=14, number=14,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EFrameStatServerBitrateKbitPerSec', index=15, number=15,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EFrameStatClientBitrateKbitPerSec', index=16, number=16,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EFrameStatLinkBandwidthKbitPerSec', index=17, number=17,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EFrameStatPacketLossPercentage', index=18, number=18,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
   ],
   containing_type=None,
   serialized_options=None,
-  serialized_start=17140,
-  serialized_end=17814,
+  serialized_start=18443,
+  serialized_end=19117,
 )
 _sym_db.RegisterEnumDescriptor(_EFRAMEACCUMULATEDSTAT)
 
@@ -1195,28 +1476,73 @@ _ELOGFILETYPE = _descriptor.EnumDescriptor(
   full_name='ELogFileType',
   filename=None,
   file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
   values=[
     _descriptor.EnumValueDescriptor(
       name='k_ELogFileSystemBoot', index=0, number=0,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_ELogFileSystemReset', index=1, number=1,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_ELogFileSystemDebug', index=2, number=2,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
   ],
   containing_type=None,
   serialized_options=None,
-  serialized_start=17816,
-  serialized_end=17910,
+  serialized_start=19119,
+  serialized_end=19213,
 )
 _sym_db.RegisterEnumDescriptor(_ELOGFILETYPE)
 
 ELogFileType = enum_type_wrapper.EnumTypeWrapper(_ELOGFILETYPE)
+_ESTREAMCONTROLLERCONFIGMSG = _descriptor.EnumDescriptor(
+  name='EStreamControllerConfigMsg',
+  full_name='EStreamControllerConfigMsg',
+  filename=None,
+  file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
+  values=[
+    _descriptor.EnumValueDescriptor(
+      name='k_EStreamControllerConfigMsg_RequestConfigsForApp', index=0, number=0,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EStreamControllerConfigMsg_ConfigResponse', index=1, number=1,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EStreamControllerConfigMsg_PersonalizationResponse', index=2, number=2,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EStreamControllerConfigMsg_ActiveConfigChange', index=3, number=3,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EStreamControllerConfigMsg_RequestActiveConfig', index=4, number=4,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+  ],
+  containing_type=None,
+  serialized_options=None,
+  serialized_start=19216,
+  serialized_end=19513,
+)
+_sym_db.RegisterEnumDescriptor(_ESTREAMCONTROLLERCONFIGMSG)
+
+EStreamControllerConfigMsg = enum_type_wrapper.EnumTypeWrapper(_ESTREAMCONTROLLERCONFIGMSG)
 k_EStreamChannelInvalid = -1
 k_EStreamChannelDiscovery = 0
 k_EStreamChannelControl = 1
@@ -1312,6 +1638,8 @@ k_EStreamControlRemotePlayTogetherGroupUpdate = 132
 k_EStreamControlSetInputTemporarilyDisabled = 133
 k_EStreamControlSetQualityOverride = 134
 k_EStreamControlSetBitrateOverride = 135
+k_EStreamControlShowOnScreenKeyboard = 136
+k_EStreamControlControllerConfigMsg = 137
 k_EStreamVersionNone = 0
 k_EStreamVersionCurrent = 1
 k_EStreamAudioCodecNone = 0
@@ -1334,6 +1662,11 @@ k_EStreamQualityBalanced = 2
 k_EStreamQualityBeautiful = 3
 k_EStreamBitrateAutodetect = -1
 k_EStreamBitrateUnlimited = 0
+k_EStreamColorspace_Unknown = 0
+k_EStreamColorspace_BT601 = 1
+k_EStreamColorspace_BT601_Full = 2
+k_EStreamColorspace_BT709 = 3
+k_EStreamColorspace_BT709_Full = 4
 k_EStreamP2PScopeAutomatic = 0
 k_EStreamP2PScopeDisabled = 1
 k_EStreamP2PScopeOnlyMe = 2
@@ -1429,6 +1762,11 @@ k_EFrameStatPacketLossPercentage = 18
 k_ELogFileSystemBoot = 0
 k_ELogFileSystemReset = 1
 k_ELogFileSystemDebug = 2
+k_EStreamControllerConfigMsg_RequestConfigsForApp = 0
+k_EStreamControllerConfigMsg_ConfigResponse = 1
+k_EStreamControllerConfigMsg_PersonalizationResponse = 2
+k_EStreamControllerConfigMsg_ActiveConfigChange = 3
+k_EStreamControllerConfigMsg_RequestActiveConfig = 4
 
 
 _CAUTHENTICATIONRESPONSEMSG_AUTHENTICATIONRESULT = _descriptor.EnumDescriptor(
@@ -1436,15 +1774,18 @@ _CAUTHENTICATIONRESPONSEMSG_AUTHENTICATIONRESULT = _descriptor.EnumDescriptor(
   full_name='CAuthenticationResponseMsg.AuthenticationResult',
   filename=None,
   file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
   values=[
     _descriptor.EnumValueDescriptor(
       name='SUCCEEDED', index=0, number=0,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='FAILED', index=1, number=1,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
   ],
   containing_type=None,
   serialized_options=None,
@@ -1460,6 +1801,7 @@ _CDISCOVERYPINGREQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='sequence', full_name='CDiscoveryPingRequest.sequence', index=0,
@@ -1467,14 +1809,14 @@ _CDISCOVERYPINGREQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='packet_size_requested', full_name='CDiscoveryPingRequest.packet_size_requested', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1498,6 +1840,7 @@ _CDISCOVERYPINGRESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='sequence', full_name='CDiscoveryPingResponse.sequence', index=0,
@@ -1505,14 +1848,14 @@ _CDISCOVERYPINGRESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='packet_size_received', full_name='CDiscoveryPingResponse.packet_size_received', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1536,6 +1879,7 @@ _CSTREAMINGCLIENTHANDSHAKEINFO = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='network_test', full_name='CStreamingClientHandshakeInfo.network_test', index=0,
@@ -1543,7 +1887,7 @@ _CSTREAMINGCLIENTHANDSHAKEINFO = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1567,6 +1911,7 @@ _CCLIENTHANDSHAKEMSG = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='info', full_name='CClientHandshakeMsg.info', index=0,
@@ -1574,7 +1919,7 @@ _CCLIENTHANDSHAKEMSG = _descriptor.Descriptor(
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1598,6 +1943,7 @@ _CSTREAMINGSERVERHANDSHAKEINFO = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='mtu', full_name='CStreamingServerHandshakeInfo.mtu', index=0,
@@ -1605,7 +1951,7 @@ _CSTREAMINGSERVERHANDSHAKEINFO = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1629,6 +1975,7 @@ _CSERVERHANDSHAKEMSG = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='info', full_name='CServerHandshakeMsg.info', index=0,
@@ -1636,7 +1983,7 @@ _CSERVERHANDSHAKEMSG = _descriptor.Descriptor(
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1660,28 +2007,29 @@ _CAUTHENTICATIONREQUESTMSG = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='token', full_name='CAuthenticationRequestMsg.token', index=0,
       number=1, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='version', full_name='CAuthenticationRequestMsg.version', index=1,
       number=2, type=14, cpp_type=8, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CAuthenticationRequestMsg.steamid', index=2,
       number=3, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1705,6 +2053,7 @@ _CAUTHENTICATIONRESPONSEMSG = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='result', full_name='CAuthenticationResponseMsg.result', index=0,
@@ -1712,14 +2061,14 @@ _CAUTHENTICATIONRESPONSEMSG = _descriptor.Descriptor(
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='version', full_name='CAuthenticationResponseMsg.version', index=1,
       number=2, type=14, cpp_type=8, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1744,6 +2093,7 @@ _CKEEPALIVEMSG = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -1768,6 +2118,7 @@ _CSTARTNETWORKTESTMSG = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='frames', full_name='CStartNetworkTestMsg.frames', index=0,
@@ -1775,35 +2126,35 @@ _CSTARTNETWORKTESTMSG = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='framerate', full_name='CStartNetworkTestMsg.framerate', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='bitrate_kbps', full_name='CStartNetworkTestMsg.bitrate_kbps', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='burst_bitrate_kbps', full_name='CStartNetworkTestMsg.burst_bitrate_kbps', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='bandwidth_test', full_name='CStartNetworkTestMsg.bandwidth_test', index=4,
       number=5, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1827,6 +2178,7 @@ _CSTREAMVIDEOMODE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='width', full_name='CStreamVideoMode.width', index=0,
@@ -1834,35 +2186,35 @@ _CSTREAMVIDEOMODE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='height', full_name='CStreamVideoMode.height', index=1,
       number=2, type=13, cpp_type=3, label=2,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='refresh_rate', full_name='CStreamVideoMode.refresh_rate', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='refresh_rate_numerator', full_name='CStreamVideoMode.refresh_rate_numerator', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='refresh_rate_denominator', full_name='CStreamVideoMode.refresh_rate_denominator', index=4,
       number=5, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1886,84 +2238,99 @@ _CSTREAMINGCLIENTCAPS = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='system_info', full_name='CStreamingClientCaps.system_info', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='system_can_suspend', full_name='CStreamingClientCaps.system_can_suspend', index=1,
       number=2, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='maximum_decode_bitrate_kbps', full_name='CStreamingClientCaps.maximum_decode_bitrate_kbps', index=2,
       number=3, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='maximum_burst_bitrate_kbps', full_name='CStreamingClientCaps.maximum_burst_bitrate_kbps', index=3,
       number=4, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='supports_video_hevc', full_name='CStreamingClientCaps.supports_video_hevc', index=4,
       number=5, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='disable_steam_store', full_name='CStreamingClientCaps.disable_steam_store', index=5,
       number=6, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='disable_client_cursor', full_name='CStreamingClientCaps.disable_client_cursor', index=6,
       number=7, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='disable_intel_hardware_encoding', full_name='CStreamingClientCaps.disable_intel_hardware_encoding', index=7,
       number=8, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='disable_amd_hardware_encoding', full_name='CStreamingClientCaps.disable_amd_hardware_encoding', index=8,
       number=9, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='disable_nvidia_hardware_encoding', full_name='CStreamingClientCaps.disable_nvidia_hardware_encoding', index=9,
       number=10, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='form_factor', full_name='CStreamingClientCaps.form_factor', index=10,
       number=11, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='has_on_screen_keyboard', full_name='CStreamingClientCaps.has_on_screen_keyboard', index=11,
+      number=12, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='supported_colorspaces', full_name='CStreamingClientCaps.supported_colorspaces', index=12,
+      number=13, type=14, cpp_type=8, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1977,7 +2344,7 @@ _CSTREAMINGCLIENTCAPS = _descriptor.Descriptor(
   oneofs=[
   ],
   serialized_start=1045,
-  serialized_end=1421,
+  serialized_end=1504,
 )
 
 
@@ -1987,6 +2354,7 @@ _CSTREAMINGCLIENTCONFIG = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='quality', full_name='CStreamingClientConfig.quality', index=0,
@@ -1994,126 +2362,126 @@ _CSTREAMINGCLIENTCONFIG = _descriptor.Descriptor(
       has_default_value=True, default_value=2,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='maximum_resolution_x', full_name='CStreamingClientConfig.maximum_resolution_x', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='maximum_resolution_y', full_name='CStreamingClientConfig.maximum_resolution_y', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='maximum_framerate_numerator', full_name='CStreamingClientConfig.maximum_framerate_numerator', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='maximum_framerate_denominator', full_name='CStreamingClientConfig.maximum_framerate_denominator', index=4,
       number=5, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='maximum_bitrate_kbps', full_name='CStreamingClientConfig.maximum_bitrate_kbps', index=5,
       number=6, type=5, cpp_type=1, label=1,
       has_default_value=True, default_value=-1,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='enable_hardware_decoding', full_name='CStreamingClientConfig.enable_hardware_decoding', index=6,
       number=7, type=8, cpp_type=7, label=1,
       has_default_value=True, default_value=True,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='enable_performance_overlay', full_name='CStreamingClientConfig.enable_performance_overlay', index=7,
       number=8, type=8, cpp_type=7, label=1,
       has_default_value=True, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='enable_video_streaming', full_name='CStreamingClientConfig.enable_video_streaming', index=8,
       number=9, type=8, cpp_type=7, label=1,
       has_default_value=True, default_value=True,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='enable_audio_streaming', full_name='CStreamingClientConfig.enable_audio_streaming', index=9,
       number=10, type=8, cpp_type=7, label=1,
       has_default_value=True, default_value=True,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='enable_input_streaming', full_name='CStreamingClientConfig.enable_input_streaming', index=10,
       number=11, type=8, cpp_type=7, label=1,
       has_default_value=True, default_value=True,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='audio_channels', full_name='CStreamingClientConfig.audio_channels', index=11,
       number=12, type=5, cpp_type=1, label=1,
       has_default_value=True, default_value=2,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='enable_video_hevc', full_name='CStreamingClientConfig.enable_video_hevc', index=12,
       number=13, type=8, cpp_type=7, label=1,
       has_default_value=True, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='enable_performance_icons', full_name='CStreamingClientConfig.enable_performance_icons', index=13,
       number=14, type=8, cpp_type=7, label=1,
       has_default_value=True, default_value=True,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='enable_microphone_streaming', full_name='CStreamingClientConfig.enable_microphone_streaming', index=14,
       number=15, type=8, cpp_type=7, label=1,
       has_default_value=True, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='controller_overlay_hotkey', full_name='CStreamingClientConfig.controller_overlay_hotkey', index=15,
       number=16, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='enable_touch_controller', full_name='CStreamingClientConfig.enable_touch_controller', index=16,
       number=17, type=8, cpp_type=7, label=1,
       has_default_value=True, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='p2p_scope', full_name='CStreamingClientConfig.p2p_scope', index=17,
       number=19, type=14, cpp_type=8, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2126,8 +2494,8 @@ _CSTREAMINGCLIENTCONFIG = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1424,
-  serialized_end=2170,
+  serialized_start=1507,
+  serialized_end=2253,
 )
 
 
@@ -2137,6 +2505,7 @@ _CSTREAMINGSERVERCONFIG = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='change_desktop_resolution', full_name='CStreamingServerConfig.change_desktop_resolution', index=0,
@@ -2144,63 +2513,63 @@ _CSTREAMINGSERVERCONFIG = _descriptor.Descriptor(
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='dynamically_adjust_resolution', full_name='CStreamingServerConfig.dynamically_adjust_resolution', index=1,
       number=2, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='enable_capture_nvfbc', full_name='CStreamingServerConfig.enable_capture_nvfbc', index=2,
       number=3, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='enable_hardware_encoding_nvidia', full_name='CStreamingServerConfig.enable_hardware_encoding_nvidia', index=3,
       number=4, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='enable_hardware_encoding_amd', full_name='CStreamingServerConfig.enable_hardware_encoding_amd', index=4,
       number=5, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='enable_hardware_encoding_intel', full_name='CStreamingServerConfig.enable_hardware_encoding_intel', index=5,
       number=6, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='software_encoding_threads', full_name='CStreamingServerConfig.software_encoding_threads', index=6,
       number=7, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='enable_traffic_priority', full_name='CStreamingServerConfig.enable_traffic_priority', index=7,
       number=8, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='host_play_audio', full_name='CStreamingServerConfig.host_play_audio', index=8,
       number=9, type=14, cpp_type=8, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2213,8 +2582,8 @@ _CSTREAMINGSERVERCONFIG = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=2173,
-  serialized_end=2577,
+  serialized_start=2256,
+  serialized_end=2660,
 )
 
 
@@ -2224,6 +2593,7 @@ _CNEGOTIATEDCONFIG = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='reliable_data', full_name='CNegotiatedConfig.reliable_data', index=0,
@@ -2231,42 +2601,49 @@ _CNEGOTIATEDCONFIG = _descriptor.Descriptor(
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='selected_audio_codec', full_name='CNegotiatedConfig.selected_audio_codec', index=1,
       number=2, type=14, cpp_type=8, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='selected_video_codec', full_name='CNegotiatedConfig.selected_video_codec', index=2,
       number=3, type=14, cpp_type=8, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='available_video_modes', full_name='CNegotiatedConfig.available_video_modes', index=3,
       number=4, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='enable_remote_hid', full_name='CNegotiatedConfig.enable_remote_hid', index=4,
       number=5, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='enable_touch_input', full_name='CNegotiatedConfig.enable_touch_input', index=5,
       number=6, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='disable_client_cursor', full_name='CNegotiatedConfig.disable_client_cursor', index=6,
+      number=7, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2279,8 +2656,8 @@ _CNEGOTIATEDCONFIG = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=2580,
-  serialized_end=2877,
+  serialized_start=2663,
+  serialized_end=2991,
 )
 
 
@@ -2290,6 +2667,7 @@ _CNEGOTIATIONINITMSG = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='reliable_data', full_name='CNegotiationInitMsg.reliable_data', index=0,
@@ -2297,35 +2675,35 @@ _CNEGOTIATIONINITMSG = _descriptor.Descriptor(
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='supported_audio_codecs', full_name='CNegotiationInitMsg.supported_audio_codecs', index=1,
       number=2, type=14, cpp_type=8, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='supported_video_codecs', full_name='CNegotiationInitMsg.supported_video_codecs', index=2,
       number=3, type=14, cpp_type=8, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='supports_remote_hid', full_name='CNegotiationInitMsg.supports_remote_hid', index=3,
       number=4, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='supports_touch_input', full_name='CNegotiationInitMsg.supports_touch_input', index=4,
       number=5, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2338,8 +2716,8 @@ _CNEGOTIATIONINITMSG = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=2880,
-  serialized_end=3087,
+  serialized_start=2994,
+  serialized_end=3201,
 )
 
 
@@ -2349,6 +2727,7 @@ _CNEGOTIATIONSETCONFIGMSG = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='config', full_name='CNegotiationSetConfigMsg.config', index=0,
@@ -2356,21 +2735,21 @@ _CNEGOTIATIONSETCONFIGMSG = _descriptor.Descriptor(
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='streaming_client_config', full_name='CNegotiationSetConfigMsg.streaming_client_config', index=1,
       number=2, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='streaming_client_caps', full_name='CNegotiationSetConfigMsg.streaming_client_caps', index=2,
       number=3, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2383,8 +2762,8 @@ _CNEGOTIATIONSETCONFIGMSG = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=3090,
-  serialized_end=3264,
+  serialized_start=3204,
+  serialized_end=3378,
 )
 
 
@@ -2394,6 +2773,7 @@ _CNEGOTIATIONCOMPLETEMSG = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -2407,8 +2787,8 @@ _CNEGOTIATIONCOMPLETEMSG = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=3266,
-  serialized_end=3291,
+  serialized_start=3380,
+  serialized_end=3405,
 )
 
 
@@ -2418,6 +2798,7 @@ _CSTARTAUDIODATAMSG = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='channel', full_name='CStartAudioDataMsg.channel', index=0,
@@ -2425,35 +2806,35 @@ _CSTARTAUDIODATAMSG = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='codec', full_name='CStartAudioDataMsg.codec', index=1,
       number=3, type=14, cpp_type=8, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='codec_data', full_name='CStartAudioDataMsg.codec_data', index=2,
       number=4, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='frequency', full_name='CStartAudioDataMsg.frequency', index=3,
       number=5, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='channels', full_name='CStartAudioDataMsg.channels', index=4,
       number=6, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2466,8 +2847,8 @@ _CSTARTAUDIODATAMSG = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=3294,
-  serialized_end=3448,
+  serialized_start=3408,
+  serialized_end=3562,
 )
 
 
@@ -2477,6 +2858,7 @@ _CSTOPAUDIODATAMSG = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -2490,8 +2872,8 @@ _CSTOPAUDIODATAMSG = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=3450,
-  serialized_end=3469,
+  serialized_start=3564,
+  serialized_end=3583,
 )
 
 
@@ -2501,6 +2883,7 @@ _CSTARTVIDEODATAMSG = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='channel', full_name='CStartVideoDataMsg.channel', index=0,
@@ -2508,35 +2891,35 @@ _CSTARTVIDEODATAMSG = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='codec', full_name='CStartVideoDataMsg.codec', index=1,
       number=2, type=14, cpp_type=8, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='codec_data', full_name='CStartVideoDataMsg.codec_data', index=2,
       number=3, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='width', full_name='CStartVideoDataMsg.width', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='height', full_name='CStartVideoDataMsg.height', index=4,
       number=5, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2549,8 +2932,8 @@ _CSTARTVIDEODATAMSG = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=3472,
-  serialized_end=3620,
+  serialized_start=3586,
+  serialized_end=3734,
 )
 
 
@@ -2560,6 +2943,7 @@ _CSTOPVIDEODATAMSG = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -2573,8 +2957,8 @@ _CSTOPVIDEODATAMSG = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=3622,
-  serialized_end=3641,
+  serialized_start=3736,
+  serialized_end=3755,
 )
 
 
@@ -2584,6 +2968,7 @@ _CRECORDEDINPUT = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='type', full_name='CRecordedInput.type', index=0,
@@ -2591,91 +2976,91 @@ _CRECORDEDINPUT = _descriptor.Descriptor(
       has_default_value=True, default_value=1,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='timestamp', full_name='CRecordedInput.timestamp', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='finger_down', full_name='CRecordedInput.finger_down', index=2,
       number=3, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='finger_motion', full_name='CRecordedInput.finger_motion', index=3,
       number=4, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='finger_up', full_name='CRecordedInput.finger_up', index=4,
       number=5, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='mouse_motion', full_name='CRecordedInput.mouse_motion', index=5,
       number=6, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='mouse_wheel', full_name='CRecordedInput.mouse_wheel', index=6,
       number=7, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='mouse_down', full_name='CRecordedInput.mouse_down', index=7,
       number=8, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='mouse_up', full_name='CRecordedInput.mouse_up', index=8,
       number=9, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='key_down', full_name='CRecordedInput.key_down', index=9,
       number=10, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='key_up', full_name='CRecordedInput.key_up', index=10,
       number=11, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='text', full_name='CRecordedInput.text', index=11,
       number=12, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='hid', full_name='CRecordedInput.hid', index=12,
       number=13, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2689,10 +3074,12 @@ _CRECORDEDINPUT = _descriptor.Descriptor(
   oneofs=[
     _descriptor.OneofDescriptor(
       name='data', full_name='CRecordedInput.data',
-      index=0, containing_type=None, fields=[]),
+      index=0, containing_type=None,
+      create_key=_descriptor._internal_create_key,
+    fields=[]),
   ],
-  serialized_start=3644,
-  serialized_end=4225,
+  serialized_start=3758,
+  serialized_end=4339,
 )
 
 
@@ -2702,6 +3089,7 @@ _CRECORDEDINPUTSTREAM = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='entries', full_name='CRecordedInputStream.entries', index=0,
@@ -2709,7 +3097,7 @@ _CRECORDEDINPUTSTREAM = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2722,8 +3110,8 @@ _CRECORDEDINPUTSTREAM = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=4227,
-  serialized_end=4283,
+  serialized_start=4341,
+  serialized_end=4397,
 )
 
 
@@ -2733,6 +3121,7 @@ _CINPUTLATENCYTESTMSG = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='input_mark', full_name='CInputLatencyTestMsg.input_mark', index=0,
@@ -2740,14 +3129,14 @@ _CINPUTLATENCYTESTMSG = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='color', full_name='CInputLatencyTestMsg.color', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2760,8 +3149,8 @@ _CINPUTLATENCYTESTMSG = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=4285,
-  serialized_end=4342,
+  serialized_start=4399,
+  serialized_end=4456,
 )
 
 
@@ -2771,6 +3160,7 @@ _CINPUTTOUCHFINGERDOWNMSG = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='input_mark', full_name='CInputTouchFingerDownMsg.input_mark', index=0,
@@ -2778,28 +3168,28 @@ _CINPUTTOUCHFINGERDOWNMSG = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='fingerid', full_name='CInputTouchFingerDownMsg.fingerid', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='x_normalized', full_name='CInputTouchFingerDownMsg.x_normalized', index=2,
       number=3, type=2, cpp_type=6, label=1,
       has_default_value=False, default_value=float(0),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='y_normalized', full_name='CInputTouchFingerDownMsg.y_normalized', index=3,
       number=4, type=2, cpp_type=6, label=1,
       has_default_value=False, default_value=float(0),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2812,8 +3202,8 @@ _CINPUTTOUCHFINGERDOWNMSG = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=4344,
-  serialized_end=4452,
+  serialized_start=4458,
+  serialized_end=4566,
 )
 
 
@@ -2823,6 +3213,7 @@ _CINPUTTOUCHFINGERMOTIONMSG = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='input_mark', full_name='CInputTouchFingerMotionMsg.input_mark', index=0,
@@ -2830,28 +3221,28 @@ _CINPUTTOUCHFINGERMOTIONMSG = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='fingerid', full_name='CInputTouchFingerMotionMsg.fingerid', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='x_normalized', full_name='CInputTouchFingerMotionMsg.x_normalized', index=2,
       number=3, type=2, cpp_type=6, label=1,
       has_default_value=False, default_value=float(0),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='y_normalized', full_name='CInputTouchFingerMotionMsg.y_normalized', index=3,
       number=4, type=2, cpp_type=6, label=1,
       has_default_value=False, default_value=float(0),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2864,8 +3255,8 @@ _CINPUTTOUCHFINGERMOTIONMSG = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=4454,
-  serialized_end=4564,
+  serialized_start=4568,
+  serialized_end=4678,
 )
 
 
@@ -2875,6 +3266,7 @@ _CINPUTTOUCHFINGERUPMSG = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='input_mark', full_name='CInputTouchFingerUpMsg.input_mark', index=0,
@@ -2882,28 +3274,28 @@ _CINPUTTOUCHFINGERUPMSG = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='fingerid', full_name='CInputTouchFingerUpMsg.fingerid', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='x_normalized', full_name='CInputTouchFingerUpMsg.x_normalized', index=2,
       number=3, type=2, cpp_type=6, label=1,
       has_default_value=False, default_value=float(0),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='y_normalized', full_name='CInputTouchFingerUpMsg.y_normalized', index=3,
       number=4, type=2, cpp_type=6, label=1,
       has_default_value=False, default_value=float(0),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2916,8 +3308,8 @@ _CINPUTTOUCHFINGERUPMSG = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=4566,
-  serialized_end=4672,
+  serialized_start=4680,
+  serialized_end=4786,
 )
 
 
@@ -2927,6 +3319,7 @@ _CINPUTMOUSEMOTIONMSG = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='input_mark', full_name='CInputMouseMotionMsg.input_mark', index=0,
@@ -2934,35 +3327,35 @@ _CINPUTMOUSEMOTIONMSG = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='x_normalized', full_name='CInputMouseMotionMsg.x_normalized', index=1,
       number=2, type=2, cpp_type=6, label=1,
       has_default_value=False, default_value=float(0),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='y_normalized', full_name='CInputMouseMotionMsg.y_normalized', index=2,
       number=3, type=2, cpp_type=6, label=1,
       has_default_value=False, default_value=float(0),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='dx', full_name='CInputMouseMotionMsg.dx', index=3,
       number=4, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='dy', full_name='CInputMouseMotionMsg.dy', index=4,
       number=5, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2975,8 +3368,8 @@ _CINPUTMOUSEMOTIONMSG = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=4674,
-  serialized_end=4784,
+  serialized_start=4788,
+  serialized_end=4898,
 )
 
 
@@ -2986,6 +3379,7 @@ _CINPUTMOUSEWHEELMSG = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='input_mark', full_name='CInputMouseWheelMsg.input_mark', index=0,
@@ -2993,14 +3387,14 @@ _CINPUTMOUSEWHEELMSG = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='direction', full_name='CInputMouseWheelMsg.direction', index=1,
       number=2, type=14, cpp_type=8, label=2,
       has_default_value=True, default_value=120,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3013,8 +3407,8 @@ _CINPUTMOUSEWHEELMSG = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=4786,
-  serialized_end=4898,
+  serialized_start=4900,
+  serialized_end=5012,
 )
 
 
@@ -3024,6 +3418,7 @@ _CINPUTMOUSEDOWNMSG = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='input_mark', full_name='CInputMouseDownMsg.input_mark', index=0,
@@ -3031,14 +3426,14 @@ _CINPUTMOUSEDOWNMSG = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='button', full_name='CInputMouseDownMsg.button', index=1,
       number=2, type=14, cpp_type=8, label=2,
       has_default_value=True, default_value=1,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3051,8 +3446,8 @@ _CINPUTMOUSEDOWNMSG = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=4900,
-  serialized_end=5003,
+  serialized_start=5014,
+  serialized_end=5117,
 )
 
 
@@ -3062,6 +3457,7 @@ _CINPUTMOUSEUPMSG = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='input_mark', full_name='CInputMouseUpMsg.input_mark', index=0,
@@ -3069,14 +3465,14 @@ _CINPUTMOUSEUPMSG = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='button', full_name='CInputMouseUpMsg.button', index=1,
       number=2, type=14, cpp_type=8, label=2,
       has_default_value=True, default_value=1,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3089,8 +3485,8 @@ _CINPUTMOUSEUPMSG = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=5005,
-  serialized_end=5106,
+  serialized_start=5119,
+  serialized_end=5220,
 )
 
 
@@ -3100,6 +3496,7 @@ _CINPUTKEYDOWNMSG = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='input_mark', full_name='CInputKeyDownMsg.input_mark', index=0,
@@ -3107,14 +3504,14 @@ _CINPUTKEYDOWNMSG = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='scancode', full_name='CInputKeyDownMsg.scancode', index=1,
       number=2, type=13, cpp_type=3, label=2,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3127,8 +3524,8 @@ _CINPUTKEYDOWNMSG = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=5108,
-  serialized_end=5164,
+  serialized_start=5222,
+  serialized_end=5278,
 )
 
 
@@ -3138,6 +3535,7 @@ _CINPUTKEYUPMSG = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='input_mark', full_name='CInputKeyUpMsg.input_mark', index=0,
@@ -3145,14 +3543,14 @@ _CINPUTKEYUPMSG = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='scancode', full_name='CInputKeyUpMsg.scancode', index=1,
       number=2, type=13, cpp_type=3, label=2,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3165,8 +3563,8 @@ _CINPUTKEYUPMSG = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=5166,
-  serialized_end=5220,
+  serialized_start=5280,
+  serialized_end=5334,
 )
 
 
@@ -3176,6 +3574,7 @@ _CINPUTTEXTMSG = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='input_mark', full_name='CInputTextMsg.input_mark', index=0,
@@ -3183,14 +3582,14 @@ _CINPUTTEXTMSG = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='text_utf8', full_name='CInputTextMsg.text_utf8', index=1,
       number=2, type=9, cpp_type=9, label=2,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3203,8 +3602,8 @@ _CINPUTTEXTMSG = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=5222,
-  serialized_end=5276,
+  serialized_start=5336,
+  serialized_end=5390,
 )
 
 
@@ -3214,14 +3613,15 @@ _CSETTITLEMSG = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='text', full_name='CSetTitleMsg.text', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3234,8 +3634,8 @@ _CSETTITLEMSG = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=5278,
-  serialized_end=5306,
+  serialized_start=5392,
+  serialized_end=5420,
 )
 
 
@@ -3245,6 +3645,7 @@ _CSETCAPTURESIZEMSG = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='width', full_name='CSetCaptureSizeMsg.width', index=0,
@@ -3252,14 +3653,14 @@ _CSETCAPTURESIZEMSG = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='height', full_name='CSetCaptureSizeMsg.height', index=1,
       number=2, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3272,8 +3673,8 @@ _CSETCAPTURESIZEMSG = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=5308,
-  serialized_end=5359,
+  serialized_start=5422,
+  serialized_end=5473,
 )
 
 
@@ -3283,6 +3684,7 @@ _CSETICONMSG = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='width', full_name='CSetIconMsg.width', index=0,
@@ -3290,21 +3692,21 @@ _CSETICONMSG = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='height', full_name='CSetIconMsg.height', index=1,
       number=2, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='image', full_name='CSetIconMsg.image', index=2,
       number=3, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3317,8 +3719,8 @@ _CSETICONMSG = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=5361,
-  serialized_end=5420,
+  serialized_start=5475,
+  serialized_end=5534,
 )
 
 
@@ -3328,6 +3730,7 @@ _CSETFLASHSTATEMSG = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='flags', full_name='CSetFlashStateMsg.flags', index=0,
@@ -3335,21 +3738,21 @@ _CSETFLASHSTATEMSG = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='count', full_name='CSetFlashStateMsg.count', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='timeout_ms', full_name='CSetFlashStateMsg.timeout_ms', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3362,8 +3765,8 @@ _CSETFLASHSTATEMSG = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=5422,
-  serialized_end=5491,
+  serialized_start=5536,
+  serialized_end=5605,
 )
 
 
@@ -3373,6 +3776,7 @@ _CSHOWCURSORMSG = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='x_normalized', full_name='CShowCursorMsg.x_normalized', index=0,
@@ -3380,14 +3784,14 @@ _CSHOWCURSORMSG = _descriptor.Descriptor(
       has_default_value=False, default_value=float(0),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='y_normalized', full_name='CShowCursorMsg.y_normalized', index=1,
       number=2, type=2, cpp_type=6, label=1,
       has_default_value=False, default_value=float(0),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3400,8 +3804,8 @@ _CSHOWCURSORMSG = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=5493,
-  serialized_end=5553,
+  serialized_start=5607,
+  serialized_end=5667,
 )
 
 
@@ -3411,6 +3815,7 @@ _CHIDECURSORMSG = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -3424,8 +3829,8 @@ _CHIDECURSORMSG = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=5555,
-  serialized_end=5571,
+  serialized_start=5669,
+  serialized_end=5685,
 )
 
 
@@ -3435,6 +3840,7 @@ _CSETCURSORMSG = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='cursor_id', full_name='CSetCursorMsg.cursor_id', index=0,
@@ -3442,7 +3848,7 @@ _CSETCURSORMSG = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3455,8 +3861,8 @@ _CSETCURSORMSG = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=5573,
-  serialized_end=5607,
+  serialized_start=5687,
+  serialized_end=5721,
 )
 
 
@@ -3466,6 +3872,7 @@ _CGETCURSORIMAGEMSG = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='cursor_id', full_name='CGetCursorImageMsg.cursor_id', index=0,
@@ -3473,7 +3880,7 @@ _CGETCURSORIMAGEMSG = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3486,8 +3893,8 @@ _CGETCURSORIMAGEMSG = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=5609,
-  serialized_end=5648,
+  serialized_start=5723,
+  serialized_end=5762,
 )
 
 
@@ -3497,6 +3904,7 @@ _CSETCURSORIMAGEMSG = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='cursor_id', full_name='CSetCursorImageMsg.cursor_id', index=0,
@@ -3504,42 +3912,42 @@ _CSETCURSORIMAGEMSG = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='width', full_name='CSetCursorImageMsg.width', index=1,
       number=2, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='height', full_name='CSetCursorImageMsg.height', index=2,
       number=3, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='hot_x', full_name='CSetCursorImageMsg.hot_x', index=3,
       number=4, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='hot_y', full_name='CSetCursorImageMsg.hot_y', index=4,
       number=5, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='image', full_name='CSetCursorImageMsg.image', index=5,
       number=6, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3552,8 +3960,8 @@ _CSETCURSORIMAGEMSG = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=5650,
-  serialized_end=5765,
+  serialized_start=5764,
+  serialized_end=5879,
 )
 
 
@@ -3563,21 +3971,22 @@ _CVIDEODECODERINFOMSG = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='info', full_name='CVideoDecoderInfoMsg.info', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='threads', full_name='CVideoDecoderInfoMsg.threads', index=1,
       number=2, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3590,8 +3999,8 @@ _CVIDEODECODERINFOMSG = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=5767,
-  serialized_end=5820,
+  serialized_start=5881,
+  serialized_end=5934,
 )
 
 
@@ -3601,14 +4010,15 @@ _CVIDEOENCODERINFOMSG = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='info', full_name='CVideoEncoderInfoMsg.info', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3621,8 +4031,8 @@ _CVIDEOENCODERINFOMSG = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=5822,
-  serialized_end=5858,
+  serialized_start=5936,
+  serialized_end=5972,
 )
 
 
@@ -3632,6 +4042,7 @@ _CPAUSEMSG = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -3645,8 +4056,8 @@ _CPAUSEMSG = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=5860,
-  serialized_end=5871,
+  serialized_start=5974,
+  serialized_end=5985,
 )
 
 
@@ -3656,6 +4067,7 @@ _CRESUMEMSG = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -3669,8 +4081,8 @@ _CRESUMEMSG = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=5873,
-  serialized_end=5885,
+  serialized_start=5987,
+  serialized_end=5999,
 )
 
 
@@ -3680,6 +4092,7 @@ _CENABLEHIGHRESCAPTUREMSG = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -3693,8 +4106,8 @@ _CENABLEHIGHRESCAPTUREMSG = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=5887,
-  serialized_end=5913,
+  serialized_start=6001,
+  serialized_end=6027,
 )
 
 
@@ -3704,6 +4117,7 @@ _CDISABLEHIGHRESCAPTUREMSG = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -3717,8 +4131,8 @@ _CDISABLEHIGHRESCAPTUREMSG = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=5915,
-  serialized_end=5942,
+  serialized_start=6029,
+  serialized_end=6056,
 )
 
 
@@ -3728,6 +4142,7 @@ _CTOGGLEMAGNIFICATIONMSG = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -3741,8 +4156,8 @@ _CTOGGLEMAGNIFICATIONMSG = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=5944,
-  serialized_end=5969,
+  serialized_start=6058,
+  serialized_end=6083,
 )
 
 
@@ -3752,6 +4167,7 @@ _CSETCAPSLOCKMSG = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='pressed', full_name='CSetCapslockMsg.pressed', index=0,
@@ -3759,7 +4175,7 @@ _CSETCAPSLOCKMSG = _descriptor.Descriptor(
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3772,8 +4188,8 @@ _CSETCAPSLOCKMSG = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=5971,
-  serialized_end=6005,
+  serialized_start=6085,
+  serialized_end=6119,
 )
 
 
@@ -3783,6 +4199,7 @@ _CSTREAMINGKEYMAPENTRY = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='scancode', full_name='CStreamingKeymapEntry.scancode', index=0,
@@ -3790,63 +4207,63 @@ _CSTREAMINGKEYMAPENTRY = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='normal_keycode', full_name='CStreamingKeymapEntry.normal_keycode', index=1,
       number=2, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='shift_keycode', full_name='CStreamingKeymapEntry.shift_keycode', index=2,
       number=3, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='capslock_keycode', full_name='CStreamingKeymapEntry.capslock_keycode', index=3,
       number=4, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='shift_capslock_keycode', full_name='CStreamingKeymapEntry.shift_capslock_keycode', index=4,
       number=5, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='altgr_keycode', full_name='CStreamingKeymapEntry.altgr_keycode', index=5,
       number=6, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='altgr_shift_keycode', full_name='CStreamingKeymapEntry.altgr_shift_keycode', index=6,
       number=7, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='altgr_capslock_keycode', full_name='CStreamingKeymapEntry.altgr_capslock_keycode', index=7,
       number=8, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='altgr_shift_capslock_keycode', full_name='CStreamingKeymapEntry.altgr_shift_capslock_keycode', index=8,
       number=9, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3859,8 +4276,8 @@ _CSTREAMINGKEYMAPENTRY = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=6008,
-  serialized_end=6276,
+  serialized_start=6122,
+  serialized_end=6390,
 )
 
 
@@ -3870,6 +4287,7 @@ _CSTREAMINGKEYMAP = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='entries', full_name='CStreamingKeymap.entries', index=0,
@@ -3877,7 +4295,7 @@ _CSTREAMINGKEYMAP = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3890,8 +4308,8 @@ _CSTREAMINGKEYMAP = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=6278,
-  serialized_end=6337,
+  serialized_start=6392,
+  serialized_end=6451,
 )
 
 
@@ -3901,6 +4319,7 @@ _CSETKEYMAPMSG = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='keymap', full_name='CSetKeymapMsg.keymap', index=0,
@@ -3908,7 +4327,7 @@ _CSETKEYMAPMSG = _descriptor.Descriptor(
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3921,8 +4340,8 @@ _CSETKEYMAPMSG = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=6339,
-  serialized_end=6389,
+  serialized_start=6453,
+  serialized_end=6503,
 )
 
 
@@ -3932,6 +4351,7 @@ _CSTOPREQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -3945,8 +4365,8 @@ _CSTOPREQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=6391,
-  serialized_end=6405,
+  serialized_start=6505,
+  serialized_end=6519,
 )
 
 
@@ -3956,6 +4376,7 @@ _CQUITREQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -3969,8 +4390,8 @@ _CQUITREQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=6407,
-  serialized_end=6421,
+  serialized_start=6521,
+  serialized_end=6535,
 )
 
 
@@ -3980,6 +4401,7 @@ _CDELETECURSORMSG = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='cursor_id', full_name='CDeleteCursorMsg.cursor_id', index=0,
@@ -3987,7 +4409,7 @@ _CDELETECURSORMSG = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4000,8 +4422,8 @@ _CDELETECURSORMSG = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=6423,
-  serialized_end=6460,
+  serialized_start=6537,
+  serialized_end=6574,
 )
 
 
@@ -4011,6 +4433,7 @@ _CSETSTREAMINGCLIENTCONFIG = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='config', full_name='CSetStreamingClientConfig.config', index=0,
@@ -4018,7 +4441,7 @@ _CSETSTREAMINGCLIENTCONFIG = _descriptor.Descriptor(
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4031,8 +4454,8 @@ _CSETSTREAMINGCLIENTCONFIG = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=6462,
-  serialized_end=6530,
+  serialized_start=6576,
+  serialized_end=6644,
 )
 
 
@@ -4042,6 +4465,7 @@ _CSETQOSMSG = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='use_qos', full_name='CSetQoSMsg.use_qos', index=0,
@@ -4049,7 +4473,7 @@ _CSETQOSMSG = _descriptor.Descriptor(
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4062,8 +4486,8 @@ _CSETQOSMSG = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=6532,
-  serialized_end=6561,
+  serialized_start=6646,
+  serialized_end=6675,
 )
 
 
@@ -4073,6 +4497,7 @@ _CSETTARGETFRAMERATEMSG = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='framerate', full_name='CSetTargetFramerateMsg.framerate', index=0,
@@ -4080,28 +4505,28 @@ _CSETTARGETFRAMERATEMSG = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='reasons', full_name='CSetTargetFramerateMsg.reasons', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='framerate_numerator', full_name='CSetTargetFramerateMsg.framerate_numerator', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='framerate_denominator', full_name='CSetTargetFramerateMsg.framerate_denominator', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4114,8 +4539,8 @@ _CSETTARGETFRAMERATEMSG = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=6563,
-  serialized_end=6683,
+  serialized_start=6677,
+  serialized_end=6797,
 )
 
 
@@ -4125,6 +4550,7 @@ _CSETTARGETBITRATEMSG = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='bitrate', full_name='CSetTargetBitrateMsg.bitrate', index=0,
@@ -4132,7 +4558,7 @@ _CSETTARGETBITRATEMSG = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4145,8 +4571,8 @@ _CSETTARGETBITRATEMSG = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=6685,
-  serialized_end=6724,
+  serialized_start=6799,
+  serialized_end=6838,
 )
 
 
@@ -4156,6 +4582,7 @@ _COVERLAYENABLEDMSG = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='enabled', full_name='COverlayEnabledMsg.enabled', index=0,
@@ -4163,7 +4590,7 @@ _COVERLAYENABLEDMSG = _descriptor.Descriptor(
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4176,8 +4603,8 @@ _COVERLAYENABLEDMSG = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=6726,
-  serialized_end=6763,
+  serialized_start=6840,
+  serialized_end=6877,
 )
 
 
@@ -4187,14 +4614,15 @@ _CSETGAMMARAMPMSG = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='gamma_ramp', full_name='CSetGammaRampMsg.gamma_ramp', index=0,
       number=1, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4207,8 +4635,8 @@ _CSETGAMMARAMPMSG = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=6765,
-  serialized_end=6803,
+  serialized_start=6879,
+  serialized_end=6917,
 )
 
 
@@ -4218,6 +4646,7 @@ _CSETACTIVITYMSG = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='activity', full_name='CSetActivityMsg.activity', index=0,
@@ -4225,28 +4654,28 @@ _CSETACTIVITYMSG = _descriptor.Descriptor(
       has_default_value=True, default_value=1,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='appid', full_name='CSetActivityMsg.appid', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='gameid', full_name='CSetActivityMsg.gameid', index=2,
       number=3, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='game_name', full_name='CSetActivityMsg.game_name', index=3,
       number=4, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4259,8 +4688,8 @@ _CSETACTIVITYMSG = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=6805,
-  serialized_end=6931,
+  serialized_start=6919,
+  serialized_end=7045,
 )
 
 
@@ -4270,6 +4699,7 @@ _CSYSTEMSUSPENDMSG = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -4283,8 +4713,8 @@ _CSYSTEMSUSPENDMSG = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=6933,
-  serialized_end=6952,
+  serialized_start=7047,
+  serialized_end=7066,
 )
 
 
@@ -4294,14 +4724,15 @@ _CVIRTUALHEREREQUESTMSG = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='hostname', full_name='CVirtualHereRequestMsg.hostname', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4314,8 +4745,8 @@ _CVIRTUALHEREREQUESTMSG = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=6954,
-  serialized_end=6996,
+  serialized_start=7068,
+  serialized_end=7110,
 )
 
 
@@ -4325,6 +4756,7 @@ _CVIRTUALHEREREADYMSG = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='licensed_device_count', full_name='CVirtualHereReadyMsg.licensed_device_count', index=0,
@@ -4332,7 +4764,7 @@ _CVIRTUALHEREREADYMSG = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4345,8 +4777,8 @@ _CVIRTUALHEREREADYMSG = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=6998,
-  serialized_end=7051,
+  serialized_start=7112,
+  serialized_end=7165,
 )
 
 
@@ -4356,14 +4788,15 @@ _CVIRTUALHERESHAREDEVICEMSG = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='device_address', full_name='CVirtualHereShareDeviceMsg.device_address', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4376,8 +4809,8 @@ _CVIRTUALHERESHAREDEVICEMSG = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=7053,
-  serialized_end=7105,
+  serialized_start=7167,
+  serialized_end=7219,
 )
 
 
@@ -4387,6 +4820,7 @@ _CSETSPECTATORMODEMSG = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='enabled', full_name='CSetSpectatorModeMsg.enabled', index=0,
@@ -4394,7 +4828,7 @@ _CSETSPECTATORMODEMSG = _descriptor.Descriptor(
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4407,8 +4841,8 @@ _CSETSPECTATORMODEMSG = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=7107,
-  serialized_end=7146,
+  serialized_start=7221,
+  serialized_end=7260,
 )
 
 
@@ -4418,14 +4852,22 @@ _CREMOTEHIDMSG = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='data', full_name='CRemoteHIDMsg.data', index=0,
       number=1, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='active_input', full_name='CRemoteHIDMsg.active_input', index=1,
+      number=2, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4438,8 +4880,8 @@ _CREMOTEHIDMSG = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=7148,
-  serialized_end=7177,
+  serialized_start=7262,
+  serialized_end=7313,
 )
 
 
@@ -4449,6 +4891,7 @@ _CTOUCHCONFIGACTIVEMSG = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CTouchConfigActiveMsg.appid', index=0,
@@ -4456,21 +4899,21 @@ _CTOUCHCONFIGACTIVEMSG = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='revision', full_name='CTouchConfigActiveMsg.revision', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='creator', full_name='CTouchConfigActiveMsg.creator', index=2,
       number=3, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4483,8 +4926,8 @@ _CTOUCHCONFIGACTIVEMSG = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=7179,
-  serialized_end=7252,
+  serialized_start=7315,
+  serialized_end=7388,
 )
 
 
@@ -4494,6 +4937,7 @@ _CGETTOUCHCONFIGDATAMSG = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CGetTouchConfigDataMsg.appid', index=0,
@@ -4501,7 +4945,7 @@ _CGETTOUCHCONFIGDATAMSG = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4514,8 +4958,8 @@ _CGETTOUCHCONFIGDATAMSG = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=7254,
-  serialized_end=7293,
+  serialized_start=7390,
+  serialized_end=7429,
 )
 
 
@@ -4525,6 +4969,7 @@ _CSETTOUCHCONFIGDATAMSG = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CSetTouchConfigDataMsg.appid', index=0,
@@ -4532,35 +4977,35 @@ _CSETTOUCHCONFIGDATAMSG = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='revision', full_name='CSetTouchConfigDataMsg.revision', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='data', full_name='CSetTouchConfigDataMsg.data', index=2,
       number=3, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='layout', full_name='CSetTouchConfigDataMsg.layout', index=3,
       number=4, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='creator', full_name='CSetTouchConfigDataMsg.creator', index=4,
       number=5, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4573,8 +5018,8 @@ _CSETTOUCHCONFIGDATAMSG = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=7295,
-  serialized_end=7399,
+  serialized_start=7431,
+  serialized_end=7535,
 )
 
 
@@ -4584,6 +5029,7 @@ _CSAVETOUCHCONFIGLAYOUTMSG = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CSaveTouchConfigLayoutMsg.appid', index=0,
@@ -4591,14 +5037,14 @@ _CSAVETOUCHCONFIGLAYOUTMSG = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='layout', full_name='CSaveTouchConfigLayoutMsg.layout', index=1,
       number=4, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4611,8 +5057,8 @@ _CSAVETOUCHCONFIGLAYOUTMSG = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=7401,
-  serialized_end=7459,
+  serialized_start=7537,
+  serialized_end=7595,
 )
 
 
@@ -4622,6 +5068,7 @@ _CTOUCHACTIONSETACTIVEMSG = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CTouchActionSetActiveMsg.appid', index=0,
@@ -4629,14 +5076,14 @@ _CTOUCHACTIONSETACTIVEMSG = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='actionset_id', full_name='CTouchActionSetActiveMsg.actionset_id', index=1,
       number=2, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4649,8 +5096,8 @@ _CTOUCHACTIONSETACTIVEMSG = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=7461,
-  serialized_end=7524,
+  serialized_start=7597,
+  serialized_end=7660,
 )
 
 
@@ -4660,6 +5107,7 @@ _CTOUCHACTIONSETLAYERADDEDMSG = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CTouchActionSetLayerAddedMsg.appid', index=0,
@@ -4667,14 +5115,14 @@ _CTOUCHACTIONSETLAYERADDEDMSG = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='actionset_id', full_name='CTouchActionSetLayerAddedMsg.actionset_id', index=1,
       number=2, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4687,8 +5135,8 @@ _CTOUCHACTIONSETLAYERADDEDMSG = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=7526,
-  serialized_end=7593,
+  serialized_start=7662,
+  serialized_end=7729,
 )
 
 
@@ -4698,6 +5146,7 @@ _CTOUCHACTIONSETLAYERREMOVEDMSG = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CTouchActionSetLayerRemovedMsg.appid', index=0,
@@ -4705,14 +5154,14 @@ _CTOUCHACTIONSETLAYERREMOVEDMSG = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='actionset_id', full_name='CTouchActionSetLayerRemovedMsg.actionset_id', index=1,
       number=2, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4725,8 +5174,8 @@ _CTOUCHACTIONSETLAYERREMOVEDMSG = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=7595,
-  serialized_end=7664,
+  serialized_start=7731,
+  serialized_end=7800,
 )
 
 
@@ -4736,6 +5185,7 @@ _CGETTOUCHICONDATAMSG = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CGetTouchIconDataMsg.appid', index=0,
@@ -4743,14 +5193,14 @@ _CGETTOUCHICONDATAMSG = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='icon', full_name='CGetTouchIconDataMsg.icon', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4763,8 +5213,8 @@ _CGETTOUCHICONDATAMSG = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=7666,
-  serialized_end=7717,
+  serialized_start=7802,
+  serialized_end=7853,
 )
 
 
@@ -4774,6 +5224,7 @@ _CSETTOUCHICONDATAMSG = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CSetTouchIconDataMsg.appid', index=0,
@@ -4781,21 +5232,21 @@ _CSETTOUCHICONDATAMSG = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='icon', full_name='CSetTouchIconDataMsg.icon', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='data', full_name='CSetTouchIconDataMsg.data', index=2,
       number=3, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4808,8 +5259,8 @@ _CSETTOUCHICONDATAMSG = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=7719,
-  serialized_end=7784,
+  serialized_start=7855,
+  serialized_end=7920,
 )
 
 
@@ -4819,6 +5270,7 @@ _CREMOTEPLAYTOGETHERGROUPUPDATEMSG_PLAYER = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='accountid', full_name='CRemotePlayTogetherGroupUpdateMsg.Player.accountid', index=0,
@@ -4826,49 +5278,49 @@ _CREMOTEPLAYTOGETHERGROUPUPDATEMSG_PLAYER = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='guestid', full_name='CRemotePlayTogetherGroupUpdateMsg.Player.guestid', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='keyboard_enabled', full_name='CRemotePlayTogetherGroupUpdateMsg.Player.keyboard_enabled', index=2,
       number=3, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='mouse_enabled', full_name='CRemotePlayTogetherGroupUpdateMsg.Player.mouse_enabled', index=3,
       number=4, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='controller_enabled', full_name='CRemotePlayTogetherGroupUpdateMsg.Player.controller_enabled', index=4,
       number=5, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='controller_slots', full_name='CRemotePlayTogetherGroupUpdateMsg.Player.controller_slots', index=5,
       number=6, type=13, cpp_type=3, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='avatar_hash', full_name='CRemotePlayTogetherGroupUpdateMsg.Player.avatar_hash', index=6,
       number=7, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4881,8 +5333,8 @@ _CREMOTEPLAYTOGETHERGROUPUPDATEMSG_PLAYER = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=7981,
-  serialized_end=8149,
+  serialized_start=8117,
+  serialized_end=8285,
 )
 
 _CREMOTEPLAYTOGETHERGROUPUPDATEMSG = _descriptor.Descriptor(
@@ -4891,6 +5343,7 @@ _CREMOTEPLAYTOGETHERGROUPUPDATEMSG = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='players', full_name='CRemotePlayTogetherGroupUpdateMsg.players', index=0,
@@ -4898,35 +5351,35 @@ _CREMOTEPLAYTOGETHERGROUPUPDATEMSG = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='player_index', full_name='CRemotePlayTogetherGroupUpdateMsg.player_index', index=1,
       number=2, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='miniprofile_location', full_name='CRemotePlayTogetherGroupUpdateMsg.miniprofile_location', index=2,
       number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='game_name', full_name='CRemotePlayTogetherGroupUpdateMsg.game_name', index=3,
       number=4, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='avatar_location', full_name='CRemotePlayTogetherGroupUpdateMsg.avatar_location', index=4,
       number=5, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4939,8 +5392,8 @@ _CREMOTEPLAYTOGETHERGROUPUPDATEMSG = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=7787,
-  serialized_end=8149,
+  serialized_start=7923,
+  serialized_end=8285,
 )
 
 
@@ -4950,6 +5403,7 @@ _CSETINPUTTEMPORARILYDISABLEDMSG = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='disabled', full_name='CSetInputTemporarilyDisabledMsg.disabled', index=0,
@@ -4957,7 +5411,7 @@ _CSETINPUTTEMPORARILYDISABLEDMSG = _descriptor.Descriptor(
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4970,8 +5424,8 @@ _CSETINPUTTEMPORARILYDISABLEDMSG = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=8151,
-  serialized_end=8202,
+  serialized_start=8287,
+  serialized_end=8338,
 )
 
 
@@ -4981,6 +5435,7 @@ _CSETQUALITYOVERRIDEMSG = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='value', full_name='CSetQualityOverrideMsg.value', index=0,
@@ -4988,7 +5443,7 @@ _CSETQUALITYOVERRIDEMSG = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -5001,8 +5456,8 @@ _CSETQUALITYOVERRIDEMSG = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=8204,
-  serialized_end=8243,
+  serialized_start=8340,
+  serialized_end=8379,
 )
 
 
@@ -5012,6 +5467,7 @@ _CSETBITRATEOVERRIDEMSG = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='value', full_name='CSetBitrateOverrideMsg.value', index=0,
@@ -5019,7 +5475,7 @@ _CSETBITRATEOVERRIDEMSG = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -5032,8 +5488,33 @@ _CSETBITRATEOVERRIDEMSG = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=8245,
-  serialized_end=8284,
+  serialized_start=8381,
+  serialized_end=8420,
+)
+
+
+_CSHOWONSCREENKEYBOARDMSG = _descriptor.Descriptor(
+  name='CShowOnScreenKeyboardMsg',
+  full_name='CShowOnScreenKeyboardMsg',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=8422,
+  serialized_end=8448,
 )
 
 
@@ -5043,6 +5524,7 @@ _CSTREAMDATALOSTMSG = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='packets', full_name='CStreamDataLostMsg.packets', index=0,
@@ -5050,7 +5532,7 @@ _CSTREAMDATALOSTMSG = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -5063,8 +5545,8 @@ _CSTREAMDATALOSTMSG = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=8286,
-  serialized_end=8323,
+  serialized_start=8450,
+  serialized_end=8487,
 )
 
 
@@ -5074,6 +5556,7 @@ _CAUDIOFORMAT = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='format', full_name='CAudioFormat.format', index=0,
@@ -5081,21 +5564,21 @@ _CAUDIOFORMAT = _descriptor.Descriptor(
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='frequency', full_name='CAudioFormat.frequency', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='channels', full_name='CAudioFormat.channels', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -5108,8 +5591,8 @@ _CAUDIOFORMAT = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=8325,
-  serialized_end=8427,
+  serialized_start=8489,
+  serialized_end=8591,
 )
 
 
@@ -5119,6 +5602,7 @@ _CVIDEOFORMAT = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='format', full_name='CVideoFormat.format', index=0,
@@ -5126,21 +5610,21 @@ _CVIDEOFORMAT = _descriptor.Descriptor(
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='width', full_name='CVideoFormat.width', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='height', full_name='CVideoFormat.height', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -5153,8 +5637,8 @@ _CVIDEOFORMAT = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=8429,
-  serialized_end=8525,
+  serialized_start=8593,
+  serialized_end=8689,
 )
 
 
@@ -5164,6 +5648,7 @@ _CFRAMEEVENT = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='event_id', full_name='CFrameEvent.event_id', index=0,
@@ -5171,14 +5656,14 @@ _CFRAMEEVENT = _descriptor.Descriptor(
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='timestamp', full_name='CFrameEvent.timestamp', index=1,
       number=2, type=13, cpp_type=3, label=2,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -5191,8 +5676,8 @@ _CFRAMEEVENT = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=8527,
-  serialized_end=8623,
+  serialized_start=8691,
+  serialized_end=8787,
 )
 
 
@@ -5202,6 +5687,7 @@ _CFRAMESTATS = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='frame_id', full_name='CFrameStats.frame_id', index=0,
@@ -5209,84 +5695,84 @@ _CFRAMESTATS = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='input_mark', full_name='CFrameStats.input_mark', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='events', full_name='CFrameStats.events', index=2,
       number=3, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='result', full_name='CFrameStats.result', index=3,
       number=4, type=14, cpp_type=8, label=2,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='frame_start_delta', full_name='CFrameStats.frame_start_delta', index=4,
       number=5, type=2, cpp_type=6, label=1,
       has_default_value=False, default_value=float(0),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='frame_display_delta', full_name='CFrameStats.frame_display_delta', index=5,
       number=6, type=2, cpp_type=6, label=1,
       has_default_value=False, default_value=float(0),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='ping_time', full_name='CFrameStats.ping_time', index=6,
       number=7, type=2, cpp_type=6, label=1,
       has_default_value=False, default_value=float(0),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='server_bitrate', full_name='CFrameStats.server_bitrate', index=7,
       number=8, type=2, cpp_type=6, label=1,
       has_default_value=False, default_value=float(0),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='client_bitrate', full_name='CFrameStats.client_bitrate', index=8,
       number=9, type=2, cpp_type=6, label=1,
       has_default_value=False, default_value=float(0),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='link_bandwidth', full_name='CFrameStats.link_bandwidth', index=9,
       number=10, type=2, cpp_type=6, label=1,
       has_default_value=False, default_value=float(0),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='packet_loss', full_name='CFrameStats.packet_loss', index=10,
       number=11, type=2, cpp_type=6, label=1,
       has_default_value=False, default_value=float(0),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='frame_size', full_name='CFrameStats.frame_size', index=11,
       number=12, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -5299,8 +5785,8 @@ _CFRAMESTATS = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=8626,
-  serialized_end=8961,
+  serialized_start=8790,
+  serialized_end=9125,
 )
 
 
@@ -5310,6 +5796,7 @@ _CFRAMESTATACCUMULATEDVALUE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='stat_type', full_name='CFrameStatAccumulatedValue.stat_type', index=0,
@@ -5317,28 +5804,28 @@ _CFRAMESTATACCUMULATEDVALUE = _descriptor.Descriptor(
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='count', full_name='CFrameStatAccumulatedValue.count', index=1,
       number=2, type=5, cpp_type=1, label=2,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='average', full_name='CFrameStatAccumulatedValue.average', index=2,
       number=3, type=2, cpp_type=6, label=2,
       has_default_value=False, default_value=float(0),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='stddev', full_name='CFrameStatAccumulatedValue.stddev', index=3,
       number=4, type=2, cpp_type=6, label=1,
       has_default_value=False, default_value=float(0),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -5351,8 +5838,8 @@ _CFRAMESTATACCUMULATEDVALUE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=8964,
-  serialized_end=9100,
+  serialized_start=9128,
+  serialized_end=9264,
 )
 
 
@@ -5362,6 +5849,7 @@ _CFRAMESTATSLISTMSG = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='data_type', full_name='CFrameStatsListMsg.data_type', index=0,
@@ -5369,28 +5857,28 @@ _CFRAMESTATSLISTMSG = _descriptor.Descriptor(
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='stats', full_name='CFrameStatsListMsg.stats', index=1,
       number=2, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='accumulated_stats', full_name='CFrameStatsListMsg.accumulated_stats', index=2,
       number=3, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='latest_frame_id', full_name='CFrameStatsListMsg.latest_frame_id', index=3,
       number=4, type=5, cpp_type=1, label=2,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -5403,8 +5891,8 @@ _CFRAMESTATSLISTMSG = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=9103,
-  serialized_end=9296,
+  serialized_start=9267,
+  serialized_end=9460,
 )
 
 
@@ -5414,6 +5902,7 @@ _CSTREAMINGSESSIONSTATS = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='frame_loss_percentage', full_name='CStreamingSessionStats.frame_loss_percentage', index=0,
@@ -5421,21 +5910,21 @@ _CSTREAMINGSESSIONSTATS = _descriptor.Descriptor(
       has_default_value=False, default_value=float(0),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='average_network_time_ms', full_name='CStreamingSessionStats.average_network_time_ms', index=1,
       number=2, type=2, cpp_type=6, label=1,
       has_default_value=False, default_value=float(0),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='stddev_network_time_ms', full_name='CStreamingSessionStats.stddev_network_time_ms', index=2,
       number=3, type=2, cpp_type=6, label=1,
       has_default_value=False, default_value=float(0),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -5448,8 +5937,8 @@ _CSTREAMINGSESSIONSTATS = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=9298,
-  serialized_end=9418,
+  serialized_start=9462,
+  serialized_end=9582,
 )
 
 
@@ -5459,14 +5948,15 @@ _CDEBUGDUMPMSG = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='screenshot', full_name='CDebugDumpMsg.screenshot', index=0,
       number=1, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -5479,8 +5969,8 @@ _CDEBUGDUMPMSG = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=9420,
-  serialized_end=9455,
+  serialized_start=9584,
+  serialized_end=9619,
 )
 
 
@@ -5490,6 +5980,7 @@ _CLOGMSG = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='type', full_name='CLogMsg.type', index=0,
@@ -5497,14 +5988,14 @@ _CLOGMSG = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='message', full_name='CLogMsg.message', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -5517,8 +6008,8 @@ _CLOGMSG = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=9457,
-  serialized_end=9497,
+  serialized_start=9621,
+  serialized_end=9661,
 )
 
 
@@ -5528,6 +6019,7 @@ _CLOGUPLOADMSG = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='type', full_name='CLogUploadMsg.type', index=0,
@@ -5535,14 +6027,14 @@ _CLOGUPLOADMSG = _descriptor.Descriptor(
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='data', full_name='CLogUploadMsg.data', index=1,
       number=3, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -5555,8 +6047,8 @@ _CLOGUPLOADMSG = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=9499,
-  serialized_end=9579,
+  serialized_start=9663,
+  serialized_end=9743,
 )
 
 
@@ -5566,28 +6058,29 @@ _CTRANSPORTSIGNALMSG_WEBRTCMESSAGE_CANDIDATE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='sdp_mid', full_name='CTransportSignalMsg.WebRTCMessage.Candidate.sdp_mid', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='sdp_mline_index', full_name='CTransportSignalMsg.WebRTCMessage.Candidate.sdp_mline_index', index=1,
       number=2, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='candidate', full_name='CTransportSignalMsg.WebRTCMessage.Candidate.candidate', index=2,
       number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -5600,8 +6093,8 @@ _CTRANSPORTSIGNALMSG_WEBRTCMESSAGE_CANDIDATE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=9810,
-  serialized_end=9882,
+  serialized_start=9974,
+  serialized_end=10046,
 )
 
 _CTRANSPORTSIGNALMSG_WEBRTCMESSAGE = _descriptor.Descriptor(
@@ -5610,6 +6103,7 @@ _CTRANSPORTSIGNALMSG_WEBRTCMESSAGE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='greeting', full_name='CTransportSignalMsg.WebRTCMessage.greeting', index=0,
@@ -5617,28 +6111,28 @@ _CTRANSPORTSIGNALMSG_WEBRTCMESSAGE = _descriptor.Descriptor(
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='offer', full_name='CTransportSignalMsg.WebRTCMessage.offer', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='answer', full_name='CTransportSignalMsg.WebRTCMessage.answer', index=2,
       number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='candidate', full_name='CTransportSignalMsg.WebRTCMessage.candidate', index=3,
       number=4, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -5652,10 +6146,12 @@ _CTRANSPORTSIGNALMSG_WEBRTCMESSAGE = _descriptor.Descriptor(
   oneofs=[
     _descriptor.OneofDescriptor(
       name='msg', full_name='CTransportSignalMsg.WebRTCMessage.msg',
-      index=0, containing_type=None, fields=[]),
+      index=0, containing_type=None,
+      create_key=_descriptor._internal_create_key,
+    fields=[]),
   ],
-  serialized_start=9671,
-  serialized_end=9889,
+  serialized_start=9835,
+  serialized_end=10053,
 )
 
 _CTRANSPORTSIGNALMSG = _descriptor.Descriptor(
@@ -5664,6 +6160,7 @@ _CTRANSPORTSIGNALMSG = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='webrtc', full_name='CTransportSignalMsg.webrtc', index=0,
@@ -5671,14 +6168,14 @@ _CTRANSPORTSIGNALMSG = _descriptor.Descriptor(
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='sdr', full_name='CTransportSignalMsg.sdr', index=1,
       number=2, type=12, cpp_type=9, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -5691,8 +6188,276 @@ _CTRANSPORTSIGNALMSG = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=9582,
-  serialized_end=9889,
+  serialized_start=9746,
+  serialized_end=10053,
+)
+
+
+_CCONTROLLERCONFIGMSG_CONTROLLERCONFIGRESPONSE = _descriptor.Descriptor(
+  name='ControllerConfigResponse',
+  full_name='CControllerConfigMsg.ControllerConfigResponse',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='appid', full_name='CControllerConfigMsg.ControllerConfigResponse.appid', index=0,
+      number=1, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='configURL', full_name='CControllerConfigMsg.ControllerConfigResponse.configURL', index=1,
+      number=2, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='controllerType', full_name='CControllerConfigMsg.ControllerConfigResponse.controllerType', index=2,
+      number=3, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='controllerData', full_name='CControllerConfigMsg.ControllerConfigResponse.controllerData', index=3,
+      number=4, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='selectionOrder', full_name='CControllerConfigMsg.ControllerConfigResponse.selectionOrder', index=4,
+      number=5, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='actionBlock', full_name='CControllerConfigMsg.ControllerConfigResponse.actionBlock', index=5,
+      number=6, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=10456,
+  serialized_end=10609,
+)
+
+_CCONTROLLERCONFIGMSG_CONTROLLERPERSONALIZATIONRESPONSE = _descriptor.Descriptor(
+  name='ControllerPersonalizationResponse',
+  full_name='CControllerConfigMsg.ControllerPersonalizationResponse',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='personalizationData', full_name='CControllerConfigMsg.ControllerPersonalizationResponse.personalizationData', index=0,
+      number=1, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=10611,
+  serialized_end=10675,
+)
+
+_CCONTROLLERCONFIGMSG_CONTROLLERACTIVECONFIGCHANGERESPONSE = _descriptor.Descriptor(
+  name='ControllerActiveConfigChangeResponse',
+  full_name='CControllerConfigMsg.ControllerActiveConfigChangeResponse',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='configURL', full_name='CControllerConfigMsg.ControllerActiveConfigChangeResponse.configURL', index=0,
+      number=2, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='controllerType', full_name='CControllerConfigMsg.ControllerActiveConfigChangeResponse.controllerType', index=1,
+      number=3, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='controllerData', full_name='CControllerConfigMsg.ControllerActiveConfigChangeResponse.controllerData', index=2,
+      number=4, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='selectionOrder', full_name='CControllerConfigMsg.ControllerActiveConfigChangeResponse.selectionOrder', index=3,
+      number=5, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=10678,
+  serialized_end=10807,
+)
+
+_CCONTROLLERCONFIGMSG_CONTROLLERACTIVECONFIGMSG = _descriptor.Descriptor(
+  name='ControllerActiveConfigMsg',
+  full_name='CControllerConfigMsg.ControllerActiveConfigMsg',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='appid', full_name='CControllerConfigMsg.ControllerActiveConfigMsg.appid', index=0,
+      number=1, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='configURL', full_name='CControllerConfigMsg.ControllerActiveConfigMsg.configURL', index=1,
+      number=2, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='controllerType', full_name='CControllerConfigMsg.ControllerActiveConfigMsg.controllerType', index=2,
+      number=3, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='controllerData', full_name='CControllerConfigMsg.ControllerActiveConfigMsg.controllerData', index=3,
+      number=4, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=10809,
+  serialized_end=10918,
+)
+
+_CCONTROLLERCONFIGMSG = _descriptor.Descriptor(
+  name='CControllerConfigMsg',
+  full_name='CControllerConfigMsg',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='type', full_name='CControllerConfigMsg.type', index=0,
+      number=1, type=14, cpp_type=8, label=2,
+      has_default_value=True, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='controllerPath', full_name='CControllerConfigMsg.controllerPath', index=1,
+      number=2, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='appid', full_name='CControllerConfigMsg.appid', index=2,
+      number=3, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='personalizationResponse', full_name='CControllerConfigMsg.personalizationResponse', index=3,
+      number=4, type=11, cpp_type=10, label=1,
+      has_default_value=False, default_value=None,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='configResponse', full_name='CControllerConfigMsg.configResponse', index=4,
+      number=6, type=11, cpp_type=10, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='activeConfigChangeMsg', full_name='CControllerConfigMsg.activeConfigChangeMsg', index=5,
+      number=7, type=11, cpp_type=10, label=1,
+      has_default_value=False, default_value=None,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[_CCONTROLLERCONFIGMSG_CONTROLLERCONFIGRESPONSE, _CCONTROLLERCONFIGMSG_CONTROLLERPERSONALIZATIONRESPONSE, _CCONTROLLERCONFIGMSG_CONTROLLERACTIVECONFIGCHANGERESPONSE, _CCONTROLLERCONFIGMSG_CONTROLLERACTIVECONFIGMSG, ],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=10056,
+  serialized_end=10918,
 )
 
 _CCLIENTHANDSHAKEMSG.fields_by_name['info'].message_type = _CSTREAMINGCLIENTHANDSHAKEINFO
@@ -5701,6 +6466,7 @@ _CAUTHENTICATIONREQUESTMSG.fields_by_name['version'].enum_type = _ESTREAMVERSION
 _CAUTHENTICATIONRESPONSEMSG.fields_by_name['result'].enum_type = _CAUTHENTICATIONRESPONSEMSG_AUTHENTICATIONRESULT
 _CAUTHENTICATIONRESPONSEMSG.fields_by_name['version'].enum_type = _ESTREAMVERSION
 _CAUTHENTICATIONRESPONSEMSG_AUTHENTICATIONRESULT.containing_type = _CAUTHENTICATIONRESPONSEMSG
+_CSTREAMINGCLIENTCAPS.fields_by_name['supported_colorspaces'].enum_type = _ESTREAMCOLORSPACE
 _CSTREAMINGCLIENTCONFIG.fields_by_name['quality'].enum_type = _ESTREAMQUALITYPREFERENCE
 _CSTREAMINGCLIENTCONFIG.fields_by_name['p2p_scope'].enum_type = _ESTREAMP2PSCOPE
 _CSTREAMINGSERVERCONFIG.fields_by_name['host_play_audio'].enum_type = _ESTREAMHOSTPLAYAUDIOPREFERENCE
@@ -5795,6 +6561,14 @@ _CTRANSPORTSIGNALMSG_WEBRTCMESSAGE.oneofs_by_name['msg'].fields.append(
   _CTRANSPORTSIGNALMSG_WEBRTCMESSAGE.fields_by_name['candidate'])
 _CTRANSPORTSIGNALMSG_WEBRTCMESSAGE.fields_by_name['candidate'].containing_oneof = _CTRANSPORTSIGNALMSG_WEBRTCMESSAGE.oneofs_by_name['msg']
 _CTRANSPORTSIGNALMSG.fields_by_name['webrtc'].message_type = _CTRANSPORTSIGNALMSG_WEBRTCMESSAGE
+_CCONTROLLERCONFIGMSG_CONTROLLERCONFIGRESPONSE.containing_type = _CCONTROLLERCONFIGMSG
+_CCONTROLLERCONFIGMSG_CONTROLLERPERSONALIZATIONRESPONSE.containing_type = _CCONTROLLERCONFIGMSG
+_CCONTROLLERCONFIGMSG_CONTROLLERACTIVECONFIGCHANGERESPONSE.containing_type = _CCONTROLLERCONFIGMSG
+_CCONTROLLERCONFIGMSG_CONTROLLERACTIVECONFIGMSG.containing_type = _CCONTROLLERCONFIGMSG
+_CCONTROLLERCONFIGMSG.fields_by_name['type'].enum_type = _ESTREAMCONTROLLERCONFIGMSG
+_CCONTROLLERCONFIGMSG.fields_by_name['personalizationResponse'].message_type = _CCONTROLLERCONFIGMSG_CONTROLLERPERSONALIZATIONRESPONSE
+_CCONTROLLERCONFIGMSG.fields_by_name['configResponse'].message_type = _CCONTROLLERCONFIGMSG_CONTROLLERCONFIGRESPONSE
+_CCONTROLLERCONFIGMSG.fields_by_name['activeConfigChangeMsg'].message_type = _CCONTROLLERCONFIGMSG_CONTROLLERACTIVECONFIGMSG
 DESCRIPTOR.message_types_by_name['CDiscoveryPingRequest'] = _CDISCOVERYPINGREQUEST
 DESCRIPTOR.message_types_by_name['CDiscoveryPingResponse'] = _CDISCOVERYPINGRESPONSE
 DESCRIPTOR.message_types_by_name['CStreamingClientHandshakeInfo'] = _CSTREAMINGCLIENTHANDSHAKEINFO
@@ -5879,6 +6653,7 @@ DESCRIPTOR.message_types_by_name['CRemotePlayTogetherGroupUpdateMsg'] = _CREMOTE
 DESCRIPTOR.message_types_by_name['CSetInputTemporarilyDisabledMsg'] = _CSETINPUTTEMPORARILYDISABLEDMSG
 DESCRIPTOR.message_types_by_name['CSetQualityOverrideMsg'] = _CSETQUALITYOVERRIDEMSG
 DESCRIPTOR.message_types_by_name['CSetBitrateOverrideMsg'] = _CSETBITRATEOVERRIDEMSG
+DESCRIPTOR.message_types_by_name['CShowOnScreenKeyboardMsg'] = _CSHOWONSCREENKEYBOARDMSG
 DESCRIPTOR.message_types_by_name['CStreamDataLostMsg'] = _CSTREAMDATALOSTMSG
 DESCRIPTOR.message_types_by_name['CAudioFormat'] = _CAUDIOFORMAT
 DESCRIPTOR.message_types_by_name['CVideoFormat'] = _CVIDEOFORMAT
@@ -5891,6 +6666,7 @@ DESCRIPTOR.message_types_by_name['CDebugDumpMsg'] = _CDEBUGDUMPMSG
 DESCRIPTOR.message_types_by_name['CLogMsg'] = _CLOGMSG
 DESCRIPTOR.message_types_by_name['CLogUploadMsg'] = _CLOGUPLOADMSG
 DESCRIPTOR.message_types_by_name['CTransportSignalMsg'] = _CTRANSPORTSIGNALMSG
+DESCRIPTOR.message_types_by_name['CControllerConfigMsg'] = _CCONTROLLERCONFIGMSG
 DESCRIPTOR.enum_types_by_name['EStreamChannel'] = _ESTREAMCHANNEL
 DESCRIPTOR.enum_types_by_name['EStreamDiscoveryMessage'] = _ESTREAMDISCOVERYMESSAGE
 DESCRIPTOR.enum_types_by_name['EStreamControlMessage'] = _ESTREAMCONTROLMESSAGE
@@ -5899,6 +6675,7 @@ DESCRIPTOR.enum_types_by_name['EStreamAudioCodec'] = _ESTREAMAUDIOCODEC
 DESCRIPTOR.enum_types_by_name['EStreamVideoCodec'] = _ESTREAMVIDEOCODEC
 DESCRIPTOR.enum_types_by_name['EStreamQualityPreference'] = _ESTREAMQUALITYPREFERENCE
 DESCRIPTOR.enum_types_by_name['EStreamBitrate'] = _ESTREAMBITRATE
+DESCRIPTOR.enum_types_by_name['EStreamColorspace'] = _ESTREAMCOLORSPACE
 DESCRIPTOR.enum_types_by_name['EStreamP2PScope'] = _ESTREAMP2PSCOPE
 DESCRIPTOR.enum_types_by_name['EStreamHostPlayAudioPreference'] = _ESTREAMHOSTPLAYAUDIOPREFERENCE
 DESCRIPTOR.enum_types_by_name['EStreamingDataType'] = _ESTREAMINGDATATYPE
@@ -5914,704 +6691,751 @@ DESCRIPTOR.enum_types_by_name['EStreamFrameEvent'] = _ESTREAMFRAMEEVENT
 DESCRIPTOR.enum_types_by_name['EStreamFrameResult'] = _ESTREAMFRAMERESULT
 DESCRIPTOR.enum_types_by_name['EFrameAccumulatedStat'] = _EFRAMEACCUMULATEDSTAT
 DESCRIPTOR.enum_types_by_name['ELogFileType'] = _ELOGFILETYPE
+DESCRIPTOR.enum_types_by_name['EStreamControllerConfigMsg'] = _ESTREAMCONTROLLERCONFIGMSG
 _sym_db.RegisterFileDescriptor(DESCRIPTOR)
 
-CDiscoveryPingRequest = _reflection.GeneratedProtocolMessageType('CDiscoveryPingRequest', (_message.Message,), dict(
-  DESCRIPTOR = _CDISCOVERYPINGREQUEST,
-  __module__ = 'steammessages_remoteplay_pb2'
+CDiscoveryPingRequest = _reflection.GeneratedProtocolMessageType('CDiscoveryPingRequest', (_message.Message,), {
+  'DESCRIPTOR' : _CDISCOVERYPINGREQUEST,
+  '__module__' : 'steammessages_remoteplay_pb2'
   # @@protoc_insertion_point(class_scope:CDiscoveryPingRequest)
-  ))
+  })
 _sym_db.RegisterMessage(CDiscoveryPingRequest)
 
-CDiscoveryPingResponse = _reflection.GeneratedProtocolMessageType('CDiscoveryPingResponse', (_message.Message,), dict(
-  DESCRIPTOR = _CDISCOVERYPINGRESPONSE,
-  __module__ = 'steammessages_remoteplay_pb2'
+CDiscoveryPingResponse = _reflection.GeneratedProtocolMessageType('CDiscoveryPingResponse', (_message.Message,), {
+  'DESCRIPTOR' : _CDISCOVERYPINGRESPONSE,
+  '__module__' : 'steammessages_remoteplay_pb2'
   # @@protoc_insertion_point(class_scope:CDiscoveryPingResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CDiscoveryPingResponse)
 
-CStreamingClientHandshakeInfo = _reflection.GeneratedProtocolMessageType('CStreamingClientHandshakeInfo', (_message.Message,), dict(
-  DESCRIPTOR = _CSTREAMINGCLIENTHANDSHAKEINFO,
-  __module__ = 'steammessages_remoteplay_pb2'
+CStreamingClientHandshakeInfo = _reflection.GeneratedProtocolMessageType('CStreamingClientHandshakeInfo', (_message.Message,), {
+  'DESCRIPTOR' : _CSTREAMINGCLIENTHANDSHAKEINFO,
+  '__module__' : 'steammessages_remoteplay_pb2'
   # @@protoc_insertion_point(class_scope:CStreamingClientHandshakeInfo)
-  ))
+  })
 _sym_db.RegisterMessage(CStreamingClientHandshakeInfo)
 
-CClientHandshakeMsg = _reflection.GeneratedProtocolMessageType('CClientHandshakeMsg', (_message.Message,), dict(
-  DESCRIPTOR = _CCLIENTHANDSHAKEMSG,
-  __module__ = 'steammessages_remoteplay_pb2'
+CClientHandshakeMsg = _reflection.GeneratedProtocolMessageType('CClientHandshakeMsg', (_message.Message,), {
+  'DESCRIPTOR' : _CCLIENTHANDSHAKEMSG,
+  '__module__' : 'steammessages_remoteplay_pb2'
   # @@protoc_insertion_point(class_scope:CClientHandshakeMsg)
-  ))
+  })
 _sym_db.RegisterMessage(CClientHandshakeMsg)
 
-CStreamingServerHandshakeInfo = _reflection.GeneratedProtocolMessageType('CStreamingServerHandshakeInfo', (_message.Message,), dict(
-  DESCRIPTOR = _CSTREAMINGSERVERHANDSHAKEINFO,
-  __module__ = 'steammessages_remoteplay_pb2'
+CStreamingServerHandshakeInfo = _reflection.GeneratedProtocolMessageType('CStreamingServerHandshakeInfo', (_message.Message,), {
+  'DESCRIPTOR' : _CSTREAMINGSERVERHANDSHAKEINFO,
+  '__module__' : 'steammessages_remoteplay_pb2'
   # @@protoc_insertion_point(class_scope:CStreamingServerHandshakeInfo)
-  ))
+  })
 _sym_db.RegisterMessage(CStreamingServerHandshakeInfo)
 
-CServerHandshakeMsg = _reflection.GeneratedProtocolMessageType('CServerHandshakeMsg', (_message.Message,), dict(
-  DESCRIPTOR = _CSERVERHANDSHAKEMSG,
-  __module__ = 'steammessages_remoteplay_pb2'
+CServerHandshakeMsg = _reflection.GeneratedProtocolMessageType('CServerHandshakeMsg', (_message.Message,), {
+  'DESCRIPTOR' : _CSERVERHANDSHAKEMSG,
+  '__module__' : 'steammessages_remoteplay_pb2'
   # @@protoc_insertion_point(class_scope:CServerHandshakeMsg)
-  ))
+  })
 _sym_db.RegisterMessage(CServerHandshakeMsg)
 
-CAuthenticationRequestMsg = _reflection.GeneratedProtocolMessageType('CAuthenticationRequestMsg', (_message.Message,), dict(
-  DESCRIPTOR = _CAUTHENTICATIONREQUESTMSG,
-  __module__ = 'steammessages_remoteplay_pb2'
+CAuthenticationRequestMsg = _reflection.GeneratedProtocolMessageType('CAuthenticationRequestMsg', (_message.Message,), {
+  'DESCRIPTOR' : _CAUTHENTICATIONREQUESTMSG,
+  '__module__' : 'steammessages_remoteplay_pb2'
   # @@protoc_insertion_point(class_scope:CAuthenticationRequestMsg)
-  ))
+  })
 _sym_db.RegisterMessage(CAuthenticationRequestMsg)
 
-CAuthenticationResponseMsg = _reflection.GeneratedProtocolMessageType('CAuthenticationResponseMsg', (_message.Message,), dict(
-  DESCRIPTOR = _CAUTHENTICATIONRESPONSEMSG,
-  __module__ = 'steammessages_remoteplay_pb2'
+CAuthenticationResponseMsg = _reflection.GeneratedProtocolMessageType('CAuthenticationResponseMsg', (_message.Message,), {
+  'DESCRIPTOR' : _CAUTHENTICATIONRESPONSEMSG,
+  '__module__' : 'steammessages_remoteplay_pb2'
   # @@protoc_insertion_point(class_scope:CAuthenticationResponseMsg)
-  ))
+  })
 _sym_db.RegisterMessage(CAuthenticationResponseMsg)
 
-CKeepAliveMsg = _reflection.GeneratedProtocolMessageType('CKeepAliveMsg', (_message.Message,), dict(
-  DESCRIPTOR = _CKEEPALIVEMSG,
-  __module__ = 'steammessages_remoteplay_pb2'
+CKeepAliveMsg = _reflection.GeneratedProtocolMessageType('CKeepAliveMsg', (_message.Message,), {
+  'DESCRIPTOR' : _CKEEPALIVEMSG,
+  '__module__' : 'steammessages_remoteplay_pb2'
   # @@protoc_insertion_point(class_scope:CKeepAliveMsg)
-  ))
+  })
 _sym_db.RegisterMessage(CKeepAliveMsg)
 
-CStartNetworkTestMsg = _reflection.GeneratedProtocolMessageType('CStartNetworkTestMsg', (_message.Message,), dict(
-  DESCRIPTOR = _CSTARTNETWORKTESTMSG,
-  __module__ = 'steammessages_remoteplay_pb2'
+CStartNetworkTestMsg = _reflection.GeneratedProtocolMessageType('CStartNetworkTestMsg', (_message.Message,), {
+  'DESCRIPTOR' : _CSTARTNETWORKTESTMSG,
+  '__module__' : 'steammessages_remoteplay_pb2'
   # @@protoc_insertion_point(class_scope:CStartNetworkTestMsg)
-  ))
+  })
 _sym_db.RegisterMessage(CStartNetworkTestMsg)
 
-CStreamVideoMode = _reflection.GeneratedProtocolMessageType('CStreamVideoMode', (_message.Message,), dict(
-  DESCRIPTOR = _CSTREAMVIDEOMODE,
-  __module__ = 'steammessages_remoteplay_pb2'
+CStreamVideoMode = _reflection.GeneratedProtocolMessageType('CStreamVideoMode', (_message.Message,), {
+  'DESCRIPTOR' : _CSTREAMVIDEOMODE,
+  '__module__' : 'steammessages_remoteplay_pb2'
   # @@protoc_insertion_point(class_scope:CStreamVideoMode)
-  ))
+  })
 _sym_db.RegisterMessage(CStreamVideoMode)
 
-CStreamingClientCaps = _reflection.GeneratedProtocolMessageType('CStreamingClientCaps', (_message.Message,), dict(
-  DESCRIPTOR = _CSTREAMINGCLIENTCAPS,
-  __module__ = 'steammessages_remoteplay_pb2'
+CStreamingClientCaps = _reflection.GeneratedProtocolMessageType('CStreamingClientCaps', (_message.Message,), {
+  'DESCRIPTOR' : _CSTREAMINGCLIENTCAPS,
+  '__module__' : 'steammessages_remoteplay_pb2'
   # @@protoc_insertion_point(class_scope:CStreamingClientCaps)
-  ))
+  })
 _sym_db.RegisterMessage(CStreamingClientCaps)
 
-CStreamingClientConfig = _reflection.GeneratedProtocolMessageType('CStreamingClientConfig', (_message.Message,), dict(
-  DESCRIPTOR = _CSTREAMINGCLIENTCONFIG,
-  __module__ = 'steammessages_remoteplay_pb2'
+CStreamingClientConfig = _reflection.GeneratedProtocolMessageType('CStreamingClientConfig', (_message.Message,), {
+  'DESCRIPTOR' : _CSTREAMINGCLIENTCONFIG,
+  '__module__' : 'steammessages_remoteplay_pb2'
   # @@protoc_insertion_point(class_scope:CStreamingClientConfig)
-  ))
+  })
 _sym_db.RegisterMessage(CStreamingClientConfig)
 
-CStreamingServerConfig = _reflection.GeneratedProtocolMessageType('CStreamingServerConfig', (_message.Message,), dict(
-  DESCRIPTOR = _CSTREAMINGSERVERCONFIG,
-  __module__ = 'steammessages_remoteplay_pb2'
+CStreamingServerConfig = _reflection.GeneratedProtocolMessageType('CStreamingServerConfig', (_message.Message,), {
+  'DESCRIPTOR' : _CSTREAMINGSERVERCONFIG,
+  '__module__' : 'steammessages_remoteplay_pb2'
   # @@protoc_insertion_point(class_scope:CStreamingServerConfig)
-  ))
+  })
 _sym_db.RegisterMessage(CStreamingServerConfig)
 
-CNegotiatedConfig = _reflection.GeneratedProtocolMessageType('CNegotiatedConfig', (_message.Message,), dict(
-  DESCRIPTOR = _CNEGOTIATEDCONFIG,
-  __module__ = 'steammessages_remoteplay_pb2'
+CNegotiatedConfig = _reflection.GeneratedProtocolMessageType('CNegotiatedConfig', (_message.Message,), {
+  'DESCRIPTOR' : _CNEGOTIATEDCONFIG,
+  '__module__' : 'steammessages_remoteplay_pb2'
   # @@protoc_insertion_point(class_scope:CNegotiatedConfig)
-  ))
+  })
 _sym_db.RegisterMessage(CNegotiatedConfig)
 
-CNegotiationInitMsg = _reflection.GeneratedProtocolMessageType('CNegotiationInitMsg', (_message.Message,), dict(
-  DESCRIPTOR = _CNEGOTIATIONINITMSG,
-  __module__ = 'steammessages_remoteplay_pb2'
+CNegotiationInitMsg = _reflection.GeneratedProtocolMessageType('CNegotiationInitMsg', (_message.Message,), {
+  'DESCRIPTOR' : _CNEGOTIATIONINITMSG,
+  '__module__' : 'steammessages_remoteplay_pb2'
   # @@protoc_insertion_point(class_scope:CNegotiationInitMsg)
-  ))
+  })
 _sym_db.RegisterMessage(CNegotiationInitMsg)
 
-CNegotiationSetConfigMsg = _reflection.GeneratedProtocolMessageType('CNegotiationSetConfigMsg', (_message.Message,), dict(
-  DESCRIPTOR = _CNEGOTIATIONSETCONFIGMSG,
-  __module__ = 'steammessages_remoteplay_pb2'
+CNegotiationSetConfigMsg = _reflection.GeneratedProtocolMessageType('CNegotiationSetConfigMsg', (_message.Message,), {
+  'DESCRIPTOR' : _CNEGOTIATIONSETCONFIGMSG,
+  '__module__' : 'steammessages_remoteplay_pb2'
   # @@protoc_insertion_point(class_scope:CNegotiationSetConfigMsg)
-  ))
+  })
 _sym_db.RegisterMessage(CNegotiationSetConfigMsg)
 
-CNegotiationCompleteMsg = _reflection.GeneratedProtocolMessageType('CNegotiationCompleteMsg', (_message.Message,), dict(
-  DESCRIPTOR = _CNEGOTIATIONCOMPLETEMSG,
-  __module__ = 'steammessages_remoteplay_pb2'
+CNegotiationCompleteMsg = _reflection.GeneratedProtocolMessageType('CNegotiationCompleteMsg', (_message.Message,), {
+  'DESCRIPTOR' : _CNEGOTIATIONCOMPLETEMSG,
+  '__module__' : 'steammessages_remoteplay_pb2'
   # @@protoc_insertion_point(class_scope:CNegotiationCompleteMsg)
-  ))
+  })
 _sym_db.RegisterMessage(CNegotiationCompleteMsg)
 
-CStartAudioDataMsg = _reflection.GeneratedProtocolMessageType('CStartAudioDataMsg', (_message.Message,), dict(
-  DESCRIPTOR = _CSTARTAUDIODATAMSG,
-  __module__ = 'steammessages_remoteplay_pb2'
+CStartAudioDataMsg = _reflection.GeneratedProtocolMessageType('CStartAudioDataMsg', (_message.Message,), {
+  'DESCRIPTOR' : _CSTARTAUDIODATAMSG,
+  '__module__' : 'steammessages_remoteplay_pb2'
   # @@protoc_insertion_point(class_scope:CStartAudioDataMsg)
-  ))
+  })
 _sym_db.RegisterMessage(CStartAudioDataMsg)
 
-CStopAudioDataMsg = _reflection.GeneratedProtocolMessageType('CStopAudioDataMsg', (_message.Message,), dict(
-  DESCRIPTOR = _CSTOPAUDIODATAMSG,
-  __module__ = 'steammessages_remoteplay_pb2'
+CStopAudioDataMsg = _reflection.GeneratedProtocolMessageType('CStopAudioDataMsg', (_message.Message,), {
+  'DESCRIPTOR' : _CSTOPAUDIODATAMSG,
+  '__module__' : 'steammessages_remoteplay_pb2'
   # @@protoc_insertion_point(class_scope:CStopAudioDataMsg)
-  ))
+  })
 _sym_db.RegisterMessage(CStopAudioDataMsg)
 
-CStartVideoDataMsg = _reflection.GeneratedProtocolMessageType('CStartVideoDataMsg', (_message.Message,), dict(
-  DESCRIPTOR = _CSTARTVIDEODATAMSG,
-  __module__ = 'steammessages_remoteplay_pb2'
+CStartVideoDataMsg = _reflection.GeneratedProtocolMessageType('CStartVideoDataMsg', (_message.Message,), {
+  'DESCRIPTOR' : _CSTARTVIDEODATAMSG,
+  '__module__' : 'steammessages_remoteplay_pb2'
   # @@protoc_insertion_point(class_scope:CStartVideoDataMsg)
-  ))
+  })
 _sym_db.RegisterMessage(CStartVideoDataMsg)
 
-CStopVideoDataMsg = _reflection.GeneratedProtocolMessageType('CStopVideoDataMsg', (_message.Message,), dict(
-  DESCRIPTOR = _CSTOPVIDEODATAMSG,
-  __module__ = 'steammessages_remoteplay_pb2'
+CStopVideoDataMsg = _reflection.GeneratedProtocolMessageType('CStopVideoDataMsg', (_message.Message,), {
+  'DESCRIPTOR' : _CSTOPVIDEODATAMSG,
+  '__module__' : 'steammessages_remoteplay_pb2'
   # @@protoc_insertion_point(class_scope:CStopVideoDataMsg)
-  ))
+  })
 _sym_db.RegisterMessage(CStopVideoDataMsg)
 
-CRecordedInput = _reflection.GeneratedProtocolMessageType('CRecordedInput', (_message.Message,), dict(
-  DESCRIPTOR = _CRECORDEDINPUT,
-  __module__ = 'steammessages_remoteplay_pb2'
+CRecordedInput = _reflection.GeneratedProtocolMessageType('CRecordedInput', (_message.Message,), {
+  'DESCRIPTOR' : _CRECORDEDINPUT,
+  '__module__' : 'steammessages_remoteplay_pb2'
   # @@protoc_insertion_point(class_scope:CRecordedInput)
-  ))
+  })
 _sym_db.RegisterMessage(CRecordedInput)
 
-CRecordedInputStream = _reflection.GeneratedProtocolMessageType('CRecordedInputStream', (_message.Message,), dict(
-  DESCRIPTOR = _CRECORDEDINPUTSTREAM,
-  __module__ = 'steammessages_remoteplay_pb2'
+CRecordedInputStream = _reflection.GeneratedProtocolMessageType('CRecordedInputStream', (_message.Message,), {
+  'DESCRIPTOR' : _CRECORDEDINPUTSTREAM,
+  '__module__' : 'steammessages_remoteplay_pb2'
   # @@protoc_insertion_point(class_scope:CRecordedInputStream)
-  ))
+  })
 _sym_db.RegisterMessage(CRecordedInputStream)
 
-CInputLatencyTestMsg = _reflection.GeneratedProtocolMessageType('CInputLatencyTestMsg', (_message.Message,), dict(
-  DESCRIPTOR = _CINPUTLATENCYTESTMSG,
-  __module__ = 'steammessages_remoteplay_pb2'
+CInputLatencyTestMsg = _reflection.GeneratedProtocolMessageType('CInputLatencyTestMsg', (_message.Message,), {
+  'DESCRIPTOR' : _CINPUTLATENCYTESTMSG,
+  '__module__' : 'steammessages_remoteplay_pb2'
   # @@protoc_insertion_point(class_scope:CInputLatencyTestMsg)
-  ))
+  })
 _sym_db.RegisterMessage(CInputLatencyTestMsg)
 
-CInputTouchFingerDownMsg = _reflection.GeneratedProtocolMessageType('CInputTouchFingerDownMsg', (_message.Message,), dict(
-  DESCRIPTOR = _CINPUTTOUCHFINGERDOWNMSG,
-  __module__ = 'steammessages_remoteplay_pb2'
+CInputTouchFingerDownMsg = _reflection.GeneratedProtocolMessageType('CInputTouchFingerDownMsg', (_message.Message,), {
+  'DESCRIPTOR' : _CINPUTTOUCHFINGERDOWNMSG,
+  '__module__' : 'steammessages_remoteplay_pb2'
   # @@protoc_insertion_point(class_scope:CInputTouchFingerDownMsg)
-  ))
+  })
 _sym_db.RegisterMessage(CInputTouchFingerDownMsg)
 
-CInputTouchFingerMotionMsg = _reflection.GeneratedProtocolMessageType('CInputTouchFingerMotionMsg', (_message.Message,), dict(
-  DESCRIPTOR = _CINPUTTOUCHFINGERMOTIONMSG,
-  __module__ = 'steammessages_remoteplay_pb2'
+CInputTouchFingerMotionMsg = _reflection.GeneratedProtocolMessageType('CInputTouchFingerMotionMsg', (_message.Message,), {
+  'DESCRIPTOR' : _CINPUTTOUCHFINGERMOTIONMSG,
+  '__module__' : 'steammessages_remoteplay_pb2'
   # @@protoc_insertion_point(class_scope:CInputTouchFingerMotionMsg)
-  ))
+  })
 _sym_db.RegisterMessage(CInputTouchFingerMotionMsg)
 
-CInputTouchFingerUpMsg = _reflection.GeneratedProtocolMessageType('CInputTouchFingerUpMsg', (_message.Message,), dict(
-  DESCRIPTOR = _CINPUTTOUCHFINGERUPMSG,
-  __module__ = 'steammessages_remoteplay_pb2'
+CInputTouchFingerUpMsg = _reflection.GeneratedProtocolMessageType('CInputTouchFingerUpMsg', (_message.Message,), {
+  'DESCRIPTOR' : _CINPUTTOUCHFINGERUPMSG,
+  '__module__' : 'steammessages_remoteplay_pb2'
   # @@protoc_insertion_point(class_scope:CInputTouchFingerUpMsg)
-  ))
+  })
 _sym_db.RegisterMessage(CInputTouchFingerUpMsg)
 
-CInputMouseMotionMsg = _reflection.GeneratedProtocolMessageType('CInputMouseMotionMsg', (_message.Message,), dict(
-  DESCRIPTOR = _CINPUTMOUSEMOTIONMSG,
-  __module__ = 'steammessages_remoteplay_pb2'
+CInputMouseMotionMsg = _reflection.GeneratedProtocolMessageType('CInputMouseMotionMsg', (_message.Message,), {
+  'DESCRIPTOR' : _CINPUTMOUSEMOTIONMSG,
+  '__module__' : 'steammessages_remoteplay_pb2'
   # @@protoc_insertion_point(class_scope:CInputMouseMotionMsg)
-  ))
+  })
 _sym_db.RegisterMessage(CInputMouseMotionMsg)
 
-CInputMouseWheelMsg = _reflection.GeneratedProtocolMessageType('CInputMouseWheelMsg', (_message.Message,), dict(
-  DESCRIPTOR = _CINPUTMOUSEWHEELMSG,
-  __module__ = 'steammessages_remoteplay_pb2'
+CInputMouseWheelMsg = _reflection.GeneratedProtocolMessageType('CInputMouseWheelMsg', (_message.Message,), {
+  'DESCRIPTOR' : _CINPUTMOUSEWHEELMSG,
+  '__module__' : 'steammessages_remoteplay_pb2'
   # @@protoc_insertion_point(class_scope:CInputMouseWheelMsg)
-  ))
+  })
 _sym_db.RegisterMessage(CInputMouseWheelMsg)
 
-CInputMouseDownMsg = _reflection.GeneratedProtocolMessageType('CInputMouseDownMsg', (_message.Message,), dict(
-  DESCRIPTOR = _CINPUTMOUSEDOWNMSG,
-  __module__ = 'steammessages_remoteplay_pb2'
+CInputMouseDownMsg = _reflection.GeneratedProtocolMessageType('CInputMouseDownMsg', (_message.Message,), {
+  'DESCRIPTOR' : _CINPUTMOUSEDOWNMSG,
+  '__module__' : 'steammessages_remoteplay_pb2'
   # @@protoc_insertion_point(class_scope:CInputMouseDownMsg)
-  ))
+  })
 _sym_db.RegisterMessage(CInputMouseDownMsg)
 
-CInputMouseUpMsg = _reflection.GeneratedProtocolMessageType('CInputMouseUpMsg', (_message.Message,), dict(
-  DESCRIPTOR = _CINPUTMOUSEUPMSG,
-  __module__ = 'steammessages_remoteplay_pb2'
+CInputMouseUpMsg = _reflection.GeneratedProtocolMessageType('CInputMouseUpMsg', (_message.Message,), {
+  'DESCRIPTOR' : _CINPUTMOUSEUPMSG,
+  '__module__' : 'steammessages_remoteplay_pb2'
   # @@protoc_insertion_point(class_scope:CInputMouseUpMsg)
-  ))
+  })
 _sym_db.RegisterMessage(CInputMouseUpMsg)
 
-CInputKeyDownMsg = _reflection.GeneratedProtocolMessageType('CInputKeyDownMsg', (_message.Message,), dict(
-  DESCRIPTOR = _CINPUTKEYDOWNMSG,
-  __module__ = 'steammessages_remoteplay_pb2'
+CInputKeyDownMsg = _reflection.GeneratedProtocolMessageType('CInputKeyDownMsg', (_message.Message,), {
+  'DESCRIPTOR' : _CINPUTKEYDOWNMSG,
+  '__module__' : 'steammessages_remoteplay_pb2'
   # @@protoc_insertion_point(class_scope:CInputKeyDownMsg)
-  ))
+  })
 _sym_db.RegisterMessage(CInputKeyDownMsg)
 
-CInputKeyUpMsg = _reflection.GeneratedProtocolMessageType('CInputKeyUpMsg', (_message.Message,), dict(
-  DESCRIPTOR = _CINPUTKEYUPMSG,
-  __module__ = 'steammessages_remoteplay_pb2'
+CInputKeyUpMsg = _reflection.GeneratedProtocolMessageType('CInputKeyUpMsg', (_message.Message,), {
+  'DESCRIPTOR' : _CINPUTKEYUPMSG,
+  '__module__' : 'steammessages_remoteplay_pb2'
   # @@protoc_insertion_point(class_scope:CInputKeyUpMsg)
-  ))
+  })
 _sym_db.RegisterMessage(CInputKeyUpMsg)
 
-CInputTextMsg = _reflection.GeneratedProtocolMessageType('CInputTextMsg', (_message.Message,), dict(
-  DESCRIPTOR = _CINPUTTEXTMSG,
-  __module__ = 'steammessages_remoteplay_pb2'
+CInputTextMsg = _reflection.GeneratedProtocolMessageType('CInputTextMsg', (_message.Message,), {
+  'DESCRIPTOR' : _CINPUTTEXTMSG,
+  '__module__' : 'steammessages_remoteplay_pb2'
   # @@protoc_insertion_point(class_scope:CInputTextMsg)
-  ))
+  })
 _sym_db.RegisterMessage(CInputTextMsg)
 
-CSetTitleMsg = _reflection.GeneratedProtocolMessageType('CSetTitleMsg', (_message.Message,), dict(
-  DESCRIPTOR = _CSETTITLEMSG,
-  __module__ = 'steammessages_remoteplay_pb2'
+CSetTitleMsg = _reflection.GeneratedProtocolMessageType('CSetTitleMsg', (_message.Message,), {
+  'DESCRIPTOR' : _CSETTITLEMSG,
+  '__module__' : 'steammessages_remoteplay_pb2'
   # @@protoc_insertion_point(class_scope:CSetTitleMsg)
-  ))
+  })
 _sym_db.RegisterMessage(CSetTitleMsg)
 
-CSetCaptureSizeMsg = _reflection.GeneratedProtocolMessageType('CSetCaptureSizeMsg', (_message.Message,), dict(
-  DESCRIPTOR = _CSETCAPTURESIZEMSG,
-  __module__ = 'steammessages_remoteplay_pb2'
+CSetCaptureSizeMsg = _reflection.GeneratedProtocolMessageType('CSetCaptureSizeMsg', (_message.Message,), {
+  'DESCRIPTOR' : _CSETCAPTURESIZEMSG,
+  '__module__' : 'steammessages_remoteplay_pb2'
   # @@protoc_insertion_point(class_scope:CSetCaptureSizeMsg)
-  ))
+  })
 _sym_db.RegisterMessage(CSetCaptureSizeMsg)
 
-CSetIconMsg = _reflection.GeneratedProtocolMessageType('CSetIconMsg', (_message.Message,), dict(
-  DESCRIPTOR = _CSETICONMSG,
-  __module__ = 'steammessages_remoteplay_pb2'
+CSetIconMsg = _reflection.GeneratedProtocolMessageType('CSetIconMsg', (_message.Message,), {
+  'DESCRIPTOR' : _CSETICONMSG,
+  '__module__' : 'steammessages_remoteplay_pb2'
   # @@protoc_insertion_point(class_scope:CSetIconMsg)
-  ))
+  })
 _sym_db.RegisterMessage(CSetIconMsg)
 
-CSetFlashStateMsg = _reflection.GeneratedProtocolMessageType('CSetFlashStateMsg', (_message.Message,), dict(
-  DESCRIPTOR = _CSETFLASHSTATEMSG,
-  __module__ = 'steammessages_remoteplay_pb2'
+CSetFlashStateMsg = _reflection.GeneratedProtocolMessageType('CSetFlashStateMsg', (_message.Message,), {
+  'DESCRIPTOR' : _CSETFLASHSTATEMSG,
+  '__module__' : 'steammessages_remoteplay_pb2'
   # @@protoc_insertion_point(class_scope:CSetFlashStateMsg)
-  ))
+  })
 _sym_db.RegisterMessage(CSetFlashStateMsg)
 
-CShowCursorMsg = _reflection.GeneratedProtocolMessageType('CShowCursorMsg', (_message.Message,), dict(
-  DESCRIPTOR = _CSHOWCURSORMSG,
-  __module__ = 'steammessages_remoteplay_pb2'
+CShowCursorMsg = _reflection.GeneratedProtocolMessageType('CShowCursorMsg', (_message.Message,), {
+  'DESCRIPTOR' : _CSHOWCURSORMSG,
+  '__module__' : 'steammessages_remoteplay_pb2'
   # @@protoc_insertion_point(class_scope:CShowCursorMsg)
-  ))
+  })
 _sym_db.RegisterMessage(CShowCursorMsg)
 
-CHideCursorMsg = _reflection.GeneratedProtocolMessageType('CHideCursorMsg', (_message.Message,), dict(
-  DESCRIPTOR = _CHIDECURSORMSG,
-  __module__ = 'steammessages_remoteplay_pb2'
+CHideCursorMsg = _reflection.GeneratedProtocolMessageType('CHideCursorMsg', (_message.Message,), {
+  'DESCRIPTOR' : _CHIDECURSORMSG,
+  '__module__' : 'steammessages_remoteplay_pb2'
   # @@protoc_insertion_point(class_scope:CHideCursorMsg)
-  ))
+  })
 _sym_db.RegisterMessage(CHideCursorMsg)
 
-CSetCursorMsg = _reflection.GeneratedProtocolMessageType('CSetCursorMsg', (_message.Message,), dict(
-  DESCRIPTOR = _CSETCURSORMSG,
-  __module__ = 'steammessages_remoteplay_pb2'
+CSetCursorMsg = _reflection.GeneratedProtocolMessageType('CSetCursorMsg', (_message.Message,), {
+  'DESCRIPTOR' : _CSETCURSORMSG,
+  '__module__' : 'steammessages_remoteplay_pb2'
   # @@protoc_insertion_point(class_scope:CSetCursorMsg)
-  ))
+  })
 _sym_db.RegisterMessage(CSetCursorMsg)
 
-CGetCursorImageMsg = _reflection.GeneratedProtocolMessageType('CGetCursorImageMsg', (_message.Message,), dict(
-  DESCRIPTOR = _CGETCURSORIMAGEMSG,
-  __module__ = 'steammessages_remoteplay_pb2'
+CGetCursorImageMsg = _reflection.GeneratedProtocolMessageType('CGetCursorImageMsg', (_message.Message,), {
+  'DESCRIPTOR' : _CGETCURSORIMAGEMSG,
+  '__module__' : 'steammessages_remoteplay_pb2'
   # @@protoc_insertion_point(class_scope:CGetCursorImageMsg)
-  ))
+  })
 _sym_db.RegisterMessage(CGetCursorImageMsg)
 
-CSetCursorImageMsg = _reflection.GeneratedProtocolMessageType('CSetCursorImageMsg', (_message.Message,), dict(
-  DESCRIPTOR = _CSETCURSORIMAGEMSG,
-  __module__ = 'steammessages_remoteplay_pb2'
+CSetCursorImageMsg = _reflection.GeneratedProtocolMessageType('CSetCursorImageMsg', (_message.Message,), {
+  'DESCRIPTOR' : _CSETCURSORIMAGEMSG,
+  '__module__' : 'steammessages_remoteplay_pb2'
   # @@protoc_insertion_point(class_scope:CSetCursorImageMsg)
-  ))
+  })
 _sym_db.RegisterMessage(CSetCursorImageMsg)
 
-CVideoDecoderInfoMsg = _reflection.GeneratedProtocolMessageType('CVideoDecoderInfoMsg', (_message.Message,), dict(
-  DESCRIPTOR = _CVIDEODECODERINFOMSG,
-  __module__ = 'steammessages_remoteplay_pb2'
+CVideoDecoderInfoMsg = _reflection.GeneratedProtocolMessageType('CVideoDecoderInfoMsg', (_message.Message,), {
+  'DESCRIPTOR' : _CVIDEODECODERINFOMSG,
+  '__module__' : 'steammessages_remoteplay_pb2'
   # @@protoc_insertion_point(class_scope:CVideoDecoderInfoMsg)
-  ))
+  })
 _sym_db.RegisterMessage(CVideoDecoderInfoMsg)
 
-CVideoEncoderInfoMsg = _reflection.GeneratedProtocolMessageType('CVideoEncoderInfoMsg', (_message.Message,), dict(
-  DESCRIPTOR = _CVIDEOENCODERINFOMSG,
-  __module__ = 'steammessages_remoteplay_pb2'
+CVideoEncoderInfoMsg = _reflection.GeneratedProtocolMessageType('CVideoEncoderInfoMsg', (_message.Message,), {
+  'DESCRIPTOR' : _CVIDEOENCODERINFOMSG,
+  '__module__' : 'steammessages_remoteplay_pb2'
   # @@protoc_insertion_point(class_scope:CVideoEncoderInfoMsg)
-  ))
+  })
 _sym_db.RegisterMessage(CVideoEncoderInfoMsg)
 
-CPauseMsg = _reflection.GeneratedProtocolMessageType('CPauseMsg', (_message.Message,), dict(
-  DESCRIPTOR = _CPAUSEMSG,
-  __module__ = 'steammessages_remoteplay_pb2'
+CPauseMsg = _reflection.GeneratedProtocolMessageType('CPauseMsg', (_message.Message,), {
+  'DESCRIPTOR' : _CPAUSEMSG,
+  '__module__' : 'steammessages_remoteplay_pb2'
   # @@protoc_insertion_point(class_scope:CPauseMsg)
-  ))
+  })
 _sym_db.RegisterMessage(CPauseMsg)
 
-CResumeMsg = _reflection.GeneratedProtocolMessageType('CResumeMsg', (_message.Message,), dict(
-  DESCRIPTOR = _CRESUMEMSG,
-  __module__ = 'steammessages_remoteplay_pb2'
+CResumeMsg = _reflection.GeneratedProtocolMessageType('CResumeMsg', (_message.Message,), {
+  'DESCRIPTOR' : _CRESUMEMSG,
+  '__module__' : 'steammessages_remoteplay_pb2'
   # @@protoc_insertion_point(class_scope:CResumeMsg)
-  ))
+  })
 _sym_db.RegisterMessage(CResumeMsg)
 
-CEnableHighResCaptureMsg = _reflection.GeneratedProtocolMessageType('CEnableHighResCaptureMsg', (_message.Message,), dict(
-  DESCRIPTOR = _CENABLEHIGHRESCAPTUREMSG,
-  __module__ = 'steammessages_remoteplay_pb2'
+CEnableHighResCaptureMsg = _reflection.GeneratedProtocolMessageType('CEnableHighResCaptureMsg', (_message.Message,), {
+  'DESCRIPTOR' : _CENABLEHIGHRESCAPTUREMSG,
+  '__module__' : 'steammessages_remoteplay_pb2'
   # @@protoc_insertion_point(class_scope:CEnableHighResCaptureMsg)
-  ))
+  })
 _sym_db.RegisterMessage(CEnableHighResCaptureMsg)
 
-CDisableHighResCaptureMsg = _reflection.GeneratedProtocolMessageType('CDisableHighResCaptureMsg', (_message.Message,), dict(
-  DESCRIPTOR = _CDISABLEHIGHRESCAPTUREMSG,
-  __module__ = 'steammessages_remoteplay_pb2'
+CDisableHighResCaptureMsg = _reflection.GeneratedProtocolMessageType('CDisableHighResCaptureMsg', (_message.Message,), {
+  'DESCRIPTOR' : _CDISABLEHIGHRESCAPTUREMSG,
+  '__module__' : 'steammessages_remoteplay_pb2'
   # @@protoc_insertion_point(class_scope:CDisableHighResCaptureMsg)
-  ))
+  })
 _sym_db.RegisterMessage(CDisableHighResCaptureMsg)
 
-CToggleMagnificationMsg = _reflection.GeneratedProtocolMessageType('CToggleMagnificationMsg', (_message.Message,), dict(
-  DESCRIPTOR = _CTOGGLEMAGNIFICATIONMSG,
-  __module__ = 'steammessages_remoteplay_pb2'
+CToggleMagnificationMsg = _reflection.GeneratedProtocolMessageType('CToggleMagnificationMsg', (_message.Message,), {
+  'DESCRIPTOR' : _CTOGGLEMAGNIFICATIONMSG,
+  '__module__' : 'steammessages_remoteplay_pb2'
   # @@protoc_insertion_point(class_scope:CToggleMagnificationMsg)
-  ))
+  })
 _sym_db.RegisterMessage(CToggleMagnificationMsg)
 
-CSetCapslockMsg = _reflection.GeneratedProtocolMessageType('CSetCapslockMsg', (_message.Message,), dict(
-  DESCRIPTOR = _CSETCAPSLOCKMSG,
-  __module__ = 'steammessages_remoteplay_pb2'
+CSetCapslockMsg = _reflection.GeneratedProtocolMessageType('CSetCapslockMsg', (_message.Message,), {
+  'DESCRIPTOR' : _CSETCAPSLOCKMSG,
+  '__module__' : 'steammessages_remoteplay_pb2'
   # @@protoc_insertion_point(class_scope:CSetCapslockMsg)
-  ))
+  })
 _sym_db.RegisterMessage(CSetCapslockMsg)
 
-CStreamingKeymapEntry = _reflection.GeneratedProtocolMessageType('CStreamingKeymapEntry', (_message.Message,), dict(
-  DESCRIPTOR = _CSTREAMINGKEYMAPENTRY,
-  __module__ = 'steammessages_remoteplay_pb2'
+CStreamingKeymapEntry = _reflection.GeneratedProtocolMessageType('CStreamingKeymapEntry', (_message.Message,), {
+  'DESCRIPTOR' : _CSTREAMINGKEYMAPENTRY,
+  '__module__' : 'steammessages_remoteplay_pb2'
   # @@protoc_insertion_point(class_scope:CStreamingKeymapEntry)
-  ))
+  })
 _sym_db.RegisterMessage(CStreamingKeymapEntry)
 
-CStreamingKeymap = _reflection.GeneratedProtocolMessageType('CStreamingKeymap', (_message.Message,), dict(
-  DESCRIPTOR = _CSTREAMINGKEYMAP,
-  __module__ = 'steammessages_remoteplay_pb2'
+CStreamingKeymap = _reflection.GeneratedProtocolMessageType('CStreamingKeymap', (_message.Message,), {
+  'DESCRIPTOR' : _CSTREAMINGKEYMAP,
+  '__module__' : 'steammessages_remoteplay_pb2'
   # @@protoc_insertion_point(class_scope:CStreamingKeymap)
-  ))
+  })
 _sym_db.RegisterMessage(CStreamingKeymap)
 
-CSetKeymapMsg = _reflection.GeneratedProtocolMessageType('CSetKeymapMsg', (_message.Message,), dict(
-  DESCRIPTOR = _CSETKEYMAPMSG,
-  __module__ = 'steammessages_remoteplay_pb2'
+CSetKeymapMsg = _reflection.GeneratedProtocolMessageType('CSetKeymapMsg', (_message.Message,), {
+  'DESCRIPTOR' : _CSETKEYMAPMSG,
+  '__module__' : 'steammessages_remoteplay_pb2'
   # @@protoc_insertion_point(class_scope:CSetKeymapMsg)
-  ))
+  })
 _sym_db.RegisterMessage(CSetKeymapMsg)
 
-CStopRequest = _reflection.GeneratedProtocolMessageType('CStopRequest', (_message.Message,), dict(
-  DESCRIPTOR = _CSTOPREQUEST,
-  __module__ = 'steammessages_remoteplay_pb2'
+CStopRequest = _reflection.GeneratedProtocolMessageType('CStopRequest', (_message.Message,), {
+  'DESCRIPTOR' : _CSTOPREQUEST,
+  '__module__' : 'steammessages_remoteplay_pb2'
   # @@protoc_insertion_point(class_scope:CStopRequest)
-  ))
+  })
 _sym_db.RegisterMessage(CStopRequest)
 
-CQuitRequest = _reflection.GeneratedProtocolMessageType('CQuitRequest', (_message.Message,), dict(
-  DESCRIPTOR = _CQUITREQUEST,
-  __module__ = 'steammessages_remoteplay_pb2'
+CQuitRequest = _reflection.GeneratedProtocolMessageType('CQuitRequest', (_message.Message,), {
+  'DESCRIPTOR' : _CQUITREQUEST,
+  '__module__' : 'steammessages_remoteplay_pb2'
   # @@protoc_insertion_point(class_scope:CQuitRequest)
-  ))
+  })
 _sym_db.RegisterMessage(CQuitRequest)
 
-CDeleteCursorMsg = _reflection.GeneratedProtocolMessageType('CDeleteCursorMsg', (_message.Message,), dict(
-  DESCRIPTOR = _CDELETECURSORMSG,
-  __module__ = 'steammessages_remoteplay_pb2'
+CDeleteCursorMsg = _reflection.GeneratedProtocolMessageType('CDeleteCursorMsg', (_message.Message,), {
+  'DESCRIPTOR' : _CDELETECURSORMSG,
+  '__module__' : 'steammessages_remoteplay_pb2'
   # @@protoc_insertion_point(class_scope:CDeleteCursorMsg)
-  ))
+  })
 _sym_db.RegisterMessage(CDeleteCursorMsg)
 
-CSetStreamingClientConfig = _reflection.GeneratedProtocolMessageType('CSetStreamingClientConfig', (_message.Message,), dict(
-  DESCRIPTOR = _CSETSTREAMINGCLIENTCONFIG,
-  __module__ = 'steammessages_remoteplay_pb2'
+CSetStreamingClientConfig = _reflection.GeneratedProtocolMessageType('CSetStreamingClientConfig', (_message.Message,), {
+  'DESCRIPTOR' : _CSETSTREAMINGCLIENTCONFIG,
+  '__module__' : 'steammessages_remoteplay_pb2'
   # @@protoc_insertion_point(class_scope:CSetStreamingClientConfig)
-  ))
+  })
 _sym_db.RegisterMessage(CSetStreamingClientConfig)
 
-CSetQoSMsg = _reflection.GeneratedProtocolMessageType('CSetQoSMsg', (_message.Message,), dict(
-  DESCRIPTOR = _CSETQOSMSG,
-  __module__ = 'steammessages_remoteplay_pb2'
+CSetQoSMsg = _reflection.GeneratedProtocolMessageType('CSetQoSMsg', (_message.Message,), {
+  'DESCRIPTOR' : _CSETQOSMSG,
+  '__module__' : 'steammessages_remoteplay_pb2'
   # @@protoc_insertion_point(class_scope:CSetQoSMsg)
-  ))
+  })
 _sym_db.RegisterMessage(CSetQoSMsg)
 
-CSetTargetFramerateMsg = _reflection.GeneratedProtocolMessageType('CSetTargetFramerateMsg', (_message.Message,), dict(
-  DESCRIPTOR = _CSETTARGETFRAMERATEMSG,
-  __module__ = 'steammessages_remoteplay_pb2'
+CSetTargetFramerateMsg = _reflection.GeneratedProtocolMessageType('CSetTargetFramerateMsg', (_message.Message,), {
+  'DESCRIPTOR' : _CSETTARGETFRAMERATEMSG,
+  '__module__' : 'steammessages_remoteplay_pb2'
   # @@protoc_insertion_point(class_scope:CSetTargetFramerateMsg)
-  ))
+  })
 _sym_db.RegisterMessage(CSetTargetFramerateMsg)
 
-CSetTargetBitrateMsg = _reflection.GeneratedProtocolMessageType('CSetTargetBitrateMsg', (_message.Message,), dict(
-  DESCRIPTOR = _CSETTARGETBITRATEMSG,
-  __module__ = 'steammessages_remoteplay_pb2'
+CSetTargetBitrateMsg = _reflection.GeneratedProtocolMessageType('CSetTargetBitrateMsg', (_message.Message,), {
+  'DESCRIPTOR' : _CSETTARGETBITRATEMSG,
+  '__module__' : 'steammessages_remoteplay_pb2'
   # @@protoc_insertion_point(class_scope:CSetTargetBitrateMsg)
-  ))
+  })
 _sym_db.RegisterMessage(CSetTargetBitrateMsg)
 
-COverlayEnabledMsg = _reflection.GeneratedProtocolMessageType('COverlayEnabledMsg', (_message.Message,), dict(
-  DESCRIPTOR = _COVERLAYENABLEDMSG,
-  __module__ = 'steammessages_remoteplay_pb2'
+COverlayEnabledMsg = _reflection.GeneratedProtocolMessageType('COverlayEnabledMsg', (_message.Message,), {
+  'DESCRIPTOR' : _COVERLAYENABLEDMSG,
+  '__module__' : 'steammessages_remoteplay_pb2'
   # @@protoc_insertion_point(class_scope:COverlayEnabledMsg)
-  ))
+  })
 _sym_db.RegisterMessage(COverlayEnabledMsg)
 
-CSetGammaRampMsg = _reflection.GeneratedProtocolMessageType('CSetGammaRampMsg', (_message.Message,), dict(
-  DESCRIPTOR = _CSETGAMMARAMPMSG,
-  __module__ = 'steammessages_remoteplay_pb2'
+CSetGammaRampMsg = _reflection.GeneratedProtocolMessageType('CSetGammaRampMsg', (_message.Message,), {
+  'DESCRIPTOR' : _CSETGAMMARAMPMSG,
+  '__module__' : 'steammessages_remoteplay_pb2'
   # @@protoc_insertion_point(class_scope:CSetGammaRampMsg)
-  ))
+  })
 _sym_db.RegisterMessage(CSetGammaRampMsg)
 
-CSetActivityMsg = _reflection.GeneratedProtocolMessageType('CSetActivityMsg', (_message.Message,), dict(
-  DESCRIPTOR = _CSETACTIVITYMSG,
-  __module__ = 'steammessages_remoteplay_pb2'
+CSetActivityMsg = _reflection.GeneratedProtocolMessageType('CSetActivityMsg', (_message.Message,), {
+  'DESCRIPTOR' : _CSETACTIVITYMSG,
+  '__module__' : 'steammessages_remoteplay_pb2'
   # @@protoc_insertion_point(class_scope:CSetActivityMsg)
-  ))
+  })
 _sym_db.RegisterMessage(CSetActivityMsg)
 
-CSystemSuspendMsg = _reflection.GeneratedProtocolMessageType('CSystemSuspendMsg', (_message.Message,), dict(
-  DESCRIPTOR = _CSYSTEMSUSPENDMSG,
-  __module__ = 'steammessages_remoteplay_pb2'
+CSystemSuspendMsg = _reflection.GeneratedProtocolMessageType('CSystemSuspendMsg', (_message.Message,), {
+  'DESCRIPTOR' : _CSYSTEMSUSPENDMSG,
+  '__module__' : 'steammessages_remoteplay_pb2'
   # @@protoc_insertion_point(class_scope:CSystemSuspendMsg)
-  ))
+  })
 _sym_db.RegisterMessage(CSystemSuspendMsg)
 
-CVirtualHereRequestMsg = _reflection.GeneratedProtocolMessageType('CVirtualHereRequestMsg', (_message.Message,), dict(
-  DESCRIPTOR = _CVIRTUALHEREREQUESTMSG,
-  __module__ = 'steammessages_remoteplay_pb2'
+CVirtualHereRequestMsg = _reflection.GeneratedProtocolMessageType('CVirtualHereRequestMsg', (_message.Message,), {
+  'DESCRIPTOR' : _CVIRTUALHEREREQUESTMSG,
+  '__module__' : 'steammessages_remoteplay_pb2'
   # @@protoc_insertion_point(class_scope:CVirtualHereRequestMsg)
-  ))
+  })
 _sym_db.RegisterMessage(CVirtualHereRequestMsg)
 
-CVirtualHereReadyMsg = _reflection.GeneratedProtocolMessageType('CVirtualHereReadyMsg', (_message.Message,), dict(
-  DESCRIPTOR = _CVIRTUALHEREREADYMSG,
-  __module__ = 'steammessages_remoteplay_pb2'
+CVirtualHereReadyMsg = _reflection.GeneratedProtocolMessageType('CVirtualHereReadyMsg', (_message.Message,), {
+  'DESCRIPTOR' : _CVIRTUALHEREREADYMSG,
+  '__module__' : 'steammessages_remoteplay_pb2'
   # @@protoc_insertion_point(class_scope:CVirtualHereReadyMsg)
-  ))
+  })
 _sym_db.RegisterMessage(CVirtualHereReadyMsg)
 
-CVirtualHereShareDeviceMsg = _reflection.GeneratedProtocolMessageType('CVirtualHereShareDeviceMsg', (_message.Message,), dict(
-  DESCRIPTOR = _CVIRTUALHERESHAREDEVICEMSG,
-  __module__ = 'steammessages_remoteplay_pb2'
+CVirtualHereShareDeviceMsg = _reflection.GeneratedProtocolMessageType('CVirtualHereShareDeviceMsg', (_message.Message,), {
+  'DESCRIPTOR' : _CVIRTUALHERESHAREDEVICEMSG,
+  '__module__' : 'steammessages_remoteplay_pb2'
   # @@protoc_insertion_point(class_scope:CVirtualHereShareDeviceMsg)
-  ))
+  })
 _sym_db.RegisterMessage(CVirtualHereShareDeviceMsg)
 
-CSetSpectatorModeMsg = _reflection.GeneratedProtocolMessageType('CSetSpectatorModeMsg', (_message.Message,), dict(
-  DESCRIPTOR = _CSETSPECTATORMODEMSG,
-  __module__ = 'steammessages_remoteplay_pb2'
+CSetSpectatorModeMsg = _reflection.GeneratedProtocolMessageType('CSetSpectatorModeMsg', (_message.Message,), {
+  'DESCRIPTOR' : _CSETSPECTATORMODEMSG,
+  '__module__' : 'steammessages_remoteplay_pb2'
   # @@protoc_insertion_point(class_scope:CSetSpectatorModeMsg)
-  ))
+  })
 _sym_db.RegisterMessage(CSetSpectatorModeMsg)
 
-CRemoteHIDMsg = _reflection.GeneratedProtocolMessageType('CRemoteHIDMsg', (_message.Message,), dict(
-  DESCRIPTOR = _CREMOTEHIDMSG,
-  __module__ = 'steammessages_remoteplay_pb2'
+CRemoteHIDMsg = _reflection.GeneratedProtocolMessageType('CRemoteHIDMsg', (_message.Message,), {
+  'DESCRIPTOR' : _CREMOTEHIDMSG,
+  '__module__' : 'steammessages_remoteplay_pb2'
   # @@protoc_insertion_point(class_scope:CRemoteHIDMsg)
-  ))
+  })
 _sym_db.RegisterMessage(CRemoteHIDMsg)
 
-CTouchConfigActiveMsg = _reflection.GeneratedProtocolMessageType('CTouchConfigActiveMsg', (_message.Message,), dict(
-  DESCRIPTOR = _CTOUCHCONFIGACTIVEMSG,
-  __module__ = 'steammessages_remoteplay_pb2'
+CTouchConfigActiveMsg = _reflection.GeneratedProtocolMessageType('CTouchConfigActiveMsg', (_message.Message,), {
+  'DESCRIPTOR' : _CTOUCHCONFIGACTIVEMSG,
+  '__module__' : 'steammessages_remoteplay_pb2'
   # @@protoc_insertion_point(class_scope:CTouchConfigActiveMsg)
-  ))
+  })
 _sym_db.RegisterMessage(CTouchConfigActiveMsg)
 
-CGetTouchConfigDataMsg = _reflection.GeneratedProtocolMessageType('CGetTouchConfigDataMsg', (_message.Message,), dict(
-  DESCRIPTOR = _CGETTOUCHCONFIGDATAMSG,
-  __module__ = 'steammessages_remoteplay_pb2'
+CGetTouchConfigDataMsg = _reflection.GeneratedProtocolMessageType('CGetTouchConfigDataMsg', (_message.Message,), {
+  'DESCRIPTOR' : _CGETTOUCHCONFIGDATAMSG,
+  '__module__' : 'steammessages_remoteplay_pb2'
   # @@protoc_insertion_point(class_scope:CGetTouchConfigDataMsg)
-  ))
+  })
 _sym_db.RegisterMessage(CGetTouchConfigDataMsg)
 
-CSetTouchConfigDataMsg = _reflection.GeneratedProtocolMessageType('CSetTouchConfigDataMsg', (_message.Message,), dict(
-  DESCRIPTOR = _CSETTOUCHCONFIGDATAMSG,
-  __module__ = 'steammessages_remoteplay_pb2'
+CSetTouchConfigDataMsg = _reflection.GeneratedProtocolMessageType('CSetTouchConfigDataMsg', (_message.Message,), {
+  'DESCRIPTOR' : _CSETTOUCHCONFIGDATAMSG,
+  '__module__' : 'steammessages_remoteplay_pb2'
   # @@protoc_insertion_point(class_scope:CSetTouchConfigDataMsg)
-  ))
+  })
 _sym_db.RegisterMessage(CSetTouchConfigDataMsg)
 
-CSaveTouchConfigLayoutMsg = _reflection.GeneratedProtocolMessageType('CSaveTouchConfigLayoutMsg', (_message.Message,), dict(
-  DESCRIPTOR = _CSAVETOUCHCONFIGLAYOUTMSG,
-  __module__ = 'steammessages_remoteplay_pb2'
+CSaveTouchConfigLayoutMsg = _reflection.GeneratedProtocolMessageType('CSaveTouchConfigLayoutMsg', (_message.Message,), {
+  'DESCRIPTOR' : _CSAVETOUCHCONFIGLAYOUTMSG,
+  '__module__' : 'steammessages_remoteplay_pb2'
   # @@protoc_insertion_point(class_scope:CSaveTouchConfigLayoutMsg)
-  ))
+  })
 _sym_db.RegisterMessage(CSaveTouchConfigLayoutMsg)
 
-CTouchActionSetActiveMsg = _reflection.GeneratedProtocolMessageType('CTouchActionSetActiveMsg', (_message.Message,), dict(
-  DESCRIPTOR = _CTOUCHACTIONSETACTIVEMSG,
-  __module__ = 'steammessages_remoteplay_pb2'
+CTouchActionSetActiveMsg = _reflection.GeneratedProtocolMessageType('CTouchActionSetActiveMsg', (_message.Message,), {
+  'DESCRIPTOR' : _CTOUCHACTIONSETACTIVEMSG,
+  '__module__' : 'steammessages_remoteplay_pb2'
   # @@protoc_insertion_point(class_scope:CTouchActionSetActiveMsg)
-  ))
+  })
 _sym_db.RegisterMessage(CTouchActionSetActiveMsg)
 
-CTouchActionSetLayerAddedMsg = _reflection.GeneratedProtocolMessageType('CTouchActionSetLayerAddedMsg', (_message.Message,), dict(
-  DESCRIPTOR = _CTOUCHACTIONSETLAYERADDEDMSG,
-  __module__ = 'steammessages_remoteplay_pb2'
+CTouchActionSetLayerAddedMsg = _reflection.GeneratedProtocolMessageType('CTouchActionSetLayerAddedMsg', (_message.Message,), {
+  'DESCRIPTOR' : _CTOUCHACTIONSETLAYERADDEDMSG,
+  '__module__' : 'steammessages_remoteplay_pb2'
   # @@protoc_insertion_point(class_scope:CTouchActionSetLayerAddedMsg)
-  ))
+  })
 _sym_db.RegisterMessage(CTouchActionSetLayerAddedMsg)
 
-CTouchActionSetLayerRemovedMsg = _reflection.GeneratedProtocolMessageType('CTouchActionSetLayerRemovedMsg', (_message.Message,), dict(
-  DESCRIPTOR = _CTOUCHACTIONSETLAYERREMOVEDMSG,
-  __module__ = 'steammessages_remoteplay_pb2'
+CTouchActionSetLayerRemovedMsg = _reflection.GeneratedProtocolMessageType('CTouchActionSetLayerRemovedMsg', (_message.Message,), {
+  'DESCRIPTOR' : _CTOUCHACTIONSETLAYERREMOVEDMSG,
+  '__module__' : 'steammessages_remoteplay_pb2'
   # @@protoc_insertion_point(class_scope:CTouchActionSetLayerRemovedMsg)
-  ))
+  })
 _sym_db.RegisterMessage(CTouchActionSetLayerRemovedMsg)
 
-CGetTouchIconDataMsg = _reflection.GeneratedProtocolMessageType('CGetTouchIconDataMsg', (_message.Message,), dict(
-  DESCRIPTOR = _CGETTOUCHICONDATAMSG,
-  __module__ = 'steammessages_remoteplay_pb2'
+CGetTouchIconDataMsg = _reflection.GeneratedProtocolMessageType('CGetTouchIconDataMsg', (_message.Message,), {
+  'DESCRIPTOR' : _CGETTOUCHICONDATAMSG,
+  '__module__' : 'steammessages_remoteplay_pb2'
   # @@protoc_insertion_point(class_scope:CGetTouchIconDataMsg)
-  ))
+  })
 _sym_db.RegisterMessage(CGetTouchIconDataMsg)
 
-CSetTouchIconDataMsg = _reflection.GeneratedProtocolMessageType('CSetTouchIconDataMsg', (_message.Message,), dict(
-  DESCRIPTOR = _CSETTOUCHICONDATAMSG,
-  __module__ = 'steammessages_remoteplay_pb2'
+CSetTouchIconDataMsg = _reflection.GeneratedProtocolMessageType('CSetTouchIconDataMsg', (_message.Message,), {
+  'DESCRIPTOR' : _CSETTOUCHICONDATAMSG,
+  '__module__' : 'steammessages_remoteplay_pb2'
   # @@protoc_insertion_point(class_scope:CSetTouchIconDataMsg)
-  ))
+  })
 _sym_db.RegisterMessage(CSetTouchIconDataMsg)
 
-CRemotePlayTogetherGroupUpdateMsg = _reflection.GeneratedProtocolMessageType('CRemotePlayTogetherGroupUpdateMsg', (_message.Message,), dict(
+CRemotePlayTogetherGroupUpdateMsg = _reflection.GeneratedProtocolMessageType('CRemotePlayTogetherGroupUpdateMsg', (_message.Message,), {
 
-  Player = _reflection.GeneratedProtocolMessageType('Player', (_message.Message,), dict(
-    DESCRIPTOR = _CREMOTEPLAYTOGETHERGROUPUPDATEMSG_PLAYER,
-    __module__ = 'steammessages_remoteplay_pb2'
+  'Player' : _reflection.GeneratedProtocolMessageType('Player', (_message.Message,), {
+    'DESCRIPTOR' : _CREMOTEPLAYTOGETHERGROUPUPDATEMSG_PLAYER,
+    '__module__' : 'steammessages_remoteplay_pb2'
     # @@protoc_insertion_point(class_scope:CRemotePlayTogetherGroupUpdateMsg.Player)
-    ))
+    })
   ,
-  DESCRIPTOR = _CREMOTEPLAYTOGETHERGROUPUPDATEMSG,
-  __module__ = 'steammessages_remoteplay_pb2'
+  'DESCRIPTOR' : _CREMOTEPLAYTOGETHERGROUPUPDATEMSG,
+  '__module__' : 'steammessages_remoteplay_pb2'
   # @@protoc_insertion_point(class_scope:CRemotePlayTogetherGroupUpdateMsg)
-  ))
+  })
 _sym_db.RegisterMessage(CRemotePlayTogetherGroupUpdateMsg)
 _sym_db.RegisterMessage(CRemotePlayTogetherGroupUpdateMsg.Player)
 
-CSetInputTemporarilyDisabledMsg = _reflection.GeneratedProtocolMessageType('CSetInputTemporarilyDisabledMsg', (_message.Message,), dict(
-  DESCRIPTOR = _CSETINPUTTEMPORARILYDISABLEDMSG,
-  __module__ = 'steammessages_remoteplay_pb2'
+CSetInputTemporarilyDisabledMsg = _reflection.GeneratedProtocolMessageType('CSetInputTemporarilyDisabledMsg', (_message.Message,), {
+  'DESCRIPTOR' : _CSETINPUTTEMPORARILYDISABLEDMSG,
+  '__module__' : 'steammessages_remoteplay_pb2'
   # @@protoc_insertion_point(class_scope:CSetInputTemporarilyDisabledMsg)
-  ))
+  })
 _sym_db.RegisterMessage(CSetInputTemporarilyDisabledMsg)
 
-CSetQualityOverrideMsg = _reflection.GeneratedProtocolMessageType('CSetQualityOverrideMsg', (_message.Message,), dict(
-  DESCRIPTOR = _CSETQUALITYOVERRIDEMSG,
-  __module__ = 'steammessages_remoteplay_pb2'
+CSetQualityOverrideMsg = _reflection.GeneratedProtocolMessageType('CSetQualityOverrideMsg', (_message.Message,), {
+  'DESCRIPTOR' : _CSETQUALITYOVERRIDEMSG,
+  '__module__' : 'steammessages_remoteplay_pb2'
   # @@protoc_insertion_point(class_scope:CSetQualityOverrideMsg)
-  ))
+  })
 _sym_db.RegisterMessage(CSetQualityOverrideMsg)
 
-CSetBitrateOverrideMsg = _reflection.GeneratedProtocolMessageType('CSetBitrateOverrideMsg', (_message.Message,), dict(
-  DESCRIPTOR = _CSETBITRATEOVERRIDEMSG,
-  __module__ = 'steammessages_remoteplay_pb2'
+CSetBitrateOverrideMsg = _reflection.GeneratedProtocolMessageType('CSetBitrateOverrideMsg', (_message.Message,), {
+  'DESCRIPTOR' : _CSETBITRATEOVERRIDEMSG,
+  '__module__' : 'steammessages_remoteplay_pb2'
   # @@protoc_insertion_point(class_scope:CSetBitrateOverrideMsg)
-  ))
+  })
 _sym_db.RegisterMessage(CSetBitrateOverrideMsg)
 
-CStreamDataLostMsg = _reflection.GeneratedProtocolMessageType('CStreamDataLostMsg', (_message.Message,), dict(
-  DESCRIPTOR = _CSTREAMDATALOSTMSG,
-  __module__ = 'steammessages_remoteplay_pb2'
+CShowOnScreenKeyboardMsg = _reflection.GeneratedProtocolMessageType('CShowOnScreenKeyboardMsg', (_message.Message,), {
+  'DESCRIPTOR' : _CSHOWONSCREENKEYBOARDMSG,
+  '__module__' : 'steammessages_remoteplay_pb2'
+  # @@protoc_insertion_point(class_scope:CShowOnScreenKeyboardMsg)
+  })
+_sym_db.RegisterMessage(CShowOnScreenKeyboardMsg)
+
+CStreamDataLostMsg = _reflection.GeneratedProtocolMessageType('CStreamDataLostMsg', (_message.Message,), {
+  'DESCRIPTOR' : _CSTREAMDATALOSTMSG,
+  '__module__' : 'steammessages_remoteplay_pb2'
   # @@protoc_insertion_point(class_scope:CStreamDataLostMsg)
-  ))
+  })
 _sym_db.RegisterMessage(CStreamDataLostMsg)
 
-CAudioFormat = _reflection.GeneratedProtocolMessageType('CAudioFormat', (_message.Message,), dict(
-  DESCRIPTOR = _CAUDIOFORMAT,
-  __module__ = 'steammessages_remoteplay_pb2'
+CAudioFormat = _reflection.GeneratedProtocolMessageType('CAudioFormat', (_message.Message,), {
+  'DESCRIPTOR' : _CAUDIOFORMAT,
+  '__module__' : 'steammessages_remoteplay_pb2'
   # @@protoc_insertion_point(class_scope:CAudioFormat)
-  ))
+  })
 _sym_db.RegisterMessage(CAudioFormat)
 
-CVideoFormat = _reflection.GeneratedProtocolMessageType('CVideoFormat', (_message.Message,), dict(
-  DESCRIPTOR = _CVIDEOFORMAT,
-  __module__ = 'steammessages_remoteplay_pb2'
+CVideoFormat = _reflection.GeneratedProtocolMessageType('CVideoFormat', (_message.Message,), {
+  'DESCRIPTOR' : _CVIDEOFORMAT,
+  '__module__' : 'steammessages_remoteplay_pb2'
   # @@protoc_insertion_point(class_scope:CVideoFormat)
-  ))
+  })
 _sym_db.RegisterMessage(CVideoFormat)
 
-CFrameEvent = _reflection.GeneratedProtocolMessageType('CFrameEvent', (_message.Message,), dict(
-  DESCRIPTOR = _CFRAMEEVENT,
-  __module__ = 'steammessages_remoteplay_pb2'
+CFrameEvent = _reflection.GeneratedProtocolMessageType('CFrameEvent', (_message.Message,), {
+  'DESCRIPTOR' : _CFRAMEEVENT,
+  '__module__' : 'steammessages_remoteplay_pb2'
   # @@protoc_insertion_point(class_scope:CFrameEvent)
-  ))
+  })
 _sym_db.RegisterMessage(CFrameEvent)
 
-CFrameStats = _reflection.GeneratedProtocolMessageType('CFrameStats', (_message.Message,), dict(
-  DESCRIPTOR = _CFRAMESTATS,
-  __module__ = 'steammessages_remoteplay_pb2'
+CFrameStats = _reflection.GeneratedProtocolMessageType('CFrameStats', (_message.Message,), {
+  'DESCRIPTOR' : _CFRAMESTATS,
+  '__module__' : 'steammessages_remoteplay_pb2'
   # @@protoc_insertion_point(class_scope:CFrameStats)
-  ))
+  })
 _sym_db.RegisterMessage(CFrameStats)
 
-CFrameStatAccumulatedValue = _reflection.GeneratedProtocolMessageType('CFrameStatAccumulatedValue', (_message.Message,), dict(
-  DESCRIPTOR = _CFRAMESTATACCUMULATEDVALUE,
-  __module__ = 'steammessages_remoteplay_pb2'
+CFrameStatAccumulatedValue = _reflection.GeneratedProtocolMessageType('CFrameStatAccumulatedValue', (_message.Message,), {
+  'DESCRIPTOR' : _CFRAMESTATACCUMULATEDVALUE,
+  '__module__' : 'steammessages_remoteplay_pb2'
   # @@protoc_insertion_point(class_scope:CFrameStatAccumulatedValue)
-  ))
+  })
 _sym_db.RegisterMessage(CFrameStatAccumulatedValue)
 
-CFrameStatsListMsg = _reflection.GeneratedProtocolMessageType('CFrameStatsListMsg', (_message.Message,), dict(
-  DESCRIPTOR = _CFRAMESTATSLISTMSG,
-  __module__ = 'steammessages_remoteplay_pb2'
+CFrameStatsListMsg = _reflection.GeneratedProtocolMessageType('CFrameStatsListMsg', (_message.Message,), {
+  'DESCRIPTOR' : _CFRAMESTATSLISTMSG,
+  '__module__' : 'steammessages_remoteplay_pb2'
   # @@protoc_insertion_point(class_scope:CFrameStatsListMsg)
-  ))
+  })
 _sym_db.RegisterMessage(CFrameStatsListMsg)
 
-CStreamingSessionStats = _reflection.GeneratedProtocolMessageType('CStreamingSessionStats', (_message.Message,), dict(
-  DESCRIPTOR = _CSTREAMINGSESSIONSTATS,
-  __module__ = 'steammessages_remoteplay_pb2'
+CStreamingSessionStats = _reflection.GeneratedProtocolMessageType('CStreamingSessionStats', (_message.Message,), {
+  'DESCRIPTOR' : _CSTREAMINGSESSIONSTATS,
+  '__module__' : 'steammessages_remoteplay_pb2'
   # @@protoc_insertion_point(class_scope:CStreamingSessionStats)
-  ))
+  })
 _sym_db.RegisterMessage(CStreamingSessionStats)
 
-CDebugDumpMsg = _reflection.GeneratedProtocolMessageType('CDebugDumpMsg', (_message.Message,), dict(
-  DESCRIPTOR = _CDEBUGDUMPMSG,
-  __module__ = 'steammessages_remoteplay_pb2'
+CDebugDumpMsg = _reflection.GeneratedProtocolMessageType('CDebugDumpMsg', (_message.Message,), {
+  'DESCRIPTOR' : _CDEBUGDUMPMSG,
+  '__module__' : 'steammessages_remoteplay_pb2'
   # @@protoc_insertion_point(class_scope:CDebugDumpMsg)
-  ))
+  })
 _sym_db.RegisterMessage(CDebugDumpMsg)
 
-CLogMsg = _reflection.GeneratedProtocolMessageType('CLogMsg', (_message.Message,), dict(
-  DESCRIPTOR = _CLOGMSG,
-  __module__ = 'steammessages_remoteplay_pb2'
+CLogMsg = _reflection.GeneratedProtocolMessageType('CLogMsg', (_message.Message,), {
+  'DESCRIPTOR' : _CLOGMSG,
+  '__module__' : 'steammessages_remoteplay_pb2'
   # @@protoc_insertion_point(class_scope:CLogMsg)
-  ))
+  })
 _sym_db.RegisterMessage(CLogMsg)
 
-CLogUploadMsg = _reflection.GeneratedProtocolMessageType('CLogUploadMsg', (_message.Message,), dict(
-  DESCRIPTOR = _CLOGUPLOADMSG,
-  __module__ = 'steammessages_remoteplay_pb2'
+CLogUploadMsg = _reflection.GeneratedProtocolMessageType('CLogUploadMsg', (_message.Message,), {
+  'DESCRIPTOR' : _CLOGUPLOADMSG,
+  '__module__' : 'steammessages_remoteplay_pb2'
   # @@protoc_insertion_point(class_scope:CLogUploadMsg)
-  ))
+  })
 _sym_db.RegisterMessage(CLogUploadMsg)
 
-CTransportSignalMsg = _reflection.GeneratedProtocolMessageType('CTransportSignalMsg', (_message.Message,), dict(
+CTransportSignalMsg = _reflection.GeneratedProtocolMessageType('CTransportSignalMsg', (_message.Message,), {
 
-  WebRTCMessage = _reflection.GeneratedProtocolMessageType('WebRTCMessage', (_message.Message,), dict(
+  'WebRTCMessage' : _reflection.GeneratedProtocolMessageType('WebRTCMessage', (_message.Message,), {
 
-    Candidate = _reflection.GeneratedProtocolMessageType('Candidate', (_message.Message,), dict(
-      DESCRIPTOR = _CTRANSPORTSIGNALMSG_WEBRTCMESSAGE_CANDIDATE,
-      __module__ = 'steammessages_remoteplay_pb2'
+    'Candidate' : _reflection.GeneratedProtocolMessageType('Candidate', (_message.Message,), {
+      'DESCRIPTOR' : _CTRANSPORTSIGNALMSG_WEBRTCMESSAGE_CANDIDATE,
+      '__module__' : 'steammessages_remoteplay_pb2'
       # @@protoc_insertion_point(class_scope:CTransportSignalMsg.WebRTCMessage.Candidate)
-      ))
+      })
     ,
-    DESCRIPTOR = _CTRANSPORTSIGNALMSG_WEBRTCMESSAGE,
-    __module__ = 'steammessages_remoteplay_pb2'
+    'DESCRIPTOR' : _CTRANSPORTSIGNALMSG_WEBRTCMESSAGE,
+    '__module__' : 'steammessages_remoteplay_pb2'
     # @@protoc_insertion_point(class_scope:CTransportSignalMsg.WebRTCMessage)
-    ))
+    })
   ,
-  DESCRIPTOR = _CTRANSPORTSIGNALMSG,
-  __module__ = 'steammessages_remoteplay_pb2'
+  'DESCRIPTOR' : _CTRANSPORTSIGNALMSG,
+  '__module__' : 'steammessages_remoteplay_pb2'
   # @@protoc_insertion_point(class_scope:CTransportSignalMsg)
-  ))
+  })
 _sym_db.RegisterMessage(CTransportSignalMsg)
 _sym_db.RegisterMessage(CTransportSignalMsg.WebRTCMessage)
 _sym_db.RegisterMessage(CTransportSignalMsg.WebRTCMessage.Candidate)
 
+CControllerConfigMsg = _reflection.GeneratedProtocolMessageType('CControllerConfigMsg', (_message.Message,), {
+
+  'ControllerConfigResponse' : _reflection.GeneratedProtocolMessageType('ControllerConfigResponse', (_message.Message,), {
+    'DESCRIPTOR' : _CCONTROLLERCONFIGMSG_CONTROLLERCONFIGRESPONSE,
+    '__module__' : 'steammessages_remoteplay_pb2'
+    # @@protoc_insertion_point(class_scope:CControllerConfigMsg.ControllerConfigResponse)
+    })
+  ,
+
+  'ControllerPersonalizationResponse' : _reflection.GeneratedProtocolMessageType('ControllerPersonalizationResponse', (_message.Message,), {
+    'DESCRIPTOR' : _CCONTROLLERCONFIGMSG_CONTROLLERPERSONALIZATIONRESPONSE,
+    '__module__' : 'steammessages_remoteplay_pb2'
+    # @@protoc_insertion_point(class_scope:CControllerConfigMsg.ControllerPersonalizationResponse)
+    })
+  ,
+
+  'ControllerActiveConfigChangeResponse' : _reflection.GeneratedProtocolMessageType('ControllerActiveConfigChangeResponse', (_message.Message,), {
+    'DESCRIPTOR' : _CCONTROLLERCONFIGMSG_CONTROLLERACTIVECONFIGCHANGERESPONSE,
+    '__module__' : 'steammessages_remoteplay_pb2'
+    # @@protoc_insertion_point(class_scope:CControllerConfigMsg.ControllerActiveConfigChangeResponse)
+    })
+  ,
+
+  'ControllerActiveConfigMsg' : _reflection.GeneratedProtocolMessageType('ControllerActiveConfigMsg', (_message.Message,), {
+    'DESCRIPTOR' : _CCONTROLLERCONFIGMSG_CONTROLLERACTIVECONFIGMSG,
+    '__module__' : 'steammessages_remoteplay_pb2'
+    # @@protoc_insertion_point(class_scope:CControllerConfigMsg.ControllerActiveConfigMsg)
+    })
+  ,
+  'DESCRIPTOR' : _CCONTROLLERCONFIGMSG,
+  '__module__' : 'steammessages_remoteplay_pb2'
+  # @@protoc_insertion_point(class_scope:CControllerConfigMsg)
+  })
+_sym_db.RegisterMessage(CControllerConfigMsg)
+_sym_db.RegisterMessage(CControllerConfigMsg.ControllerConfigResponse)
+_sym_db.RegisterMessage(CControllerConfigMsg.ControllerPersonalizationResponse)
+_sym_db.RegisterMessage(CControllerConfigMsg.ControllerActiveConfigChangeResponse)
+_sym_db.RegisterMessage(CControllerConfigMsg.ControllerActiveConfigMsg)
+
 
 DESCRIPTOR._options = None
 # @@protoc_insertion_point(module_scope)
diff --git a/steam/protobufs/steammessages_secrets_pb2.py b/steam/protobufs/steammessages_secrets_pb2.py
index 7a78415..6e40f98 100644
--- a/steam/protobufs/steammessages_secrets_pb2.py
+++ b/steam/protobufs/steammessages_secrets_pb2.py
@@ -1,9 +1,7 @@
 # -*- coding: utf-8 -*-
 # Generated by the protocol buffer compiler.  DO NOT EDIT!
 # source: steammessages_secrets.proto
-
-import sys
-_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1'))
+"""Generated protocol buffer code."""
 from google.protobuf.internal import enum_type_wrapper
 from google.protobuf import descriptor as _descriptor
 from google.protobuf import message as _message
@@ -16,6 +14,7 @@ from google.protobuf import service_reflection
 _sym_db = _symbol_database.Default()
 
 
+import steam.protobufs.steammessages_base_pb2 as steammessages__base__pb2
 import steam.protobufs.steammessages_unified_base_pb2 as steammessages__unified__base__pb2
 
 
@@ -23,26 +22,29 @@ DESCRIPTOR = _descriptor.FileDescriptor(
   name='steammessages_secrets.proto',
   package='',
   syntax='proto2',
-  serialized_options=_b('\220\001\001'),
-  serialized_pb=_b('\n\x1bsteammessages_secrets.proto\x1a steammessages_unified_base.proto\"\x9b\x01\n\x12\x43KeyEscrow_Request\x12\x1b\n\x13rsa_oaep_sha_ticket\x18\x01 \x01(\x0c\x12\x10\n\x08password\x18\x02 \x01(\x0c\x12\x41\n\x05usage\x18\x03 \x01(\x0e\x32\x10.EKeyEscrowUsage: k_EKeyEscrowUsageStreamingDevice\x12\x13\n\x0b\x64\x65vice_name\x18\x04 \x01(\t\"\x82\x02\n\x11\x43KeyEscrow_Ticket\x12\x10\n\x08password\x18\x01 \x01(\x0c\x12\x12\n\nidentifier\x18\x02 \x01(\x04\x12\x0f\n\x07payload\x18\x03 \x01(\x0c\x12\x11\n\ttimestamp\x18\x04 \x01(\r\x12\x41\n\x05usage\x18\x05 \x01(\x0e\x32\x10.EKeyEscrowUsage: k_EKeyEscrowUsageStreamingDevice\x12\x13\n\x0b\x64\x65vice_name\x18\x06 \x01(\t\x12\x14\n\x0c\x64\x65vice_model\x18\x07 \x01(\t\x12\x15\n\rdevice_serial\x18\x08 \x01(\t\x12\x1e\n\x16\x64\x65vice_provisioning_id\x18\t \x01(\r\"9\n\x13\x43KeyEscrow_Response\x12\"\n\x06ticket\x18\x01 \x01(\x0b\x32\x12.CKeyEscrow_Ticket*7\n\x0f\x45KeyEscrowUsage\x12$\n k_EKeyEscrowUsageStreamingDevice\x10\x00\x32\xc8\x01\n\x07Secrets\x12\x80\x01\n\tKeyEscrow\x12\x13.CKeyEscrow_Request\x1a\x14.CKeyEscrow_Response\"H\x82\xb5\x18\x44Service to perform authenticated key-exchange involving Steam Client\x1a:\x82\xb5\x18\x36Service for accessing credentials and guarding secretsB\x03\x90\x01\x01')
+  serialized_options=b'\220\001\001',
+  create_key=_descriptor._internal_create_key,
+  serialized_pb=b'\n\x1bsteammessages_secrets.proto\x1a\x18steammessages_base.proto\x1a steammessages_unified_base.proto\"\x9b\x01\n\x12\x43KeyEscrow_Request\x12\x1b\n\x13rsa_oaep_sha_ticket\x18\x01 \x01(\x0c\x12\x10\n\x08password\x18\x02 \x01(\x0c\x12\x41\n\x05usage\x18\x03 \x01(\x0e\x32\x10.EKeyEscrowUsage: k_EKeyEscrowUsageStreamingDevice\x12\x13\n\x0b\x64\x65vice_name\x18\x04 \x01(\t\"\x82\x02\n\x11\x43KeyEscrow_Ticket\x12\x10\n\x08password\x18\x01 \x01(\x0c\x12\x12\n\nidentifier\x18\x02 \x01(\x04\x12\x0f\n\x07payload\x18\x03 \x01(\x0c\x12\x11\n\ttimestamp\x18\x04 \x01(\r\x12\x41\n\x05usage\x18\x05 \x01(\x0e\x32\x10.EKeyEscrowUsage: k_EKeyEscrowUsageStreamingDevice\x12\x13\n\x0b\x64\x65vice_name\x18\x06 \x01(\t\x12\x14\n\x0c\x64\x65vice_model\x18\x07 \x01(\t\x12\x15\n\rdevice_serial\x18\x08 \x01(\t\x12\x1e\n\x16\x64\x65vice_provisioning_id\x18\t \x01(\r\"9\n\x13\x43KeyEscrow_Response\x12\"\n\x06ticket\x18\x01 \x01(\x0b\x32\x12.CKeyEscrow_Ticket*7\n\x0f\x45KeyEscrowUsage\x12$\n k_EKeyEscrowUsageStreamingDevice\x10\x00\x32\xc8\x01\n\x07Secrets\x12\x80\x01\n\tKeyEscrow\x12\x13.CKeyEscrow_Request\x1a\x14.CKeyEscrow_Response\"H\x82\xb5\x18\x44Service to perform authenticated key-exchange involving Steam Client\x1a:\x82\xb5\x18\x36Service for accessing credentials and guarding secretsB\x03\x90\x01\x01'
   ,
-  dependencies=[steammessages__unified__base__pb2.DESCRIPTOR,])
+  dependencies=[steammessages__base__pb2.DESCRIPTOR,steammessages__unified__base__pb2.DESCRIPTOR,])
 
 _EKEYESCROWUSAGE = _descriptor.EnumDescriptor(
   name='EKeyEscrowUsage',
   full_name='EKeyEscrowUsage',
   filename=None,
   file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
   values=[
     _descriptor.EnumValueDescriptor(
       name='k_EKeyEscrowUsageStreamingDevice', index=0, number=0,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
   ],
   containing_type=None,
   serialized_options=None,
-  serialized_start=543,
-  serialized_end=598,
+  serialized_start=569,
+  serialized_end=624,
 )
 _sym_db.RegisterEnumDescriptor(_EKEYESCROWUSAGE)
 
@@ -57,35 +59,36 @@ _CKEYESCROW_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='rsa_oaep_sha_ticket', full_name='CKeyEscrow_Request.rsa_oaep_sha_ticket', index=0,
       number=1, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='password', full_name='CKeyEscrow_Request.password', index=1,
       number=2, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='usage', full_name='CKeyEscrow_Request.usage', index=2,
       number=3, type=14, cpp_type=8, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='device_name', full_name='CKeyEscrow_Request.device_name', index=3,
       number=4, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -98,8 +101,8 @@ _CKEYESCROW_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=66,
-  serialized_end=221,
+  serialized_start=92,
+  serialized_end=247,
 )
 
 
@@ -109,70 +112,71 @@ _CKEYESCROW_TICKET = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='password', full_name='CKeyEscrow_Ticket.password', index=0,
       number=1, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='identifier', full_name='CKeyEscrow_Ticket.identifier', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='payload', full_name='CKeyEscrow_Ticket.payload', index=2,
       number=3, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='timestamp', full_name='CKeyEscrow_Ticket.timestamp', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='usage', full_name='CKeyEscrow_Ticket.usage', index=4,
       number=5, type=14, cpp_type=8, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='device_name', full_name='CKeyEscrow_Ticket.device_name', index=5,
       number=6, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='device_model', full_name='CKeyEscrow_Ticket.device_model', index=6,
       number=7, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='device_serial', full_name='CKeyEscrow_Ticket.device_serial', index=7,
       number=8, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='device_provisioning_id', full_name='CKeyEscrow_Ticket.device_provisioning_id', index=8,
       number=9, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -185,8 +189,8 @@ _CKEYESCROW_TICKET = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=224,
-  serialized_end=482,
+  serialized_start=250,
+  serialized_end=508,
 )
 
 
@@ -196,6 +200,7 @@ _CKEYESCROW_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='ticket', full_name='CKeyEscrow_Response.ticket', index=0,
@@ -203,7 +208,7 @@ _CKEYESCROW_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -216,8 +221,8 @@ _CKEYESCROW_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=484,
-  serialized_end=541,
+  serialized_start=510,
+  serialized_end=567,
 )
 
 _CKEYESCROW_REQUEST.fields_by_name['usage'].enum_type = _EKEYESCROWUSAGE
@@ -229,25 +234,25 @@ DESCRIPTOR.message_types_by_name['CKeyEscrow_Response'] = _CKEYESCROW_RESPONSE
 DESCRIPTOR.enum_types_by_name['EKeyEscrowUsage'] = _EKEYESCROWUSAGE
 _sym_db.RegisterFileDescriptor(DESCRIPTOR)
 
-CKeyEscrow_Request = _reflection.GeneratedProtocolMessageType('CKeyEscrow_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CKEYESCROW_REQUEST,
-  __module__ = 'steammessages_secrets_pb2'
+CKeyEscrow_Request = _reflection.GeneratedProtocolMessageType('CKeyEscrow_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CKEYESCROW_REQUEST,
+  '__module__' : 'steammessages_secrets_pb2'
   # @@protoc_insertion_point(class_scope:CKeyEscrow_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CKeyEscrow_Request)
 
-CKeyEscrow_Ticket = _reflection.GeneratedProtocolMessageType('CKeyEscrow_Ticket', (_message.Message,), dict(
-  DESCRIPTOR = _CKEYESCROW_TICKET,
-  __module__ = 'steammessages_secrets_pb2'
+CKeyEscrow_Ticket = _reflection.GeneratedProtocolMessageType('CKeyEscrow_Ticket', (_message.Message,), {
+  'DESCRIPTOR' : _CKEYESCROW_TICKET,
+  '__module__' : 'steammessages_secrets_pb2'
   # @@protoc_insertion_point(class_scope:CKeyEscrow_Ticket)
-  ))
+  })
 _sym_db.RegisterMessage(CKeyEscrow_Ticket)
 
-CKeyEscrow_Response = _reflection.GeneratedProtocolMessageType('CKeyEscrow_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CKEYESCROW_RESPONSE,
-  __module__ = 'steammessages_secrets_pb2'
+CKeyEscrow_Response = _reflection.GeneratedProtocolMessageType('CKeyEscrow_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CKEYESCROW_RESPONSE,
+  '__module__' : 'steammessages_secrets_pb2'
   # @@protoc_insertion_point(class_scope:CKeyEscrow_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CKeyEscrow_Response)
 
 
@@ -258,9 +263,10 @@ _SECRETS = _descriptor.ServiceDescriptor(
   full_name='Secrets',
   file=DESCRIPTOR,
   index=0,
-  serialized_options=_b('\202\265\0306Service for accessing credentials and guarding secrets'),
-  serialized_start=601,
-  serialized_end=801,
+  serialized_options=b'\202\265\0306Service for accessing credentials and guarding secrets',
+  create_key=_descriptor._internal_create_key,
+  serialized_start=627,
+  serialized_end=827,
   methods=[
   _descriptor.MethodDescriptor(
     name='KeyEscrow',
@@ -269,7 +275,8 @@ _SECRETS = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CKEYESCROW_REQUEST,
     output_type=_CKEYESCROW_RESPONSE,
-    serialized_options=_b('\202\265\030DService to perform authenticated key-exchange involving Steam Client'),
+    serialized_options=b'\202\265\030DService to perform authenticated key-exchange involving Steam Client',
+    create_key=_descriptor._internal_create_key,
   ),
 ])
 _sym_db.RegisterServiceDescriptor(_SECRETS)
diff --git a/steam/protobufs/steammessages_shader_pb2.py b/steam/protobufs/steammessages_shader_pb2.py
index 414b4c1..a7b802f 100644
--- a/steam/protobufs/steammessages_shader_pb2.py
+++ b/steam/protobufs/steammessages_shader_pb2.py
@@ -1,9 +1,7 @@
 # -*- coding: utf-8 -*-
 # Generated by the protocol buffer compiler.  DO NOT EDIT!
 # source: steammessages_shader.proto
-
-import sys
-_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1'))
+"""Generated protocol buffer code."""
 from google.protobuf import descriptor as _descriptor
 from google.protobuf import message as _message
 from google.protobuf import reflection as _reflection
@@ -15,6 +13,7 @@ from google.protobuf import service_reflection
 _sym_db = _symbol_database.Default()
 
 
+import steam.protobufs.steammessages_base_pb2 as steammessages__base__pb2
 import steam.protobufs.steammessages_unified_base_pb2 as steammessages__unified__base__pb2
 
 
@@ -22,10 +21,11 @@ DESCRIPTOR = _descriptor.FileDescriptor(
   name='steammessages_shader.proto',
   package='',
   syntax='proto2',
-  serialized_options=_b('\220\001\001'),
-  serialized_pb=_b('\n\x1asteammessages_shader.proto\x1a steammessages_unified_base.proto\"\xc9\x01\n\x1e\x43Shader_RegisterShader_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x10\n\x08gpu_desc\x18\x02 \x01(\t\x12\x13\n\x0b\x64river_desc\x18\x03 \x01(\t\x12\x37\n\x07shaders\x18\x04 \x03(\x0b\x32&.CShader_RegisterShader_Request.Shader\x1a\x38\n\x06Shader\x12\x15\n\rcache_key_sha\x18\x01 \x01(\x0c\x12\x17\n\x0fshader_code_sha\x18\x02 \x01(\x0c\"<\n\x1f\x43Shader_RegisterShader_Response\x12\x19\n\x11requested_codeids\x18\x01 \x03(\r\"\xa0\x01\n\x1a\x43Shader_SendShader_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x37\n\x07shaders\x18\x02 \x03(\x0b\x32&.CShader_SendShader_Request.ShaderCode\x1a:\n\nShaderCode\x12\x17\n\x0fshader_code_sha\x18\x01 \x01(\x0c\x12\x13\n\x0bshader_code\x18\x02 \x01(\x0c\"\x1d\n\x1b\x43Shader_SendShader_Response\"Y\n!CShader_GetBucketManifest_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x10\n\x08gpu_desc\x18\x02 \x01(\t\x12\x13\n\x0b\x64river_desc\x18\x03 \x01(\t\"]\n\"CShader_GetBucketManifest_Response\x12\x12\n\nmanifestid\x18\x01 \x01(\x04\x12\x11\n\tdepotsize\x18\x02 \x01(\x04\x12\x10\n\x08\x62ucketid\x18\x03 \x01(\x04\"G\n\x1e\x43Shader_GetStaleBucket_Request\x12\x10\n\x08gpu_desc\x18\x01 \x01(\t\x12\x13\n\x0b\x64river_desc\x18\x02 \x01(\t\"V\n\x1f\x43Shader_GetStaleBucket_Response\x12\x10\n\x08\x62ucketid\x18\x01 \x01(\x04\x12\r\n\x05\x61ppid\x18\x02 \x01(\r\x12\x12\n\nmanifestid\x18\x03 \x01(\x04\"\xb7\x01\n#CShader_ReportExternalBuild_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x10\n\x08gpu_desc\x18\x02 \x01(\t\x12\x13\n\x0b\x64river_desc\x18\x03 \x01(\t\x12\x12\n\nmanifestid\x18\x04 \x01(\x04\x12\x17\n\x0fsource_gpu_desc\x18\x05 \x01(\t\x12\x1a\n\x12source_driver_desc\x18\x06 \x01(\t\x12\x11\n\tdepotsize\x18\x07 \x01(\x04\"&\n$CShader_ReportExternalBuild_Response2\xbb\x06\n\x06Shader\x12\xbe\x01\n\x0eRegisterShader\x12\x1f.CShader_RegisterShader_Request\x1a .CShader_RegisterShader_Response\"i\x82\xb5\x18\x65\x43lient just finished playing a game, detected new shader cache entries and is notifying us about them\x12\x8f\x01\n\nSendShader\x12\x1b.CShader_SendShader_Request\x1a\x1c.CShader_SendShader_Response\"F\x82\xb5\x18\x42\x43lient is sending us actual compiled shader code that we requested\x12\xad\x01\n\x11GetBucketManifest\x12\".CShader_GetBucketManifest_Request\x1a#.CShader_GetBucketManifest_Response\"O\x82\xb5\x18KClient wants to know the manifest ID to fetch (if any) for a bucket\'s depot\x12\x8e\x01\n\x0eGetStaleBucket\x12\x1f.CShader_GetStaleBucket_Request\x1a .CShader_GetStaleBucket_Response\"9\x82\xb5\x18\x35Job to get a stale bucket given a gpu and driver desc\x12\x88\x01\n\x13ReportExternalBuild\x12$.CShader_ReportExternalBuild_Request\x1a%.CShader_ReportExternalBuild_Response\"$\x82\xb5\x18 Report an exernally built bucket\x1a\x12\x82\xb5\x18\x0eShader methodsB\x03\x90\x01\x01')
+  serialized_options=b'\220\001\001',
+  create_key=_descriptor._internal_create_key,
+  serialized_pb=b'\n\x1asteammessages_shader.proto\x1a\x18steammessages_base.proto\x1a steammessages_unified_base.proto\"\xc9\x01\n\x1e\x43Shader_RegisterShader_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x10\n\x08gpu_desc\x18\x02 \x01(\t\x12\x13\n\x0b\x64river_desc\x18\x03 \x01(\t\x12\x37\n\x07shaders\x18\x04 \x03(\x0b\x32&.CShader_RegisterShader_Request.Shader\x1a\x38\n\x06Shader\x12\x15\n\rcache_key_sha\x18\x01 \x01(\x0c\x12\x17\n\x0fshader_code_sha\x18\x02 \x01(\x0c\"<\n\x1f\x43Shader_RegisterShader_Response\x12\x19\n\x11requested_codeids\x18\x01 \x03(\r\"\xa0\x01\n\x1a\x43Shader_SendShader_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x37\n\x07shaders\x18\x02 \x03(\x0b\x32&.CShader_SendShader_Request.ShaderCode\x1a:\n\nShaderCode\x12\x17\n\x0fshader_code_sha\x18\x01 \x01(\x0c\x12\x13\n\x0bshader_code\x18\x02 \x01(\x0c\"\x1d\n\x1b\x43Shader_SendShader_Response\"Y\n!CShader_GetBucketManifest_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x10\n\x08gpu_desc\x18\x02 \x01(\t\x12\x13\n\x0b\x64river_desc\x18\x03 \x01(\t\"]\n\"CShader_GetBucketManifest_Response\x12\x12\n\nmanifestid\x18\x01 \x01(\x04\x12\x11\n\tdepotsize\x18\x02 \x01(\x04\x12\x10\n\x08\x62ucketid\x18\x03 \x01(\x04\"G\n\x1e\x43Shader_GetStaleBucket_Request\x12\x10\n\x08gpu_desc\x18\x01 \x01(\t\x12\x13\n\x0b\x64river_desc\x18\x02 \x01(\t\"\x9b\x01\n\x1f\x43Shader_GetStaleBucket_Response\x12\x10\n\x08\x62ucketid\x18\x01 \x01(\x04\x12\r\n\x05\x61ppid\x18\x02 \x01(\r\x12\x12\n\nmanifestid\x18\x03 \x01(\x04\x12\x10\n\x08gpu_desc\x18\x04 \x01(\t\x12\x13\n\x0b\x64river_desc\x18\x05 \x01(\t\x12\x1c\n\x14\x64\x65pot_encryption_key\x18\x06 \x01(\x0c\"\xb7\x01\n#CShader_ReportExternalBuild_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x10\n\x08gpu_desc\x18\x02 \x01(\t\x12\x13\n\x0b\x64river_desc\x18\x03 \x01(\t\x12\x12\n\nmanifestid\x18\x04 \x01(\x04\x12\x17\n\x0fsource_gpu_desc\x18\x05 \x01(\t\x12\x1a\n\x12source_driver_desc\x18\x06 \x01(\t\x12\x11\n\tdepotsize\x18\x07 \x01(\x04\"&\n$CShader_ReportExternalBuild_Response2\xbb\x06\n\x06Shader\x12\xbe\x01\n\x0eRegisterShader\x12\x1f.CShader_RegisterShader_Request\x1a .CShader_RegisterShader_Response\"i\x82\xb5\x18\x65\x43lient just finished playing a game, detected new shader cache entries and is notifying us about them\x12\x8f\x01\n\nSendShader\x12\x1b.CShader_SendShader_Request\x1a\x1c.CShader_SendShader_Response\"F\x82\xb5\x18\x42\x43lient is sending us actual compiled shader code that we requested\x12\xad\x01\n\x11GetBucketManifest\x12\".CShader_GetBucketManifest_Request\x1a#.CShader_GetBucketManifest_Response\"O\x82\xb5\x18KClient wants to know the manifest ID to fetch (if any) for a bucket\'s depot\x12\x8e\x01\n\x0eGetStaleBucket\x12\x1f.CShader_GetStaleBucket_Request\x1a .CShader_GetStaleBucket_Response\"9\x82\xb5\x18\x35Job to get a stale bucket given a gpu and driver desc\x12\x88\x01\n\x13ReportExternalBuild\x12$.CShader_ReportExternalBuild_Request\x1a%.CShader_ReportExternalBuild_Response\"$\x82\xb5\x18 Report an exernally built bucket\x1a\x12\x82\xb5\x18\x0eShader methodsB\x03\x90\x01\x01'
   ,
-  dependencies=[steammessages__unified__base__pb2.DESCRIPTOR,])
+  dependencies=[steammessages__base__pb2.DESCRIPTOR,steammessages__unified__base__pb2.DESCRIPTOR,])
 
 
 
@@ -36,21 +36,22 @@ _CSHADER_REGISTERSHADER_REQUEST_SHADER = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='cache_key_sha', full_name='CShader_RegisterShader_Request.Shader.cache_key_sha', index=0,
       number=1, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='shader_code_sha', full_name='CShader_RegisterShader_Request.Shader.shader_code_sha', index=1,
       number=2, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -63,8 +64,8 @@ _CSHADER_REGISTERSHADER_REQUEST_SHADER = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=210,
-  serialized_end=266,
+  serialized_start=236,
+  serialized_end=292,
 )
 
 _CSHADER_REGISTERSHADER_REQUEST = _descriptor.Descriptor(
@@ -73,6 +74,7 @@ _CSHADER_REGISTERSHADER_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CShader_RegisterShader_Request.appid', index=0,
@@ -80,28 +82,28 @@ _CSHADER_REGISTERSHADER_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='gpu_desc', full_name='CShader_RegisterShader_Request.gpu_desc', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='driver_desc', full_name='CShader_RegisterShader_Request.driver_desc', index=2,
       number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='shaders', full_name='CShader_RegisterShader_Request.shaders', index=3,
       number=4, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -114,8 +116,8 @@ _CSHADER_REGISTERSHADER_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=65,
-  serialized_end=266,
+  serialized_start=91,
+  serialized_end=292,
 )
 
 
@@ -125,6 +127,7 @@ _CSHADER_REGISTERSHADER_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='requested_codeids', full_name='CShader_RegisterShader_Response.requested_codeids', index=0,
@@ -132,7 +135,7 @@ _CSHADER_REGISTERSHADER_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -145,8 +148,8 @@ _CSHADER_REGISTERSHADER_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=268,
-  serialized_end=328,
+  serialized_start=294,
+  serialized_end=354,
 )
 
 
@@ -156,21 +159,22 @@ _CSHADER_SENDSHADER_REQUEST_SHADERCODE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='shader_code_sha', full_name='CShader_SendShader_Request.ShaderCode.shader_code_sha', index=0,
       number=1, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='shader_code', full_name='CShader_SendShader_Request.ShaderCode.shader_code', index=1,
       number=2, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -183,8 +187,8 @@ _CSHADER_SENDSHADER_REQUEST_SHADERCODE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=433,
-  serialized_end=491,
+  serialized_start=459,
+  serialized_end=517,
 )
 
 _CSHADER_SENDSHADER_REQUEST = _descriptor.Descriptor(
@@ -193,6 +197,7 @@ _CSHADER_SENDSHADER_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CShader_SendShader_Request.appid', index=0,
@@ -200,14 +205,14 @@ _CSHADER_SENDSHADER_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='shaders', full_name='CShader_SendShader_Request.shaders', index=1,
       number=2, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -220,8 +225,8 @@ _CSHADER_SENDSHADER_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=331,
-  serialized_end=491,
+  serialized_start=357,
+  serialized_end=517,
 )
 
 
@@ -231,6 +236,7 @@ _CSHADER_SENDSHADER_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -244,8 +250,8 @@ _CSHADER_SENDSHADER_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=493,
-  serialized_end=522,
+  serialized_start=519,
+  serialized_end=548,
 )
 
 
@@ -255,6 +261,7 @@ _CSHADER_GETBUCKETMANIFEST_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CShader_GetBucketManifest_Request.appid', index=0,
@@ -262,21 +269,21 @@ _CSHADER_GETBUCKETMANIFEST_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='gpu_desc', full_name='CShader_GetBucketManifest_Request.gpu_desc', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='driver_desc', full_name='CShader_GetBucketManifest_Request.driver_desc', index=2,
       number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -289,8 +296,8 @@ _CSHADER_GETBUCKETMANIFEST_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=524,
-  serialized_end=613,
+  serialized_start=550,
+  serialized_end=639,
 )
 
 
@@ -300,6 +307,7 @@ _CSHADER_GETBUCKETMANIFEST_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='manifestid', full_name='CShader_GetBucketManifest_Response.manifestid', index=0,
@@ -307,21 +315,21 @@ _CSHADER_GETBUCKETMANIFEST_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='depotsize', full_name='CShader_GetBucketManifest_Response.depotsize', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='bucketid', full_name='CShader_GetBucketManifest_Response.bucketid', index=2,
       number=3, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -334,8 +342,8 @@ _CSHADER_GETBUCKETMANIFEST_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=615,
-  serialized_end=708,
+  serialized_start=641,
+  serialized_end=734,
 )
 
 
@@ -345,21 +353,22 @@ _CSHADER_GETSTALEBUCKET_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='gpu_desc', full_name='CShader_GetStaleBucket_Request.gpu_desc', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='driver_desc', full_name='CShader_GetStaleBucket_Request.driver_desc', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -372,8 +381,8 @@ _CSHADER_GETSTALEBUCKET_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=710,
-  serialized_end=781,
+  serialized_start=736,
+  serialized_end=807,
 )
 
 
@@ -383,6 +392,7 @@ _CSHADER_GETSTALEBUCKET_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='bucketid', full_name='CShader_GetStaleBucket_Response.bucketid', index=0,
@@ -390,21 +400,42 @@ _CSHADER_GETSTALEBUCKET_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='appid', full_name='CShader_GetStaleBucket_Response.appid', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='manifestid', full_name='CShader_GetStaleBucket_Response.manifestid', index=2,
       number=3, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='gpu_desc', full_name='CShader_GetStaleBucket_Response.gpu_desc', index=3,
+      number=4, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='driver_desc', full_name='CShader_GetStaleBucket_Response.driver_desc', index=4,
+      number=5, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='depot_encryption_key', full_name='CShader_GetStaleBucket_Response.depot_encryption_key', index=5,
+      number=6, type=12, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"",
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -417,8 +448,8 @@ _CSHADER_GETSTALEBUCKET_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=783,
-  serialized_end=869,
+  serialized_start=810,
+  serialized_end=965,
 )
 
 
@@ -428,6 +459,7 @@ _CSHADER_REPORTEXTERNALBUILD_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CShader_ReportExternalBuild_Request.appid', index=0,
@@ -435,49 +467,49 @@ _CSHADER_REPORTEXTERNALBUILD_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='gpu_desc', full_name='CShader_ReportExternalBuild_Request.gpu_desc', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='driver_desc', full_name='CShader_ReportExternalBuild_Request.driver_desc', index=2,
       number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='manifestid', full_name='CShader_ReportExternalBuild_Request.manifestid', index=3,
       number=4, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='source_gpu_desc', full_name='CShader_ReportExternalBuild_Request.source_gpu_desc', index=4,
       number=5, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='source_driver_desc', full_name='CShader_ReportExternalBuild_Request.source_driver_desc', index=5,
       number=6, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='depotsize', full_name='CShader_ReportExternalBuild_Request.depotsize', index=6,
       number=7, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -490,8 +522,8 @@ _CSHADER_REPORTEXTERNALBUILD_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=872,
-  serialized_end=1055,
+  serialized_start=968,
+  serialized_end=1151,
 )
 
 
@@ -501,6 +533,7 @@ _CSHADER_REPORTEXTERNALBUILD_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -514,8 +547,8 @@ _CSHADER_REPORTEXTERNALBUILD_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1057,
-  serialized_end=1095,
+  serialized_start=1153,
+  serialized_end=1191,
 )
 
 _CSHADER_REGISTERSHADER_REQUEST_SHADER.containing_type = _CSHADER_REGISTERSHADER_REQUEST
@@ -534,90 +567,90 @@ DESCRIPTOR.message_types_by_name['CShader_ReportExternalBuild_Request'] = _CSHAD
 DESCRIPTOR.message_types_by_name['CShader_ReportExternalBuild_Response'] = _CSHADER_REPORTEXTERNALBUILD_RESPONSE
 _sym_db.RegisterFileDescriptor(DESCRIPTOR)
 
-CShader_RegisterShader_Request = _reflection.GeneratedProtocolMessageType('CShader_RegisterShader_Request', (_message.Message,), dict(
+CShader_RegisterShader_Request = _reflection.GeneratedProtocolMessageType('CShader_RegisterShader_Request', (_message.Message,), {
 
-  Shader = _reflection.GeneratedProtocolMessageType('Shader', (_message.Message,), dict(
-    DESCRIPTOR = _CSHADER_REGISTERSHADER_REQUEST_SHADER,
-    __module__ = 'steammessages_shader_pb2'
+  'Shader' : _reflection.GeneratedProtocolMessageType('Shader', (_message.Message,), {
+    'DESCRIPTOR' : _CSHADER_REGISTERSHADER_REQUEST_SHADER,
+    '__module__' : 'steammessages_shader_pb2'
     # @@protoc_insertion_point(class_scope:CShader_RegisterShader_Request.Shader)
-    ))
+    })
   ,
-  DESCRIPTOR = _CSHADER_REGISTERSHADER_REQUEST,
-  __module__ = 'steammessages_shader_pb2'
+  'DESCRIPTOR' : _CSHADER_REGISTERSHADER_REQUEST,
+  '__module__' : 'steammessages_shader_pb2'
   # @@protoc_insertion_point(class_scope:CShader_RegisterShader_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CShader_RegisterShader_Request)
 _sym_db.RegisterMessage(CShader_RegisterShader_Request.Shader)
 
-CShader_RegisterShader_Response = _reflection.GeneratedProtocolMessageType('CShader_RegisterShader_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CSHADER_REGISTERSHADER_RESPONSE,
-  __module__ = 'steammessages_shader_pb2'
+CShader_RegisterShader_Response = _reflection.GeneratedProtocolMessageType('CShader_RegisterShader_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CSHADER_REGISTERSHADER_RESPONSE,
+  '__module__' : 'steammessages_shader_pb2'
   # @@protoc_insertion_point(class_scope:CShader_RegisterShader_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CShader_RegisterShader_Response)
 
-CShader_SendShader_Request = _reflection.GeneratedProtocolMessageType('CShader_SendShader_Request', (_message.Message,), dict(
+CShader_SendShader_Request = _reflection.GeneratedProtocolMessageType('CShader_SendShader_Request', (_message.Message,), {
 
-  ShaderCode = _reflection.GeneratedProtocolMessageType('ShaderCode', (_message.Message,), dict(
-    DESCRIPTOR = _CSHADER_SENDSHADER_REQUEST_SHADERCODE,
-    __module__ = 'steammessages_shader_pb2'
+  'ShaderCode' : _reflection.GeneratedProtocolMessageType('ShaderCode', (_message.Message,), {
+    'DESCRIPTOR' : _CSHADER_SENDSHADER_REQUEST_SHADERCODE,
+    '__module__' : 'steammessages_shader_pb2'
     # @@protoc_insertion_point(class_scope:CShader_SendShader_Request.ShaderCode)
-    ))
+    })
   ,
-  DESCRIPTOR = _CSHADER_SENDSHADER_REQUEST,
-  __module__ = 'steammessages_shader_pb2'
+  'DESCRIPTOR' : _CSHADER_SENDSHADER_REQUEST,
+  '__module__' : 'steammessages_shader_pb2'
   # @@protoc_insertion_point(class_scope:CShader_SendShader_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CShader_SendShader_Request)
 _sym_db.RegisterMessage(CShader_SendShader_Request.ShaderCode)
 
-CShader_SendShader_Response = _reflection.GeneratedProtocolMessageType('CShader_SendShader_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CSHADER_SENDSHADER_RESPONSE,
-  __module__ = 'steammessages_shader_pb2'
+CShader_SendShader_Response = _reflection.GeneratedProtocolMessageType('CShader_SendShader_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CSHADER_SENDSHADER_RESPONSE,
+  '__module__' : 'steammessages_shader_pb2'
   # @@protoc_insertion_point(class_scope:CShader_SendShader_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CShader_SendShader_Response)
 
-CShader_GetBucketManifest_Request = _reflection.GeneratedProtocolMessageType('CShader_GetBucketManifest_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CSHADER_GETBUCKETMANIFEST_REQUEST,
-  __module__ = 'steammessages_shader_pb2'
+CShader_GetBucketManifest_Request = _reflection.GeneratedProtocolMessageType('CShader_GetBucketManifest_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CSHADER_GETBUCKETMANIFEST_REQUEST,
+  '__module__' : 'steammessages_shader_pb2'
   # @@protoc_insertion_point(class_scope:CShader_GetBucketManifest_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CShader_GetBucketManifest_Request)
 
-CShader_GetBucketManifest_Response = _reflection.GeneratedProtocolMessageType('CShader_GetBucketManifest_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CSHADER_GETBUCKETMANIFEST_RESPONSE,
-  __module__ = 'steammessages_shader_pb2'
+CShader_GetBucketManifest_Response = _reflection.GeneratedProtocolMessageType('CShader_GetBucketManifest_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CSHADER_GETBUCKETMANIFEST_RESPONSE,
+  '__module__' : 'steammessages_shader_pb2'
   # @@protoc_insertion_point(class_scope:CShader_GetBucketManifest_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CShader_GetBucketManifest_Response)
 
-CShader_GetStaleBucket_Request = _reflection.GeneratedProtocolMessageType('CShader_GetStaleBucket_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CSHADER_GETSTALEBUCKET_REQUEST,
-  __module__ = 'steammessages_shader_pb2'
+CShader_GetStaleBucket_Request = _reflection.GeneratedProtocolMessageType('CShader_GetStaleBucket_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CSHADER_GETSTALEBUCKET_REQUEST,
+  '__module__' : 'steammessages_shader_pb2'
   # @@protoc_insertion_point(class_scope:CShader_GetStaleBucket_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CShader_GetStaleBucket_Request)
 
-CShader_GetStaleBucket_Response = _reflection.GeneratedProtocolMessageType('CShader_GetStaleBucket_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CSHADER_GETSTALEBUCKET_RESPONSE,
-  __module__ = 'steammessages_shader_pb2'
+CShader_GetStaleBucket_Response = _reflection.GeneratedProtocolMessageType('CShader_GetStaleBucket_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CSHADER_GETSTALEBUCKET_RESPONSE,
+  '__module__' : 'steammessages_shader_pb2'
   # @@protoc_insertion_point(class_scope:CShader_GetStaleBucket_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CShader_GetStaleBucket_Response)
 
-CShader_ReportExternalBuild_Request = _reflection.GeneratedProtocolMessageType('CShader_ReportExternalBuild_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CSHADER_REPORTEXTERNALBUILD_REQUEST,
-  __module__ = 'steammessages_shader_pb2'
+CShader_ReportExternalBuild_Request = _reflection.GeneratedProtocolMessageType('CShader_ReportExternalBuild_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CSHADER_REPORTEXTERNALBUILD_REQUEST,
+  '__module__' : 'steammessages_shader_pb2'
   # @@protoc_insertion_point(class_scope:CShader_ReportExternalBuild_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CShader_ReportExternalBuild_Request)
 
-CShader_ReportExternalBuild_Response = _reflection.GeneratedProtocolMessageType('CShader_ReportExternalBuild_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CSHADER_REPORTEXTERNALBUILD_RESPONSE,
-  __module__ = 'steammessages_shader_pb2'
+CShader_ReportExternalBuild_Response = _reflection.GeneratedProtocolMessageType('CShader_ReportExternalBuild_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CSHADER_REPORTEXTERNALBUILD_RESPONSE,
+  '__module__' : 'steammessages_shader_pb2'
   # @@protoc_insertion_point(class_scope:CShader_ReportExternalBuild_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CShader_ReportExternalBuild_Response)
 
 
@@ -628,9 +661,10 @@ _SHADER = _descriptor.ServiceDescriptor(
   full_name='Shader',
   file=DESCRIPTOR,
   index=0,
-  serialized_options=_b('\202\265\030\016Shader methods'),
-  serialized_start=1098,
-  serialized_end=1925,
+  serialized_options=b'\202\265\030\016Shader methods',
+  create_key=_descriptor._internal_create_key,
+  serialized_start=1194,
+  serialized_end=2021,
   methods=[
   _descriptor.MethodDescriptor(
     name='RegisterShader',
@@ -639,7 +673,8 @@ _SHADER = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CSHADER_REGISTERSHADER_REQUEST,
     output_type=_CSHADER_REGISTERSHADER_RESPONSE,
-    serialized_options=_b('\202\265\030eClient just finished playing a game, detected new shader cache entries and is notifying us about them'),
+    serialized_options=b'\202\265\030eClient just finished playing a game, detected new shader cache entries and is notifying us about them',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='SendShader',
@@ -648,7 +683,8 @@ _SHADER = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CSHADER_SENDSHADER_REQUEST,
     output_type=_CSHADER_SENDSHADER_RESPONSE,
-    serialized_options=_b('\202\265\030BClient is sending us actual compiled shader code that we requested'),
+    serialized_options=b'\202\265\030BClient is sending us actual compiled shader code that we requested',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetBucketManifest',
@@ -657,7 +693,8 @@ _SHADER = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CSHADER_GETBUCKETMANIFEST_REQUEST,
     output_type=_CSHADER_GETBUCKETMANIFEST_RESPONSE,
-    serialized_options=_b('\202\265\030KClient wants to know the manifest ID to fetch (if any) for a bucket\'s depot'),
+    serialized_options=b'\202\265\030KClient wants to know the manifest ID to fetch (if any) for a bucket\'s depot',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetStaleBucket',
@@ -666,7 +703,8 @@ _SHADER = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CSHADER_GETSTALEBUCKET_REQUEST,
     output_type=_CSHADER_GETSTALEBUCKET_RESPONSE,
-    serialized_options=_b('\202\265\0305Job to get a stale bucket given a gpu and driver desc'),
+    serialized_options=b'\202\265\0305Job to get a stale bucket given a gpu and driver desc',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='ReportExternalBuild',
@@ -675,7 +713,8 @@ _SHADER = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CSHADER_REPORTEXTERNALBUILD_REQUEST,
     output_type=_CSHADER_REPORTEXTERNALBUILD_RESPONSE,
-    serialized_options=_b('\202\265\030 Report an exernally built bucket'),
+    serialized_options=b'\202\265\030 Report an exernally built bucket',
+    create_key=_descriptor._internal_create_key,
   ),
 ])
 _sym_db.RegisterServiceDescriptor(_SHADER)
diff --git a/steam/protobufs/steammessages_site_license_pb2.py b/steam/protobufs/steammessages_site_license_pb2.py
index 23ad29e..dd46b3b 100644
--- a/steam/protobufs/steammessages_site_license_pb2.py
+++ b/steam/protobufs/steammessages_site_license_pb2.py
@@ -1,9 +1,7 @@
 # -*- coding: utf-8 -*-
 # Generated by the protocol buffer compiler.  DO NOT EDIT!
 # source: steammessages_site_license.proto
-
-import sys
-_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1'))
+"""Generated protocol buffer code."""
 from google.protobuf import descriptor as _descriptor
 from google.protobuf import message as _message
 from google.protobuf import reflection as _reflection
@@ -15,6 +13,7 @@ from google.protobuf import service_reflection
 _sym_db = _symbol_database.Default()
 
 
+import steam.protobufs.steammessages_base_pb2 as steammessages__base__pb2
 import steam.protobufs.steammessages_unified_base_pb2 as steammessages__unified__base__pb2
 
 
@@ -22,10 +21,11 @@ DESCRIPTOR = _descriptor.FileDescriptor(
   name='steammessages_site_license.proto',
   package='',
   syntax='proto2',
-  serialized_options=_b('\220\001\001'),
-  serialized_pb=_b('\n steammessages_site_license.proto\x1a steammessages_unified_base.proto\"\x8d\x01\n)CSiteManagerClient_IncomingClient_Request\x12\x17\n\x0fsite_instanceid\x18\x01 \x01(\x06\x12\x16\n\x0e\x63lient_steamid\x18\x02 \x01(\x06\x12\x17\n\x0f\x63lient_local_ip\x18\x03 \x01(\x07\x12\x16\n\x0e\x63onnection_key\x18\x04 \x01(\x0c\",\n*CSiteManagerClient_IncomingClient_Response\"N\n,CSiteLicense_ClientSeatCheckout_Notification\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x0f\n\x07\x65result\x18\x02 \x01(\r\"\xe3\x02\n/CSiteManagerClient_TrackedPayments_Notification\x12\x0f\n\x07site_id\x18\x01 \x01(\x06\x12J\n\x08payments\x18\x02 \x03(\x0b\x32\x38.CSiteManagerClient_TrackedPayments_Notification.Payment\x1a\xd2\x01\n\x07Payment\x12\x0f\n\x07transid\x18\x01 \x01(\x04\x12\x0f\n\x07steamid\x18\x02 \x01(\x04\x12\x0e\n\x06\x61mount\x18\x03 \x01(\x03\x12\x11\n\tecurrency\x18\x04 \x01(\r\x12\x14\n\x0ctime_created\x18\x05 \x01(\x05\x12\x17\n\x0fpurchase_status\x18\x06 \x01(\x05\x12\x14\n\x0cmachine_name\x18\x07 \x01(\t\x12\x14\n\x0cpersona_name\x18\x08 \x01(\t\x12\x13\n\x0bprofile_url\x18\t \x01(\t\x12\x12\n\navatar_url\x18\n \x01(\t\"r\n(CSiteLicense_InitiateAssociation_Request\x12\x14\n\x0csite_steamid\x18\x01 \x01(\x06\x12\x17\n\x0fsite_instanceid\x18\x02 \x01(\x06\x12\x17\n\x0f\x63lient_local_ip\x18\x03 \x01(\x07\"C\n)CSiteLicense_InitiateAssociation_Response\x12\x16\n\x0e\x63onnection_key\x18\x01 \x01(\x0c\":\n$CSiteLicense_LCSAuthenticate_Request\x12\x12\n\ninstanceid\x18\x01 \x01(\x06\"z\n%CSiteLicense_LCSAuthenticate_Response\x12\x0f\n\x07site_id\x18\x01 \x01(\x04\x12\x11\n\tsite_name\x18\x02 \x01(\t\x12\x13\n\x0bnew_session\x18\x03 \x01(\x08\x12\x18\n\x10no_site_licenses\x18\x04 \x01(\x08\"t\n%CSiteLicense_LCSAssociateUser_Request\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12\x10\n\x08local_ip\x18\x02 \x01(\x07\x12\x12\n\ninstanceid\x18\x03 \x01(\x06\x12\x14\n\x0cmachine_name\x18\x04 \x01(\t\"(\n&CSiteLicense_LCSAssociateUser_Response\"]\n\'CSiteLicense_ClientSeatCheckout_Request\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12\x12\n\ninstanceid\x18\x02 \x01(\x06\x12\r\n\x05\x61ppid\x18\x03 \x01(\r\"*\n(CSiteLicense_ClientSeatCheckout_Response\"b\n,CSiteLicense_ClientGetAvailableSeats_Request\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12\x12\n\ninstanceid\x18\x02 \x01(\x06\x12\r\n\x05\x61ppid\x18\x03 \x01(\r\"H\n-CSiteLicense_ClientGetAvailableSeats_Response\x12\x17\n\x0f\x61vailable_seats\x18\x01 \x01(\r2\xa3\x04\n\x11SiteManagerClient\x12\xaf\x01\n\x0eIncomingClient\x12*.CSiteManagerClient_IncomingClient_Request\x1a+.CSiteManagerClient_IncomingClient_Response\"D\x82\xb5\x18@Rack informing site manager of new inbound client PSK connection\x12\x93\x01\n\x1e\x43lientSeatCheckoutNotification\x12-.CSiteLicense_ClientSeatCheckout_Notification\x1a\x0b.NoResponse\"5\x82\xb5\x18\x31Notify client directly about seat checkout result\x12\x9a\x01\n\x1bTrackedPaymentsNotification\x12\x30.CSiteManagerClient_TrackedPayments_Notification\x1a\x0b.NoResponse\"<\x82\xb5\x18\x38Rack informing site manager of existing tracked payments\x1a)\x82\xb5\x18!Local site manager client service\xc0\xb5\x18\x02\x32\xd5\x06\n\x0bSiteLicense\x12\xa4\x01\n\x13InitiateAssociation\x12).CSiteLicense_InitiateAssociation_Request\x1a*.CSiteLicense_InitiateAssociation_Response\"6\x82\xb5\x18\x32\x43lient is requesting connetion info for local site\x12\x86\x01\n\x0fLCSAuthenticate\x12%.CSiteLicense_LCSAuthenticate_Request\x1a&.CSiteLicense_LCSAuthenticate_Response\"$\x82\xb5\x18 Local cafe server authentication\x12\x9d\x01\n\x10LCSAssociateUser\x12&.CSiteLicense_LCSAssociateUser_Request\x1a\'.CSiteLicense_LCSAssociateUser_Response\"8\x82\xb5\x18\x34Local cafe server wants to grant user access to site\x12\x9e\x01\n\x12\x43lientSeatCheckout\x12(.CSiteLicense_ClientSeatCheckout_Request\x1a).CSiteLicense_ClientSeatCheckout_Response\"3\x82\xb5\x18/Client is requesting use of a site license seat\x12\xba\x01\n\x17\x43lientGetAvailableSeats\x12-.CSiteLicense_ClientGetAvailableSeats_Request\x1a..CSiteLicense_ClientGetAvailableSeats_Response\"@\x82\xb5\x18<Client is requesting the number of currently available seats\x1a\x18\x82\xb5\x18\x14Site License serviceB\x03\x90\x01\x01')
+  serialized_options=b'\220\001\001',
+  create_key=_descriptor._internal_create_key,
+  serialized_pb=b'\n steammessages_site_license.proto\x1a\x18steammessages_base.proto\x1a steammessages_unified_base.proto\"\x8d\x01\n)CSiteManagerClient_IncomingClient_Request\x12\x17\n\x0fsite_instanceid\x18\x01 \x01(\x06\x12\x16\n\x0e\x63lient_steamid\x18\x02 \x01(\x06\x12\x17\n\x0f\x63lient_local_ip\x18\x03 \x01(\x07\x12\x16\n\x0e\x63onnection_key\x18\x04 \x01(\x0c\",\n*CSiteManagerClient_IncomingClient_Response\"N\n,CSiteLicense_ClientSeatCheckout_Notification\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x0f\n\x07\x65result\x18\x02 \x01(\r\"\xe3\x02\n/CSiteManagerClient_TrackedPayments_Notification\x12\x0f\n\x07site_id\x18\x01 \x01(\x06\x12J\n\x08payments\x18\x02 \x03(\x0b\x32\x38.CSiteManagerClient_TrackedPayments_Notification.Payment\x1a\xd2\x01\n\x07Payment\x12\x0f\n\x07transid\x18\x01 \x01(\x04\x12\x0f\n\x07steamid\x18\x02 \x01(\x04\x12\x0e\n\x06\x61mount\x18\x03 \x01(\x03\x12\x11\n\tecurrency\x18\x04 \x01(\r\x12\x14\n\x0ctime_created\x18\x05 \x01(\x05\x12\x17\n\x0fpurchase_status\x18\x06 \x01(\x05\x12\x14\n\x0cmachine_name\x18\x07 \x01(\t\x12\x14\n\x0cpersona_name\x18\x08 \x01(\t\x12\x13\n\x0bprofile_url\x18\t \x01(\t\x12\x12\n\navatar_url\x18\n \x01(\t\"r\n(CSiteLicense_InitiateAssociation_Request\x12\x14\n\x0csite_steamid\x18\x01 \x01(\x06\x12\x17\n\x0fsite_instanceid\x18\x02 \x01(\x06\x12\x17\n\x0f\x63lient_local_ip\x18\x03 \x01(\x07\"C\n)CSiteLicense_InitiateAssociation_Response\x12\x16\n\x0e\x63onnection_key\x18\x01 \x01(\x0c\":\n$CSiteLicense_LCSAuthenticate_Request\x12\x12\n\ninstanceid\x18\x01 \x01(\x06\"z\n%CSiteLicense_LCSAuthenticate_Response\x12\x0f\n\x07site_id\x18\x01 \x01(\x04\x12\x11\n\tsite_name\x18\x02 \x01(\t\x12\x13\n\x0bnew_session\x18\x03 \x01(\x08\x12\x18\n\x10no_site_licenses\x18\x04 \x01(\x08\"t\n%CSiteLicense_LCSAssociateUser_Request\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12\x10\n\x08local_ip\x18\x02 \x01(\x07\x12\x12\n\ninstanceid\x18\x03 \x01(\x06\x12\x14\n\x0cmachine_name\x18\x04 \x01(\t\"(\n&CSiteLicense_LCSAssociateUser_Response\"]\n\'CSiteLicense_ClientSeatCheckout_Request\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12\x12\n\ninstanceid\x18\x02 \x01(\x06\x12\r\n\x05\x61ppid\x18\x03 \x01(\r\"*\n(CSiteLicense_ClientSeatCheckout_Response\"b\n,CSiteLicense_ClientGetAvailableSeats_Request\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12\x12\n\ninstanceid\x18\x02 \x01(\x06\x12\r\n\x05\x61ppid\x18\x03 \x01(\r\"H\n-CSiteLicense_ClientGetAvailableSeats_Response\x12\x17\n\x0f\x61vailable_seats\x18\x01 \x01(\r2\xa3\x04\n\x11SiteManagerClient\x12\xaf\x01\n\x0eIncomingClient\x12*.CSiteManagerClient_IncomingClient_Request\x1a+.CSiteManagerClient_IncomingClient_Response\"D\x82\xb5\x18@Rack informing site manager of new inbound client PSK connection\x12\x93\x01\n\x1e\x43lientSeatCheckoutNotification\x12-.CSiteLicense_ClientSeatCheckout_Notification\x1a\x0b.NoResponse\"5\x82\xb5\x18\x31Notify client directly about seat checkout result\x12\x9a\x01\n\x1bTrackedPaymentsNotification\x12\x30.CSiteManagerClient_TrackedPayments_Notification\x1a\x0b.NoResponse\"<\x82\xb5\x18\x38Rack informing site manager of existing tracked payments\x1a)\x82\xb5\x18!Local site manager client service\xc0\xb5\x18\x02\x32\xd5\x06\n\x0bSiteLicense\x12\xa4\x01\n\x13InitiateAssociation\x12).CSiteLicense_InitiateAssociation_Request\x1a*.CSiteLicense_InitiateAssociation_Response\"6\x82\xb5\x18\x32\x43lient is requesting connetion info for local site\x12\x86\x01\n\x0fLCSAuthenticate\x12%.CSiteLicense_LCSAuthenticate_Request\x1a&.CSiteLicense_LCSAuthenticate_Response\"$\x82\xb5\x18 Local cafe server authentication\x12\x9d\x01\n\x10LCSAssociateUser\x12&.CSiteLicense_LCSAssociateUser_Request\x1a\'.CSiteLicense_LCSAssociateUser_Response\"8\x82\xb5\x18\x34Local cafe server wants to grant user access to site\x12\x9e\x01\n\x12\x43lientSeatCheckout\x12(.CSiteLicense_ClientSeatCheckout_Request\x1a).CSiteLicense_ClientSeatCheckout_Response\"3\x82\xb5\x18/Client is requesting use of a site license seat\x12\xba\x01\n\x17\x43lientGetAvailableSeats\x12-.CSiteLicense_ClientGetAvailableSeats_Request\x1a..CSiteLicense_ClientGetAvailableSeats_Response\"@\x82\xb5\x18<Client is requesting the number of currently available seats\x1a\x18\x82\xb5\x18\x14Site License serviceB\x03\x90\x01\x01'
   ,
-  dependencies=[steammessages__unified__base__pb2.DESCRIPTOR,])
+  dependencies=[steammessages__base__pb2.DESCRIPTOR,steammessages__unified__base__pb2.DESCRIPTOR,])
 
 
 
@@ -36,6 +36,7 @@ _CSITEMANAGERCLIENT_INCOMINGCLIENT_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='site_instanceid', full_name='CSiteManagerClient_IncomingClient_Request.site_instanceid', index=0,
@@ -43,28 +44,28 @@ _CSITEMANAGERCLIENT_INCOMINGCLIENT_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='client_steamid', full_name='CSiteManagerClient_IncomingClient_Request.client_steamid', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='client_local_ip', full_name='CSiteManagerClient_IncomingClient_Request.client_local_ip', index=2,
       number=3, type=7, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='connection_key', full_name='CSiteManagerClient_IncomingClient_Request.connection_key', index=3,
       number=4, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -77,8 +78,8 @@ _CSITEMANAGERCLIENT_INCOMINGCLIENT_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=71,
-  serialized_end=212,
+  serialized_start=97,
+  serialized_end=238,
 )
 
 
@@ -88,6 +89,7 @@ _CSITEMANAGERCLIENT_INCOMINGCLIENT_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -101,8 +103,8 @@ _CSITEMANAGERCLIENT_INCOMINGCLIENT_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=214,
-  serialized_end=258,
+  serialized_start=240,
+  serialized_end=284,
 )
 
 
@@ -112,6 +114,7 @@ _CSITELICENSE_CLIENTSEATCHECKOUT_NOTIFICATION = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CSiteLicense_ClientSeatCheckout_Notification.appid', index=0,
@@ -119,14 +122,14 @@ _CSITELICENSE_CLIENTSEATCHECKOUT_NOTIFICATION = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='eresult', full_name='CSiteLicense_ClientSeatCheckout_Notification.eresult', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -139,8 +142,8 @@ _CSITELICENSE_CLIENTSEATCHECKOUT_NOTIFICATION = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=260,
-  serialized_end=338,
+  serialized_start=286,
+  serialized_end=364,
 )
 
 
@@ -150,6 +153,7 @@ _CSITEMANAGERCLIENT_TRACKEDPAYMENTS_NOTIFICATION_PAYMENT = _descriptor.Descripto
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='transid', full_name='CSiteManagerClient_TrackedPayments_Notification.Payment.transid', index=0,
@@ -157,70 +161,70 @@ _CSITEMANAGERCLIENT_TRACKEDPAYMENTS_NOTIFICATION_PAYMENT = _descriptor.Descripto
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CSiteManagerClient_TrackedPayments_Notification.Payment.steamid', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='amount', full_name='CSiteManagerClient_TrackedPayments_Notification.Payment.amount', index=2,
       number=3, type=3, cpp_type=2, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='ecurrency', full_name='CSiteManagerClient_TrackedPayments_Notification.Payment.ecurrency', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='time_created', full_name='CSiteManagerClient_TrackedPayments_Notification.Payment.time_created', index=4,
       number=5, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='purchase_status', full_name='CSiteManagerClient_TrackedPayments_Notification.Payment.purchase_status', index=5,
       number=6, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='machine_name', full_name='CSiteManagerClient_TrackedPayments_Notification.Payment.machine_name', index=6,
       number=7, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='persona_name', full_name='CSiteManagerClient_TrackedPayments_Notification.Payment.persona_name', index=7,
       number=8, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='profile_url', full_name='CSiteManagerClient_TrackedPayments_Notification.Payment.profile_url', index=8,
       number=9, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='avatar_url', full_name='CSiteManagerClient_TrackedPayments_Notification.Payment.avatar_url', index=9,
       number=10, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -233,8 +237,8 @@ _CSITEMANAGERCLIENT_TRACKEDPAYMENTS_NOTIFICATION_PAYMENT = _descriptor.Descripto
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=486,
-  serialized_end=696,
+  serialized_start=512,
+  serialized_end=722,
 )
 
 _CSITEMANAGERCLIENT_TRACKEDPAYMENTS_NOTIFICATION = _descriptor.Descriptor(
@@ -243,6 +247,7 @@ _CSITEMANAGERCLIENT_TRACKEDPAYMENTS_NOTIFICATION = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='site_id', full_name='CSiteManagerClient_TrackedPayments_Notification.site_id', index=0,
@@ -250,14 +255,14 @@ _CSITEMANAGERCLIENT_TRACKEDPAYMENTS_NOTIFICATION = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='payments', full_name='CSiteManagerClient_TrackedPayments_Notification.payments', index=1,
       number=2, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -270,8 +275,8 @@ _CSITEMANAGERCLIENT_TRACKEDPAYMENTS_NOTIFICATION = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=341,
-  serialized_end=696,
+  serialized_start=367,
+  serialized_end=722,
 )
 
 
@@ -281,6 +286,7 @@ _CSITELICENSE_INITIATEASSOCIATION_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='site_steamid', full_name='CSiteLicense_InitiateAssociation_Request.site_steamid', index=0,
@@ -288,21 +294,21 @@ _CSITELICENSE_INITIATEASSOCIATION_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='site_instanceid', full_name='CSiteLicense_InitiateAssociation_Request.site_instanceid', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='client_local_ip', full_name='CSiteLicense_InitiateAssociation_Request.client_local_ip', index=2,
       number=3, type=7, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -315,8 +321,8 @@ _CSITELICENSE_INITIATEASSOCIATION_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=698,
-  serialized_end=812,
+  serialized_start=724,
+  serialized_end=838,
 )
 
 
@@ -326,14 +332,15 @@ _CSITELICENSE_INITIATEASSOCIATION_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='connection_key', full_name='CSiteLicense_InitiateAssociation_Response.connection_key', index=0,
       number=1, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -346,8 +353,8 @@ _CSITELICENSE_INITIATEASSOCIATION_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=814,
-  serialized_end=881,
+  serialized_start=840,
+  serialized_end=907,
 )
 
 
@@ -357,6 +364,7 @@ _CSITELICENSE_LCSAUTHENTICATE_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='instanceid', full_name='CSiteLicense_LCSAuthenticate_Request.instanceid', index=0,
@@ -364,7 +372,7 @@ _CSITELICENSE_LCSAUTHENTICATE_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -377,8 +385,8 @@ _CSITELICENSE_LCSAUTHENTICATE_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=883,
-  serialized_end=941,
+  serialized_start=909,
+  serialized_end=967,
 )
 
 
@@ -388,6 +396,7 @@ _CSITELICENSE_LCSAUTHENTICATE_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='site_id', full_name='CSiteLicense_LCSAuthenticate_Response.site_id', index=0,
@@ -395,28 +404,28 @@ _CSITELICENSE_LCSAUTHENTICATE_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='site_name', full_name='CSiteLicense_LCSAuthenticate_Response.site_name', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='new_session', full_name='CSiteLicense_LCSAuthenticate_Response.new_session', index=2,
       number=3, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='no_site_licenses', full_name='CSiteLicense_LCSAuthenticate_Response.no_site_licenses', index=3,
       number=4, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -429,8 +438,8 @@ _CSITELICENSE_LCSAUTHENTICATE_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=943,
-  serialized_end=1065,
+  serialized_start=969,
+  serialized_end=1091,
 )
 
 
@@ -440,6 +449,7 @@ _CSITELICENSE_LCSASSOCIATEUSER_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CSiteLicense_LCSAssociateUser_Request.steamid', index=0,
@@ -447,28 +457,28 @@ _CSITELICENSE_LCSASSOCIATEUSER_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='local_ip', full_name='CSiteLicense_LCSAssociateUser_Request.local_ip', index=1,
       number=2, type=7, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='instanceid', full_name='CSiteLicense_LCSAssociateUser_Request.instanceid', index=2,
       number=3, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='machine_name', full_name='CSiteLicense_LCSAssociateUser_Request.machine_name', index=3,
       number=4, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -481,8 +491,8 @@ _CSITELICENSE_LCSASSOCIATEUSER_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1067,
-  serialized_end=1183,
+  serialized_start=1093,
+  serialized_end=1209,
 )
 
 
@@ -492,6 +502,7 @@ _CSITELICENSE_LCSASSOCIATEUSER_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -505,8 +516,8 @@ _CSITELICENSE_LCSASSOCIATEUSER_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1185,
-  serialized_end=1225,
+  serialized_start=1211,
+  serialized_end=1251,
 )
 
 
@@ -516,6 +527,7 @@ _CSITELICENSE_CLIENTSEATCHECKOUT_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CSiteLicense_ClientSeatCheckout_Request.steamid', index=0,
@@ -523,21 +535,21 @@ _CSITELICENSE_CLIENTSEATCHECKOUT_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='instanceid', full_name='CSiteLicense_ClientSeatCheckout_Request.instanceid', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='appid', full_name='CSiteLicense_ClientSeatCheckout_Request.appid', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -550,8 +562,8 @@ _CSITELICENSE_CLIENTSEATCHECKOUT_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1227,
-  serialized_end=1320,
+  serialized_start=1253,
+  serialized_end=1346,
 )
 
 
@@ -561,6 +573,7 @@ _CSITELICENSE_CLIENTSEATCHECKOUT_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -574,8 +587,8 @@ _CSITELICENSE_CLIENTSEATCHECKOUT_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1322,
-  serialized_end=1364,
+  serialized_start=1348,
+  serialized_end=1390,
 )
 
 
@@ -585,6 +598,7 @@ _CSITELICENSE_CLIENTGETAVAILABLESEATS_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CSiteLicense_ClientGetAvailableSeats_Request.steamid', index=0,
@@ -592,21 +606,21 @@ _CSITELICENSE_CLIENTGETAVAILABLESEATS_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='instanceid', full_name='CSiteLicense_ClientGetAvailableSeats_Request.instanceid', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='appid', full_name='CSiteLicense_ClientGetAvailableSeats_Request.appid', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -619,8 +633,8 @@ _CSITELICENSE_CLIENTGETAVAILABLESEATS_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1366,
-  serialized_end=1464,
+  serialized_start=1392,
+  serialized_end=1490,
 )
 
 
@@ -630,6 +644,7 @@ _CSITELICENSE_CLIENTGETAVAILABLESEATS_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='available_seats', full_name='CSiteLicense_ClientGetAvailableSeats_Response.available_seats', index=0,
@@ -637,7 +652,7 @@ _CSITELICENSE_CLIENTGETAVAILABLESEATS_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -650,8 +665,8 @@ _CSITELICENSE_CLIENTGETAVAILABLESEATS_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1466,
-  serialized_end=1538,
+  serialized_start=1492,
+  serialized_end=1564,
 )
 
 _CSITEMANAGERCLIENT_TRACKEDPAYMENTS_NOTIFICATION_PAYMENT.containing_type = _CSITEMANAGERCLIENT_TRACKEDPAYMENTS_NOTIFICATION
@@ -672,110 +687,110 @@ DESCRIPTOR.message_types_by_name['CSiteLicense_ClientGetAvailableSeats_Request']
 DESCRIPTOR.message_types_by_name['CSiteLicense_ClientGetAvailableSeats_Response'] = _CSITELICENSE_CLIENTGETAVAILABLESEATS_RESPONSE
 _sym_db.RegisterFileDescriptor(DESCRIPTOR)
 
-CSiteManagerClient_IncomingClient_Request = _reflection.GeneratedProtocolMessageType('CSiteManagerClient_IncomingClient_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CSITEMANAGERCLIENT_INCOMINGCLIENT_REQUEST,
-  __module__ = 'steammessages_site_license_pb2'
+CSiteManagerClient_IncomingClient_Request = _reflection.GeneratedProtocolMessageType('CSiteManagerClient_IncomingClient_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CSITEMANAGERCLIENT_INCOMINGCLIENT_REQUEST,
+  '__module__' : 'steammessages_site_license_pb2'
   # @@protoc_insertion_point(class_scope:CSiteManagerClient_IncomingClient_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CSiteManagerClient_IncomingClient_Request)
 
-CSiteManagerClient_IncomingClient_Response = _reflection.GeneratedProtocolMessageType('CSiteManagerClient_IncomingClient_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CSITEMANAGERCLIENT_INCOMINGCLIENT_RESPONSE,
-  __module__ = 'steammessages_site_license_pb2'
+CSiteManagerClient_IncomingClient_Response = _reflection.GeneratedProtocolMessageType('CSiteManagerClient_IncomingClient_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CSITEMANAGERCLIENT_INCOMINGCLIENT_RESPONSE,
+  '__module__' : 'steammessages_site_license_pb2'
   # @@protoc_insertion_point(class_scope:CSiteManagerClient_IncomingClient_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CSiteManagerClient_IncomingClient_Response)
 
-CSiteLicense_ClientSeatCheckout_Notification = _reflection.GeneratedProtocolMessageType('CSiteLicense_ClientSeatCheckout_Notification', (_message.Message,), dict(
-  DESCRIPTOR = _CSITELICENSE_CLIENTSEATCHECKOUT_NOTIFICATION,
-  __module__ = 'steammessages_site_license_pb2'
+CSiteLicense_ClientSeatCheckout_Notification = _reflection.GeneratedProtocolMessageType('CSiteLicense_ClientSeatCheckout_Notification', (_message.Message,), {
+  'DESCRIPTOR' : _CSITELICENSE_CLIENTSEATCHECKOUT_NOTIFICATION,
+  '__module__' : 'steammessages_site_license_pb2'
   # @@protoc_insertion_point(class_scope:CSiteLicense_ClientSeatCheckout_Notification)
-  ))
+  })
 _sym_db.RegisterMessage(CSiteLicense_ClientSeatCheckout_Notification)
 
-CSiteManagerClient_TrackedPayments_Notification = _reflection.GeneratedProtocolMessageType('CSiteManagerClient_TrackedPayments_Notification', (_message.Message,), dict(
+CSiteManagerClient_TrackedPayments_Notification = _reflection.GeneratedProtocolMessageType('CSiteManagerClient_TrackedPayments_Notification', (_message.Message,), {
 
-  Payment = _reflection.GeneratedProtocolMessageType('Payment', (_message.Message,), dict(
-    DESCRIPTOR = _CSITEMANAGERCLIENT_TRACKEDPAYMENTS_NOTIFICATION_PAYMENT,
-    __module__ = 'steammessages_site_license_pb2'
+  'Payment' : _reflection.GeneratedProtocolMessageType('Payment', (_message.Message,), {
+    'DESCRIPTOR' : _CSITEMANAGERCLIENT_TRACKEDPAYMENTS_NOTIFICATION_PAYMENT,
+    '__module__' : 'steammessages_site_license_pb2'
     # @@protoc_insertion_point(class_scope:CSiteManagerClient_TrackedPayments_Notification.Payment)
-    ))
+    })
   ,
-  DESCRIPTOR = _CSITEMANAGERCLIENT_TRACKEDPAYMENTS_NOTIFICATION,
-  __module__ = 'steammessages_site_license_pb2'
+  'DESCRIPTOR' : _CSITEMANAGERCLIENT_TRACKEDPAYMENTS_NOTIFICATION,
+  '__module__' : 'steammessages_site_license_pb2'
   # @@protoc_insertion_point(class_scope:CSiteManagerClient_TrackedPayments_Notification)
-  ))
+  })
 _sym_db.RegisterMessage(CSiteManagerClient_TrackedPayments_Notification)
 _sym_db.RegisterMessage(CSiteManagerClient_TrackedPayments_Notification.Payment)
 
-CSiteLicense_InitiateAssociation_Request = _reflection.GeneratedProtocolMessageType('CSiteLicense_InitiateAssociation_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CSITELICENSE_INITIATEASSOCIATION_REQUEST,
-  __module__ = 'steammessages_site_license_pb2'
+CSiteLicense_InitiateAssociation_Request = _reflection.GeneratedProtocolMessageType('CSiteLicense_InitiateAssociation_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CSITELICENSE_INITIATEASSOCIATION_REQUEST,
+  '__module__' : 'steammessages_site_license_pb2'
   # @@protoc_insertion_point(class_scope:CSiteLicense_InitiateAssociation_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CSiteLicense_InitiateAssociation_Request)
 
-CSiteLicense_InitiateAssociation_Response = _reflection.GeneratedProtocolMessageType('CSiteLicense_InitiateAssociation_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CSITELICENSE_INITIATEASSOCIATION_RESPONSE,
-  __module__ = 'steammessages_site_license_pb2'
+CSiteLicense_InitiateAssociation_Response = _reflection.GeneratedProtocolMessageType('CSiteLicense_InitiateAssociation_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CSITELICENSE_INITIATEASSOCIATION_RESPONSE,
+  '__module__' : 'steammessages_site_license_pb2'
   # @@protoc_insertion_point(class_scope:CSiteLicense_InitiateAssociation_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CSiteLicense_InitiateAssociation_Response)
 
-CSiteLicense_LCSAuthenticate_Request = _reflection.GeneratedProtocolMessageType('CSiteLicense_LCSAuthenticate_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CSITELICENSE_LCSAUTHENTICATE_REQUEST,
-  __module__ = 'steammessages_site_license_pb2'
+CSiteLicense_LCSAuthenticate_Request = _reflection.GeneratedProtocolMessageType('CSiteLicense_LCSAuthenticate_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CSITELICENSE_LCSAUTHENTICATE_REQUEST,
+  '__module__' : 'steammessages_site_license_pb2'
   # @@protoc_insertion_point(class_scope:CSiteLicense_LCSAuthenticate_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CSiteLicense_LCSAuthenticate_Request)
 
-CSiteLicense_LCSAuthenticate_Response = _reflection.GeneratedProtocolMessageType('CSiteLicense_LCSAuthenticate_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CSITELICENSE_LCSAUTHENTICATE_RESPONSE,
-  __module__ = 'steammessages_site_license_pb2'
+CSiteLicense_LCSAuthenticate_Response = _reflection.GeneratedProtocolMessageType('CSiteLicense_LCSAuthenticate_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CSITELICENSE_LCSAUTHENTICATE_RESPONSE,
+  '__module__' : 'steammessages_site_license_pb2'
   # @@protoc_insertion_point(class_scope:CSiteLicense_LCSAuthenticate_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CSiteLicense_LCSAuthenticate_Response)
 
-CSiteLicense_LCSAssociateUser_Request = _reflection.GeneratedProtocolMessageType('CSiteLicense_LCSAssociateUser_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CSITELICENSE_LCSASSOCIATEUSER_REQUEST,
-  __module__ = 'steammessages_site_license_pb2'
+CSiteLicense_LCSAssociateUser_Request = _reflection.GeneratedProtocolMessageType('CSiteLicense_LCSAssociateUser_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CSITELICENSE_LCSASSOCIATEUSER_REQUEST,
+  '__module__' : 'steammessages_site_license_pb2'
   # @@protoc_insertion_point(class_scope:CSiteLicense_LCSAssociateUser_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CSiteLicense_LCSAssociateUser_Request)
 
-CSiteLicense_LCSAssociateUser_Response = _reflection.GeneratedProtocolMessageType('CSiteLicense_LCSAssociateUser_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CSITELICENSE_LCSASSOCIATEUSER_RESPONSE,
-  __module__ = 'steammessages_site_license_pb2'
+CSiteLicense_LCSAssociateUser_Response = _reflection.GeneratedProtocolMessageType('CSiteLicense_LCSAssociateUser_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CSITELICENSE_LCSASSOCIATEUSER_RESPONSE,
+  '__module__' : 'steammessages_site_license_pb2'
   # @@protoc_insertion_point(class_scope:CSiteLicense_LCSAssociateUser_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CSiteLicense_LCSAssociateUser_Response)
 
-CSiteLicense_ClientSeatCheckout_Request = _reflection.GeneratedProtocolMessageType('CSiteLicense_ClientSeatCheckout_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CSITELICENSE_CLIENTSEATCHECKOUT_REQUEST,
-  __module__ = 'steammessages_site_license_pb2'
+CSiteLicense_ClientSeatCheckout_Request = _reflection.GeneratedProtocolMessageType('CSiteLicense_ClientSeatCheckout_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CSITELICENSE_CLIENTSEATCHECKOUT_REQUEST,
+  '__module__' : 'steammessages_site_license_pb2'
   # @@protoc_insertion_point(class_scope:CSiteLicense_ClientSeatCheckout_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CSiteLicense_ClientSeatCheckout_Request)
 
-CSiteLicense_ClientSeatCheckout_Response = _reflection.GeneratedProtocolMessageType('CSiteLicense_ClientSeatCheckout_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CSITELICENSE_CLIENTSEATCHECKOUT_RESPONSE,
-  __module__ = 'steammessages_site_license_pb2'
+CSiteLicense_ClientSeatCheckout_Response = _reflection.GeneratedProtocolMessageType('CSiteLicense_ClientSeatCheckout_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CSITELICENSE_CLIENTSEATCHECKOUT_RESPONSE,
+  '__module__' : 'steammessages_site_license_pb2'
   # @@protoc_insertion_point(class_scope:CSiteLicense_ClientSeatCheckout_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CSiteLicense_ClientSeatCheckout_Response)
 
-CSiteLicense_ClientGetAvailableSeats_Request = _reflection.GeneratedProtocolMessageType('CSiteLicense_ClientGetAvailableSeats_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CSITELICENSE_CLIENTGETAVAILABLESEATS_REQUEST,
-  __module__ = 'steammessages_site_license_pb2'
+CSiteLicense_ClientGetAvailableSeats_Request = _reflection.GeneratedProtocolMessageType('CSiteLicense_ClientGetAvailableSeats_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CSITELICENSE_CLIENTGETAVAILABLESEATS_REQUEST,
+  '__module__' : 'steammessages_site_license_pb2'
   # @@protoc_insertion_point(class_scope:CSiteLicense_ClientGetAvailableSeats_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CSiteLicense_ClientGetAvailableSeats_Request)
 
-CSiteLicense_ClientGetAvailableSeats_Response = _reflection.GeneratedProtocolMessageType('CSiteLicense_ClientGetAvailableSeats_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CSITELICENSE_CLIENTGETAVAILABLESEATS_RESPONSE,
-  __module__ = 'steammessages_site_license_pb2'
+CSiteLicense_ClientGetAvailableSeats_Response = _reflection.GeneratedProtocolMessageType('CSiteLicense_ClientGetAvailableSeats_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CSITELICENSE_CLIENTGETAVAILABLESEATS_RESPONSE,
+  '__module__' : 'steammessages_site_license_pb2'
   # @@protoc_insertion_point(class_scope:CSiteLicense_ClientGetAvailableSeats_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CSiteLicense_ClientGetAvailableSeats_Response)
 
 
@@ -786,9 +801,10 @@ _SITEMANAGERCLIENT = _descriptor.ServiceDescriptor(
   full_name='SiteManagerClient',
   file=DESCRIPTOR,
   index=0,
-  serialized_options=_b('\202\265\030!Local site manager client service\300\265\030\002'),
-  serialized_start=1541,
-  serialized_end=2088,
+  serialized_options=b'\202\265\030!Local site manager client service\300\265\030\002',
+  create_key=_descriptor._internal_create_key,
+  serialized_start=1567,
+  serialized_end=2114,
   methods=[
   _descriptor.MethodDescriptor(
     name='IncomingClient',
@@ -797,7 +813,8 @@ _SITEMANAGERCLIENT = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CSITEMANAGERCLIENT_INCOMINGCLIENT_REQUEST,
     output_type=_CSITEMANAGERCLIENT_INCOMINGCLIENT_RESPONSE,
-    serialized_options=_b('\202\265\030@Rack informing site manager of new inbound client PSK connection'),
+    serialized_options=b'\202\265\030@Rack informing site manager of new inbound client PSK connection',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='ClientSeatCheckoutNotification',
@@ -806,7 +823,8 @@ _SITEMANAGERCLIENT = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CSITELICENSE_CLIENTSEATCHECKOUT_NOTIFICATION,
     output_type=steammessages__unified__base__pb2._NORESPONSE,
-    serialized_options=_b('\202\265\0301Notify client directly about seat checkout result'),
+    serialized_options=b'\202\265\0301Notify client directly about seat checkout result',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='TrackedPaymentsNotification',
@@ -815,7 +833,8 @@ _SITEMANAGERCLIENT = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CSITEMANAGERCLIENT_TRACKEDPAYMENTS_NOTIFICATION,
     output_type=steammessages__unified__base__pb2._NORESPONSE,
-    serialized_options=_b('\202\265\0308Rack informing site manager of existing tracked payments'),
+    serialized_options=b'\202\265\0308Rack informing site manager of existing tracked payments',
+    create_key=_descriptor._internal_create_key,
   ),
 ])
 _sym_db.RegisterServiceDescriptor(_SITEMANAGERCLIENT)
@@ -828,9 +847,10 @@ _SITELICENSE = _descriptor.ServiceDescriptor(
   full_name='SiteLicense',
   file=DESCRIPTOR,
   index=1,
-  serialized_options=_b('\202\265\030\024Site License service'),
-  serialized_start=2091,
-  serialized_end=2944,
+  serialized_options=b'\202\265\030\024Site License service',
+  create_key=_descriptor._internal_create_key,
+  serialized_start=2117,
+  serialized_end=2970,
   methods=[
   _descriptor.MethodDescriptor(
     name='InitiateAssociation',
@@ -839,7 +859,8 @@ _SITELICENSE = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CSITELICENSE_INITIATEASSOCIATION_REQUEST,
     output_type=_CSITELICENSE_INITIATEASSOCIATION_RESPONSE,
-    serialized_options=_b('\202\265\0302Client is requesting connetion info for local site'),
+    serialized_options=b'\202\265\0302Client is requesting connetion info for local site',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='LCSAuthenticate',
@@ -848,7 +869,8 @@ _SITELICENSE = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CSITELICENSE_LCSAUTHENTICATE_REQUEST,
     output_type=_CSITELICENSE_LCSAUTHENTICATE_RESPONSE,
-    serialized_options=_b('\202\265\030 Local cafe server authentication'),
+    serialized_options=b'\202\265\030 Local cafe server authentication',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='LCSAssociateUser',
@@ -857,7 +879,8 @@ _SITELICENSE = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CSITELICENSE_LCSASSOCIATEUSER_REQUEST,
     output_type=_CSITELICENSE_LCSASSOCIATEUSER_RESPONSE,
-    serialized_options=_b('\202\265\0304Local cafe server wants to grant user access to site'),
+    serialized_options=b'\202\265\0304Local cafe server wants to grant user access to site',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='ClientSeatCheckout',
@@ -866,7 +889,8 @@ _SITELICENSE = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CSITELICENSE_CLIENTSEATCHECKOUT_REQUEST,
     output_type=_CSITELICENSE_CLIENTSEATCHECKOUT_RESPONSE,
-    serialized_options=_b('\202\265\030/Client is requesting use of a site license seat'),
+    serialized_options=b'\202\265\030/Client is requesting use of a site license seat',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='ClientGetAvailableSeats',
@@ -875,7 +899,8 @@ _SITELICENSE = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CSITELICENSE_CLIENTGETAVAILABLESEATS_REQUEST,
     output_type=_CSITELICENSE_CLIENTGETAVAILABLESEATS_RESPONSE,
-    serialized_options=_b('\202\265\030<Client is requesting the number of currently available seats'),
+    serialized_options=b'\202\265\030<Client is requesting the number of currently available seats',
+    create_key=_descriptor._internal_create_key,
   ),
 ])
 _sym_db.RegisterServiceDescriptor(_SITELICENSE)
diff --git a/steam/protobufs/steammessages_star_pb2.py b/steam/protobufs/steammessages_star_pb2.py
new file mode 100644
index 0000000..1cbfd56
--- /dev/null
+++ b/steam/protobufs/steammessages_star_pb2.py
@@ -0,0 +1,561 @@
+# -*- coding: utf-8 -*-
+# Generated by the protocol buffer compiler.  DO NOT EDIT!
+# source: steammessages_star.proto
+"""Generated protocol buffer code."""
+from google.protobuf.internal import enum_type_wrapper
+from google.protobuf import descriptor as _descriptor
+from google.protobuf import message as _message
+from google.protobuf import reflection as _reflection
+from google.protobuf import symbol_database as _symbol_database
+from google.protobuf import service as _service
+from google.protobuf import service_reflection
+# @@protoc_insertion_point(imports)
+
+_sym_db = _symbol_database.Default()
+
+
+import steam.protobufs.steammessages_base_pb2 as steammessages__base__pb2
+import steam.protobufs.steammessages_unified_base_pb2 as steammessages__unified__base__pb2
+
+
+DESCRIPTOR = _descriptor.FileDescriptor(
+  name='steammessages_star.proto',
+  package='',
+  syntax='proto2',
+  serialized_options=b'\220\001\001',
+  create_key=_descriptor._internal_create_key,
+  serialized_pb=b'\n\x18steammessages_star.proto\x1a\x18steammessages_base.proto\x1a steammessages_unified_base.proto\"\xc6\x01\n\x13\x43STAR_KeyValueQuery\x12\x43\n\x03key\x18\x01 \x01(\tB6\x82\xb5\x18\x32key to search for in JSON path format (SQL subset)\x12j\n\x05value\x18\x02 \x01(\tB[\x82\xb5\x18Wthe value to compare against (the JSON value will be compared for equality as a string)\"\xcb\x01\n\x16\x43STAR_GlyphQueryParams\x12s\n\tbundle_id\x18\x01 \x01(\x04\x42`\x82\xb5\x18\\if provided, Bundle ID is used instead of the other query parameters (much faster SQL query)\x12<\n\x07queries\x18\x02 \x03(\x0b\x32\x14.CSTAR_KeyValueQueryB\x15\x82\xb5\x18\x11key value queries\"\x94\x02\n\x1b\x43STAR_ReadGlyphData_Request\x12\x65\n\x0cquery_params\x18\x01 \x01(\x0b\x32\x17.CSTAR_GlyphQueryParamsB6\x82\xb5\x18\x32parameters to identify the glyphs to read from SQL\x12\x8d\x01\n\x1elast_modified_time_lower_limit\x18\x02 \x01(\tBe\x82\xb5\x18\x61if provided, only return glyphs modified more recently than this timestamp  (RFC 3339 UTC format)\"\xec\x01\n\x0f\x43STAR_GlyphData\x12<\n\nglyph_guid\x18\x01 \x01(\x0c\x42(\x82\xb5\x18$GUID uniquely identifying this glyph\x12\x65\n\x13glyph_last_modified\x18\x02 \x01(\tBH\x82\xb5\x18\x44timestamp of when this glyph was last modified (RFC 3339 UTC format)\x12\x34\n\x0fglyph_json_data\x18\x03 \x01(\tB\x1b\x82\xb5\x18\x17JSON encoded glyph data\"\xb4\x01\n\x1c\x43STAR_WriteGlyphData_Request\x12@\n\tbundle_id\x18\x01 \x01(\x04\x42-\x82\xb5\x18)the Bundle ID of the glyphs to be written\x12R\n\nglyph_data\x18\x02 \x03(\x0b\x32\x10.CSTAR_GlyphDataB,\x82\xb5\x18(one or more items of glyph data to write\"\x7f\n\rCSTAR_Request\x12\x35\n\x0fread_glyph_data\x18\x01 \x01(\x0b\x32\x1c.CSTAR_ReadGlyphData_Request\x12\x37\n\x10write_glyph_data\x18\x02 \x01(\x0b\x32\x1d.CSTAR_WriteGlyphData_Request\"\xf1\x01\n\x1c\x43STAR_ReadGlyphData_Response\x12|\n\tbundle_id\x18\x01 \x01(\x04\x42i\x82\xb5\x18\x65the Bundle ID of the returned glyphs; the client should send this back to optimize subsequent queries\x12S\n\nglyph_data\x18\x02 \x03(\x0b\x32\x10.CSTAR_GlyphDataB-\x82\xb5\x18)zero or more items of returned glyph data\"w\n\x1d\x43STAR_WriteGlyphData_Response\x12V\n\x06result\x18\x01 \x03(\x0e\x32\x18.E_STAR_GlyphWriteResultB,\x82\xb5\x18(write result for each item of glyph data\"\x82\x01\n\x0e\x43STAR_Response\x12\x36\n\x0fread_glyph_data\x18\x01 \x01(\x0b\x32\x1d.CSTAR_ReadGlyphData_Response\x12\x38\n\x10write_glyph_data\x18\x02 \x01(\x0b\x32\x1e.CSTAR_WriteGlyphData_Response*\xc1\x01\n\x17\x45_STAR_GlyphWriteResult\x12%\n!k_E_STAR_GlyphWriteResult_Success\x10\x00\x12,\n(k_E_STAR_GlyphWriteResult_InvalidMessage\x10\x01\x12)\n%k_E_STAR_GlyphWriteResult_InvalidJSON\x10\x02\x12&\n\"k_E_STAR_GlyphWriteResult_SQLError\x10\x03\x32\x85\x01\n\x04STAR\x12R\n\x0eProcessMessage\x12\x0e.CSTAR_Request\x1a\x0f.CSTAR_Response\"\x1f\x82\xb5\x18\x1bprocesses a generic message\x1a)\x82\xb5\x18%service for reading/writing STAR dataB\x03\x90\x01\x01'
+  ,
+  dependencies=[steammessages__base__pb2.DESCRIPTOR,steammessages__unified__base__pb2.DESCRIPTOR,])
+
+_E_STAR_GLYPHWRITERESULT = _descriptor.EnumDescriptor(
+  name='E_STAR_GlyphWriteResult',
+  full_name='E_STAR_GlyphWriteResult',
+  filename=None,
+  file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
+  values=[
+    _descriptor.EnumValueDescriptor(
+      name='k_E_STAR_GlyphWriteResult_Success', index=0, number=0,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_E_STAR_GlyphWriteResult_InvalidMessage', index=1, number=1,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_E_STAR_GlyphWriteResult_InvalidJSON', index=2, number=2,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_E_STAR_GlyphWriteResult_SQLError', index=3, number=3,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+  ],
+  containing_type=None,
+  serialized_options=None,
+  serialized_start=1824,
+  serialized_end=2017,
+)
+_sym_db.RegisterEnumDescriptor(_E_STAR_GLYPHWRITERESULT)
+
+E_STAR_GlyphWriteResult = enum_type_wrapper.EnumTypeWrapper(_E_STAR_GLYPHWRITERESULT)
+k_E_STAR_GlyphWriteResult_Success = 0
+k_E_STAR_GlyphWriteResult_InvalidMessage = 1
+k_E_STAR_GlyphWriteResult_InvalidJSON = 2
+k_E_STAR_GlyphWriteResult_SQLError = 3
+
+
+
+_CSTAR_KEYVALUEQUERY = _descriptor.Descriptor(
+  name='CSTAR_KeyValueQuery',
+  full_name='CSTAR_KeyValueQuery',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='key', full_name='CSTAR_KeyValueQuery.key', index=0,
+      number=1, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\0302key to search for in JSON path format (SQL subset)', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='value', full_name='CSTAR_KeyValueQuery.value', index=1,
+      number=2, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030Wthe value to compare against (the JSON value will be compared for equality as a string)', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=89,
+  serialized_end=287,
+)
+
+
+_CSTAR_GLYPHQUERYPARAMS = _descriptor.Descriptor(
+  name='CSTAR_GlyphQueryParams',
+  full_name='CSTAR_GlyphQueryParams',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='bundle_id', full_name='CSTAR_GlyphQueryParams.bundle_id', index=0,
+      number=1, type=4, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\\if provided, Bundle ID is used instead of the other query parameters (much faster SQL query)', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='queries', full_name='CSTAR_GlyphQueryParams.queries', index=1,
+      number=2, type=11, cpp_type=10, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\021key value queries', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=290,
+  serialized_end=493,
+)
+
+
+_CSTAR_READGLYPHDATA_REQUEST = _descriptor.Descriptor(
+  name='CSTAR_ReadGlyphData_Request',
+  full_name='CSTAR_ReadGlyphData_Request',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='query_params', full_name='CSTAR_ReadGlyphData_Request.query_params', index=0,
+      number=1, type=11, cpp_type=10, label=1,
+      has_default_value=False, default_value=None,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\0302parameters to identify the glyphs to read from SQL', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='last_modified_time_lower_limit', full_name='CSTAR_ReadGlyphData_Request.last_modified_time_lower_limit', index=1,
+      number=2, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030aif provided, only return glyphs modified more recently than this timestamp  (RFC 3339 UTC format)', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=496,
+  serialized_end=772,
+)
+
+
+_CSTAR_GLYPHDATA = _descriptor.Descriptor(
+  name='CSTAR_GlyphData',
+  full_name='CSTAR_GlyphData',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='glyph_guid', full_name='CSTAR_GlyphData.glyph_guid', index=0,
+      number=1, type=12, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"",
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030$GUID uniquely identifying this glyph', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='glyph_last_modified', full_name='CSTAR_GlyphData.glyph_last_modified', index=1,
+      number=2, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030Dtimestamp of when this glyph was last modified (RFC 3339 UTC format)', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='glyph_json_data', full_name='CSTAR_GlyphData.glyph_json_data', index=2,
+      number=3, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\027JSON encoded glyph data', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=775,
+  serialized_end=1011,
+)
+
+
+_CSTAR_WRITEGLYPHDATA_REQUEST = _descriptor.Descriptor(
+  name='CSTAR_WriteGlyphData_Request',
+  full_name='CSTAR_WriteGlyphData_Request',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='bundle_id', full_name='CSTAR_WriteGlyphData_Request.bundle_id', index=0,
+      number=1, type=4, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030)the Bundle ID of the glyphs to be written', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='glyph_data', full_name='CSTAR_WriteGlyphData_Request.glyph_data', index=1,
+      number=2, type=11, cpp_type=10, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030(one or more items of glyph data to write', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=1014,
+  serialized_end=1194,
+)
+
+
+_CSTAR_REQUEST = _descriptor.Descriptor(
+  name='CSTAR_Request',
+  full_name='CSTAR_Request',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='read_glyph_data', full_name='CSTAR_Request.read_glyph_data', index=0,
+      number=1, type=11, cpp_type=10, label=1,
+      has_default_value=False, default_value=None,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='write_glyph_data', full_name='CSTAR_Request.write_glyph_data', index=1,
+      number=2, type=11, cpp_type=10, label=1,
+      has_default_value=False, default_value=None,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=1196,
+  serialized_end=1323,
+)
+
+
+_CSTAR_READGLYPHDATA_RESPONSE = _descriptor.Descriptor(
+  name='CSTAR_ReadGlyphData_Response',
+  full_name='CSTAR_ReadGlyphData_Response',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='bundle_id', full_name='CSTAR_ReadGlyphData_Response.bundle_id', index=0,
+      number=1, type=4, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030ethe Bundle ID of the returned glyphs; the client should send this back to optimize subsequent queries', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='glyph_data', full_name='CSTAR_ReadGlyphData_Response.glyph_data', index=1,
+      number=2, type=11, cpp_type=10, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030)zero or more items of returned glyph data', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=1326,
+  serialized_end=1567,
+)
+
+
+_CSTAR_WRITEGLYPHDATA_RESPONSE = _descriptor.Descriptor(
+  name='CSTAR_WriteGlyphData_Response',
+  full_name='CSTAR_WriteGlyphData_Response',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='result', full_name='CSTAR_WriteGlyphData_Response.result', index=0,
+      number=1, type=14, cpp_type=8, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030(write result for each item of glyph data', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=1569,
+  serialized_end=1688,
+)
+
+
+_CSTAR_RESPONSE = _descriptor.Descriptor(
+  name='CSTAR_Response',
+  full_name='CSTAR_Response',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='read_glyph_data', full_name='CSTAR_Response.read_glyph_data', index=0,
+      number=1, type=11, cpp_type=10, label=1,
+      has_default_value=False, default_value=None,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='write_glyph_data', full_name='CSTAR_Response.write_glyph_data', index=1,
+      number=2, type=11, cpp_type=10, label=1,
+      has_default_value=False, default_value=None,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=1691,
+  serialized_end=1821,
+)
+
+_CSTAR_GLYPHQUERYPARAMS.fields_by_name['queries'].message_type = _CSTAR_KEYVALUEQUERY
+_CSTAR_READGLYPHDATA_REQUEST.fields_by_name['query_params'].message_type = _CSTAR_GLYPHQUERYPARAMS
+_CSTAR_WRITEGLYPHDATA_REQUEST.fields_by_name['glyph_data'].message_type = _CSTAR_GLYPHDATA
+_CSTAR_REQUEST.fields_by_name['read_glyph_data'].message_type = _CSTAR_READGLYPHDATA_REQUEST
+_CSTAR_REQUEST.fields_by_name['write_glyph_data'].message_type = _CSTAR_WRITEGLYPHDATA_REQUEST
+_CSTAR_READGLYPHDATA_RESPONSE.fields_by_name['glyph_data'].message_type = _CSTAR_GLYPHDATA
+_CSTAR_WRITEGLYPHDATA_RESPONSE.fields_by_name['result'].enum_type = _E_STAR_GLYPHWRITERESULT
+_CSTAR_RESPONSE.fields_by_name['read_glyph_data'].message_type = _CSTAR_READGLYPHDATA_RESPONSE
+_CSTAR_RESPONSE.fields_by_name['write_glyph_data'].message_type = _CSTAR_WRITEGLYPHDATA_RESPONSE
+DESCRIPTOR.message_types_by_name['CSTAR_KeyValueQuery'] = _CSTAR_KEYVALUEQUERY
+DESCRIPTOR.message_types_by_name['CSTAR_GlyphQueryParams'] = _CSTAR_GLYPHQUERYPARAMS
+DESCRIPTOR.message_types_by_name['CSTAR_ReadGlyphData_Request'] = _CSTAR_READGLYPHDATA_REQUEST
+DESCRIPTOR.message_types_by_name['CSTAR_GlyphData'] = _CSTAR_GLYPHDATA
+DESCRIPTOR.message_types_by_name['CSTAR_WriteGlyphData_Request'] = _CSTAR_WRITEGLYPHDATA_REQUEST
+DESCRIPTOR.message_types_by_name['CSTAR_Request'] = _CSTAR_REQUEST
+DESCRIPTOR.message_types_by_name['CSTAR_ReadGlyphData_Response'] = _CSTAR_READGLYPHDATA_RESPONSE
+DESCRIPTOR.message_types_by_name['CSTAR_WriteGlyphData_Response'] = _CSTAR_WRITEGLYPHDATA_RESPONSE
+DESCRIPTOR.message_types_by_name['CSTAR_Response'] = _CSTAR_RESPONSE
+DESCRIPTOR.enum_types_by_name['E_STAR_GlyphWriteResult'] = _E_STAR_GLYPHWRITERESULT
+_sym_db.RegisterFileDescriptor(DESCRIPTOR)
+
+CSTAR_KeyValueQuery = _reflection.GeneratedProtocolMessageType('CSTAR_KeyValueQuery', (_message.Message,), {
+  'DESCRIPTOR' : _CSTAR_KEYVALUEQUERY,
+  '__module__' : 'steammessages_star_pb2'
+  # @@protoc_insertion_point(class_scope:CSTAR_KeyValueQuery)
+  })
+_sym_db.RegisterMessage(CSTAR_KeyValueQuery)
+
+CSTAR_GlyphQueryParams = _reflection.GeneratedProtocolMessageType('CSTAR_GlyphQueryParams', (_message.Message,), {
+  'DESCRIPTOR' : _CSTAR_GLYPHQUERYPARAMS,
+  '__module__' : 'steammessages_star_pb2'
+  # @@protoc_insertion_point(class_scope:CSTAR_GlyphQueryParams)
+  })
+_sym_db.RegisterMessage(CSTAR_GlyphQueryParams)
+
+CSTAR_ReadGlyphData_Request = _reflection.GeneratedProtocolMessageType('CSTAR_ReadGlyphData_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CSTAR_READGLYPHDATA_REQUEST,
+  '__module__' : 'steammessages_star_pb2'
+  # @@protoc_insertion_point(class_scope:CSTAR_ReadGlyphData_Request)
+  })
+_sym_db.RegisterMessage(CSTAR_ReadGlyphData_Request)
+
+CSTAR_GlyphData = _reflection.GeneratedProtocolMessageType('CSTAR_GlyphData', (_message.Message,), {
+  'DESCRIPTOR' : _CSTAR_GLYPHDATA,
+  '__module__' : 'steammessages_star_pb2'
+  # @@protoc_insertion_point(class_scope:CSTAR_GlyphData)
+  })
+_sym_db.RegisterMessage(CSTAR_GlyphData)
+
+CSTAR_WriteGlyphData_Request = _reflection.GeneratedProtocolMessageType('CSTAR_WriteGlyphData_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CSTAR_WRITEGLYPHDATA_REQUEST,
+  '__module__' : 'steammessages_star_pb2'
+  # @@protoc_insertion_point(class_scope:CSTAR_WriteGlyphData_Request)
+  })
+_sym_db.RegisterMessage(CSTAR_WriteGlyphData_Request)
+
+CSTAR_Request = _reflection.GeneratedProtocolMessageType('CSTAR_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CSTAR_REQUEST,
+  '__module__' : 'steammessages_star_pb2'
+  # @@protoc_insertion_point(class_scope:CSTAR_Request)
+  })
+_sym_db.RegisterMessage(CSTAR_Request)
+
+CSTAR_ReadGlyphData_Response = _reflection.GeneratedProtocolMessageType('CSTAR_ReadGlyphData_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CSTAR_READGLYPHDATA_RESPONSE,
+  '__module__' : 'steammessages_star_pb2'
+  # @@protoc_insertion_point(class_scope:CSTAR_ReadGlyphData_Response)
+  })
+_sym_db.RegisterMessage(CSTAR_ReadGlyphData_Response)
+
+CSTAR_WriteGlyphData_Response = _reflection.GeneratedProtocolMessageType('CSTAR_WriteGlyphData_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CSTAR_WRITEGLYPHDATA_RESPONSE,
+  '__module__' : 'steammessages_star_pb2'
+  # @@protoc_insertion_point(class_scope:CSTAR_WriteGlyphData_Response)
+  })
+_sym_db.RegisterMessage(CSTAR_WriteGlyphData_Response)
+
+CSTAR_Response = _reflection.GeneratedProtocolMessageType('CSTAR_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CSTAR_RESPONSE,
+  '__module__' : 'steammessages_star_pb2'
+  # @@protoc_insertion_point(class_scope:CSTAR_Response)
+  })
+_sym_db.RegisterMessage(CSTAR_Response)
+
+
+DESCRIPTOR._options = None
+_CSTAR_KEYVALUEQUERY.fields_by_name['key']._options = None
+_CSTAR_KEYVALUEQUERY.fields_by_name['value']._options = None
+_CSTAR_GLYPHQUERYPARAMS.fields_by_name['bundle_id']._options = None
+_CSTAR_GLYPHQUERYPARAMS.fields_by_name['queries']._options = None
+_CSTAR_READGLYPHDATA_REQUEST.fields_by_name['query_params']._options = None
+_CSTAR_READGLYPHDATA_REQUEST.fields_by_name['last_modified_time_lower_limit']._options = None
+_CSTAR_GLYPHDATA.fields_by_name['glyph_guid']._options = None
+_CSTAR_GLYPHDATA.fields_by_name['glyph_last_modified']._options = None
+_CSTAR_GLYPHDATA.fields_by_name['glyph_json_data']._options = None
+_CSTAR_WRITEGLYPHDATA_REQUEST.fields_by_name['bundle_id']._options = None
+_CSTAR_WRITEGLYPHDATA_REQUEST.fields_by_name['glyph_data']._options = None
+_CSTAR_READGLYPHDATA_RESPONSE.fields_by_name['bundle_id']._options = None
+_CSTAR_READGLYPHDATA_RESPONSE.fields_by_name['glyph_data']._options = None
+_CSTAR_WRITEGLYPHDATA_RESPONSE.fields_by_name['result']._options = None
+
+_STAR = _descriptor.ServiceDescriptor(
+  name='STAR',
+  full_name='STAR',
+  file=DESCRIPTOR,
+  index=0,
+  serialized_options=b'\202\265\030%service for reading/writing STAR data',
+  create_key=_descriptor._internal_create_key,
+  serialized_start=2020,
+  serialized_end=2153,
+  methods=[
+  _descriptor.MethodDescriptor(
+    name='ProcessMessage',
+    full_name='STAR.ProcessMessage',
+    index=0,
+    containing_service=None,
+    input_type=_CSTAR_REQUEST,
+    output_type=_CSTAR_RESPONSE,
+    serialized_options=b'\202\265\030\033processes a generic message',
+    create_key=_descriptor._internal_create_key,
+  ),
+])
+_sym_db.RegisterServiceDescriptor(_STAR)
+
+DESCRIPTOR.services_by_name['STAR'] = _STAR
+
+STAR = service_reflection.GeneratedServiceType('STAR', (_service.Service,), dict(
+  DESCRIPTOR = _STAR,
+  __module__ = 'steammessages_star_pb2'
+  ))
+
+STAR_Stub = service_reflection.GeneratedServiceStubType('STAR_Stub', (STAR,), dict(
+  DESCRIPTOR = _STAR,
+  __module__ = 'steammessages_star_pb2'
+  ))
+
+
+# @@protoc_insertion_point(module_scope)
diff --git a/steam/protobufs/steammessages_steamtv_pb2.py b/steam/protobufs/steammessages_steamtv_pb2.py
new file mode 100644
index 0000000..3dbad4a
--- /dev/null
+++ b/steam/protobufs/steammessages_steamtv_pb2.py
@@ -0,0 +1,4985 @@
+# -*- coding: utf-8 -*-
+# Generated by the protocol buffer compiler.  DO NOT EDIT!
+# source: steammessages_steamtv.proto
+"""Generated protocol buffer code."""
+from google.protobuf.internal import enum_type_wrapper
+from google.protobuf import descriptor as _descriptor
+from google.protobuf import message as _message
+from google.protobuf import reflection as _reflection
+from google.protobuf import symbol_database as _symbol_database
+from google.protobuf import service as _service
+from google.protobuf import service_reflection
+# @@protoc_insertion_point(imports)
+
+_sym_db = _symbol_database.Default()
+
+
+import steam.protobufs.steammessages_base_pb2 as steammessages__base__pb2
+import steam.protobufs.steammessages_unified_base_pb2 as steammessages__unified__base__pb2
+
+
+DESCRIPTOR = _descriptor.FileDescriptor(
+  name='steammessages_steamtv.proto',
+  package='',
+  syntax='proto2',
+  serialized_options=b'\220\001\001',
+  create_key=_descriptor._internal_create_key,
+  serialized_pb=b'\n\x1bsteammessages_steamtv.proto\x1a\x18steammessages_base.proto\x1a steammessages_unified_base.proto\"}\n\'CSteamTV_CreateBroadcastChannel_Request\x12R\n\x0bunique_name\x18\x01 \x01(\tB=\x82\xb5\x18\x39Unique short broadcast channel name, part of Steam.TV URL\"g\n(CSteamTV_CreateBroadcastChannel_Response\x12;\n\x14\x62roadcast_channel_id\x18\x01 \x01(\x06\x42\x1d\x82\xb5\x18\x19\x42roadcast channel ID or 0\"V\n&CSteamTV_GetBroadcastChannelID_Request\x12,\n\x0bunique_name\x18\x01 \x01(\tB\x17\x82\xb5\x18\x13\x43hannel short name)\"\xc5\x01\n\'CSteamTV_GetBroadcastChannelID_Response\x12;\n\x14\x62roadcast_channel_id\x18\x01 \x01(\x06\x42\x1d\x82\xb5\x18\x19\x42roadcast channel ID or 0\x12/\n\x0bunique_name\x18\x02 \x01(\tB\x1a\x82\xb5\x18\x16\x42roadcast channel name\x12,\n\x07steamid\x18\x03 \x01(\x06\x42\x1b\x82\xb5\x18\x17\x42roadcast channel owner\"\xfd\x03\n+CSteamTV_SetBroadcastChannelProfile_Request\x12\x36\n\x14\x62roadcast_channel_id\x18\x01 \x01(\x06\x42\x18\x82\xb5\x18\x14\x42roadcast channel ID\x12#\n\x04name\x18\x02 \x01(\tB\x15\x82\xb5\x18\x11long channel name\x12@\n\x08language\x18\x03 \x01(\tB.\x82\xb5\x18*primary channel language (Steam shortname)\x12.\n\x08headline\x18\x04 \x01(\tB\x1c\x82\xb5\x18\x18short channel desciption\x12,\n\x07summary\x18\x05 \x01(\tB\x1b\x82\xb5\x18\x17long channel desciption\x12.\n\x0b\x61vatar_hash\x18\x06 \x01(\tB\x19\x82\xb5\x18\x15\x63ommunity avatar hash\x12\x30\n\x08schedule\x18\x07 \x01(\tB\x1e\x82\xb5\x18\x1a\x62roadcast channel schedule\x12*\n\x05rules\x18\x08 \x01(\tB\x1b\x82\xb5\x18\x17\x62roadcast channel rules\x12\x43\n\x06panels\x18\t \x01(\tB3\x82\xb5\x18/JSON data representing the channel panel layout\".\n,CSteamTV_SetBroadcastChannelProfile_Response\"e\n+CSteamTV_GetBroadcastChannelProfile_Request\x12\x36\n\x14\x62roadcast_channel_id\x18\x01 \x01(\x06\x42\x18\x82\xb5\x18\x14\x42roadcast channel ID\"\xb6\x04\n,CSteamTV_GetBroadcastChannelProfile_Response\x12R\n\x0bunique_name\x18\x01 \x01(\tB=\x82\xb5\x18\x39Unique short broadcast channel name, part of Steam.TV URL\x12\x32\n\rowner_steamid\x18\x02 \x01(\x06\x42\x1b\x82\xb5\x18\x17\x42roadcast channel owner\x12#\n\x04name\x18\x03 \x01(\tB\x15\x82\xb5\x18\x11long channel name\x12@\n\x08language\x18\x04 \x01(\tB.\x82\xb5\x18*primary channel language (Steam shortname)\x12/\n\x08headline\x18\x05 \x01(\tB\x1d\x82\xb5\x18\x19short channel description\x12-\n\x07summary\x18\x06 \x01(\tB\x1c\x82\xb5\x18\x18long channel description\x12\x30\n\x08schedule\x18\x07 \x01(\tB\x1e\x82\xb5\x18\x1a\x62roadcast channel schedule\x12*\n\x05rules\x18\x08 \x01(\tB\x1b\x82\xb5\x18\x17\x62roadcast channel rules\x12\x43\n\x06panels\x18\t \x01(\tB3\x82\xb5\x18/JSON data representing the channel panel layout\x12\x14\n\x0cis_partnered\x18\n \x01(\x08\"\x91\x04\n)CSteamTV_SetBroadcastChannelImage_Request\x12\x36\n\x14\x62roadcast_channel_id\x18\x01 \x01(\x06\x42\x18\x82\xb5\x18\x14\x42roadcast channel ID\x12Y\n\nimage_type\x18\x02 \x01(\x0e\x32\x14.EBroadcastImageType:\x1ak_EBroadcastImageType_NoneB\x13\x82\xb5\x18\x0f\x45\x42roadcastImage\x12]\n\x0bimage_index\x18\x03 \x01(\rBH\x82\xb5\x18\x44Index of the image (for supporting multiple uploads of the same type\x12(\n\x0bimage_width\x18\x04 \x01(\rB\x13\x82\xb5\x18\x0fwidth in pixels\x12*\n\x0cimage_height\x18\x05 \x01(\rB\x14\x82\xb5\x18\x10height in pixels\x12\x1f\n\tfile_size\x18\x06 \x01(\rB\x0c\x82\xb5\x18\x08in bytes\x12#\n\x0e\x66ile_extension\x18\x07 \x01(\tB\x0b\x82\xb5\x18\x07\x65g .jpg\x12 \n\tfile_hash\x18\x08 \x01(\tB\r\x82\xb5\x18\timage SHA\x12\x34\n\x04undo\x18\t \x01(\x08\x42&\x82\xb5\x18\"indicates this is a delete request\"\x86\x01\n*CSteamTV_SetBroadcastChannelImage_Response\x12X\n\x12replace_image_hash\x18\x01 \x01(\tB<\x82\xb5\x18\x38set if caller should remove previous SHA file from cache\"\xac\x01\n*CSteamTV_GetBroadcastChannelImages_Request\x12\x36\n\x14\x62roadcast_channel_id\x18\x01 \x01(\x06\x42\x18\x82\xb5\x18\x14\x42roadcast channel ID\x12\x46\n\x0bimage_types\x18\x02 \x03(\x0e\x32\x14.EBroadcastImageTypeB\x1b\x82\xb5\x18\x17list of EBroadcastImage\"\xbb\x02\n+CSteamTV_GetBroadcastChannelImages_Response\x12\x43\n\x06images\x18\x01 \x03(\x0b\x32\x33.CSteamTV_GetBroadcastChannelImages_Response.Images\x1a\xc6\x01\n\x06Images\x12[\n\nimage_type\x18\x01 \x01(\x0e\x32\x14.EBroadcastImageType:\x1ak_EBroadcastImageType_NoneB\x15\x82\xb5\x18\x11Type of the image\x12\x32\n\nimage_path\x18\x02 \x01(\tB\x1e\x82\xb5\x18\x1aPath to the uploaded image\x12+\n\x0bimage_index\x18\x03 \x01(\rB\x16\x82\xb5\x18\x12Index of the image\"\x86\x05\n/CSteamTV_SetBroadcastChannelLinkRegions_Request\x12\x36\n\x14\x62roadcast_channel_id\x18\x01 \x01(\x06\x42\x18\x82\xb5\x18\x14\x42roadcast channel ID\x12\x45\n\x05links\x18\x02 \x03(\x0b\x32\x36.CSteamTV_SetBroadcastChannelLinkRegions_Request.Links\x1a\xd3\x03\n\x05Links\x12L\n\nlink_index\x18\x01 \x01(\rB8\x82\xb5\x18\x34Index of the link (lower number has higher priority)\x12\x15\n\x03url\x18\x02 \x01(\tB\x08\x82\xb5\x18\x04URL \x12O\n\x10link_description\x18\x03 \x01(\tB5\x82\xb5\x18\x31URL description that will show in the link region\x12\x44\n\x04left\x18\x04 \x01(\rB6\x82\xb5\x18\x32Left X position in 100th of a % of the video width\x12\x43\n\x03top\x18\x05 \x01(\rB6\x82\xb5\x18\x32Top Y position in 100th of a % of the video height\x12\x42\n\x05width\x18\x06 \x01(\rB3\x82\xb5\x18/Region Width in 100th of a % of the video width\x12\x45\n\x06height\x18\x07 \x01(\rB5\x82\xb5\x18\x31Region Height in 100th of a % of the video height\"2\n0CSteamTV_SetBroadcastChannelLinkRegions_Response\"c\n)CSteamTV_GetBroadcastChannelLinks_Request\x12\x36\n\x14\x62roadcast_channel_id\x18\x01 \x01(\x06\x42\x18\x82\xb5\x18\x14\x42roadcast channel ID\"\xc4\x04\n*CSteamTV_GetBroadcastChannelLinks_Response\x12@\n\x05links\x18\x01 \x03(\x0b\x32\x31.CSteamTV_GetBroadcastChannelLinks_Response.Links\x1a\xd3\x03\n\x05Links\x12L\n\nlink_index\x18\x01 \x01(\rB8\x82\xb5\x18\x34Index of the link (lower number has higher priority)\x12\x15\n\x03url\x18\x02 \x01(\tB\x08\x82\xb5\x18\x04URL \x12O\n\x10link_description\x18\x03 \x01(\tB5\x82\xb5\x18\x31URL description that will show in the link region\x12\x44\n\x04left\x18\x04 \x01(\rB6\x82\xb5\x18\x32Left X position in 100th of a % of the video width\x12\x43\n\x03top\x18\x05 \x01(\rB6\x82\xb5\x18\x32Top Y position in 100th of a % of the video height\x12\x42\n\x05width\x18\x06 \x01(\rB3\x82\xb5\x18/Region Width in 100th of a % of the video width\x12\x45\n\x06height\x18\x07 \x01(\rB5\x82\xb5\x18\x31Region Height in 100th of a % of the video height\"j\n0CSteamTV_GetBroadcastChannelBroadcasters_Request\x12\x36\n\x14\x62roadcast_channel_id\x18\x01 \x01(\x06\x42\x18\x82\xb5\x18\x14\x42roadcast channel ID\"\x9a\x02\n1CSteamTV_GetBroadcastChannelBroadcasters_Response\x12T\n\x0c\x62roadcasters\x18\x01 \x03(\x0b\x32>.CSteamTV_GetBroadcastChannelBroadcasters_Response.Broadcaster\x1a\x8e\x01\n\x0b\x42roadcaster\x12)\n\x07steamid\x18\x01 \x01(\x06\x42\x18\x82\xb5\x18\x14\x42roadcaster Steam ID\x12\"\n\x04name\x18\x02 \x01(\tB\x14\x82\xb5\x18\x10\x42roadcaster name\x12\x30\n\nrtmp_token\x18\x03 \x01(\tB\x1c\x82\xb5\x18\x18\x42roadcaster upload token\"&\n$CSteamTV_GetFollowedChannels_Request\"\xb1\x08\n\x18GetBroadcastChannelEntry\x12;\n\x14\x62roadcast_channel_id\x18\x01 \x01(\x06\x42\x1d\x82\xb5\x18\x19\x42roadcast channel ID or 0\x12>\n\x0bunique_name\x18\x02 \x01(\tB)\x82\xb5\x18%Unique broadcast channel name for URL\x12-\n\x04name\x18\x03 \x01(\tB\x1f\x82\xb5\x18\x1bLong broadcast channel name\x12\x43\n\x05\x61ppid\x18\x04 \x01(\rB4\x82\xb5\x18\x30The game ID the requested broadcaster is playing\x12\x39\n\x07viewers\x18\x05 \x01(\x04\x42(\x82\xb5\x18$Number of viewers currently watching\x12\x38\n\x05views\x18\x06 \x01(\x04\x42)\x82\xb5\x18%Number of total views of this channel\x12\x30\n\rthumbnail_url\x18\x07 \x01(\tB\x19\x82\xb5\x18\x15\x43urrent thumbnail URL\x12:\n\tfollowers\x18\x08 \x01(\x04\x42\'\x82\xb5\x18#Number of followers of this channel\x12/\n\x08headline\x18\t \x01(\tB\x1d\x82\xb5\x18\x19short channel description\x12,\n\navatar_url\x18\n \x01(\tB\x18\x82\xb5\x18\x14\x63ommunity avatar url\x12>\n\x13\x62roadcaster_steamid\x18\x0b \x01(\x06\x42!\x82\xb5\x18\x1d\x43urrent broadcaster streaming\x12>\n\x0bsubscribers\x18\x0c \x01(\x04\x42)\x82\xb5\x18%Number of subscribers of this channel\x12\x30\n\x0e\x62\x61\x63kground_url\x18\r \x01(\tB\x18\x82\xb5\x18\x14\x42\x61\x63kground image url\x12\x38\n\x0bis_featured\x18\x0e \x01(\x08\x42#\x82\xb5\x18\x1fWhether the channel is featured\x12\x38\n\x0bis_disabled\x18\x0f \x01(\x08\x42#\x82\xb5\x18\x1fWhether the channel is disabled\x12\x35\n\x07is_live\x18\x10 \x01(\x08\x42$\x82\xb5\x18 Whether the channel is streaming\x12\x33\n\x08language\x18\x11 \x01(\tB!\x82\xb5\x18\x1dThe language the stream is in\x12:\n\x07reports\x18\x12 \x01(\rB)\x82\xb5\x18%The number of reports the channel has\x12\x14\n\x0cis_partnered\x18\x13 \x01(\x08\"q\n%CSteamTV_GetFollowedChannels_Response\x12H\n\x07results\x18\x01 \x03(\x0b\x32\x19.GetBroadcastChannelEntryB\x1c\x82\xb5\x18\x18The list of broadcasters\"(\n&CSteamTV_GetSubscribedChannels_Request\"s\n\'CSteamTV_GetSubscribedChannels_Response\x12H\n\x07results\x18\x01 \x03(\x0b\x32\x19.GetBroadcastChannelEntryB\x1c\x82\xb5\x18\x18The list of broadcasters\"d\n*CSteamTV_GetBroadcastChannelStatus_Request\x12\x36\n\x14\x62roadcast_channel_id\x18\x01 \x01(\x06\x42\x18\x82\xb5\x18\x14\x42roadcast channel ID\"\x93\x05\n+CSteamTV_GetBroadcastChannelStatus_Response\x12?\n\x07is_live\x18\x01 \x01(\x08\x42.\x82\xb5\x18*Indicates whether the channel is streaming\x12H\n\x0bis_disabled\x18\x02 \x01(\x08\x42\x33\x82\xb5\x18/Indicates whether the channel has been disabled\x12\x43\n\x05\x61ppid\x18\x03 \x01(\rB4\x82\xb5\x18\x30The game ID the requested broadcaster is playing\x12\x39\n\x07viewers\x18\x04 \x01(\x04\x42(\x82\xb5\x18$Number of viewers currently watching\x12\x38\n\x05views\x18\x05 \x01(\x04\x42)\x82\xb5\x18%Number of total views of this channel\x12>\n\x13\x62roadcaster_steamid\x18\x06 \x01(\x06\x42!\x82\xb5\x18\x1d\x43urrent broadcaster streaming\x12\x30\n\rthumbnail_url\x18\x07 \x01(\tB\x19\x82\xb5\x18\x15\x43urrent thumbnail URL\x12:\n\tfollowers\x18\x08 \x01(\x04\x42\'\x82\xb5\x18#Number of followers of this channel\x12>\n\x0bsubscribers\x18\t \x01(\x04\x42)\x82\xb5\x18%Number of subscribers of this channel\x12\x13\n\x0bunique_name\x18\n \x01(\t\x12\x1c\n\x14\x62roadcast_session_id\x18\x0b \x01(\x04\"\x9a\x01\n\'CSteamTV_FollowBroadcastChannel_Request\x12\x36\n\x14\x62roadcast_channel_id\x18\x01 \x01(\x06\x42\x18\x82\xb5\x18\x14\x42roadcast channel ID\x12\x37\n\x04undo\x18\x02 \x01(\x08\x42)\x82\xb5\x18%Indicates this is an unfollow request\"f\n(CSteamTV_FollowBroadcastChannel_Response\x12:\n\x0bis_followed\x18\x01 \x01(\x08\x42%\x82\xb5\x18!Whether the user is now following\"d\n*CSteamTV_SubscribeBroadcastChannel_Request\x12\x36\n\x14\x62roadcast_channel_id\x18\x01 \x01(\x06\x42\x18\x82\xb5\x18\x14\x42roadcast channel ID\"l\n+CSteamTV_SubscribeBroadcastChannel_Response\x12=\n\ris_subscribed\x18\x01 \x01(\x08\x42&\x82\xb5\x18\"Whether the user is now subscribed\"I\n)CSteamTV_GetBroadcastChannelClips_Request\x12\x1c\n\x14\x62roadcast_channel_id\x18\x01 \x01(\x06\"\x8a\x04\n\x1a\x43SteamTV_BroadcastClipInfo\x12\x30\n\x11\x62roadcast_clip_id\x18\x01 \x01(\x04\x42\x15\x82\xb5\x18\x11\x62roadcast clip ID\x12,\n\nchannel_id\x18\x02 \x01(\x04\x42\x18\x82\xb5\x18\x14\x42roadcast Channel ID\x12\x30\n\x06\x61pp_id\x18\x03 \x01(\rB \x82\xb5\x18\x1c\x41pp ID stream is tagged with\x12\x34\n\x13\x62roadcaster_steamid\x18\x04 \x01(\x06\x42\x17\x82\xb5\x18\x13\x42roadcaster SteamID\x12/\n\x0f\x63reator_steamid\x18\x05 \x01(\x06\x42\x16\x82\xb5\x18\x12\x43lip-maker SteamID\x12\x45\n\x11video_description\x18\x06 \x01(\tB*\x82\xb5\x18&Short name or description of this clip\x12\x39\n\tlive_time\x18\x07 \x01(\rB&\x82\xb5\x18\"GMT time clip was broadcasted live\x12,\n\tlength_ms\x18\x08 \x01(\rB\x19\x82\xb5\x18\x15length of video in MS\x12\x43\n\x0ethumbnail_path\x18\t \x01(\tB+\x82\xb5\x18\'relative path for thumbnail URL on host\"p\n*CSteamTV_GetBroadcastChannelClips_Response\x12*\n\x05\x63lips\x18\x01 \x03(\x0b\x32\x1b.CSteamTV_BroadcastClipInfo\x12\x16\n\x0ethumbnail_host\x18\x02 \x01(\t\"\x90\x01\n\'CSteamTV_ReportBroadcastChannel_Request\x12\x36\n\x14\x62roadcast_channel_id\x18\x01 \x01(\x06\x42\x18\x82\xb5\x18\x14\x42roadcast channel ID\x12-\n\x06reason\x18\x02 \x01(\tB\x1d\x82\xb5\x18\x19The reason for the report\"*\n(CSteamTV_ReportBroadcastChannel_Response\"i\n/CSteamTV_GetBroadcastChannelInteraction_Request\x12\x36\n\x14\x62roadcast_channel_id\x18\x01 \x01(\x06\x42\x18\x82\xb5\x18\x14\x42roadcast channel ID\"\xc3\x01\n0CSteamTV_GetBroadcastChannelInteraction_Response\x12\x43\n\x0bis_followed\x18\x01 \x01(\x08\x42.\x82\xb5\x18*Whether the user has followed this channel\x12J\n\ris_subscribed\x18\x02 \x01(\x08\x42\x33\x82\xb5\x18/Whether the user has subscribed to this channel\"\xfc\x01\n\x19\x43SteamTV_GetGames_Request\x12&\n\x05\x61ppid\x18\x01 \x01(\rB\x17\x82\xb5\x18\x13The ID for the game\x12{\n\talgorithm\x18\x02 \x01(\x0e\x32\x13.EGetGamesAlgorithm:\x1ck_EGetGamesAlgorithm_DefaultB5\x82\xb5\x18\x31The algorithm to use when picking games to return\x12:\n\x05\x63ount\x18\x03 \x01(\rB+\x82\xb5\x18\'The maximum number of results to return\"\xd5\x02\n\rCSteamTV_Game\x12&\n\x05\x61ppid\x18\x01 \x01(\rB\x17\x82\xb5\x18\x13The ID for the game\x12\'\n\x04name\x18\x02 \x01(\tB\x19\x82\xb5\x18\x15The name for the game\x12)\n\x05image\x18\x03 \x01(\tB\x1a\x82\xb5\x18\x16The image for the game\x12\x38\n\x07viewers\x18\x04 \x01(\x04\x42\'\x82\xb5\x18#Number of people watching this game\x12R\n\x08\x63hannels\x18\x05 \x03(\x0b\x32\x19.GetBroadcastChannelEntryB%\x82\xb5\x18!Live channels streaming this game\x12\x14\n\x0crelease_date\x18\x06 \x01(\t\x12\x11\n\tdeveloper\x18\x07 \x01(\t\x12\x11\n\tpublisher\x18\x08 \x01(\t\"T\n\x1a\x43SteamTV_GetGames_Response\x12\x36\n\x07results\x18\x01 \x03(\x0b\x32\x0e.CSteamTV_GameB\x15\x82\xb5\x18\x11The list of games\"\x97\x02\n\x1c\x43SteamTV_GetChannels_Request\x12\x84\x01\n\talgorithm\x18\x01 \x01(\x0e\x32\x16.EGetChannelsAlgorithm:\x1fk_EGetChannelsAlgorithm_DefaultB8\x82\xb5\x18\x34The algorithm to use when picking channels to return\x12:\n\x05\x63ount\x18\x02 \x01(\rB+\x82\xb5\x18\'The maximum number of results to return\x12\x34\n\x05\x61ppid\x18\x03 \x01(\rB%\x82\xb5\x18!Filter results to only this appid\"r\n\x1d\x43SteamTV_GetChannels_Response\x12Q\n\x07results\x18\x01 \x03(\x0b\x32\x19.GetBroadcastChannelEntryB%\x82\xb5\x18!The list of featured broadcasters\"\x87\x01\n\x1b\x43SteamTV_AddChatBan_Request\x12\x1c\n\x14\x62roadcast_channel_id\x18\x01 \x01(\x06\x12\x17\n\x0f\x63hatter_steamid\x18\x02 \x01(\x06\x12\x10\n\x08\x64uration\x18\x03 \x01(\r\x12\x11\n\tpermanent\x18\x04 \x01(\x08\x12\x0c\n\x04undo\x18\x05 \x01(\x08\"\x1e\n\x1c\x43SteamTV_AddChatBan_Response\"<\n\x1c\x43SteamTV_GetChatBans_Request\x12\x1c\n\x14\x62roadcast_channel_id\x18\x01 \x01(\x06\"z\n\x10\x43SteamTV_ChatBan\x12\x16\n\x0eissuer_steamid\x18\x01 \x01(\x06\x12\x17\n\x0f\x63hatter_steamid\x18\x02 \x01(\x06\x12\x14\n\x0ctime_expires\x18\x03 \x01(\t\x12\x11\n\tpermanent\x18\x04 \x01(\x08\x12\x0c\n\x04name\x18\x05 \x01(\t\"Y\n\x1d\x43SteamTV_GetChatBans_Response\x12\x38\n\x07results\x18\x01 \x03(\x0b\x32\x11.CSteamTV_ChatBanB\x14\x82\xb5\x18\x10The list of bans\"j\n!CSteamTV_AddChatModerator_Request\x12\x1c\n\x14\x62roadcast_channel_id\x18\x01 \x01(\x06\x12\x19\n\x11moderator_steamid\x18\x02 \x01(\x06\x12\x0c\n\x04undo\x18\x03 \x01(\x08\"$\n\"CSteamTV_AddChatModerator_Response\"B\n\"CSteamTV_GetChatModerators_Request\x12\x1c\n\x14\x62roadcast_channel_id\x18\x01 \x01(\x06\"7\n\x16\x43SteamTV_ChatModerator\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12\x0c\n\x04name\x18\x02 \x01(\t\"k\n#CSteamTV_GetChatModerators_Response\x12\x44\n\x07results\x18\x01 \x03(\x0b\x32\x17.CSteamTV_ChatModeratorB\x1a\x82\xb5\x18\x16The list of moderators\"W\n\x1b\x43SteamTV_AddWordBan_Request\x12\x1c\n\x14\x62roadcast_channel_id\x18\x01 \x01(\x06\x12\x0c\n\x04word\x18\x02 \x01(\t\x12\x0c\n\x04undo\x18\x03 \x01(\x08\"\x1e\n\x1c\x43SteamTV_AddWordBan_Response\"<\n\x1c\x43SteamTV_GetWordBans_Request\x12\x1c\n\x14\x62roadcast_channel_id\x18\x01 \x01(\x06\"N\n\x1d\x43SteamTV_GetWordBans_Response\x12-\n\x07results\x18\x01 \x03(\tB\x1c\x82\xb5\x18\x18The list of banned words\"9\n\x19\x43SteamTV_JoinChat_Request\x12\x1c\n\x14\x62roadcast_channel_id\x18\x01 \x01(\x06\"a\n\x1a\x43SteamTV_JoinChat_Response\x12\x0f\n\x07\x63hat_id\x18\x01 \x01(\x06\x12\x19\n\x11view_url_template\x18\x02 \x01(\t\x12\x17\n\x0f\x66lair_group_ids\x18\x03 \x03(\x04\"\'\n\x17\x43SteamTV_Search_Request\x12\x0c\n\x04term\x18\x01 \x01(\t\"d\n\x18\x43SteamTV_Search_Response\x12H\n\x07results\x18\x01 \x03(\x0b\x32\x19.GetBroadcastChannelEntryB\x1c\x82\xb5\x18\x18The list of broadcasters\")\n\'CSteamTV_GetSteamTVUserSettings_Request\"\xcc\x01\n(CSteamTV_GetSteamTVUserSettings_Response\x12\x45\n\x11stream_live_email\x18\x01 \x01(\x08\x42*\x82\xb5\x18&Send email when followed stream starts\x12Y\n\x18stream_live_notification\x18\x02 \x01(\x08\x42\x37\x82\xb5\x18\x33Send Steam notification when followed stream starts\"\xcb\x01\n\'CSteamTV_SetSteamTVUserSettings_Request\x12\x45\n\x11stream_live_email\x18\x01 \x01(\x08\x42*\x82\xb5\x18&Send email when followed stream starts\x12Y\n\x18stream_live_notification\x18\x02 \x01(\x08\x42\x37\x82\xb5\x18\x33Send Steam notification when followed stream starts\"*\n(CSteamTV_SetSteamTVUserSettings_Response\")\n\'CSteamTV_GetMyBroadcastChannels_Request\"t\n(CSteamTV_GetMyBroadcastChannels_Response\x12H\n\x07results\x18\x01 \x03(\x0b\x32\x19.GetBroadcastChannelEntryB\x1c\x82\xb5\x18\x18The list of broadcasters\"&\n$CSteamTV_GetHomePageContents_Request\"S\n\"CSteamTV_HomePageTemplate_Takeover\x12-\n\nbroadcasts\x18\x01 \x03(\x0b\x32\x19.GetBroadcastChannelEntry\"s\n$CSteamTV_HomePageTemplate_SingleGame\x12-\n\nbroadcasts\x18\x01 \x03(\x0b\x32\x19.GetBroadcastChannelEntry\x12\r\n\x05\x61ppid\x18\x02 \x01(\r\x12\r\n\x05title\x18\x03 \x01(\t\"_\n\rGameListEntry\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x11\n\tgame_name\x18\x02 \x01(\t\x12,\n\tbroadcast\x18\x03 \x01(\x0b\x32\x19.GetBroadcastChannelEntry\"T\n\"CSteamTV_HomePageTemplate_GameList\x12\x1f\n\x07\x65ntries\x18\x01 \x03(\x0b\x32\x0e.GameListEntry\x12\r\n\x05title\x18\x02 \x01(\t\"f\n&CSteamTV_HomePageTemplate_QuickExplore\x12-\n\nbroadcasts\x18\x01 \x03(\x0b\x32\x19.GetBroadcastChannelEntry\x12\r\n\x05title\x18\x02 \x01(\t\"f\n&CSteamTV_HomePageTemplate_ConveyorBelt\x12-\n\nbroadcasts\x18\x01 \x03(\x0b\x32\x19.GetBroadcastChannelEntry\x12\r\n\x05title\x18\x02 \x01(\t\"z\n$CSteamTV_HomePageTemplate_WatchParty\x12,\n\tbroadcast\x18\x01 \x01(\x0b\x32\x19.GetBroadcastChannelEntry\x12\r\n\x05title\x18\x02 \x01(\t\x12\x15\n\rchat_group_id\x18\x03 \x01(\x04\"b\n#CSteamTV_HomePageTemplate_Developer\x12,\n\tbroadcast\x18\x01 \x01(\x0b\x32\x19.GetBroadcastChannelEntry\x12\r\n\x05title\x18\x02 \x01(\t\"0\n\x1f\x43SteamTV_HomePageTemplate_Event\x12\r\n\x05title\x18\x01 \x01(\t\"\xc2\x04\n\x1b\x43SteamTV_HomePageContentRow\x12R\n\rtemplate_type\x18\x01 \x01(\x0e\x32\x18.ESteamTVContentTemplate:!k_ESteamTVContentTemplate_Invalid\x12\x35\n\x08takeover\x18\x02 \x01(\x0b\x32#.CSteamTV_HomePageTemplate_Takeover\x12:\n\x0bsingle_game\x18\x03 \x01(\x0b\x32%.CSteamTV_HomePageTemplate_SingleGame\x12\x36\n\tgame_list\x18\x04 \x01(\x0b\x32#.CSteamTV_HomePageTemplate_GameList\x12>\n\rquick_explore\x18\x05 \x01(\x0b\x32\'.CSteamTV_HomePageTemplate_QuickExplore\x12>\n\rconveyor_belt\x18\x06 \x01(\x0b\x32\'.CSteamTV_HomePageTemplate_ConveyorBelt\x12:\n\x0bwatch_party\x18\x07 \x01(\x0b\x32%.CSteamTV_HomePageTemplate_WatchParty\x12\x37\n\tdeveloper\x18\x08 \x01(\x0b\x32$.CSteamTV_HomePageTemplate_Developer\x12/\n\x05\x65vent\x18\t \x01(\x0b\x32 .CSteamTV_HomePageTemplate_Event\"S\n%CSteamTV_GetHomePageContents_Response\x12*\n\x04rows\x18\x01 \x03(\x0b\x32\x1c.CSteamTV_HomePageContentRow\"\xb6\x01\n!CSteamTV_AppCheer_SingleCheerType\x12`\n\ncheer_type\x18\x01 \x01(\rBL\x82\xb5\x18HThe type of cheer. App dependent (different teams, heroes, players, etc)\x12/\n\x0c\x63heer_amount\x18\x02 \x01(\rB\x19\x82\xb5\x18\x15The amount of cheers.\"\xde\x02\n\x19\x43SteamTV_AppCheer_Request\x12-\n\x06\x61pp_id\x18\x01 \x01(\rB\x1d\x82\xb5\x18\x19\x41pp ID this cheer is for.\x12\x85\x01\n\x0f\x63heer_target_id\x18\x02 \x01(\x06\x42l\x82\xb5\x18hThe thing being cheered on. ID is app dependent (could be steam id, match id, lobby id, server id, etc).\x12\x89\x01\n\x06\x63heers\x18\x03 \x03(\x0b\x32\".CSteamTV_AppCheer_SingleCheerTypeBU\x82\xb5\x18QThe set of cheers this request represents (could be multiple of different types).\"\xef\x01\n\x1a\x43SteamTV_AppCheer_Response\x12\xd0\x01\n\x14\x61ggregation_delay_ms\x18\x01 \x01(\rB\xb1\x01\x82\xb5\x18\xac\x01The amount of time in milliseconds that the client should aggregate cheers before sending them. The server can control this dynamically to ask clients to slow down sending.*\x8a\x02\n\x13\x45\x42roadcastImageType\x12\x1e\n\x1ak_EBroadcastImageType_None\x10\x00\x12!\n\x1dk_EBroadcastImageType_Offline\x10\x01\x12!\n\x1dk_EBroadcastImageType_Standby\x10\x02\x12 \n\x1ck_EBroadcastImageType_Avatar\x10\x03\x12!\n\x1dk_EBroadcastImageType_Summary\x10\x04\x12$\n k_EBroadcastImageType_Background\x10\x05\x12\"\n\x1ek_EBroadcastImageType_Emoticon\x10\x06*\x80\x01\n\x12\x45GetGamesAlgorithm\x12 \n\x1ck_EGetGamesAlgorithm_Default\x10\x01\x12#\n\x1fk_EGetGamesAlgorithm_MostPlayed\x10\x02\x12#\n\x1fk_EGetGamesAlgorithm_PopularNew\x10\x03*\xd5\x01\n\x15\x45GetChannelsAlgorithm\x12#\n\x1fk_EGetChannelsAlgorithm_Default\x10\x01\x12#\n\x1fk_EGetChannelsAlgorithm_Friends\x10\x02\x12$\n k_EGetChannelsAlgorithm_Featured\x10\x03\x12%\n!k_EGetChannelsAlgorithm_Developer\x10\x04\x12%\n!k_EGetChannelsAlgorithm_Following\x10\x05*\x8a\x03\n\x17\x45SteamTVContentTemplate\x12%\n!k_ESteamTVContentTemplate_Invalid\x10\x00\x12&\n\"k_ESteamTVContentTemplate_Takeover\x10\x01\x12(\n$k_ESteamTVContentTemplate_SingleGame\x10\x02\x12&\n\"k_ESteamTVContentTemplate_GameList\x10\x03\x12*\n&k_ESteamTVContentTemplate_QuickExplore\x10\x04\x12*\n&k_ESteamTVContentTemplate_ConveyorBelt\x10\x05\x12(\n$k_ESteamTVContentTemplate_WatchParty\x10\x06\x12\'\n#k_ESteamTVContentTemplate_Developer\x10\x07\x12#\n\x1fk_ESteamTVContentTemplate_Event\x10\x08\x32\xbf&\n\x07SteamTV\x12\x8e\x01\n\x16\x43reateBroadcastChannel\x12(.CSteamTV_CreateBroadcastChannel_Request\x1a).CSteamTV_CreateBroadcastChannel_Response\"\x1f\x82\xb5\x18\x1b\x43reate a channel on SteamTV\x12\xb1\x01\n\x15GetBroadcastChannelID\x12\'.CSteamTV_GetBroadcastChannelID_Request\x1a(.CSteamTV_GetBroadcastChannelID_Response\"E\x82\xb5\x18\x41Get a broadcast channel ID for a channel by name or owner SteamID\x12\xa1\x01\n\x1aSetBroadcastChannelProfile\x12,.CSteamTV_SetBroadcastChannelProfile_Request\x1a-.CSteamTV_SetBroadcastChannelProfile_Response\"&\x82\xb5\x18\"Set broadcast channel profile data\x12\xa1\x01\n\x1aGetBroadcastChannelProfile\x12,.CSteamTV_GetBroadcastChannelProfile_Request\x1a-.CSteamTV_GetBroadcastChannelProfile_Response\"&\x82\xb5\x18\"Get broadcast channel profile data\x12\x99\x01\n\x18SetBroadcastChannelImage\x12*.CSteamTV_SetBroadcastChannelImage_Request\x1a+.CSteamTV_SetBroadcastChannelImage_Response\"$\x82\xb5\x18 Set broadcast channel image hash\x12\x98\x01\n\x19GetBroadcastChannelImages\x12+.CSteamTV_GetBroadcastChannelImages_Request\x1a,.CSteamTV_GetBroadcastChannelImages_Response\" \x82\xb5\x18\x1cGet broadcast channel images\x12\xad\x01\n\x1eSetBroadcastChannelLinkRegions\x12\x30.CSteamTV_SetBroadcastChannelLinkRegions_Request\x1a\x31.CSteamTV_SetBroadcastChannelLinkRegions_Response\"&\x82\xb5\x18\"Set broadcast channel link regions\x12\x9b\x01\n\x18GetBroadcastChannelLinks\x12*.CSteamTV_GetBroadcastChannelLinks_Request\x1a+.CSteamTV_GetBroadcastChannelLinks_Response\"&\x82\xb5\x18\"Get broadcast channel link regions\x12\xbb\x01\n\x1fGetBroadcastChannelBroadcasters\x12\x31.CSteamTV_GetBroadcastChannelBroadcasters_Request\x1a\x32.CSteamTV_GetBroadcastChannelBroadcasters_Response\"1\x82\xb5\x18-Get list of broadcaster info for this channel\x12\x93\x01\n\x13GetFollowedChannels\x12%.CSteamTV_GetFollowedChannels_Request\x1a&.CSteamTV_GetFollowedChannels_Response\"-\x82\xb5\x18)Get list of followed channels by a viewer\x12\x9c\x01\n\x15GetSubscribedChannels\x12\'.CSteamTV_GetSubscribedChannels_Request\x1a(.CSteamTV_GetSubscribedChannels_Response\"0\x82\xb5\x18,Get list of channels a user is subscribed to\x12\x9d\x01\n\x19GetBroadcastChannelStatus\x12+.CSteamTV_GetBroadcastChannelStatus_Request\x1a,.CSteamTV_GetBroadcastChannelStatus_Response\"%\x82\xb5\x18!Get broadcast channel live status\x12\x8d\x01\n\x16\x46ollowBroadcastChannel\x12(.CSteamTV_FollowBroadcastChannel_Request\x1a).CSteamTV_FollowBroadcastChannel_Response\"\x1e\x82\xb5\x18\x1a\x46ollow a broadcast channel\x12\x9c\x01\n\x19SubscribeBroadcastChannel\x12+.CSteamTV_SubscribeBroadcastChannel_Request\x1a,.CSteamTV_SubscribeBroadcastChannel_Response\"$\x82\xb5\x18 Subscribe to a broadcast channel\x12\x94\x01\n\x18GetBroadcastChannelClips\x12*.CSteamTV_GetBroadcastChannelClips_Request\x1a+.CSteamTV_GetBroadcastChannelClips_Response\"\x1f\x82\xb5\x18\x1bGet broadcast channel clips\x12\x8d\x01\n\x16ReportBroadcastChannel\x12(.CSteamTV_ReportBroadcastChannel_Request\x1a).CSteamTV_ReportBroadcastChannel_Response\"\x1e\x82\xb5\x18\x1aReport a broadcast channel\x12\xc1\x01\n\x1eGetBroadcastChannelInteraction\x12\x30.CSteamTV_GetBroadcastChannelInteraction_Request\x1a\x31.CSteamTV_GetBroadcastChannelInteraction_Response\":\x82\xb5\x18\x36Get user\'s interaction status with a broadcast channel\x12s\n\x08GetGames\x12\x1a.CSteamTV_GetGames_Request\x1a\x1b.CSteamTV_GetGames_Response\".\x82\xb5\x18*Get list of games with active broadcasters\x12}\n\x0bGetChannels\x12\x1d.CSteamTV_GetChannels_Request\x1a\x1e.CSteamTV_GetChannels_Response\"/\x82\xb5\x18+Get the list of featured broadcast channels\x12\xa0\x01\n\nAddChatBan\x12\x1c.CSteamTV_AddChatBan_Request\x1a\x1d.CSteamTV_AddChatBan_Response\"U\x82\xb5\x18QSet the ban for a specific broadcaster. The issuer is the logged in steam account\x12\x7f\n\x0bGetChatBans\x12\x1d.CSteamTV_GetChatBans_Request\x1a\x1e.CSteamTV_GetChatBans_Response\"1\x82\xb5\x18-Get list of bans for a specific broadcaster. \x12\x95\x01\n\x10\x41\x64\x64\x43hatModerator\x12\".CSteamTV_AddChatModerator_Request\x1a#.CSteamTV_AddChatModerator_Response\"8\x82\xb5\x18\x34\x41\x64\x64 or remove a moderator for this broadcast channel\x12\x9d\x01\n\x11GetChatModerators\x12#.CSteamTV_GetChatModerators_Request\x1a$.CSteamTV_GetChatModerators_Response\"=\x82\xb5\x18\x39Returns the list of moderators for this broadcast channel\x12\x8c\x01\n\nAddWordBan\x12\x1c.CSteamTV_AddWordBan_Request\x1a\x1d.CSteamTV_AddWordBan_Response\"A\x82\xb5\x18=Add or remove a banned keyword in this broadcast channel chat\x12\x90\x01\n\x0bGetWordBans\x12\x1d.CSteamTV_GetWordBans_Request\x1a\x1e.CSteamTV_GetWordBans_Response\"B\x82\xb5\x18>Returns the list of banned keywords for this broadcast channel\x12o\n\x08JoinChat\x12\x1a.CSteamTV_JoinChat_Request\x1a\x1b.CSteamTV_JoinChat_Response\"*\x82\xb5\x18&Joins the chat channel for a broadcast\x12z\n\x06Search\x12\x18.CSteamTV_Search_Request\x1a\x19.CSteamTV_Search_Response\";\x82\xb5\x18\x37Searches for broadcast channels based on input keywords\x12\x94\x01\n\x16GetSteamTVUserSettings\x12(.CSteamTV_GetSteamTVUserSettings_Request\x1a).CSteamTV_GetSteamTVUserSettings_Response\"%\x82\xb5\x18!Returns a user\'s SteamTV settings\x12\x91\x01\n\x16SetSteamTVUserSettings\x12(.CSteamTV_SetSteamTVUserSettings_Request\x1a).CSteamTV_SetSteamTVUserSettings_Response\"\"\x82\xb5\x18\x1eSets a user\'s SteamTV settings\x12\xa9\x01\n\x16GetMyBroadcastChannels\x12(.CSteamTV_GetMyBroadcastChannels_Request\x1a).CSteamTV_GetMyBroadcastChannels_Response\":\x82\xb5\x18\x36Gets the broadcast channels that the current user owns\x12\x8c\x01\n\x13GetHomePageContents\x12%.CSteamTV_GetHomePageContents_Request\x1a&.CSteamTV_GetHomePageContents_Response\"&\x82\xb5\x18\"Returns homepage contents for user\x12\x8a\x01\n\x08\x41ppCheer\x12\x1a.CSteamTV_AppCheer_Request\x1a\x1b.CSteamTV_AppCheer_Response\"E\x82\xb5\x18\x41The user is cheering for a specific broadcast for a specific app.\x1a#\x82\xb5\x18\x1fMethods for Steam TV operationsB\x03\x90\x01\x01'
+  ,
+  dependencies=[steammessages__base__pb2.DESCRIPTOR,steammessages__unified__base__pb2.DESCRIPTOR,])
+
+_EBROADCASTIMAGETYPE = _descriptor.EnumDescriptor(
+  name='EBroadcastImageType',
+  full_name='EBroadcastImageType',
+  filename=None,
+  file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
+  values=[
+    _descriptor.EnumValueDescriptor(
+      name='k_EBroadcastImageType_None', index=0, number=0,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EBroadcastImageType_Offline', index=1, number=1,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EBroadcastImageType_Standby', index=2, number=2,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EBroadcastImageType_Avatar', index=3, number=3,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EBroadcastImageType_Summary', index=4, number=4,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EBroadcastImageType_Background', index=5, number=5,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EBroadcastImageType_Emoticon', index=6, number=6,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+  ],
+  containing_type=None,
+  serialized_options=None,
+  serialized_start=14109,
+  serialized_end=14375,
+)
+_sym_db.RegisterEnumDescriptor(_EBROADCASTIMAGETYPE)
+
+EBroadcastImageType = enum_type_wrapper.EnumTypeWrapper(_EBROADCASTIMAGETYPE)
+_EGETGAMESALGORITHM = _descriptor.EnumDescriptor(
+  name='EGetGamesAlgorithm',
+  full_name='EGetGamesAlgorithm',
+  filename=None,
+  file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
+  values=[
+    _descriptor.EnumValueDescriptor(
+      name='k_EGetGamesAlgorithm_Default', index=0, number=1,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EGetGamesAlgorithm_MostPlayed', index=1, number=2,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EGetGamesAlgorithm_PopularNew', index=2, number=3,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+  ],
+  containing_type=None,
+  serialized_options=None,
+  serialized_start=14378,
+  serialized_end=14506,
+)
+_sym_db.RegisterEnumDescriptor(_EGETGAMESALGORITHM)
+
+EGetGamesAlgorithm = enum_type_wrapper.EnumTypeWrapper(_EGETGAMESALGORITHM)
+_EGETCHANNELSALGORITHM = _descriptor.EnumDescriptor(
+  name='EGetChannelsAlgorithm',
+  full_name='EGetChannelsAlgorithm',
+  filename=None,
+  file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
+  values=[
+    _descriptor.EnumValueDescriptor(
+      name='k_EGetChannelsAlgorithm_Default', index=0, number=1,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EGetChannelsAlgorithm_Friends', index=1, number=2,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EGetChannelsAlgorithm_Featured', index=2, number=3,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EGetChannelsAlgorithm_Developer', index=3, number=4,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EGetChannelsAlgorithm_Following', index=4, number=5,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+  ],
+  containing_type=None,
+  serialized_options=None,
+  serialized_start=14509,
+  serialized_end=14722,
+)
+_sym_db.RegisterEnumDescriptor(_EGETCHANNELSALGORITHM)
+
+EGetChannelsAlgorithm = enum_type_wrapper.EnumTypeWrapper(_EGETCHANNELSALGORITHM)
+_ESTEAMTVCONTENTTEMPLATE = _descriptor.EnumDescriptor(
+  name='ESteamTVContentTemplate',
+  full_name='ESteamTVContentTemplate',
+  filename=None,
+  file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
+  values=[
+    _descriptor.EnumValueDescriptor(
+      name='k_ESteamTVContentTemplate_Invalid', index=0, number=0,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_ESteamTVContentTemplate_Takeover', index=1, number=1,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_ESteamTVContentTemplate_SingleGame', index=2, number=2,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_ESteamTVContentTemplate_GameList', index=3, number=3,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_ESteamTVContentTemplate_QuickExplore', index=4, number=4,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_ESteamTVContentTemplate_ConveyorBelt', index=5, number=5,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_ESteamTVContentTemplate_WatchParty', index=6, number=6,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_ESteamTVContentTemplate_Developer', index=7, number=7,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_ESteamTVContentTemplate_Event', index=8, number=8,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+  ],
+  containing_type=None,
+  serialized_options=None,
+  serialized_start=14725,
+  serialized_end=15119,
+)
+_sym_db.RegisterEnumDescriptor(_ESTEAMTVCONTENTTEMPLATE)
+
+ESteamTVContentTemplate = enum_type_wrapper.EnumTypeWrapper(_ESTEAMTVCONTENTTEMPLATE)
+k_EBroadcastImageType_None = 0
+k_EBroadcastImageType_Offline = 1
+k_EBroadcastImageType_Standby = 2
+k_EBroadcastImageType_Avatar = 3
+k_EBroadcastImageType_Summary = 4
+k_EBroadcastImageType_Background = 5
+k_EBroadcastImageType_Emoticon = 6
+k_EGetGamesAlgorithm_Default = 1
+k_EGetGamesAlgorithm_MostPlayed = 2
+k_EGetGamesAlgorithm_PopularNew = 3
+k_EGetChannelsAlgorithm_Default = 1
+k_EGetChannelsAlgorithm_Friends = 2
+k_EGetChannelsAlgorithm_Featured = 3
+k_EGetChannelsAlgorithm_Developer = 4
+k_EGetChannelsAlgorithm_Following = 5
+k_ESteamTVContentTemplate_Invalid = 0
+k_ESteamTVContentTemplate_Takeover = 1
+k_ESteamTVContentTemplate_SingleGame = 2
+k_ESteamTVContentTemplate_GameList = 3
+k_ESteamTVContentTemplate_QuickExplore = 4
+k_ESteamTVContentTemplate_ConveyorBelt = 5
+k_ESteamTVContentTemplate_WatchParty = 6
+k_ESteamTVContentTemplate_Developer = 7
+k_ESteamTVContentTemplate_Event = 8
+
+
+
+_CSTEAMTV_CREATEBROADCASTCHANNEL_REQUEST = _descriptor.Descriptor(
+  name='CSteamTV_CreateBroadcastChannel_Request',
+  full_name='CSteamTV_CreateBroadcastChannel_Request',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='unique_name', full_name='CSteamTV_CreateBroadcastChannel_Request.unique_name', index=0,
+      number=1, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\0309Unique short broadcast channel name, part of Steam.TV URL', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=91,
+  serialized_end=216,
+)
+
+
+_CSTEAMTV_CREATEBROADCASTCHANNEL_RESPONSE = _descriptor.Descriptor(
+  name='CSteamTV_CreateBroadcastChannel_Response',
+  full_name='CSteamTV_CreateBroadcastChannel_Response',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='broadcast_channel_id', full_name='CSteamTV_CreateBroadcastChannel_Response.broadcast_channel_id', index=0,
+      number=1, type=6, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\031Broadcast channel ID or 0', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=218,
+  serialized_end=321,
+)
+
+
+_CSTEAMTV_GETBROADCASTCHANNELID_REQUEST = _descriptor.Descriptor(
+  name='CSteamTV_GetBroadcastChannelID_Request',
+  full_name='CSteamTV_GetBroadcastChannelID_Request',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='unique_name', full_name='CSteamTV_GetBroadcastChannelID_Request.unique_name', index=0,
+      number=1, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\023Channel short name)', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=323,
+  serialized_end=409,
+)
+
+
+_CSTEAMTV_GETBROADCASTCHANNELID_RESPONSE = _descriptor.Descriptor(
+  name='CSteamTV_GetBroadcastChannelID_Response',
+  full_name='CSteamTV_GetBroadcastChannelID_Response',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='broadcast_channel_id', full_name='CSteamTV_GetBroadcastChannelID_Response.broadcast_channel_id', index=0,
+      number=1, type=6, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\031Broadcast channel ID or 0', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='unique_name', full_name='CSteamTV_GetBroadcastChannelID_Response.unique_name', index=1,
+      number=2, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\026Broadcast channel name', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='steamid', full_name='CSteamTV_GetBroadcastChannelID_Response.steamid', index=2,
+      number=3, type=6, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\027Broadcast channel owner', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=412,
+  serialized_end=609,
+)
+
+
+_CSTEAMTV_SETBROADCASTCHANNELPROFILE_REQUEST = _descriptor.Descriptor(
+  name='CSteamTV_SetBroadcastChannelProfile_Request',
+  full_name='CSteamTV_SetBroadcastChannelProfile_Request',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='broadcast_channel_id', full_name='CSteamTV_SetBroadcastChannelProfile_Request.broadcast_channel_id', index=0,
+      number=1, type=6, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\024Broadcast channel ID', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='name', full_name='CSteamTV_SetBroadcastChannelProfile_Request.name', index=1,
+      number=2, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\021long channel name', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='language', full_name='CSteamTV_SetBroadcastChannelProfile_Request.language', index=2,
+      number=3, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030*primary channel language (Steam shortname)', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='headline', full_name='CSteamTV_SetBroadcastChannelProfile_Request.headline', index=3,
+      number=4, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\030short channel desciption', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='summary', full_name='CSteamTV_SetBroadcastChannelProfile_Request.summary', index=4,
+      number=5, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\027long channel desciption', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='avatar_hash', full_name='CSteamTV_SetBroadcastChannelProfile_Request.avatar_hash', index=5,
+      number=6, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\025community avatar hash', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='schedule', full_name='CSteamTV_SetBroadcastChannelProfile_Request.schedule', index=6,
+      number=7, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\032broadcast channel schedule', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='rules', full_name='CSteamTV_SetBroadcastChannelProfile_Request.rules', index=7,
+      number=8, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\027broadcast channel rules', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='panels', full_name='CSteamTV_SetBroadcastChannelProfile_Request.panels', index=8,
+      number=9, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030/JSON data representing the channel panel layout', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=612,
+  serialized_end=1121,
+)
+
+
+_CSTEAMTV_SETBROADCASTCHANNELPROFILE_RESPONSE = _descriptor.Descriptor(
+  name='CSteamTV_SetBroadcastChannelProfile_Response',
+  full_name='CSteamTV_SetBroadcastChannelProfile_Response',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=1123,
+  serialized_end=1169,
+)
+
+
+_CSTEAMTV_GETBROADCASTCHANNELPROFILE_REQUEST = _descriptor.Descriptor(
+  name='CSteamTV_GetBroadcastChannelProfile_Request',
+  full_name='CSteamTV_GetBroadcastChannelProfile_Request',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='broadcast_channel_id', full_name='CSteamTV_GetBroadcastChannelProfile_Request.broadcast_channel_id', index=0,
+      number=1, type=6, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\024Broadcast channel ID', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=1171,
+  serialized_end=1272,
+)
+
+
+_CSTEAMTV_GETBROADCASTCHANNELPROFILE_RESPONSE = _descriptor.Descriptor(
+  name='CSteamTV_GetBroadcastChannelProfile_Response',
+  full_name='CSteamTV_GetBroadcastChannelProfile_Response',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='unique_name', full_name='CSteamTV_GetBroadcastChannelProfile_Response.unique_name', index=0,
+      number=1, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\0309Unique short broadcast channel name, part of Steam.TV URL', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='owner_steamid', full_name='CSteamTV_GetBroadcastChannelProfile_Response.owner_steamid', index=1,
+      number=2, type=6, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\027Broadcast channel owner', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='name', full_name='CSteamTV_GetBroadcastChannelProfile_Response.name', index=2,
+      number=3, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\021long channel name', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='language', full_name='CSteamTV_GetBroadcastChannelProfile_Response.language', index=3,
+      number=4, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030*primary channel language (Steam shortname)', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='headline', full_name='CSteamTV_GetBroadcastChannelProfile_Response.headline', index=4,
+      number=5, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\031short channel description', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='summary', full_name='CSteamTV_GetBroadcastChannelProfile_Response.summary', index=5,
+      number=6, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\030long channel description', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='schedule', full_name='CSteamTV_GetBroadcastChannelProfile_Response.schedule', index=6,
+      number=7, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\032broadcast channel schedule', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='rules', full_name='CSteamTV_GetBroadcastChannelProfile_Response.rules', index=7,
+      number=8, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\027broadcast channel rules', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='panels', full_name='CSteamTV_GetBroadcastChannelProfile_Response.panels', index=8,
+      number=9, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030/JSON data representing the channel panel layout', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='is_partnered', full_name='CSteamTV_GetBroadcastChannelProfile_Response.is_partnered', index=9,
+      number=10, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=1275,
+  serialized_end=1841,
+)
+
+
+_CSTEAMTV_SETBROADCASTCHANNELIMAGE_REQUEST = _descriptor.Descriptor(
+  name='CSteamTV_SetBroadcastChannelImage_Request',
+  full_name='CSteamTV_SetBroadcastChannelImage_Request',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='broadcast_channel_id', full_name='CSteamTV_SetBroadcastChannelImage_Request.broadcast_channel_id', index=0,
+      number=1, type=6, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\024Broadcast channel ID', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='image_type', full_name='CSteamTV_SetBroadcastChannelImage_Request.image_type', index=1,
+      number=2, type=14, cpp_type=8, label=1,
+      has_default_value=True, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\017EBroadcastImage', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='image_index', full_name='CSteamTV_SetBroadcastChannelImage_Request.image_index', index=2,
+      number=3, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030DIndex of the image (for supporting multiple uploads of the same type', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='image_width', full_name='CSteamTV_SetBroadcastChannelImage_Request.image_width', index=3,
+      number=4, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\017width in pixels', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='image_height', full_name='CSteamTV_SetBroadcastChannelImage_Request.image_height', index=4,
+      number=5, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\020height in pixels', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='file_size', full_name='CSteamTV_SetBroadcastChannelImage_Request.file_size', index=5,
+      number=6, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\010in bytes', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='file_extension', full_name='CSteamTV_SetBroadcastChannelImage_Request.file_extension', index=6,
+      number=7, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\007eg .jpg', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='file_hash', full_name='CSteamTV_SetBroadcastChannelImage_Request.file_hash', index=7,
+      number=8, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\timage SHA', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='undo', full_name='CSteamTV_SetBroadcastChannelImage_Request.undo', index=8,
+      number=9, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\"indicates this is a delete request', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=1844,
+  serialized_end=2373,
+)
+
+
+_CSTEAMTV_SETBROADCASTCHANNELIMAGE_RESPONSE = _descriptor.Descriptor(
+  name='CSteamTV_SetBroadcastChannelImage_Response',
+  full_name='CSteamTV_SetBroadcastChannelImage_Response',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='replace_image_hash', full_name='CSteamTV_SetBroadcastChannelImage_Response.replace_image_hash', index=0,
+      number=1, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\0308set if caller should remove previous SHA file from cache', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=2376,
+  serialized_end=2510,
+)
+
+
+_CSTEAMTV_GETBROADCASTCHANNELIMAGES_REQUEST = _descriptor.Descriptor(
+  name='CSteamTV_GetBroadcastChannelImages_Request',
+  full_name='CSteamTV_GetBroadcastChannelImages_Request',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='broadcast_channel_id', full_name='CSteamTV_GetBroadcastChannelImages_Request.broadcast_channel_id', index=0,
+      number=1, type=6, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\024Broadcast channel ID', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='image_types', full_name='CSteamTV_GetBroadcastChannelImages_Request.image_types', index=1,
+      number=2, type=14, cpp_type=8, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\027list of EBroadcastImage', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=2513,
+  serialized_end=2685,
+)
+
+
+_CSTEAMTV_GETBROADCASTCHANNELIMAGES_RESPONSE_IMAGES = _descriptor.Descriptor(
+  name='Images',
+  full_name='CSteamTV_GetBroadcastChannelImages_Response.Images',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='image_type', full_name='CSteamTV_GetBroadcastChannelImages_Response.Images.image_type', index=0,
+      number=1, type=14, cpp_type=8, label=1,
+      has_default_value=True, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\021Type of the image', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='image_path', full_name='CSteamTV_GetBroadcastChannelImages_Response.Images.image_path', index=1,
+      number=2, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\032Path to the uploaded image', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='image_index', full_name='CSteamTV_GetBroadcastChannelImages_Response.Images.image_index', index=2,
+      number=3, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\022Index of the image', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=2805,
+  serialized_end=3003,
+)
+
+_CSTEAMTV_GETBROADCASTCHANNELIMAGES_RESPONSE = _descriptor.Descriptor(
+  name='CSteamTV_GetBroadcastChannelImages_Response',
+  full_name='CSteamTV_GetBroadcastChannelImages_Response',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='images', full_name='CSteamTV_GetBroadcastChannelImages_Response.images', index=0,
+      number=1, type=11, cpp_type=10, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[_CSTEAMTV_GETBROADCASTCHANNELIMAGES_RESPONSE_IMAGES, ],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=2688,
+  serialized_end=3003,
+)
+
+
+_CSTEAMTV_SETBROADCASTCHANNELLINKREGIONS_REQUEST_LINKS = _descriptor.Descriptor(
+  name='Links',
+  full_name='CSteamTV_SetBroadcastChannelLinkRegions_Request.Links',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='link_index', full_name='CSteamTV_SetBroadcastChannelLinkRegions_Request.Links.link_index', index=0,
+      number=1, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\0304Index of the link (lower number has higher priority)', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='url', full_name='CSteamTV_SetBroadcastChannelLinkRegions_Request.Links.url', index=1,
+      number=2, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\004URL ', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='link_description', full_name='CSteamTV_SetBroadcastChannelLinkRegions_Request.Links.link_description', index=2,
+      number=3, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\0301URL description that will show in the link region', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='left', full_name='CSteamTV_SetBroadcastChannelLinkRegions_Request.Links.left', index=3,
+      number=4, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\0302Left X position in 100th of a % of the video width', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='top', full_name='CSteamTV_SetBroadcastChannelLinkRegions_Request.Links.top', index=4,
+      number=5, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\0302Top Y position in 100th of a % of the video height', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='width', full_name='CSteamTV_SetBroadcastChannelLinkRegions_Request.Links.width', index=5,
+      number=6, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030/Region Width in 100th of a % of the video width', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='height', full_name='CSteamTV_SetBroadcastChannelLinkRegions_Request.Links.height', index=6,
+      number=7, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\0301Region Height in 100th of a % of the video height', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=3185,
+  serialized_end=3652,
+)
+
+_CSTEAMTV_SETBROADCASTCHANNELLINKREGIONS_REQUEST = _descriptor.Descriptor(
+  name='CSteamTV_SetBroadcastChannelLinkRegions_Request',
+  full_name='CSteamTV_SetBroadcastChannelLinkRegions_Request',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='broadcast_channel_id', full_name='CSteamTV_SetBroadcastChannelLinkRegions_Request.broadcast_channel_id', index=0,
+      number=1, type=6, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\024Broadcast channel ID', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='links', full_name='CSteamTV_SetBroadcastChannelLinkRegions_Request.links', index=1,
+      number=2, type=11, cpp_type=10, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[_CSTEAMTV_SETBROADCASTCHANNELLINKREGIONS_REQUEST_LINKS, ],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=3006,
+  serialized_end=3652,
+)
+
+
+_CSTEAMTV_SETBROADCASTCHANNELLINKREGIONS_RESPONSE = _descriptor.Descriptor(
+  name='CSteamTV_SetBroadcastChannelLinkRegions_Response',
+  full_name='CSteamTV_SetBroadcastChannelLinkRegions_Response',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=3654,
+  serialized_end=3704,
+)
+
+
+_CSTEAMTV_GETBROADCASTCHANNELLINKS_REQUEST = _descriptor.Descriptor(
+  name='CSteamTV_GetBroadcastChannelLinks_Request',
+  full_name='CSteamTV_GetBroadcastChannelLinks_Request',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='broadcast_channel_id', full_name='CSteamTV_GetBroadcastChannelLinks_Request.broadcast_channel_id', index=0,
+      number=1, type=6, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\024Broadcast channel ID', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=3706,
+  serialized_end=3805,
+)
+
+
+_CSTEAMTV_GETBROADCASTCHANNELLINKS_RESPONSE_LINKS = _descriptor.Descriptor(
+  name='Links',
+  full_name='CSteamTV_GetBroadcastChannelLinks_Response.Links',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='link_index', full_name='CSteamTV_GetBroadcastChannelLinks_Response.Links.link_index', index=0,
+      number=1, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\0304Index of the link (lower number has higher priority)', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='url', full_name='CSteamTV_GetBroadcastChannelLinks_Response.Links.url', index=1,
+      number=2, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\004URL ', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='link_description', full_name='CSteamTV_GetBroadcastChannelLinks_Response.Links.link_description', index=2,
+      number=3, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\0301URL description that will show in the link region', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='left', full_name='CSteamTV_GetBroadcastChannelLinks_Response.Links.left', index=3,
+      number=4, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\0302Left X position in 100th of a % of the video width', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='top', full_name='CSteamTV_GetBroadcastChannelLinks_Response.Links.top', index=4,
+      number=5, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\0302Top Y position in 100th of a % of the video height', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='width', full_name='CSteamTV_GetBroadcastChannelLinks_Response.Links.width', index=5,
+      number=6, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030/Region Width in 100th of a % of the video width', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='height', full_name='CSteamTV_GetBroadcastChannelLinks_Response.Links.height', index=6,
+      number=7, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\0301Region Height in 100th of a % of the video height', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=3185,
+  serialized_end=3652,
+)
+
+_CSTEAMTV_GETBROADCASTCHANNELLINKS_RESPONSE = _descriptor.Descriptor(
+  name='CSteamTV_GetBroadcastChannelLinks_Response',
+  full_name='CSteamTV_GetBroadcastChannelLinks_Response',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='links', full_name='CSteamTV_GetBroadcastChannelLinks_Response.links', index=0,
+      number=1, type=11, cpp_type=10, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[_CSTEAMTV_GETBROADCASTCHANNELLINKS_RESPONSE_LINKS, ],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=3808,
+  serialized_end=4388,
+)
+
+
+_CSTEAMTV_GETBROADCASTCHANNELBROADCASTERS_REQUEST = _descriptor.Descriptor(
+  name='CSteamTV_GetBroadcastChannelBroadcasters_Request',
+  full_name='CSteamTV_GetBroadcastChannelBroadcasters_Request',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='broadcast_channel_id', full_name='CSteamTV_GetBroadcastChannelBroadcasters_Request.broadcast_channel_id', index=0,
+      number=1, type=6, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\024Broadcast channel ID', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=4390,
+  serialized_end=4496,
+)
+
+
+_CSTEAMTV_GETBROADCASTCHANNELBROADCASTERS_RESPONSE_BROADCASTER = _descriptor.Descriptor(
+  name='Broadcaster',
+  full_name='CSteamTV_GetBroadcastChannelBroadcasters_Response.Broadcaster',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='steamid', full_name='CSteamTV_GetBroadcastChannelBroadcasters_Response.Broadcaster.steamid', index=0,
+      number=1, type=6, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\024Broadcaster Steam ID', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='name', full_name='CSteamTV_GetBroadcastChannelBroadcasters_Response.Broadcaster.name', index=1,
+      number=2, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\020Broadcaster name', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='rtmp_token', full_name='CSteamTV_GetBroadcastChannelBroadcasters_Response.Broadcaster.rtmp_token', index=2,
+      number=3, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\030Broadcaster upload token', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=4639,
+  serialized_end=4781,
+)
+
+_CSTEAMTV_GETBROADCASTCHANNELBROADCASTERS_RESPONSE = _descriptor.Descriptor(
+  name='CSteamTV_GetBroadcastChannelBroadcasters_Response',
+  full_name='CSteamTV_GetBroadcastChannelBroadcasters_Response',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='broadcasters', full_name='CSteamTV_GetBroadcastChannelBroadcasters_Response.broadcasters', index=0,
+      number=1, type=11, cpp_type=10, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[_CSTEAMTV_GETBROADCASTCHANNELBROADCASTERS_RESPONSE_BROADCASTER, ],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=4499,
+  serialized_end=4781,
+)
+
+
+_CSTEAMTV_GETFOLLOWEDCHANNELS_REQUEST = _descriptor.Descriptor(
+  name='CSteamTV_GetFollowedChannels_Request',
+  full_name='CSteamTV_GetFollowedChannels_Request',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=4783,
+  serialized_end=4821,
+)
+
+
+_GETBROADCASTCHANNELENTRY = _descriptor.Descriptor(
+  name='GetBroadcastChannelEntry',
+  full_name='GetBroadcastChannelEntry',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='broadcast_channel_id', full_name='GetBroadcastChannelEntry.broadcast_channel_id', index=0,
+      number=1, type=6, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\031Broadcast channel ID or 0', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='unique_name', full_name='GetBroadcastChannelEntry.unique_name', index=1,
+      number=2, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030%Unique broadcast channel name for URL', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='name', full_name='GetBroadcastChannelEntry.name', index=2,
+      number=3, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\033Long broadcast channel name', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='appid', full_name='GetBroadcastChannelEntry.appid', index=3,
+      number=4, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\0300The game ID the requested broadcaster is playing', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='viewers', full_name='GetBroadcastChannelEntry.viewers', index=4,
+      number=5, type=4, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030$Number of viewers currently watching', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='views', full_name='GetBroadcastChannelEntry.views', index=5,
+      number=6, type=4, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030%Number of total views of this channel', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='thumbnail_url', full_name='GetBroadcastChannelEntry.thumbnail_url', index=6,
+      number=7, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\025Current thumbnail URL', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='followers', full_name='GetBroadcastChannelEntry.followers', index=7,
+      number=8, type=4, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030#Number of followers of this channel', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='headline', full_name='GetBroadcastChannelEntry.headline', index=8,
+      number=9, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\031short channel description', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='avatar_url', full_name='GetBroadcastChannelEntry.avatar_url', index=9,
+      number=10, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\024community avatar url', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='broadcaster_steamid', full_name='GetBroadcastChannelEntry.broadcaster_steamid', index=10,
+      number=11, type=6, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\035Current broadcaster streaming', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='subscribers', full_name='GetBroadcastChannelEntry.subscribers', index=11,
+      number=12, type=4, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030%Number of subscribers of this channel', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='background_url', full_name='GetBroadcastChannelEntry.background_url', index=12,
+      number=13, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\024Background image url', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='is_featured', full_name='GetBroadcastChannelEntry.is_featured', index=13,
+      number=14, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\037Whether the channel is featured', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='is_disabled', full_name='GetBroadcastChannelEntry.is_disabled', index=14,
+      number=15, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\037Whether the channel is disabled', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='is_live', full_name='GetBroadcastChannelEntry.is_live', index=15,
+      number=16, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030 Whether the channel is streaming', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='language', full_name='GetBroadcastChannelEntry.language', index=16,
+      number=17, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\035The language the stream is in', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='reports', full_name='GetBroadcastChannelEntry.reports', index=17,
+      number=18, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030%The number of reports the channel has', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='is_partnered', full_name='GetBroadcastChannelEntry.is_partnered', index=18,
+      number=19, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=4824,
+  serialized_end=5897,
+)
+
+
+_CSTEAMTV_GETFOLLOWEDCHANNELS_RESPONSE = _descriptor.Descriptor(
+  name='CSteamTV_GetFollowedChannels_Response',
+  full_name='CSteamTV_GetFollowedChannels_Response',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='results', full_name='CSteamTV_GetFollowedChannels_Response.results', index=0,
+      number=1, type=11, cpp_type=10, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\030The list of broadcasters', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=5899,
+  serialized_end=6012,
+)
+
+
+_CSTEAMTV_GETSUBSCRIBEDCHANNELS_REQUEST = _descriptor.Descriptor(
+  name='CSteamTV_GetSubscribedChannels_Request',
+  full_name='CSteamTV_GetSubscribedChannels_Request',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=6014,
+  serialized_end=6054,
+)
+
+
+_CSTEAMTV_GETSUBSCRIBEDCHANNELS_RESPONSE = _descriptor.Descriptor(
+  name='CSteamTV_GetSubscribedChannels_Response',
+  full_name='CSteamTV_GetSubscribedChannels_Response',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='results', full_name='CSteamTV_GetSubscribedChannels_Response.results', index=0,
+      number=1, type=11, cpp_type=10, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\030The list of broadcasters', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=6056,
+  serialized_end=6171,
+)
+
+
+_CSTEAMTV_GETBROADCASTCHANNELSTATUS_REQUEST = _descriptor.Descriptor(
+  name='CSteamTV_GetBroadcastChannelStatus_Request',
+  full_name='CSteamTV_GetBroadcastChannelStatus_Request',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='broadcast_channel_id', full_name='CSteamTV_GetBroadcastChannelStatus_Request.broadcast_channel_id', index=0,
+      number=1, type=6, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\024Broadcast channel ID', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=6173,
+  serialized_end=6273,
+)
+
+
+_CSTEAMTV_GETBROADCASTCHANNELSTATUS_RESPONSE = _descriptor.Descriptor(
+  name='CSteamTV_GetBroadcastChannelStatus_Response',
+  full_name='CSteamTV_GetBroadcastChannelStatus_Response',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='is_live', full_name='CSteamTV_GetBroadcastChannelStatus_Response.is_live', index=0,
+      number=1, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030*Indicates whether the channel is streaming', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='is_disabled', full_name='CSteamTV_GetBroadcastChannelStatus_Response.is_disabled', index=1,
+      number=2, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030/Indicates whether the channel has been disabled', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='appid', full_name='CSteamTV_GetBroadcastChannelStatus_Response.appid', index=2,
+      number=3, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\0300The game ID the requested broadcaster is playing', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='viewers', full_name='CSteamTV_GetBroadcastChannelStatus_Response.viewers', index=3,
+      number=4, type=4, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030$Number of viewers currently watching', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='views', full_name='CSteamTV_GetBroadcastChannelStatus_Response.views', index=4,
+      number=5, type=4, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030%Number of total views of this channel', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='broadcaster_steamid', full_name='CSteamTV_GetBroadcastChannelStatus_Response.broadcaster_steamid', index=5,
+      number=6, type=6, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\035Current broadcaster streaming', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='thumbnail_url', full_name='CSteamTV_GetBroadcastChannelStatus_Response.thumbnail_url', index=6,
+      number=7, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\025Current thumbnail URL', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='followers', full_name='CSteamTV_GetBroadcastChannelStatus_Response.followers', index=7,
+      number=8, type=4, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030#Number of followers of this channel', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='subscribers', full_name='CSteamTV_GetBroadcastChannelStatus_Response.subscribers', index=8,
+      number=9, type=4, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030%Number of subscribers of this channel', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='unique_name', full_name='CSteamTV_GetBroadcastChannelStatus_Response.unique_name', index=9,
+      number=10, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='broadcast_session_id', full_name='CSteamTV_GetBroadcastChannelStatus_Response.broadcast_session_id', index=10,
+      number=11, type=4, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=6276,
+  serialized_end=6935,
+)
+
+
+_CSTEAMTV_FOLLOWBROADCASTCHANNEL_REQUEST = _descriptor.Descriptor(
+  name='CSteamTV_FollowBroadcastChannel_Request',
+  full_name='CSteamTV_FollowBroadcastChannel_Request',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='broadcast_channel_id', full_name='CSteamTV_FollowBroadcastChannel_Request.broadcast_channel_id', index=0,
+      number=1, type=6, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\024Broadcast channel ID', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='undo', full_name='CSteamTV_FollowBroadcastChannel_Request.undo', index=1,
+      number=2, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030%Indicates this is an unfollow request', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=6938,
+  serialized_end=7092,
+)
+
+
+_CSTEAMTV_FOLLOWBROADCASTCHANNEL_RESPONSE = _descriptor.Descriptor(
+  name='CSteamTV_FollowBroadcastChannel_Response',
+  full_name='CSteamTV_FollowBroadcastChannel_Response',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='is_followed', full_name='CSteamTV_FollowBroadcastChannel_Response.is_followed', index=0,
+      number=1, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030!Whether the user is now following', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=7094,
+  serialized_end=7196,
+)
+
+
+_CSTEAMTV_SUBSCRIBEBROADCASTCHANNEL_REQUEST = _descriptor.Descriptor(
+  name='CSteamTV_SubscribeBroadcastChannel_Request',
+  full_name='CSteamTV_SubscribeBroadcastChannel_Request',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='broadcast_channel_id', full_name='CSteamTV_SubscribeBroadcastChannel_Request.broadcast_channel_id', index=0,
+      number=1, type=6, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\024Broadcast channel ID', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=7198,
+  serialized_end=7298,
+)
+
+
+_CSTEAMTV_SUBSCRIBEBROADCASTCHANNEL_RESPONSE = _descriptor.Descriptor(
+  name='CSteamTV_SubscribeBroadcastChannel_Response',
+  full_name='CSteamTV_SubscribeBroadcastChannel_Response',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='is_subscribed', full_name='CSteamTV_SubscribeBroadcastChannel_Response.is_subscribed', index=0,
+      number=1, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\"Whether the user is now subscribed', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=7300,
+  serialized_end=7408,
+)
+
+
+_CSTEAMTV_GETBROADCASTCHANNELCLIPS_REQUEST = _descriptor.Descriptor(
+  name='CSteamTV_GetBroadcastChannelClips_Request',
+  full_name='CSteamTV_GetBroadcastChannelClips_Request',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='broadcast_channel_id', full_name='CSteamTV_GetBroadcastChannelClips_Request.broadcast_channel_id', index=0,
+      number=1, type=6, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=7410,
+  serialized_end=7483,
+)
+
+
+_CSTEAMTV_BROADCASTCLIPINFO = _descriptor.Descriptor(
+  name='CSteamTV_BroadcastClipInfo',
+  full_name='CSteamTV_BroadcastClipInfo',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='broadcast_clip_id', full_name='CSteamTV_BroadcastClipInfo.broadcast_clip_id', index=0,
+      number=1, type=4, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\021broadcast clip ID', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='channel_id', full_name='CSteamTV_BroadcastClipInfo.channel_id', index=1,
+      number=2, type=4, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\024Broadcast Channel ID', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='app_id', full_name='CSteamTV_BroadcastClipInfo.app_id', index=2,
+      number=3, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\034App ID stream is tagged with', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='broadcaster_steamid', full_name='CSteamTV_BroadcastClipInfo.broadcaster_steamid', index=3,
+      number=4, type=6, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\023Broadcaster SteamID', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='creator_steamid', full_name='CSteamTV_BroadcastClipInfo.creator_steamid', index=4,
+      number=5, type=6, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\022Clip-maker SteamID', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='video_description', full_name='CSteamTV_BroadcastClipInfo.video_description', index=5,
+      number=6, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030&Short name or description of this clip', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='live_time', full_name='CSteamTV_BroadcastClipInfo.live_time', index=6,
+      number=7, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\"GMT time clip was broadcasted live', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='length_ms', full_name='CSteamTV_BroadcastClipInfo.length_ms', index=7,
+      number=8, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\025length of video in MS', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='thumbnail_path', full_name='CSteamTV_BroadcastClipInfo.thumbnail_path', index=8,
+      number=9, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\'relative path for thumbnail URL on host', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=7486,
+  serialized_end=8008,
+)
+
+
+_CSTEAMTV_GETBROADCASTCHANNELCLIPS_RESPONSE = _descriptor.Descriptor(
+  name='CSteamTV_GetBroadcastChannelClips_Response',
+  full_name='CSteamTV_GetBroadcastChannelClips_Response',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='clips', full_name='CSteamTV_GetBroadcastChannelClips_Response.clips', index=0,
+      number=1, type=11, cpp_type=10, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='thumbnail_host', full_name='CSteamTV_GetBroadcastChannelClips_Response.thumbnail_host', index=1,
+      number=2, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=8010,
+  serialized_end=8122,
+)
+
+
+_CSTEAMTV_REPORTBROADCASTCHANNEL_REQUEST = _descriptor.Descriptor(
+  name='CSteamTV_ReportBroadcastChannel_Request',
+  full_name='CSteamTV_ReportBroadcastChannel_Request',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='broadcast_channel_id', full_name='CSteamTV_ReportBroadcastChannel_Request.broadcast_channel_id', index=0,
+      number=1, type=6, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\024Broadcast channel ID', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='reason', full_name='CSteamTV_ReportBroadcastChannel_Request.reason', index=1,
+      number=2, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\031The reason for the report', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=8125,
+  serialized_end=8269,
+)
+
+
+_CSTEAMTV_REPORTBROADCASTCHANNEL_RESPONSE = _descriptor.Descriptor(
+  name='CSteamTV_ReportBroadcastChannel_Response',
+  full_name='CSteamTV_ReportBroadcastChannel_Response',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=8271,
+  serialized_end=8313,
+)
+
+
+_CSTEAMTV_GETBROADCASTCHANNELINTERACTION_REQUEST = _descriptor.Descriptor(
+  name='CSteamTV_GetBroadcastChannelInteraction_Request',
+  full_name='CSteamTV_GetBroadcastChannelInteraction_Request',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='broadcast_channel_id', full_name='CSteamTV_GetBroadcastChannelInteraction_Request.broadcast_channel_id', index=0,
+      number=1, type=6, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\024Broadcast channel ID', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=8315,
+  serialized_end=8420,
+)
+
+
+_CSTEAMTV_GETBROADCASTCHANNELINTERACTION_RESPONSE = _descriptor.Descriptor(
+  name='CSteamTV_GetBroadcastChannelInteraction_Response',
+  full_name='CSteamTV_GetBroadcastChannelInteraction_Response',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='is_followed', full_name='CSteamTV_GetBroadcastChannelInteraction_Response.is_followed', index=0,
+      number=1, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030*Whether the user has followed this channel', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='is_subscribed', full_name='CSteamTV_GetBroadcastChannelInteraction_Response.is_subscribed', index=1,
+      number=2, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030/Whether the user has subscribed to this channel', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=8423,
+  serialized_end=8618,
+)
+
+
+_CSTEAMTV_GETGAMES_REQUEST = _descriptor.Descriptor(
+  name='CSteamTV_GetGames_Request',
+  full_name='CSteamTV_GetGames_Request',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='appid', full_name='CSteamTV_GetGames_Request.appid', index=0,
+      number=1, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\023The ID for the game', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='algorithm', full_name='CSteamTV_GetGames_Request.algorithm', index=1,
+      number=2, type=14, cpp_type=8, label=1,
+      has_default_value=True, default_value=1,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\0301The algorithm to use when picking games to return', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='count', full_name='CSteamTV_GetGames_Request.count', index=2,
+      number=3, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\'The maximum number of results to return', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=8621,
+  serialized_end=8873,
+)
+
+
+_CSTEAMTV_GAME = _descriptor.Descriptor(
+  name='CSteamTV_Game',
+  full_name='CSteamTV_Game',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='appid', full_name='CSteamTV_Game.appid', index=0,
+      number=1, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\023The ID for the game', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='name', full_name='CSteamTV_Game.name', index=1,
+      number=2, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\025The name for the game', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='image', full_name='CSteamTV_Game.image', index=2,
+      number=3, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\026The image for the game', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='viewers', full_name='CSteamTV_Game.viewers', index=3,
+      number=4, type=4, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030#Number of people watching this game', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='channels', full_name='CSteamTV_Game.channels', index=4,
+      number=5, type=11, cpp_type=10, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030!Live channels streaming this game', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='release_date', full_name='CSteamTV_Game.release_date', index=5,
+      number=6, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='developer', full_name='CSteamTV_Game.developer', index=6,
+      number=7, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='publisher', full_name='CSteamTV_Game.publisher', index=7,
+      number=8, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=8876,
+  serialized_end=9217,
+)
+
+
+_CSTEAMTV_GETGAMES_RESPONSE = _descriptor.Descriptor(
+  name='CSteamTV_GetGames_Response',
+  full_name='CSteamTV_GetGames_Response',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='results', full_name='CSteamTV_GetGames_Response.results', index=0,
+      number=1, type=11, cpp_type=10, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\021The list of games', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=9219,
+  serialized_end=9303,
+)
+
+
+_CSTEAMTV_GETCHANNELS_REQUEST = _descriptor.Descriptor(
+  name='CSteamTV_GetChannels_Request',
+  full_name='CSteamTV_GetChannels_Request',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='algorithm', full_name='CSteamTV_GetChannels_Request.algorithm', index=0,
+      number=1, type=14, cpp_type=8, label=1,
+      has_default_value=True, default_value=1,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\0304The algorithm to use when picking channels to return', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='count', full_name='CSteamTV_GetChannels_Request.count', index=1,
+      number=2, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\'The maximum number of results to return', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='appid', full_name='CSteamTV_GetChannels_Request.appid', index=2,
+      number=3, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030!Filter results to only this appid', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=9306,
+  serialized_end=9585,
+)
+
+
+_CSTEAMTV_GETCHANNELS_RESPONSE = _descriptor.Descriptor(
+  name='CSteamTV_GetChannels_Response',
+  full_name='CSteamTV_GetChannels_Response',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='results', full_name='CSteamTV_GetChannels_Response.results', index=0,
+      number=1, type=11, cpp_type=10, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030!The list of featured broadcasters', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=9587,
+  serialized_end=9701,
+)
+
+
+_CSTEAMTV_ADDCHATBAN_REQUEST = _descriptor.Descriptor(
+  name='CSteamTV_AddChatBan_Request',
+  full_name='CSteamTV_AddChatBan_Request',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='broadcast_channel_id', full_name='CSteamTV_AddChatBan_Request.broadcast_channel_id', index=0,
+      number=1, type=6, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='chatter_steamid', full_name='CSteamTV_AddChatBan_Request.chatter_steamid', index=1,
+      number=2, type=6, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='duration', full_name='CSteamTV_AddChatBan_Request.duration', index=2,
+      number=3, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='permanent', full_name='CSteamTV_AddChatBan_Request.permanent', index=3,
+      number=4, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='undo', full_name='CSteamTV_AddChatBan_Request.undo', index=4,
+      number=5, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=9704,
+  serialized_end=9839,
+)
+
+
+_CSTEAMTV_ADDCHATBAN_RESPONSE = _descriptor.Descriptor(
+  name='CSteamTV_AddChatBan_Response',
+  full_name='CSteamTV_AddChatBan_Response',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=9841,
+  serialized_end=9871,
+)
+
+
+_CSTEAMTV_GETCHATBANS_REQUEST = _descriptor.Descriptor(
+  name='CSteamTV_GetChatBans_Request',
+  full_name='CSteamTV_GetChatBans_Request',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='broadcast_channel_id', full_name='CSteamTV_GetChatBans_Request.broadcast_channel_id', index=0,
+      number=1, type=6, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=9873,
+  serialized_end=9933,
+)
+
+
+_CSTEAMTV_CHATBAN = _descriptor.Descriptor(
+  name='CSteamTV_ChatBan',
+  full_name='CSteamTV_ChatBan',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='issuer_steamid', full_name='CSteamTV_ChatBan.issuer_steamid', index=0,
+      number=1, type=6, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='chatter_steamid', full_name='CSteamTV_ChatBan.chatter_steamid', index=1,
+      number=2, type=6, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='time_expires', full_name='CSteamTV_ChatBan.time_expires', index=2,
+      number=3, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='permanent', full_name='CSteamTV_ChatBan.permanent', index=3,
+      number=4, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='name', full_name='CSteamTV_ChatBan.name', index=4,
+      number=5, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=9935,
+  serialized_end=10057,
+)
+
+
+_CSTEAMTV_GETCHATBANS_RESPONSE = _descriptor.Descriptor(
+  name='CSteamTV_GetChatBans_Response',
+  full_name='CSteamTV_GetChatBans_Response',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='results', full_name='CSteamTV_GetChatBans_Response.results', index=0,
+      number=1, type=11, cpp_type=10, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\020The list of bans', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=10059,
+  serialized_end=10148,
+)
+
+
+_CSTEAMTV_ADDCHATMODERATOR_REQUEST = _descriptor.Descriptor(
+  name='CSteamTV_AddChatModerator_Request',
+  full_name='CSteamTV_AddChatModerator_Request',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='broadcast_channel_id', full_name='CSteamTV_AddChatModerator_Request.broadcast_channel_id', index=0,
+      number=1, type=6, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='moderator_steamid', full_name='CSteamTV_AddChatModerator_Request.moderator_steamid', index=1,
+      number=2, type=6, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='undo', full_name='CSteamTV_AddChatModerator_Request.undo', index=2,
+      number=3, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=10150,
+  serialized_end=10256,
+)
+
+
+_CSTEAMTV_ADDCHATMODERATOR_RESPONSE = _descriptor.Descriptor(
+  name='CSteamTV_AddChatModerator_Response',
+  full_name='CSteamTV_AddChatModerator_Response',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=10258,
+  serialized_end=10294,
+)
+
+
+_CSTEAMTV_GETCHATMODERATORS_REQUEST = _descriptor.Descriptor(
+  name='CSteamTV_GetChatModerators_Request',
+  full_name='CSteamTV_GetChatModerators_Request',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='broadcast_channel_id', full_name='CSteamTV_GetChatModerators_Request.broadcast_channel_id', index=0,
+      number=1, type=6, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=10296,
+  serialized_end=10362,
+)
+
+
+_CSTEAMTV_CHATMODERATOR = _descriptor.Descriptor(
+  name='CSteamTV_ChatModerator',
+  full_name='CSteamTV_ChatModerator',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='steamid', full_name='CSteamTV_ChatModerator.steamid', index=0,
+      number=1, type=6, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='name', full_name='CSteamTV_ChatModerator.name', index=1,
+      number=2, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=10364,
+  serialized_end=10419,
+)
+
+
+_CSTEAMTV_GETCHATMODERATORS_RESPONSE = _descriptor.Descriptor(
+  name='CSteamTV_GetChatModerators_Response',
+  full_name='CSteamTV_GetChatModerators_Response',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='results', full_name='CSteamTV_GetChatModerators_Response.results', index=0,
+      number=1, type=11, cpp_type=10, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\026The list of moderators', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=10421,
+  serialized_end=10528,
+)
+
+
+_CSTEAMTV_ADDWORDBAN_REQUEST = _descriptor.Descriptor(
+  name='CSteamTV_AddWordBan_Request',
+  full_name='CSteamTV_AddWordBan_Request',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='broadcast_channel_id', full_name='CSteamTV_AddWordBan_Request.broadcast_channel_id', index=0,
+      number=1, type=6, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='word', full_name='CSteamTV_AddWordBan_Request.word', index=1,
+      number=2, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='undo', full_name='CSteamTV_AddWordBan_Request.undo', index=2,
+      number=3, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=10530,
+  serialized_end=10617,
+)
+
+
+_CSTEAMTV_ADDWORDBAN_RESPONSE = _descriptor.Descriptor(
+  name='CSteamTV_AddWordBan_Response',
+  full_name='CSteamTV_AddWordBan_Response',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=10619,
+  serialized_end=10649,
+)
+
+
+_CSTEAMTV_GETWORDBANS_REQUEST = _descriptor.Descriptor(
+  name='CSteamTV_GetWordBans_Request',
+  full_name='CSteamTV_GetWordBans_Request',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='broadcast_channel_id', full_name='CSteamTV_GetWordBans_Request.broadcast_channel_id', index=0,
+      number=1, type=6, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=10651,
+  serialized_end=10711,
+)
+
+
+_CSTEAMTV_GETWORDBANS_RESPONSE = _descriptor.Descriptor(
+  name='CSteamTV_GetWordBans_Response',
+  full_name='CSteamTV_GetWordBans_Response',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='results', full_name='CSteamTV_GetWordBans_Response.results', index=0,
+      number=1, type=9, cpp_type=9, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\030The list of banned words', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=10713,
+  serialized_end=10791,
+)
+
+
+_CSTEAMTV_JOINCHAT_REQUEST = _descriptor.Descriptor(
+  name='CSteamTV_JoinChat_Request',
+  full_name='CSteamTV_JoinChat_Request',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='broadcast_channel_id', full_name='CSteamTV_JoinChat_Request.broadcast_channel_id', index=0,
+      number=1, type=6, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=10793,
+  serialized_end=10850,
+)
+
+
+_CSTEAMTV_JOINCHAT_RESPONSE = _descriptor.Descriptor(
+  name='CSteamTV_JoinChat_Response',
+  full_name='CSteamTV_JoinChat_Response',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='chat_id', full_name='CSteamTV_JoinChat_Response.chat_id', index=0,
+      number=1, type=6, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='view_url_template', full_name='CSteamTV_JoinChat_Response.view_url_template', index=1,
+      number=2, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='flair_group_ids', full_name='CSteamTV_JoinChat_Response.flair_group_ids', index=2,
+      number=3, type=4, cpp_type=4, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=10852,
+  serialized_end=10949,
+)
+
+
+_CSTEAMTV_SEARCH_REQUEST = _descriptor.Descriptor(
+  name='CSteamTV_Search_Request',
+  full_name='CSteamTV_Search_Request',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='term', full_name='CSteamTV_Search_Request.term', index=0,
+      number=1, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=10951,
+  serialized_end=10990,
+)
+
+
+_CSTEAMTV_SEARCH_RESPONSE = _descriptor.Descriptor(
+  name='CSteamTV_Search_Response',
+  full_name='CSteamTV_Search_Response',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='results', full_name='CSteamTV_Search_Response.results', index=0,
+      number=1, type=11, cpp_type=10, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\030The list of broadcasters', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=10992,
+  serialized_end=11092,
+)
+
+
+_CSTEAMTV_GETSTEAMTVUSERSETTINGS_REQUEST = _descriptor.Descriptor(
+  name='CSteamTV_GetSteamTVUserSettings_Request',
+  full_name='CSteamTV_GetSteamTVUserSettings_Request',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=11094,
+  serialized_end=11135,
+)
+
+
+_CSTEAMTV_GETSTEAMTVUSERSETTINGS_RESPONSE = _descriptor.Descriptor(
+  name='CSteamTV_GetSteamTVUserSettings_Response',
+  full_name='CSteamTV_GetSteamTVUserSettings_Response',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='stream_live_email', full_name='CSteamTV_GetSteamTVUserSettings_Response.stream_live_email', index=0,
+      number=1, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030&Send email when followed stream starts', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='stream_live_notification', full_name='CSteamTV_GetSteamTVUserSettings_Response.stream_live_notification', index=1,
+      number=2, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\0303Send Steam notification when followed stream starts', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=11138,
+  serialized_end=11342,
+)
+
+
+_CSTEAMTV_SETSTEAMTVUSERSETTINGS_REQUEST = _descriptor.Descriptor(
+  name='CSteamTV_SetSteamTVUserSettings_Request',
+  full_name='CSteamTV_SetSteamTVUserSettings_Request',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='stream_live_email', full_name='CSteamTV_SetSteamTVUserSettings_Request.stream_live_email', index=0,
+      number=1, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030&Send email when followed stream starts', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='stream_live_notification', full_name='CSteamTV_SetSteamTVUserSettings_Request.stream_live_notification', index=1,
+      number=2, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\0303Send Steam notification when followed stream starts', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=11345,
+  serialized_end=11548,
+)
+
+
+_CSTEAMTV_SETSTEAMTVUSERSETTINGS_RESPONSE = _descriptor.Descriptor(
+  name='CSteamTV_SetSteamTVUserSettings_Response',
+  full_name='CSteamTV_SetSteamTVUserSettings_Response',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=11550,
+  serialized_end=11592,
+)
+
+
+_CSTEAMTV_GETMYBROADCASTCHANNELS_REQUEST = _descriptor.Descriptor(
+  name='CSteamTV_GetMyBroadcastChannels_Request',
+  full_name='CSteamTV_GetMyBroadcastChannels_Request',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=11594,
+  serialized_end=11635,
+)
+
+
+_CSTEAMTV_GETMYBROADCASTCHANNELS_RESPONSE = _descriptor.Descriptor(
+  name='CSteamTV_GetMyBroadcastChannels_Response',
+  full_name='CSteamTV_GetMyBroadcastChannels_Response',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='results', full_name='CSteamTV_GetMyBroadcastChannels_Response.results', index=0,
+      number=1, type=11, cpp_type=10, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\030The list of broadcasters', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=11637,
+  serialized_end=11753,
+)
+
+
+_CSTEAMTV_GETHOMEPAGECONTENTS_REQUEST = _descriptor.Descriptor(
+  name='CSteamTV_GetHomePageContents_Request',
+  full_name='CSteamTV_GetHomePageContents_Request',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=11755,
+  serialized_end=11793,
+)
+
+
+_CSTEAMTV_HOMEPAGETEMPLATE_TAKEOVER = _descriptor.Descriptor(
+  name='CSteamTV_HomePageTemplate_Takeover',
+  full_name='CSteamTV_HomePageTemplate_Takeover',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='broadcasts', full_name='CSteamTV_HomePageTemplate_Takeover.broadcasts', index=0,
+      number=1, type=11, cpp_type=10, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=11795,
+  serialized_end=11878,
+)
+
+
+_CSTEAMTV_HOMEPAGETEMPLATE_SINGLEGAME = _descriptor.Descriptor(
+  name='CSteamTV_HomePageTemplate_SingleGame',
+  full_name='CSteamTV_HomePageTemplate_SingleGame',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='broadcasts', full_name='CSteamTV_HomePageTemplate_SingleGame.broadcasts', index=0,
+      number=1, type=11, cpp_type=10, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='appid', full_name='CSteamTV_HomePageTemplate_SingleGame.appid', index=1,
+      number=2, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='title', full_name='CSteamTV_HomePageTemplate_SingleGame.title', index=2,
+      number=3, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=11880,
+  serialized_end=11995,
+)
+
+
+_GAMELISTENTRY = _descriptor.Descriptor(
+  name='GameListEntry',
+  full_name='GameListEntry',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='appid', full_name='GameListEntry.appid', index=0,
+      number=1, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='game_name', full_name='GameListEntry.game_name', index=1,
+      number=2, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='broadcast', full_name='GameListEntry.broadcast', index=2,
+      number=3, type=11, cpp_type=10, label=1,
+      has_default_value=False, default_value=None,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=11997,
+  serialized_end=12092,
+)
+
+
+_CSTEAMTV_HOMEPAGETEMPLATE_GAMELIST = _descriptor.Descriptor(
+  name='CSteamTV_HomePageTemplate_GameList',
+  full_name='CSteamTV_HomePageTemplate_GameList',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='entries', full_name='CSteamTV_HomePageTemplate_GameList.entries', index=0,
+      number=1, type=11, cpp_type=10, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='title', full_name='CSteamTV_HomePageTemplate_GameList.title', index=1,
+      number=2, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=12094,
+  serialized_end=12178,
+)
+
+
+_CSTEAMTV_HOMEPAGETEMPLATE_QUICKEXPLORE = _descriptor.Descriptor(
+  name='CSteamTV_HomePageTemplate_QuickExplore',
+  full_name='CSteamTV_HomePageTemplate_QuickExplore',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='broadcasts', full_name='CSteamTV_HomePageTemplate_QuickExplore.broadcasts', index=0,
+      number=1, type=11, cpp_type=10, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='title', full_name='CSteamTV_HomePageTemplate_QuickExplore.title', index=1,
+      number=2, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=12180,
+  serialized_end=12282,
+)
+
+
+_CSTEAMTV_HOMEPAGETEMPLATE_CONVEYORBELT = _descriptor.Descriptor(
+  name='CSteamTV_HomePageTemplate_ConveyorBelt',
+  full_name='CSteamTV_HomePageTemplate_ConveyorBelt',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='broadcasts', full_name='CSteamTV_HomePageTemplate_ConveyorBelt.broadcasts', index=0,
+      number=1, type=11, cpp_type=10, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='title', full_name='CSteamTV_HomePageTemplate_ConveyorBelt.title', index=1,
+      number=2, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=12284,
+  serialized_end=12386,
+)
+
+
+_CSTEAMTV_HOMEPAGETEMPLATE_WATCHPARTY = _descriptor.Descriptor(
+  name='CSteamTV_HomePageTemplate_WatchParty',
+  full_name='CSteamTV_HomePageTemplate_WatchParty',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='broadcast', full_name='CSteamTV_HomePageTemplate_WatchParty.broadcast', index=0,
+      number=1, type=11, cpp_type=10, label=1,
+      has_default_value=False, default_value=None,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='title', full_name='CSteamTV_HomePageTemplate_WatchParty.title', index=1,
+      number=2, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='chat_group_id', full_name='CSteamTV_HomePageTemplate_WatchParty.chat_group_id', index=2,
+      number=3, type=4, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=12388,
+  serialized_end=12510,
+)
+
+
+_CSTEAMTV_HOMEPAGETEMPLATE_DEVELOPER = _descriptor.Descriptor(
+  name='CSteamTV_HomePageTemplate_Developer',
+  full_name='CSteamTV_HomePageTemplate_Developer',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='broadcast', full_name='CSteamTV_HomePageTemplate_Developer.broadcast', index=0,
+      number=1, type=11, cpp_type=10, label=1,
+      has_default_value=False, default_value=None,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='title', full_name='CSteamTV_HomePageTemplate_Developer.title', index=1,
+      number=2, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=12512,
+  serialized_end=12610,
+)
+
+
+_CSTEAMTV_HOMEPAGETEMPLATE_EVENT = _descriptor.Descriptor(
+  name='CSteamTV_HomePageTemplate_Event',
+  full_name='CSteamTV_HomePageTemplate_Event',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='title', full_name='CSteamTV_HomePageTemplate_Event.title', index=0,
+      number=1, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=12612,
+  serialized_end=12660,
+)
+
+
+_CSTEAMTV_HOMEPAGECONTENTROW = _descriptor.Descriptor(
+  name='CSteamTV_HomePageContentRow',
+  full_name='CSteamTV_HomePageContentRow',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='template_type', full_name='CSteamTV_HomePageContentRow.template_type', index=0,
+      number=1, type=14, cpp_type=8, label=1,
+      has_default_value=True, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='takeover', full_name='CSteamTV_HomePageContentRow.takeover', index=1,
+      number=2, type=11, cpp_type=10, label=1,
+      has_default_value=False, default_value=None,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='single_game', full_name='CSteamTV_HomePageContentRow.single_game', index=2,
+      number=3, type=11, cpp_type=10, label=1,
+      has_default_value=False, default_value=None,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='game_list', full_name='CSteamTV_HomePageContentRow.game_list', index=3,
+      number=4, type=11, cpp_type=10, label=1,
+      has_default_value=False, default_value=None,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='quick_explore', full_name='CSteamTV_HomePageContentRow.quick_explore', index=4,
+      number=5, type=11, cpp_type=10, label=1,
+      has_default_value=False, default_value=None,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='conveyor_belt', full_name='CSteamTV_HomePageContentRow.conveyor_belt', index=5,
+      number=6, type=11, cpp_type=10, label=1,
+      has_default_value=False, default_value=None,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='watch_party', full_name='CSteamTV_HomePageContentRow.watch_party', index=6,
+      number=7, type=11, cpp_type=10, label=1,
+      has_default_value=False, default_value=None,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='developer', full_name='CSteamTV_HomePageContentRow.developer', index=7,
+      number=8, type=11, cpp_type=10, label=1,
+      has_default_value=False, default_value=None,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='event', full_name='CSteamTV_HomePageContentRow.event', index=8,
+      number=9, type=11, cpp_type=10, label=1,
+      has_default_value=False, default_value=None,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=12663,
+  serialized_end=13241,
+)
+
+
+_CSTEAMTV_GETHOMEPAGECONTENTS_RESPONSE = _descriptor.Descriptor(
+  name='CSteamTV_GetHomePageContents_Response',
+  full_name='CSteamTV_GetHomePageContents_Response',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='rows', full_name='CSteamTV_GetHomePageContents_Response.rows', index=0,
+      number=1, type=11, cpp_type=10, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=13243,
+  serialized_end=13326,
+)
+
+
+_CSTEAMTV_APPCHEER_SINGLECHEERTYPE = _descriptor.Descriptor(
+  name='CSteamTV_AppCheer_SingleCheerType',
+  full_name='CSteamTV_AppCheer_SingleCheerType',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='cheer_type', full_name='CSteamTV_AppCheer_SingleCheerType.cheer_type', index=0,
+      number=1, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030HThe type of cheer. App dependent (different teams, heroes, players, etc)', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='cheer_amount', full_name='CSteamTV_AppCheer_SingleCheerType.cheer_amount', index=1,
+      number=2, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\025The amount of cheers.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=13329,
+  serialized_end=13511,
+)
+
+
+_CSTEAMTV_APPCHEER_REQUEST = _descriptor.Descriptor(
+  name='CSteamTV_AppCheer_Request',
+  full_name='CSteamTV_AppCheer_Request',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='app_id', full_name='CSteamTV_AppCheer_Request.app_id', index=0,
+      number=1, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\031App ID this cheer is for.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='cheer_target_id', full_name='CSteamTV_AppCheer_Request.cheer_target_id', index=1,
+      number=2, type=6, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030hThe thing being cheered on. ID is app dependent (could be steam id, match id, lobby id, server id, etc).', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='cheers', full_name='CSteamTV_AppCheer_Request.cheers', index=2,
+      number=3, type=11, cpp_type=10, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030QThe set of cheers this request represents (could be multiple of different types).', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=13514,
+  serialized_end=13864,
+)
+
+
+_CSTEAMTV_APPCHEER_RESPONSE = _descriptor.Descriptor(
+  name='CSteamTV_AppCheer_Response',
+  full_name='CSteamTV_AppCheer_Response',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='aggregation_delay_ms', full_name='CSteamTV_AppCheer_Response.aggregation_delay_ms', index=0,
+      number=1, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\254\001The amount of time in milliseconds that the client should aggregate cheers before sending them. The server can control this dynamically to ask clients to slow down sending.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=13867,
+  serialized_end=14106,
+)
+
+_CSTEAMTV_SETBROADCASTCHANNELIMAGE_REQUEST.fields_by_name['image_type'].enum_type = _EBROADCASTIMAGETYPE
+_CSTEAMTV_GETBROADCASTCHANNELIMAGES_REQUEST.fields_by_name['image_types'].enum_type = _EBROADCASTIMAGETYPE
+_CSTEAMTV_GETBROADCASTCHANNELIMAGES_RESPONSE_IMAGES.fields_by_name['image_type'].enum_type = _EBROADCASTIMAGETYPE
+_CSTEAMTV_GETBROADCASTCHANNELIMAGES_RESPONSE_IMAGES.containing_type = _CSTEAMTV_GETBROADCASTCHANNELIMAGES_RESPONSE
+_CSTEAMTV_GETBROADCASTCHANNELIMAGES_RESPONSE.fields_by_name['images'].message_type = _CSTEAMTV_GETBROADCASTCHANNELIMAGES_RESPONSE_IMAGES
+_CSTEAMTV_SETBROADCASTCHANNELLINKREGIONS_REQUEST_LINKS.containing_type = _CSTEAMTV_SETBROADCASTCHANNELLINKREGIONS_REQUEST
+_CSTEAMTV_SETBROADCASTCHANNELLINKREGIONS_REQUEST.fields_by_name['links'].message_type = _CSTEAMTV_SETBROADCASTCHANNELLINKREGIONS_REQUEST_LINKS
+_CSTEAMTV_GETBROADCASTCHANNELLINKS_RESPONSE_LINKS.containing_type = _CSTEAMTV_GETBROADCASTCHANNELLINKS_RESPONSE
+_CSTEAMTV_GETBROADCASTCHANNELLINKS_RESPONSE.fields_by_name['links'].message_type = _CSTEAMTV_GETBROADCASTCHANNELLINKS_RESPONSE_LINKS
+_CSTEAMTV_GETBROADCASTCHANNELBROADCASTERS_RESPONSE_BROADCASTER.containing_type = _CSTEAMTV_GETBROADCASTCHANNELBROADCASTERS_RESPONSE
+_CSTEAMTV_GETBROADCASTCHANNELBROADCASTERS_RESPONSE.fields_by_name['broadcasters'].message_type = _CSTEAMTV_GETBROADCASTCHANNELBROADCASTERS_RESPONSE_BROADCASTER
+_CSTEAMTV_GETFOLLOWEDCHANNELS_RESPONSE.fields_by_name['results'].message_type = _GETBROADCASTCHANNELENTRY
+_CSTEAMTV_GETSUBSCRIBEDCHANNELS_RESPONSE.fields_by_name['results'].message_type = _GETBROADCASTCHANNELENTRY
+_CSTEAMTV_GETBROADCASTCHANNELCLIPS_RESPONSE.fields_by_name['clips'].message_type = _CSTEAMTV_BROADCASTCLIPINFO
+_CSTEAMTV_GETGAMES_REQUEST.fields_by_name['algorithm'].enum_type = _EGETGAMESALGORITHM
+_CSTEAMTV_GAME.fields_by_name['channels'].message_type = _GETBROADCASTCHANNELENTRY
+_CSTEAMTV_GETGAMES_RESPONSE.fields_by_name['results'].message_type = _CSTEAMTV_GAME
+_CSTEAMTV_GETCHANNELS_REQUEST.fields_by_name['algorithm'].enum_type = _EGETCHANNELSALGORITHM
+_CSTEAMTV_GETCHANNELS_RESPONSE.fields_by_name['results'].message_type = _GETBROADCASTCHANNELENTRY
+_CSTEAMTV_GETCHATBANS_RESPONSE.fields_by_name['results'].message_type = _CSTEAMTV_CHATBAN
+_CSTEAMTV_GETCHATMODERATORS_RESPONSE.fields_by_name['results'].message_type = _CSTEAMTV_CHATMODERATOR
+_CSTEAMTV_SEARCH_RESPONSE.fields_by_name['results'].message_type = _GETBROADCASTCHANNELENTRY
+_CSTEAMTV_GETMYBROADCASTCHANNELS_RESPONSE.fields_by_name['results'].message_type = _GETBROADCASTCHANNELENTRY
+_CSTEAMTV_HOMEPAGETEMPLATE_TAKEOVER.fields_by_name['broadcasts'].message_type = _GETBROADCASTCHANNELENTRY
+_CSTEAMTV_HOMEPAGETEMPLATE_SINGLEGAME.fields_by_name['broadcasts'].message_type = _GETBROADCASTCHANNELENTRY
+_GAMELISTENTRY.fields_by_name['broadcast'].message_type = _GETBROADCASTCHANNELENTRY
+_CSTEAMTV_HOMEPAGETEMPLATE_GAMELIST.fields_by_name['entries'].message_type = _GAMELISTENTRY
+_CSTEAMTV_HOMEPAGETEMPLATE_QUICKEXPLORE.fields_by_name['broadcasts'].message_type = _GETBROADCASTCHANNELENTRY
+_CSTEAMTV_HOMEPAGETEMPLATE_CONVEYORBELT.fields_by_name['broadcasts'].message_type = _GETBROADCASTCHANNELENTRY
+_CSTEAMTV_HOMEPAGETEMPLATE_WATCHPARTY.fields_by_name['broadcast'].message_type = _GETBROADCASTCHANNELENTRY
+_CSTEAMTV_HOMEPAGETEMPLATE_DEVELOPER.fields_by_name['broadcast'].message_type = _GETBROADCASTCHANNELENTRY
+_CSTEAMTV_HOMEPAGECONTENTROW.fields_by_name['template_type'].enum_type = _ESTEAMTVCONTENTTEMPLATE
+_CSTEAMTV_HOMEPAGECONTENTROW.fields_by_name['takeover'].message_type = _CSTEAMTV_HOMEPAGETEMPLATE_TAKEOVER
+_CSTEAMTV_HOMEPAGECONTENTROW.fields_by_name['single_game'].message_type = _CSTEAMTV_HOMEPAGETEMPLATE_SINGLEGAME
+_CSTEAMTV_HOMEPAGECONTENTROW.fields_by_name['game_list'].message_type = _CSTEAMTV_HOMEPAGETEMPLATE_GAMELIST
+_CSTEAMTV_HOMEPAGECONTENTROW.fields_by_name['quick_explore'].message_type = _CSTEAMTV_HOMEPAGETEMPLATE_QUICKEXPLORE
+_CSTEAMTV_HOMEPAGECONTENTROW.fields_by_name['conveyor_belt'].message_type = _CSTEAMTV_HOMEPAGETEMPLATE_CONVEYORBELT
+_CSTEAMTV_HOMEPAGECONTENTROW.fields_by_name['watch_party'].message_type = _CSTEAMTV_HOMEPAGETEMPLATE_WATCHPARTY
+_CSTEAMTV_HOMEPAGECONTENTROW.fields_by_name['developer'].message_type = _CSTEAMTV_HOMEPAGETEMPLATE_DEVELOPER
+_CSTEAMTV_HOMEPAGECONTENTROW.fields_by_name['event'].message_type = _CSTEAMTV_HOMEPAGETEMPLATE_EVENT
+_CSTEAMTV_GETHOMEPAGECONTENTS_RESPONSE.fields_by_name['rows'].message_type = _CSTEAMTV_HOMEPAGECONTENTROW
+_CSTEAMTV_APPCHEER_REQUEST.fields_by_name['cheers'].message_type = _CSTEAMTV_APPCHEER_SINGLECHEERTYPE
+DESCRIPTOR.message_types_by_name['CSteamTV_CreateBroadcastChannel_Request'] = _CSTEAMTV_CREATEBROADCASTCHANNEL_REQUEST
+DESCRIPTOR.message_types_by_name['CSteamTV_CreateBroadcastChannel_Response'] = _CSTEAMTV_CREATEBROADCASTCHANNEL_RESPONSE
+DESCRIPTOR.message_types_by_name['CSteamTV_GetBroadcastChannelID_Request'] = _CSTEAMTV_GETBROADCASTCHANNELID_REQUEST
+DESCRIPTOR.message_types_by_name['CSteamTV_GetBroadcastChannelID_Response'] = _CSTEAMTV_GETBROADCASTCHANNELID_RESPONSE
+DESCRIPTOR.message_types_by_name['CSteamTV_SetBroadcastChannelProfile_Request'] = _CSTEAMTV_SETBROADCASTCHANNELPROFILE_REQUEST
+DESCRIPTOR.message_types_by_name['CSteamTV_SetBroadcastChannelProfile_Response'] = _CSTEAMTV_SETBROADCASTCHANNELPROFILE_RESPONSE
+DESCRIPTOR.message_types_by_name['CSteamTV_GetBroadcastChannelProfile_Request'] = _CSTEAMTV_GETBROADCASTCHANNELPROFILE_REQUEST
+DESCRIPTOR.message_types_by_name['CSteamTV_GetBroadcastChannelProfile_Response'] = _CSTEAMTV_GETBROADCASTCHANNELPROFILE_RESPONSE
+DESCRIPTOR.message_types_by_name['CSteamTV_SetBroadcastChannelImage_Request'] = _CSTEAMTV_SETBROADCASTCHANNELIMAGE_REQUEST
+DESCRIPTOR.message_types_by_name['CSteamTV_SetBroadcastChannelImage_Response'] = _CSTEAMTV_SETBROADCASTCHANNELIMAGE_RESPONSE
+DESCRIPTOR.message_types_by_name['CSteamTV_GetBroadcastChannelImages_Request'] = _CSTEAMTV_GETBROADCASTCHANNELIMAGES_REQUEST
+DESCRIPTOR.message_types_by_name['CSteamTV_GetBroadcastChannelImages_Response'] = _CSTEAMTV_GETBROADCASTCHANNELIMAGES_RESPONSE
+DESCRIPTOR.message_types_by_name['CSteamTV_SetBroadcastChannelLinkRegions_Request'] = _CSTEAMTV_SETBROADCASTCHANNELLINKREGIONS_REQUEST
+DESCRIPTOR.message_types_by_name['CSteamTV_SetBroadcastChannelLinkRegions_Response'] = _CSTEAMTV_SETBROADCASTCHANNELLINKREGIONS_RESPONSE
+DESCRIPTOR.message_types_by_name['CSteamTV_GetBroadcastChannelLinks_Request'] = _CSTEAMTV_GETBROADCASTCHANNELLINKS_REQUEST
+DESCRIPTOR.message_types_by_name['CSteamTV_GetBroadcastChannelLinks_Response'] = _CSTEAMTV_GETBROADCASTCHANNELLINKS_RESPONSE
+DESCRIPTOR.message_types_by_name['CSteamTV_GetBroadcastChannelBroadcasters_Request'] = _CSTEAMTV_GETBROADCASTCHANNELBROADCASTERS_REQUEST
+DESCRIPTOR.message_types_by_name['CSteamTV_GetBroadcastChannelBroadcasters_Response'] = _CSTEAMTV_GETBROADCASTCHANNELBROADCASTERS_RESPONSE
+DESCRIPTOR.message_types_by_name['CSteamTV_GetFollowedChannels_Request'] = _CSTEAMTV_GETFOLLOWEDCHANNELS_REQUEST
+DESCRIPTOR.message_types_by_name['GetBroadcastChannelEntry'] = _GETBROADCASTCHANNELENTRY
+DESCRIPTOR.message_types_by_name['CSteamTV_GetFollowedChannels_Response'] = _CSTEAMTV_GETFOLLOWEDCHANNELS_RESPONSE
+DESCRIPTOR.message_types_by_name['CSteamTV_GetSubscribedChannels_Request'] = _CSTEAMTV_GETSUBSCRIBEDCHANNELS_REQUEST
+DESCRIPTOR.message_types_by_name['CSteamTV_GetSubscribedChannels_Response'] = _CSTEAMTV_GETSUBSCRIBEDCHANNELS_RESPONSE
+DESCRIPTOR.message_types_by_name['CSteamTV_GetBroadcastChannelStatus_Request'] = _CSTEAMTV_GETBROADCASTCHANNELSTATUS_REQUEST
+DESCRIPTOR.message_types_by_name['CSteamTV_GetBroadcastChannelStatus_Response'] = _CSTEAMTV_GETBROADCASTCHANNELSTATUS_RESPONSE
+DESCRIPTOR.message_types_by_name['CSteamTV_FollowBroadcastChannel_Request'] = _CSTEAMTV_FOLLOWBROADCASTCHANNEL_REQUEST
+DESCRIPTOR.message_types_by_name['CSteamTV_FollowBroadcastChannel_Response'] = _CSTEAMTV_FOLLOWBROADCASTCHANNEL_RESPONSE
+DESCRIPTOR.message_types_by_name['CSteamTV_SubscribeBroadcastChannel_Request'] = _CSTEAMTV_SUBSCRIBEBROADCASTCHANNEL_REQUEST
+DESCRIPTOR.message_types_by_name['CSteamTV_SubscribeBroadcastChannel_Response'] = _CSTEAMTV_SUBSCRIBEBROADCASTCHANNEL_RESPONSE
+DESCRIPTOR.message_types_by_name['CSteamTV_GetBroadcastChannelClips_Request'] = _CSTEAMTV_GETBROADCASTCHANNELCLIPS_REQUEST
+DESCRIPTOR.message_types_by_name['CSteamTV_BroadcastClipInfo'] = _CSTEAMTV_BROADCASTCLIPINFO
+DESCRIPTOR.message_types_by_name['CSteamTV_GetBroadcastChannelClips_Response'] = _CSTEAMTV_GETBROADCASTCHANNELCLIPS_RESPONSE
+DESCRIPTOR.message_types_by_name['CSteamTV_ReportBroadcastChannel_Request'] = _CSTEAMTV_REPORTBROADCASTCHANNEL_REQUEST
+DESCRIPTOR.message_types_by_name['CSteamTV_ReportBroadcastChannel_Response'] = _CSTEAMTV_REPORTBROADCASTCHANNEL_RESPONSE
+DESCRIPTOR.message_types_by_name['CSteamTV_GetBroadcastChannelInteraction_Request'] = _CSTEAMTV_GETBROADCASTCHANNELINTERACTION_REQUEST
+DESCRIPTOR.message_types_by_name['CSteamTV_GetBroadcastChannelInteraction_Response'] = _CSTEAMTV_GETBROADCASTCHANNELINTERACTION_RESPONSE
+DESCRIPTOR.message_types_by_name['CSteamTV_GetGames_Request'] = _CSTEAMTV_GETGAMES_REQUEST
+DESCRIPTOR.message_types_by_name['CSteamTV_Game'] = _CSTEAMTV_GAME
+DESCRIPTOR.message_types_by_name['CSteamTV_GetGames_Response'] = _CSTEAMTV_GETGAMES_RESPONSE
+DESCRIPTOR.message_types_by_name['CSteamTV_GetChannels_Request'] = _CSTEAMTV_GETCHANNELS_REQUEST
+DESCRIPTOR.message_types_by_name['CSteamTV_GetChannels_Response'] = _CSTEAMTV_GETCHANNELS_RESPONSE
+DESCRIPTOR.message_types_by_name['CSteamTV_AddChatBan_Request'] = _CSTEAMTV_ADDCHATBAN_REQUEST
+DESCRIPTOR.message_types_by_name['CSteamTV_AddChatBan_Response'] = _CSTEAMTV_ADDCHATBAN_RESPONSE
+DESCRIPTOR.message_types_by_name['CSteamTV_GetChatBans_Request'] = _CSTEAMTV_GETCHATBANS_REQUEST
+DESCRIPTOR.message_types_by_name['CSteamTV_ChatBan'] = _CSTEAMTV_CHATBAN
+DESCRIPTOR.message_types_by_name['CSteamTV_GetChatBans_Response'] = _CSTEAMTV_GETCHATBANS_RESPONSE
+DESCRIPTOR.message_types_by_name['CSteamTV_AddChatModerator_Request'] = _CSTEAMTV_ADDCHATMODERATOR_REQUEST
+DESCRIPTOR.message_types_by_name['CSteamTV_AddChatModerator_Response'] = _CSTEAMTV_ADDCHATMODERATOR_RESPONSE
+DESCRIPTOR.message_types_by_name['CSteamTV_GetChatModerators_Request'] = _CSTEAMTV_GETCHATMODERATORS_REQUEST
+DESCRIPTOR.message_types_by_name['CSteamTV_ChatModerator'] = _CSTEAMTV_CHATMODERATOR
+DESCRIPTOR.message_types_by_name['CSteamTV_GetChatModerators_Response'] = _CSTEAMTV_GETCHATMODERATORS_RESPONSE
+DESCRIPTOR.message_types_by_name['CSteamTV_AddWordBan_Request'] = _CSTEAMTV_ADDWORDBAN_REQUEST
+DESCRIPTOR.message_types_by_name['CSteamTV_AddWordBan_Response'] = _CSTEAMTV_ADDWORDBAN_RESPONSE
+DESCRIPTOR.message_types_by_name['CSteamTV_GetWordBans_Request'] = _CSTEAMTV_GETWORDBANS_REQUEST
+DESCRIPTOR.message_types_by_name['CSteamTV_GetWordBans_Response'] = _CSTEAMTV_GETWORDBANS_RESPONSE
+DESCRIPTOR.message_types_by_name['CSteamTV_JoinChat_Request'] = _CSTEAMTV_JOINCHAT_REQUEST
+DESCRIPTOR.message_types_by_name['CSteamTV_JoinChat_Response'] = _CSTEAMTV_JOINCHAT_RESPONSE
+DESCRIPTOR.message_types_by_name['CSteamTV_Search_Request'] = _CSTEAMTV_SEARCH_REQUEST
+DESCRIPTOR.message_types_by_name['CSteamTV_Search_Response'] = _CSTEAMTV_SEARCH_RESPONSE
+DESCRIPTOR.message_types_by_name['CSteamTV_GetSteamTVUserSettings_Request'] = _CSTEAMTV_GETSTEAMTVUSERSETTINGS_REQUEST
+DESCRIPTOR.message_types_by_name['CSteamTV_GetSteamTVUserSettings_Response'] = _CSTEAMTV_GETSTEAMTVUSERSETTINGS_RESPONSE
+DESCRIPTOR.message_types_by_name['CSteamTV_SetSteamTVUserSettings_Request'] = _CSTEAMTV_SETSTEAMTVUSERSETTINGS_REQUEST
+DESCRIPTOR.message_types_by_name['CSteamTV_SetSteamTVUserSettings_Response'] = _CSTEAMTV_SETSTEAMTVUSERSETTINGS_RESPONSE
+DESCRIPTOR.message_types_by_name['CSteamTV_GetMyBroadcastChannels_Request'] = _CSTEAMTV_GETMYBROADCASTCHANNELS_REQUEST
+DESCRIPTOR.message_types_by_name['CSteamTV_GetMyBroadcastChannels_Response'] = _CSTEAMTV_GETMYBROADCASTCHANNELS_RESPONSE
+DESCRIPTOR.message_types_by_name['CSteamTV_GetHomePageContents_Request'] = _CSTEAMTV_GETHOMEPAGECONTENTS_REQUEST
+DESCRIPTOR.message_types_by_name['CSteamTV_HomePageTemplate_Takeover'] = _CSTEAMTV_HOMEPAGETEMPLATE_TAKEOVER
+DESCRIPTOR.message_types_by_name['CSteamTV_HomePageTemplate_SingleGame'] = _CSTEAMTV_HOMEPAGETEMPLATE_SINGLEGAME
+DESCRIPTOR.message_types_by_name['GameListEntry'] = _GAMELISTENTRY
+DESCRIPTOR.message_types_by_name['CSteamTV_HomePageTemplate_GameList'] = _CSTEAMTV_HOMEPAGETEMPLATE_GAMELIST
+DESCRIPTOR.message_types_by_name['CSteamTV_HomePageTemplate_QuickExplore'] = _CSTEAMTV_HOMEPAGETEMPLATE_QUICKEXPLORE
+DESCRIPTOR.message_types_by_name['CSteamTV_HomePageTemplate_ConveyorBelt'] = _CSTEAMTV_HOMEPAGETEMPLATE_CONVEYORBELT
+DESCRIPTOR.message_types_by_name['CSteamTV_HomePageTemplate_WatchParty'] = _CSTEAMTV_HOMEPAGETEMPLATE_WATCHPARTY
+DESCRIPTOR.message_types_by_name['CSteamTV_HomePageTemplate_Developer'] = _CSTEAMTV_HOMEPAGETEMPLATE_DEVELOPER
+DESCRIPTOR.message_types_by_name['CSteamTV_HomePageTemplate_Event'] = _CSTEAMTV_HOMEPAGETEMPLATE_EVENT
+DESCRIPTOR.message_types_by_name['CSteamTV_HomePageContentRow'] = _CSTEAMTV_HOMEPAGECONTENTROW
+DESCRIPTOR.message_types_by_name['CSteamTV_GetHomePageContents_Response'] = _CSTEAMTV_GETHOMEPAGECONTENTS_RESPONSE
+DESCRIPTOR.message_types_by_name['CSteamTV_AppCheer_SingleCheerType'] = _CSTEAMTV_APPCHEER_SINGLECHEERTYPE
+DESCRIPTOR.message_types_by_name['CSteamTV_AppCheer_Request'] = _CSTEAMTV_APPCHEER_REQUEST
+DESCRIPTOR.message_types_by_name['CSteamTV_AppCheer_Response'] = _CSTEAMTV_APPCHEER_RESPONSE
+DESCRIPTOR.enum_types_by_name['EBroadcastImageType'] = _EBROADCASTIMAGETYPE
+DESCRIPTOR.enum_types_by_name['EGetGamesAlgorithm'] = _EGETGAMESALGORITHM
+DESCRIPTOR.enum_types_by_name['EGetChannelsAlgorithm'] = _EGETCHANNELSALGORITHM
+DESCRIPTOR.enum_types_by_name['ESteamTVContentTemplate'] = _ESTEAMTVCONTENTTEMPLATE
+_sym_db.RegisterFileDescriptor(DESCRIPTOR)
+
+CSteamTV_CreateBroadcastChannel_Request = _reflection.GeneratedProtocolMessageType('CSteamTV_CreateBroadcastChannel_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CSTEAMTV_CREATEBROADCASTCHANNEL_REQUEST,
+  '__module__' : 'steammessages_steamtv_pb2'
+  # @@protoc_insertion_point(class_scope:CSteamTV_CreateBroadcastChannel_Request)
+  })
+_sym_db.RegisterMessage(CSteamTV_CreateBroadcastChannel_Request)
+
+CSteamTV_CreateBroadcastChannel_Response = _reflection.GeneratedProtocolMessageType('CSteamTV_CreateBroadcastChannel_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CSTEAMTV_CREATEBROADCASTCHANNEL_RESPONSE,
+  '__module__' : 'steammessages_steamtv_pb2'
+  # @@protoc_insertion_point(class_scope:CSteamTV_CreateBroadcastChannel_Response)
+  })
+_sym_db.RegisterMessage(CSteamTV_CreateBroadcastChannel_Response)
+
+CSteamTV_GetBroadcastChannelID_Request = _reflection.GeneratedProtocolMessageType('CSteamTV_GetBroadcastChannelID_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CSTEAMTV_GETBROADCASTCHANNELID_REQUEST,
+  '__module__' : 'steammessages_steamtv_pb2'
+  # @@protoc_insertion_point(class_scope:CSteamTV_GetBroadcastChannelID_Request)
+  })
+_sym_db.RegisterMessage(CSteamTV_GetBroadcastChannelID_Request)
+
+CSteamTV_GetBroadcastChannelID_Response = _reflection.GeneratedProtocolMessageType('CSteamTV_GetBroadcastChannelID_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CSTEAMTV_GETBROADCASTCHANNELID_RESPONSE,
+  '__module__' : 'steammessages_steamtv_pb2'
+  # @@protoc_insertion_point(class_scope:CSteamTV_GetBroadcastChannelID_Response)
+  })
+_sym_db.RegisterMessage(CSteamTV_GetBroadcastChannelID_Response)
+
+CSteamTV_SetBroadcastChannelProfile_Request = _reflection.GeneratedProtocolMessageType('CSteamTV_SetBroadcastChannelProfile_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CSTEAMTV_SETBROADCASTCHANNELPROFILE_REQUEST,
+  '__module__' : 'steammessages_steamtv_pb2'
+  # @@protoc_insertion_point(class_scope:CSteamTV_SetBroadcastChannelProfile_Request)
+  })
+_sym_db.RegisterMessage(CSteamTV_SetBroadcastChannelProfile_Request)
+
+CSteamTV_SetBroadcastChannelProfile_Response = _reflection.GeneratedProtocolMessageType('CSteamTV_SetBroadcastChannelProfile_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CSTEAMTV_SETBROADCASTCHANNELPROFILE_RESPONSE,
+  '__module__' : 'steammessages_steamtv_pb2'
+  # @@protoc_insertion_point(class_scope:CSteamTV_SetBroadcastChannelProfile_Response)
+  })
+_sym_db.RegisterMessage(CSteamTV_SetBroadcastChannelProfile_Response)
+
+CSteamTV_GetBroadcastChannelProfile_Request = _reflection.GeneratedProtocolMessageType('CSteamTV_GetBroadcastChannelProfile_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CSTEAMTV_GETBROADCASTCHANNELPROFILE_REQUEST,
+  '__module__' : 'steammessages_steamtv_pb2'
+  # @@protoc_insertion_point(class_scope:CSteamTV_GetBroadcastChannelProfile_Request)
+  })
+_sym_db.RegisterMessage(CSteamTV_GetBroadcastChannelProfile_Request)
+
+CSteamTV_GetBroadcastChannelProfile_Response = _reflection.GeneratedProtocolMessageType('CSteamTV_GetBroadcastChannelProfile_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CSTEAMTV_GETBROADCASTCHANNELPROFILE_RESPONSE,
+  '__module__' : 'steammessages_steamtv_pb2'
+  # @@protoc_insertion_point(class_scope:CSteamTV_GetBroadcastChannelProfile_Response)
+  })
+_sym_db.RegisterMessage(CSteamTV_GetBroadcastChannelProfile_Response)
+
+CSteamTV_SetBroadcastChannelImage_Request = _reflection.GeneratedProtocolMessageType('CSteamTV_SetBroadcastChannelImage_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CSTEAMTV_SETBROADCASTCHANNELIMAGE_REQUEST,
+  '__module__' : 'steammessages_steamtv_pb2'
+  # @@protoc_insertion_point(class_scope:CSteamTV_SetBroadcastChannelImage_Request)
+  })
+_sym_db.RegisterMessage(CSteamTV_SetBroadcastChannelImage_Request)
+
+CSteamTV_SetBroadcastChannelImage_Response = _reflection.GeneratedProtocolMessageType('CSteamTV_SetBroadcastChannelImage_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CSTEAMTV_SETBROADCASTCHANNELIMAGE_RESPONSE,
+  '__module__' : 'steammessages_steamtv_pb2'
+  # @@protoc_insertion_point(class_scope:CSteamTV_SetBroadcastChannelImage_Response)
+  })
+_sym_db.RegisterMessage(CSteamTV_SetBroadcastChannelImage_Response)
+
+CSteamTV_GetBroadcastChannelImages_Request = _reflection.GeneratedProtocolMessageType('CSteamTV_GetBroadcastChannelImages_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CSTEAMTV_GETBROADCASTCHANNELIMAGES_REQUEST,
+  '__module__' : 'steammessages_steamtv_pb2'
+  # @@protoc_insertion_point(class_scope:CSteamTV_GetBroadcastChannelImages_Request)
+  })
+_sym_db.RegisterMessage(CSteamTV_GetBroadcastChannelImages_Request)
+
+CSteamTV_GetBroadcastChannelImages_Response = _reflection.GeneratedProtocolMessageType('CSteamTV_GetBroadcastChannelImages_Response', (_message.Message,), {
+
+  'Images' : _reflection.GeneratedProtocolMessageType('Images', (_message.Message,), {
+    'DESCRIPTOR' : _CSTEAMTV_GETBROADCASTCHANNELIMAGES_RESPONSE_IMAGES,
+    '__module__' : 'steammessages_steamtv_pb2'
+    # @@protoc_insertion_point(class_scope:CSteamTV_GetBroadcastChannelImages_Response.Images)
+    })
+  ,
+  'DESCRIPTOR' : _CSTEAMTV_GETBROADCASTCHANNELIMAGES_RESPONSE,
+  '__module__' : 'steammessages_steamtv_pb2'
+  # @@protoc_insertion_point(class_scope:CSteamTV_GetBroadcastChannelImages_Response)
+  })
+_sym_db.RegisterMessage(CSteamTV_GetBroadcastChannelImages_Response)
+_sym_db.RegisterMessage(CSteamTV_GetBroadcastChannelImages_Response.Images)
+
+CSteamTV_SetBroadcastChannelLinkRegions_Request = _reflection.GeneratedProtocolMessageType('CSteamTV_SetBroadcastChannelLinkRegions_Request', (_message.Message,), {
+
+  'Links' : _reflection.GeneratedProtocolMessageType('Links', (_message.Message,), {
+    'DESCRIPTOR' : _CSTEAMTV_SETBROADCASTCHANNELLINKREGIONS_REQUEST_LINKS,
+    '__module__' : 'steammessages_steamtv_pb2'
+    # @@protoc_insertion_point(class_scope:CSteamTV_SetBroadcastChannelLinkRegions_Request.Links)
+    })
+  ,
+  'DESCRIPTOR' : _CSTEAMTV_SETBROADCASTCHANNELLINKREGIONS_REQUEST,
+  '__module__' : 'steammessages_steamtv_pb2'
+  # @@protoc_insertion_point(class_scope:CSteamTV_SetBroadcastChannelLinkRegions_Request)
+  })
+_sym_db.RegisterMessage(CSteamTV_SetBroadcastChannelLinkRegions_Request)
+_sym_db.RegisterMessage(CSteamTV_SetBroadcastChannelLinkRegions_Request.Links)
+
+CSteamTV_SetBroadcastChannelLinkRegions_Response = _reflection.GeneratedProtocolMessageType('CSteamTV_SetBroadcastChannelLinkRegions_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CSTEAMTV_SETBROADCASTCHANNELLINKREGIONS_RESPONSE,
+  '__module__' : 'steammessages_steamtv_pb2'
+  # @@protoc_insertion_point(class_scope:CSteamTV_SetBroadcastChannelLinkRegions_Response)
+  })
+_sym_db.RegisterMessage(CSteamTV_SetBroadcastChannelLinkRegions_Response)
+
+CSteamTV_GetBroadcastChannelLinks_Request = _reflection.GeneratedProtocolMessageType('CSteamTV_GetBroadcastChannelLinks_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CSTEAMTV_GETBROADCASTCHANNELLINKS_REQUEST,
+  '__module__' : 'steammessages_steamtv_pb2'
+  # @@protoc_insertion_point(class_scope:CSteamTV_GetBroadcastChannelLinks_Request)
+  })
+_sym_db.RegisterMessage(CSteamTV_GetBroadcastChannelLinks_Request)
+
+CSteamTV_GetBroadcastChannelLinks_Response = _reflection.GeneratedProtocolMessageType('CSteamTV_GetBroadcastChannelLinks_Response', (_message.Message,), {
+
+  'Links' : _reflection.GeneratedProtocolMessageType('Links', (_message.Message,), {
+    'DESCRIPTOR' : _CSTEAMTV_GETBROADCASTCHANNELLINKS_RESPONSE_LINKS,
+    '__module__' : 'steammessages_steamtv_pb2'
+    # @@protoc_insertion_point(class_scope:CSteamTV_GetBroadcastChannelLinks_Response.Links)
+    })
+  ,
+  'DESCRIPTOR' : _CSTEAMTV_GETBROADCASTCHANNELLINKS_RESPONSE,
+  '__module__' : 'steammessages_steamtv_pb2'
+  # @@protoc_insertion_point(class_scope:CSteamTV_GetBroadcastChannelLinks_Response)
+  })
+_sym_db.RegisterMessage(CSteamTV_GetBroadcastChannelLinks_Response)
+_sym_db.RegisterMessage(CSteamTV_GetBroadcastChannelLinks_Response.Links)
+
+CSteamTV_GetBroadcastChannelBroadcasters_Request = _reflection.GeneratedProtocolMessageType('CSteamTV_GetBroadcastChannelBroadcasters_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CSTEAMTV_GETBROADCASTCHANNELBROADCASTERS_REQUEST,
+  '__module__' : 'steammessages_steamtv_pb2'
+  # @@protoc_insertion_point(class_scope:CSteamTV_GetBroadcastChannelBroadcasters_Request)
+  })
+_sym_db.RegisterMessage(CSteamTV_GetBroadcastChannelBroadcasters_Request)
+
+CSteamTV_GetBroadcastChannelBroadcasters_Response = _reflection.GeneratedProtocolMessageType('CSteamTV_GetBroadcastChannelBroadcasters_Response', (_message.Message,), {
+
+  'Broadcaster' : _reflection.GeneratedProtocolMessageType('Broadcaster', (_message.Message,), {
+    'DESCRIPTOR' : _CSTEAMTV_GETBROADCASTCHANNELBROADCASTERS_RESPONSE_BROADCASTER,
+    '__module__' : 'steammessages_steamtv_pb2'
+    # @@protoc_insertion_point(class_scope:CSteamTV_GetBroadcastChannelBroadcasters_Response.Broadcaster)
+    })
+  ,
+  'DESCRIPTOR' : _CSTEAMTV_GETBROADCASTCHANNELBROADCASTERS_RESPONSE,
+  '__module__' : 'steammessages_steamtv_pb2'
+  # @@protoc_insertion_point(class_scope:CSteamTV_GetBroadcastChannelBroadcasters_Response)
+  })
+_sym_db.RegisterMessage(CSteamTV_GetBroadcastChannelBroadcasters_Response)
+_sym_db.RegisterMessage(CSteamTV_GetBroadcastChannelBroadcasters_Response.Broadcaster)
+
+CSteamTV_GetFollowedChannels_Request = _reflection.GeneratedProtocolMessageType('CSteamTV_GetFollowedChannels_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CSTEAMTV_GETFOLLOWEDCHANNELS_REQUEST,
+  '__module__' : 'steammessages_steamtv_pb2'
+  # @@protoc_insertion_point(class_scope:CSteamTV_GetFollowedChannels_Request)
+  })
+_sym_db.RegisterMessage(CSteamTV_GetFollowedChannels_Request)
+
+GetBroadcastChannelEntry = _reflection.GeneratedProtocolMessageType('GetBroadcastChannelEntry', (_message.Message,), {
+  'DESCRIPTOR' : _GETBROADCASTCHANNELENTRY,
+  '__module__' : 'steammessages_steamtv_pb2'
+  # @@protoc_insertion_point(class_scope:GetBroadcastChannelEntry)
+  })
+_sym_db.RegisterMessage(GetBroadcastChannelEntry)
+
+CSteamTV_GetFollowedChannels_Response = _reflection.GeneratedProtocolMessageType('CSteamTV_GetFollowedChannels_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CSTEAMTV_GETFOLLOWEDCHANNELS_RESPONSE,
+  '__module__' : 'steammessages_steamtv_pb2'
+  # @@protoc_insertion_point(class_scope:CSteamTV_GetFollowedChannels_Response)
+  })
+_sym_db.RegisterMessage(CSteamTV_GetFollowedChannels_Response)
+
+CSteamTV_GetSubscribedChannels_Request = _reflection.GeneratedProtocolMessageType('CSteamTV_GetSubscribedChannels_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CSTEAMTV_GETSUBSCRIBEDCHANNELS_REQUEST,
+  '__module__' : 'steammessages_steamtv_pb2'
+  # @@protoc_insertion_point(class_scope:CSteamTV_GetSubscribedChannels_Request)
+  })
+_sym_db.RegisterMessage(CSteamTV_GetSubscribedChannels_Request)
+
+CSteamTV_GetSubscribedChannels_Response = _reflection.GeneratedProtocolMessageType('CSteamTV_GetSubscribedChannels_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CSTEAMTV_GETSUBSCRIBEDCHANNELS_RESPONSE,
+  '__module__' : 'steammessages_steamtv_pb2'
+  # @@protoc_insertion_point(class_scope:CSteamTV_GetSubscribedChannels_Response)
+  })
+_sym_db.RegisterMessage(CSteamTV_GetSubscribedChannels_Response)
+
+CSteamTV_GetBroadcastChannelStatus_Request = _reflection.GeneratedProtocolMessageType('CSteamTV_GetBroadcastChannelStatus_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CSTEAMTV_GETBROADCASTCHANNELSTATUS_REQUEST,
+  '__module__' : 'steammessages_steamtv_pb2'
+  # @@protoc_insertion_point(class_scope:CSteamTV_GetBroadcastChannelStatus_Request)
+  })
+_sym_db.RegisterMessage(CSteamTV_GetBroadcastChannelStatus_Request)
+
+CSteamTV_GetBroadcastChannelStatus_Response = _reflection.GeneratedProtocolMessageType('CSteamTV_GetBroadcastChannelStatus_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CSTEAMTV_GETBROADCASTCHANNELSTATUS_RESPONSE,
+  '__module__' : 'steammessages_steamtv_pb2'
+  # @@protoc_insertion_point(class_scope:CSteamTV_GetBroadcastChannelStatus_Response)
+  })
+_sym_db.RegisterMessage(CSteamTV_GetBroadcastChannelStatus_Response)
+
+CSteamTV_FollowBroadcastChannel_Request = _reflection.GeneratedProtocolMessageType('CSteamTV_FollowBroadcastChannel_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CSTEAMTV_FOLLOWBROADCASTCHANNEL_REQUEST,
+  '__module__' : 'steammessages_steamtv_pb2'
+  # @@protoc_insertion_point(class_scope:CSteamTV_FollowBroadcastChannel_Request)
+  })
+_sym_db.RegisterMessage(CSteamTV_FollowBroadcastChannel_Request)
+
+CSteamTV_FollowBroadcastChannel_Response = _reflection.GeneratedProtocolMessageType('CSteamTV_FollowBroadcastChannel_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CSTEAMTV_FOLLOWBROADCASTCHANNEL_RESPONSE,
+  '__module__' : 'steammessages_steamtv_pb2'
+  # @@protoc_insertion_point(class_scope:CSteamTV_FollowBroadcastChannel_Response)
+  })
+_sym_db.RegisterMessage(CSteamTV_FollowBroadcastChannel_Response)
+
+CSteamTV_SubscribeBroadcastChannel_Request = _reflection.GeneratedProtocolMessageType('CSteamTV_SubscribeBroadcastChannel_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CSTEAMTV_SUBSCRIBEBROADCASTCHANNEL_REQUEST,
+  '__module__' : 'steammessages_steamtv_pb2'
+  # @@protoc_insertion_point(class_scope:CSteamTV_SubscribeBroadcastChannel_Request)
+  })
+_sym_db.RegisterMessage(CSteamTV_SubscribeBroadcastChannel_Request)
+
+CSteamTV_SubscribeBroadcastChannel_Response = _reflection.GeneratedProtocolMessageType('CSteamTV_SubscribeBroadcastChannel_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CSTEAMTV_SUBSCRIBEBROADCASTCHANNEL_RESPONSE,
+  '__module__' : 'steammessages_steamtv_pb2'
+  # @@protoc_insertion_point(class_scope:CSteamTV_SubscribeBroadcastChannel_Response)
+  })
+_sym_db.RegisterMessage(CSteamTV_SubscribeBroadcastChannel_Response)
+
+CSteamTV_GetBroadcastChannelClips_Request = _reflection.GeneratedProtocolMessageType('CSteamTV_GetBroadcastChannelClips_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CSTEAMTV_GETBROADCASTCHANNELCLIPS_REQUEST,
+  '__module__' : 'steammessages_steamtv_pb2'
+  # @@protoc_insertion_point(class_scope:CSteamTV_GetBroadcastChannelClips_Request)
+  })
+_sym_db.RegisterMessage(CSteamTV_GetBroadcastChannelClips_Request)
+
+CSteamTV_BroadcastClipInfo = _reflection.GeneratedProtocolMessageType('CSteamTV_BroadcastClipInfo', (_message.Message,), {
+  'DESCRIPTOR' : _CSTEAMTV_BROADCASTCLIPINFO,
+  '__module__' : 'steammessages_steamtv_pb2'
+  # @@protoc_insertion_point(class_scope:CSteamTV_BroadcastClipInfo)
+  })
+_sym_db.RegisterMessage(CSteamTV_BroadcastClipInfo)
+
+CSteamTV_GetBroadcastChannelClips_Response = _reflection.GeneratedProtocolMessageType('CSteamTV_GetBroadcastChannelClips_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CSTEAMTV_GETBROADCASTCHANNELCLIPS_RESPONSE,
+  '__module__' : 'steammessages_steamtv_pb2'
+  # @@protoc_insertion_point(class_scope:CSteamTV_GetBroadcastChannelClips_Response)
+  })
+_sym_db.RegisterMessage(CSteamTV_GetBroadcastChannelClips_Response)
+
+CSteamTV_ReportBroadcastChannel_Request = _reflection.GeneratedProtocolMessageType('CSteamTV_ReportBroadcastChannel_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CSTEAMTV_REPORTBROADCASTCHANNEL_REQUEST,
+  '__module__' : 'steammessages_steamtv_pb2'
+  # @@protoc_insertion_point(class_scope:CSteamTV_ReportBroadcastChannel_Request)
+  })
+_sym_db.RegisterMessage(CSteamTV_ReportBroadcastChannel_Request)
+
+CSteamTV_ReportBroadcastChannel_Response = _reflection.GeneratedProtocolMessageType('CSteamTV_ReportBroadcastChannel_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CSTEAMTV_REPORTBROADCASTCHANNEL_RESPONSE,
+  '__module__' : 'steammessages_steamtv_pb2'
+  # @@protoc_insertion_point(class_scope:CSteamTV_ReportBroadcastChannel_Response)
+  })
+_sym_db.RegisterMessage(CSteamTV_ReportBroadcastChannel_Response)
+
+CSteamTV_GetBroadcastChannelInteraction_Request = _reflection.GeneratedProtocolMessageType('CSteamTV_GetBroadcastChannelInteraction_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CSTEAMTV_GETBROADCASTCHANNELINTERACTION_REQUEST,
+  '__module__' : 'steammessages_steamtv_pb2'
+  # @@protoc_insertion_point(class_scope:CSteamTV_GetBroadcastChannelInteraction_Request)
+  })
+_sym_db.RegisterMessage(CSteamTV_GetBroadcastChannelInteraction_Request)
+
+CSteamTV_GetBroadcastChannelInteraction_Response = _reflection.GeneratedProtocolMessageType('CSteamTV_GetBroadcastChannelInteraction_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CSTEAMTV_GETBROADCASTCHANNELINTERACTION_RESPONSE,
+  '__module__' : 'steammessages_steamtv_pb2'
+  # @@protoc_insertion_point(class_scope:CSteamTV_GetBroadcastChannelInteraction_Response)
+  })
+_sym_db.RegisterMessage(CSteamTV_GetBroadcastChannelInteraction_Response)
+
+CSteamTV_GetGames_Request = _reflection.GeneratedProtocolMessageType('CSteamTV_GetGames_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CSTEAMTV_GETGAMES_REQUEST,
+  '__module__' : 'steammessages_steamtv_pb2'
+  # @@protoc_insertion_point(class_scope:CSteamTV_GetGames_Request)
+  })
+_sym_db.RegisterMessage(CSteamTV_GetGames_Request)
+
+CSteamTV_Game = _reflection.GeneratedProtocolMessageType('CSteamTV_Game', (_message.Message,), {
+  'DESCRIPTOR' : _CSTEAMTV_GAME,
+  '__module__' : 'steammessages_steamtv_pb2'
+  # @@protoc_insertion_point(class_scope:CSteamTV_Game)
+  })
+_sym_db.RegisterMessage(CSteamTV_Game)
+
+CSteamTV_GetGames_Response = _reflection.GeneratedProtocolMessageType('CSteamTV_GetGames_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CSTEAMTV_GETGAMES_RESPONSE,
+  '__module__' : 'steammessages_steamtv_pb2'
+  # @@protoc_insertion_point(class_scope:CSteamTV_GetGames_Response)
+  })
+_sym_db.RegisterMessage(CSteamTV_GetGames_Response)
+
+CSteamTV_GetChannels_Request = _reflection.GeneratedProtocolMessageType('CSteamTV_GetChannels_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CSTEAMTV_GETCHANNELS_REQUEST,
+  '__module__' : 'steammessages_steamtv_pb2'
+  # @@protoc_insertion_point(class_scope:CSteamTV_GetChannels_Request)
+  })
+_sym_db.RegisterMessage(CSteamTV_GetChannels_Request)
+
+CSteamTV_GetChannels_Response = _reflection.GeneratedProtocolMessageType('CSteamTV_GetChannels_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CSTEAMTV_GETCHANNELS_RESPONSE,
+  '__module__' : 'steammessages_steamtv_pb2'
+  # @@protoc_insertion_point(class_scope:CSteamTV_GetChannels_Response)
+  })
+_sym_db.RegisterMessage(CSteamTV_GetChannels_Response)
+
+CSteamTV_AddChatBan_Request = _reflection.GeneratedProtocolMessageType('CSteamTV_AddChatBan_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CSTEAMTV_ADDCHATBAN_REQUEST,
+  '__module__' : 'steammessages_steamtv_pb2'
+  # @@protoc_insertion_point(class_scope:CSteamTV_AddChatBan_Request)
+  })
+_sym_db.RegisterMessage(CSteamTV_AddChatBan_Request)
+
+CSteamTV_AddChatBan_Response = _reflection.GeneratedProtocolMessageType('CSteamTV_AddChatBan_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CSTEAMTV_ADDCHATBAN_RESPONSE,
+  '__module__' : 'steammessages_steamtv_pb2'
+  # @@protoc_insertion_point(class_scope:CSteamTV_AddChatBan_Response)
+  })
+_sym_db.RegisterMessage(CSteamTV_AddChatBan_Response)
+
+CSteamTV_GetChatBans_Request = _reflection.GeneratedProtocolMessageType('CSteamTV_GetChatBans_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CSTEAMTV_GETCHATBANS_REQUEST,
+  '__module__' : 'steammessages_steamtv_pb2'
+  # @@protoc_insertion_point(class_scope:CSteamTV_GetChatBans_Request)
+  })
+_sym_db.RegisterMessage(CSteamTV_GetChatBans_Request)
+
+CSteamTV_ChatBan = _reflection.GeneratedProtocolMessageType('CSteamTV_ChatBan', (_message.Message,), {
+  'DESCRIPTOR' : _CSTEAMTV_CHATBAN,
+  '__module__' : 'steammessages_steamtv_pb2'
+  # @@protoc_insertion_point(class_scope:CSteamTV_ChatBan)
+  })
+_sym_db.RegisterMessage(CSteamTV_ChatBan)
+
+CSteamTV_GetChatBans_Response = _reflection.GeneratedProtocolMessageType('CSteamTV_GetChatBans_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CSTEAMTV_GETCHATBANS_RESPONSE,
+  '__module__' : 'steammessages_steamtv_pb2'
+  # @@protoc_insertion_point(class_scope:CSteamTV_GetChatBans_Response)
+  })
+_sym_db.RegisterMessage(CSteamTV_GetChatBans_Response)
+
+CSteamTV_AddChatModerator_Request = _reflection.GeneratedProtocolMessageType('CSteamTV_AddChatModerator_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CSTEAMTV_ADDCHATMODERATOR_REQUEST,
+  '__module__' : 'steammessages_steamtv_pb2'
+  # @@protoc_insertion_point(class_scope:CSteamTV_AddChatModerator_Request)
+  })
+_sym_db.RegisterMessage(CSteamTV_AddChatModerator_Request)
+
+CSteamTV_AddChatModerator_Response = _reflection.GeneratedProtocolMessageType('CSteamTV_AddChatModerator_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CSTEAMTV_ADDCHATMODERATOR_RESPONSE,
+  '__module__' : 'steammessages_steamtv_pb2'
+  # @@protoc_insertion_point(class_scope:CSteamTV_AddChatModerator_Response)
+  })
+_sym_db.RegisterMessage(CSteamTV_AddChatModerator_Response)
+
+CSteamTV_GetChatModerators_Request = _reflection.GeneratedProtocolMessageType('CSteamTV_GetChatModerators_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CSTEAMTV_GETCHATMODERATORS_REQUEST,
+  '__module__' : 'steammessages_steamtv_pb2'
+  # @@protoc_insertion_point(class_scope:CSteamTV_GetChatModerators_Request)
+  })
+_sym_db.RegisterMessage(CSteamTV_GetChatModerators_Request)
+
+CSteamTV_ChatModerator = _reflection.GeneratedProtocolMessageType('CSteamTV_ChatModerator', (_message.Message,), {
+  'DESCRIPTOR' : _CSTEAMTV_CHATMODERATOR,
+  '__module__' : 'steammessages_steamtv_pb2'
+  # @@protoc_insertion_point(class_scope:CSteamTV_ChatModerator)
+  })
+_sym_db.RegisterMessage(CSteamTV_ChatModerator)
+
+CSteamTV_GetChatModerators_Response = _reflection.GeneratedProtocolMessageType('CSteamTV_GetChatModerators_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CSTEAMTV_GETCHATMODERATORS_RESPONSE,
+  '__module__' : 'steammessages_steamtv_pb2'
+  # @@protoc_insertion_point(class_scope:CSteamTV_GetChatModerators_Response)
+  })
+_sym_db.RegisterMessage(CSteamTV_GetChatModerators_Response)
+
+CSteamTV_AddWordBan_Request = _reflection.GeneratedProtocolMessageType('CSteamTV_AddWordBan_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CSTEAMTV_ADDWORDBAN_REQUEST,
+  '__module__' : 'steammessages_steamtv_pb2'
+  # @@protoc_insertion_point(class_scope:CSteamTV_AddWordBan_Request)
+  })
+_sym_db.RegisterMessage(CSteamTV_AddWordBan_Request)
+
+CSteamTV_AddWordBan_Response = _reflection.GeneratedProtocolMessageType('CSteamTV_AddWordBan_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CSTEAMTV_ADDWORDBAN_RESPONSE,
+  '__module__' : 'steammessages_steamtv_pb2'
+  # @@protoc_insertion_point(class_scope:CSteamTV_AddWordBan_Response)
+  })
+_sym_db.RegisterMessage(CSteamTV_AddWordBan_Response)
+
+CSteamTV_GetWordBans_Request = _reflection.GeneratedProtocolMessageType('CSteamTV_GetWordBans_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CSTEAMTV_GETWORDBANS_REQUEST,
+  '__module__' : 'steammessages_steamtv_pb2'
+  # @@protoc_insertion_point(class_scope:CSteamTV_GetWordBans_Request)
+  })
+_sym_db.RegisterMessage(CSteamTV_GetWordBans_Request)
+
+CSteamTV_GetWordBans_Response = _reflection.GeneratedProtocolMessageType('CSteamTV_GetWordBans_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CSTEAMTV_GETWORDBANS_RESPONSE,
+  '__module__' : 'steammessages_steamtv_pb2'
+  # @@protoc_insertion_point(class_scope:CSteamTV_GetWordBans_Response)
+  })
+_sym_db.RegisterMessage(CSteamTV_GetWordBans_Response)
+
+CSteamTV_JoinChat_Request = _reflection.GeneratedProtocolMessageType('CSteamTV_JoinChat_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CSTEAMTV_JOINCHAT_REQUEST,
+  '__module__' : 'steammessages_steamtv_pb2'
+  # @@protoc_insertion_point(class_scope:CSteamTV_JoinChat_Request)
+  })
+_sym_db.RegisterMessage(CSteamTV_JoinChat_Request)
+
+CSteamTV_JoinChat_Response = _reflection.GeneratedProtocolMessageType('CSteamTV_JoinChat_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CSTEAMTV_JOINCHAT_RESPONSE,
+  '__module__' : 'steammessages_steamtv_pb2'
+  # @@protoc_insertion_point(class_scope:CSteamTV_JoinChat_Response)
+  })
+_sym_db.RegisterMessage(CSteamTV_JoinChat_Response)
+
+CSteamTV_Search_Request = _reflection.GeneratedProtocolMessageType('CSteamTV_Search_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CSTEAMTV_SEARCH_REQUEST,
+  '__module__' : 'steammessages_steamtv_pb2'
+  # @@protoc_insertion_point(class_scope:CSteamTV_Search_Request)
+  })
+_sym_db.RegisterMessage(CSteamTV_Search_Request)
+
+CSteamTV_Search_Response = _reflection.GeneratedProtocolMessageType('CSteamTV_Search_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CSTEAMTV_SEARCH_RESPONSE,
+  '__module__' : 'steammessages_steamtv_pb2'
+  # @@protoc_insertion_point(class_scope:CSteamTV_Search_Response)
+  })
+_sym_db.RegisterMessage(CSteamTV_Search_Response)
+
+CSteamTV_GetSteamTVUserSettings_Request = _reflection.GeneratedProtocolMessageType('CSteamTV_GetSteamTVUserSettings_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CSTEAMTV_GETSTEAMTVUSERSETTINGS_REQUEST,
+  '__module__' : 'steammessages_steamtv_pb2'
+  # @@protoc_insertion_point(class_scope:CSteamTV_GetSteamTVUserSettings_Request)
+  })
+_sym_db.RegisterMessage(CSteamTV_GetSteamTVUserSettings_Request)
+
+CSteamTV_GetSteamTVUserSettings_Response = _reflection.GeneratedProtocolMessageType('CSteamTV_GetSteamTVUserSettings_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CSTEAMTV_GETSTEAMTVUSERSETTINGS_RESPONSE,
+  '__module__' : 'steammessages_steamtv_pb2'
+  # @@protoc_insertion_point(class_scope:CSteamTV_GetSteamTVUserSettings_Response)
+  })
+_sym_db.RegisterMessage(CSteamTV_GetSteamTVUserSettings_Response)
+
+CSteamTV_SetSteamTVUserSettings_Request = _reflection.GeneratedProtocolMessageType('CSteamTV_SetSteamTVUserSettings_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CSTEAMTV_SETSTEAMTVUSERSETTINGS_REQUEST,
+  '__module__' : 'steammessages_steamtv_pb2'
+  # @@protoc_insertion_point(class_scope:CSteamTV_SetSteamTVUserSettings_Request)
+  })
+_sym_db.RegisterMessage(CSteamTV_SetSteamTVUserSettings_Request)
+
+CSteamTV_SetSteamTVUserSettings_Response = _reflection.GeneratedProtocolMessageType('CSteamTV_SetSteamTVUserSettings_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CSTEAMTV_SETSTEAMTVUSERSETTINGS_RESPONSE,
+  '__module__' : 'steammessages_steamtv_pb2'
+  # @@protoc_insertion_point(class_scope:CSteamTV_SetSteamTVUserSettings_Response)
+  })
+_sym_db.RegisterMessage(CSteamTV_SetSteamTVUserSettings_Response)
+
+CSteamTV_GetMyBroadcastChannels_Request = _reflection.GeneratedProtocolMessageType('CSteamTV_GetMyBroadcastChannels_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CSTEAMTV_GETMYBROADCASTCHANNELS_REQUEST,
+  '__module__' : 'steammessages_steamtv_pb2'
+  # @@protoc_insertion_point(class_scope:CSteamTV_GetMyBroadcastChannels_Request)
+  })
+_sym_db.RegisterMessage(CSteamTV_GetMyBroadcastChannels_Request)
+
+CSteamTV_GetMyBroadcastChannels_Response = _reflection.GeneratedProtocolMessageType('CSteamTV_GetMyBroadcastChannels_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CSTEAMTV_GETMYBROADCASTCHANNELS_RESPONSE,
+  '__module__' : 'steammessages_steamtv_pb2'
+  # @@protoc_insertion_point(class_scope:CSteamTV_GetMyBroadcastChannels_Response)
+  })
+_sym_db.RegisterMessage(CSteamTV_GetMyBroadcastChannels_Response)
+
+CSteamTV_GetHomePageContents_Request = _reflection.GeneratedProtocolMessageType('CSteamTV_GetHomePageContents_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CSTEAMTV_GETHOMEPAGECONTENTS_REQUEST,
+  '__module__' : 'steammessages_steamtv_pb2'
+  # @@protoc_insertion_point(class_scope:CSteamTV_GetHomePageContents_Request)
+  })
+_sym_db.RegisterMessage(CSteamTV_GetHomePageContents_Request)
+
+CSteamTV_HomePageTemplate_Takeover = _reflection.GeneratedProtocolMessageType('CSteamTV_HomePageTemplate_Takeover', (_message.Message,), {
+  'DESCRIPTOR' : _CSTEAMTV_HOMEPAGETEMPLATE_TAKEOVER,
+  '__module__' : 'steammessages_steamtv_pb2'
+  # @@protoc_insertion_point(class_scope:CSteamTV_HomePageTemplate_Takeover)
+  })
+_sym_db.RegisterMessage(CSteamTV_HomePageTemplate_Takeover)
+
+CSteamTV_HomePageTemplate_SingleGame = _reflection.GeneratedProtocolMessageType('CSteamTV_HomePageTemplate_SingleGame', (_message.Message,), {
+  'DESCRIPTOR' : _CSTEAMTV_HOMEPAGETEMPLATE_SINGLEGAME,
+  '__module__' : 'steammessages_steamtv_pb2'
+  # @@protoc_insertion_point(class_scope:CSteamTV_HomePageTemplate_SingleGame)
+  })
+_sym_db.RegisterMessage(CSteamTV_HomePageTemplate_SingleGame)
+
+GameListEntry = _reflection.GeneratedProtocolMessageType('GameListEntry', (_message.Message,), {
+  'DESCRIPTOR' : _GAMELISTENTRY,
+  '__module__' : 'steammessages_steamtv_pb2'
+  # @@protoc_insertion_point(class_scope:GameListEntry)
+  })
+_sym_db.RegisterMessage(GameListEntry)
+
+CSteamTV_HomePageTemplate_GameList = _reflection.GeneratedProtocolMessageType('CSteamTV_HomePageTemplate_GameList', (_message.Message,), {
+  'DESCRIPTOR' : _CSTEAMTV_HOMEPAGETEMPLATE_GAMELIST,
+  '__module__' : 'steammessages_steamtv_pb2'
+  # @@protoc_insertion_point(class_scope:CSteamTV_HomePageTemplate_GameList)
+  })
+_sym_db.RegisterMessage(CSteamTV_HomePageTemplate_GameList)
+
+CSteamTV_HomePageTemplate_QuickExplore = _reflection.GeneratedProtocolMessageType('CSteamTV_HomePageTemplate_QuickExplore', (_message.Message,), {
+  'DESCRIPTOR' : _CSTEAMTV_HOMEPAGETEMPLATE_QUICKEXPLORE,
+  '__module__' : 'steammessages_steamtv_pb2'
+  # @@protoc_insertion_point(class_scope:CSteamTV_HomePageTemplate_QuickExplore)
+  })
+_sym_db.RegisterMessage(CSteamTV_HomePageTemplate_QuickExplore)
+
+CSteamTV_HomePageTemplate_ConveyorBelt = _reflection.GeneratedProtocolMessageType('CSteamTV_HomePageTemplate_ConveyorBelt', (_message.Message,), {
+  'DESCRIPTOR' : _CSTEAMTV_HOMEPAGETEMPLATE_CONVEYORBELT,
+  '__module__' : 'steammessages_steamtv_pb2'
+  # @@protoc_insertion_point(class_scope:CSteamTV_HomePageTemplate_ConveyorBelt)
+  })
+_sym_db.RegisterMessage(CSteamTV_HomePageTemplate_ConveyorBelt)
+
+CSteamTV_HomePageTemplate_WatchParty = _reflection.GeneratedProtocolMessageType('CSteamTV_HomePageTemplate_WatchParty', (_message.Message,), {
+  'DESCRIPTOR' : _CSTEAMTV_HOMEPAGETEMPLATE_WATCHPARTY,
+  '__module__' : 'steammessages_steamtv_pb2'
+  # @@protoc_insertion_point(class_scope:CSteamTV_HomePageTemplate_WatchParty)
+  })
+_sym_db.RegisterMessage(CSteamTV_HomePageTemplate_WatchParty)
+
+CSteamTV_HomePageTemplate_Developer = _reflection.GeneratedProtocolMessageType('CSteamTV_HomePageTemplate_Developer', (_message.Message,), {
+  'DESCRIPTOR' : _CSTEAMTV_HOMEPAGETEMPLATE_DEVELOPER,
+  '__module__' : 'steammessages_steamtv_pb2'
+  # @@protoc_insertion_point(class_scope:CSteamTV_HomePageTemplate_Developer)
+  })
+_sym_db.RegisterMessage(CSteamTV_HomePageTemplate_Developer)
+
+CSteamTV_HomePageTemplate_Event = _reflection.GeneratedProtocolMessageType('CSteamTV_HomePageTemplate_Event', (_message.Message,), {
+  'DESCRIPTOR' : _CSTEAMTV_HOMEPAGETEMPLATE_EVENT,
+  '__module__' : 'steammessages_steamtv_pb2'
+  # @@protoc_insertion_point(class_scope:CSteamTV_HomePageTemplate_Event)
+  })
+_sym_db.RegisterMessage(CSteamTV_HomePageTemplate_Event)
+
+CSteamTV_HomePageContentRow = _reflection.GeneratedProtocolMessageType('CSteamTV_HomePageContentRow', (_message.Message,), {
+  'DESCRIPTOR' : _CSTEAMTV_HOMEPAGECONTENTROW,
+  '__module__' : 'steammessages_steamtv_pb2'
+  # @@protoc_insertion_point(class_scope:CSteamTV_HomePageContentRow)
+  })
+_sym_db.RegisterMessage(CSteamTV_HomePageContentRow)
+
+CSteamTV_GetHomePageContents_Response = _reflection.GeneratedProtocolMessageType('CSteamTV_GetHomePageContents_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CSTEAMTV_GETHOMEPAGECONTENTS_RESPONSE,
+  '__module__' : 'steammessages_steamtv_pb2'
+  # @@protoc_insertion_point(class_scope:CSteamTV_GetHomePageContents_Response)
+  })
+_sym_db.RegisterMessage(CSteamTV_GetHomePageContents_Response)
+
+CSteamTV_AppCheer_SingleCheerType = _reflection.GeneratedProtocolMessageType('CSteamTV_AppCheer_SingleCheerType', (_message.Message,), {
+  'DESCRIPTOR' : _CSTEAMTV_APPCHEER_SINGLECHEERTYPE,
+  '__module__' : 'steammessages_steamtv_pb2'
+  # @@protoc_insertion_point(class_scope:CSteamTV_AppCheer_SingleCheerType)
+  })
+_sym_db.RegisterMessage(CSteamTV_AppCheer_SingleCheerType)
+
+CSteamTV_AppCheer_Request = _reflection.GeneratedProtocolMessageType('CSteamTV_AppCheer_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CSTEAMTV_APPCHEER_REQUEST,
+  '__module__' : 'steammessages_steamtv_pb2'
+  # @@protoc_insertion_point(class_scope:CSteamTV_AppCheer_Request)
+  })
+_sym_db.RegisterMessage(CSteamTV_AppCheer_Request)
+
+CSteamTV_AppCheer_Response = _reflection.GeneratedProtocolMessageType('CSteamTV_AppCheer_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CSTEAMTV_APPCHEER_RESPONSE,
+  '__module__' : 'steammessages_steamtv_pb2'
+  # @@protoc_insertion_point(class_scope:CSteamTV_AppCheer_Response)
+  })
+_sym_db.RegisterMessage(CSteamTV_AppCheer_Response)
+
+
+DESCRIPTOR._options = None
+_CSTEAMTV_CREATEBROADCASTCHANNEL_REQUEST.fields_by_name['unique_name']._options = None
+_CSTEAMTV_CREATEBROADCASTCHANNEL_RESPONSE.fields_by_name['broadcast_channel_id']._options = None
+_CSTEAMTV_GETBROADCASTCHANNELID_REQUEST.fields_by_name['unique_name']._options = None
+_CSTEAMTV_GETBROADCASTCHANNELID_RESPONSE.fields_by_name['broadcast_channel_id']._options = None
+_CSTEAMTV_GETBROADCASTCHANNELID_RESPONSE.fields_by_name['unique_name']._options = None
+_CSTEAMTV_GETBROADCASTCHANNELID_RESPONSE.fields_by_name['steamid']._options = None
+_CSTEAMTV_SETBROADCASTCHANNELPROFILE_REQUEST.fields_by_name['broadcast_channel_id']._options = None
+_CSTEAMTV_SETBROADCASTCHANNELPROFILE_REQUEST.fields_by_name['name']._options = None
+_CSTEAMTV_SETBROADCASTCHANNELPROFILE_REQUEST.fields_by_name['language']._options = None
+_CSTEAMTV_SETBROADCASTCHANNELPROFILE_REQUEST.fields_by_name['headline']._options = None
+_CSTEAMTV_SETBROADCASTCHANNELPROFILE_REQUEST.fields_by_name['summary']._options = None
+_CSTEAMTV_SETBROADCASTCHANNELPROFILE_REQUEST.fields_by_name['avatar_hash']._options = None
+_CSTEAMTV_SETBROADCASTCHANNELPROFILE_REQUEST.fields_by_name['schedule']._options = None
+_CSTEAMTV_SETBROADCASTCHANNELPROFILE_REQUEST.fields_by_name['rules']._options = None
+_CSTEAMTV_SETBROADCASTCHANNELPROFILE_REQUEST.fields_by_name['panels']._options = None
+_CSTEAMTV_GETBROADCASTCHANNELPROFILE_REQUEST.fields_by_name['broadcast_channel_id']._options = None
+_CSTEAMTV_GETBROADCASTCHANNELPROFILE_RESPONSE.fields_by_name['unique_name']._options = None
+_CSTEAMTV_GETBROADCASTCHANNELPROFILE_RESPONSE.fields_by_name['owner_steamid']._options = None
+_CSTEAMTV_GETBROADCASTCHANNELPROFILE_RESPONSE.fields_by_name['name']._options = None
+_CSTEAMTV_GETBROADCASTCHANNELPROFILE_RESPONSE.fields_by_name['language']._options = None
+_CSTEAMTV_GETBROADCASTCHANNELPROFILE_RESPONSE.fields_by_name['headline']._options = None
+_CSTEAMTV_GETBROADCASTCHANNELPROFILE_RESPONSE.fields_by_name['summary']._options = None
+_CSTEAMTV_GETBROADCASTCHANNELPROFILE_RESPONSE.fields_by_name['schedule']._options = None
+_CSTEAMTV_GETBROADCASTCHANNELPROFILE_RESPONSE.fields_by_name['rules']._options = None
+_CSTEAMTV_GETBROADCASTCHANNELPROFILE_RESPONSE.fields_by_name['panels']._options = None
+_CSTEAMTV_SETBROADCASTCHANNELIMAGE_REQUEST.fields_by_name['broadcast_channel_id']._options = None
+_CSTEAMTV_SETBROADCASTCHANNELIMAGE_REQUEST.fields_by_name['image_type']._options = None
+_CSTEAMTV_SETBROADCASTCHANNELIMAGE_REQUEST.fields_by_name['image_index']._options = None
+_CSTEAMTV_SETBROADCASTCHANNELIMAGE_REQUEST.fields_by_name['image_width']._options = None
+_CSTEAMTV_SETBROADCASTCHANNELIMAGE_REQUEST.fields_by_name['image_height']._options = None
+_CSTEAMTV_SETBROADCASTCHANNELIMAGE_REQUEST.fields_by_name['file_size']._options = None
+_CSTEAMTV_SETBROADCASTCHANNELIMAGE_REQUEST.fields_by_name['file_extension']._options = None
+_CSTEAMTV_SETBROADCASTCHANNELIMAGE_REQUEST.fields_by_name['file_hash']._options = None
+_CSTEAMTV_SETBROADCASTCHANNELIMAGE_REQUEST.fields_by_name['undo']._options = None
+_CSTEAMTV_SETBROADCASTCHANNELIMAGE_RESPONSE.fields_by_name['replace_image_hash']._options = None
+_CSTEAMTV_GETBROADCASTCHANNELIMAGES_REQUEST.fields_by_name['broadcast_channel_id']._options = None
+_CSTEAMTV_GETBROADCASTCHANNELIMAGES_REQUEST.fields_by_name['image_types']._options = None
+_CSTEAMTV_GETBROADCASTCHANNELIMAGES_RESPONSE_IMAGES.fields_by_name['image_type']._options = None
+_CSTEAMTV_GETBROADCASTCHANNELIMAGES_RESPONSE_IMAGES.fields_by_name['image_path']._options = None
+_CSTEAMTV_GETBROADCASTCHANNELIMAGES_RESPONSE_IMAGES.fields_by_name['image_index']._options = None
+_CSTEAMTV_SETBROADCASTCHANNELLINKREGIONS_REQUEST_LINKS.fields_by_name['link_index']._options = None
+_CSTEAMTV_SETBROADCASTCHANNELLINKREGIONS_REQUEST_LINKS.fields_by_name['url']._options = None
+_CSTEAMTV_SETBROADCASTCHANNELLINKREGIONS_REQUEST_LINKS.fields_by_name['link_description']._options = None
+_CSTEAMTV_SETBROADCASTCHANNELLINKREGIONS_REQUEST_LINKS.fields_by_name['left']._options = None
+_CSTEAMTV_SETBROADCASTCHANNELLINKREGIONS_REQUEST_LINKS.fields_by_name['top']._options = None
+_CSTEAMTV_SETBROADCASTCHANNELLINKREGIONS_REQUEST_LINKS.fields_by_name['width']._options = None
+_CSTEAMTV_SETBROADCASTCHANNELLINKREGIONS_REQUEST_LINKS.fields_by_name['height']._options = None
+_CSTEAMTV_SETBROADCASTCHANNELLINKREGIONS_REQUEST.fields_by_name['broadcast_channel_id']._options = None
+_CSTEAMTV_GETBROADCASTCHANNELLINKS_REQUEST.fields_by_name['broadcast_channel_id']._options = None
+_CSTEAMTV_GETBROADCASTCHANNELLINKS_RESPONSE_LINKS.fields_by_name['link_index']._options = None
+_CSTEAMTV_GETBROADCASTCHANNELLINKS_RESPONSE_LINKS.fields_by_name['url']._options = None
+_CSTEAMTV_GETBROADCASTCHANNELLINKS_RESPONSE_LINKS.fields_by_name['link_description']._options = None
+_CSTEAMTV_GETBROADCASTCHANNELLINKS_RESPONSE_LINKS.fields_by_name['left']._options = None
+_CSTEAMTV_GETBROADCASTCHANNELLINKS_RESPONSE_LINKS.fields_by_name['top']._options = None
+_CSTEAMTV_GETBROADCASTCHANNELLINKS_RESPONSE_LINKS.fields_by_name['width']._options = None
+_CSTEAMTV_GETBROADCASTCHANNELLINKS_RESPONSE_LINKS.fields_by_name['height']._options = None
+_CSTEAMTV_GETBROADCASTCHANNELBROADCASTERS_REQUEST.fields_by_name['broadcast_channel_id']._options = None
+_CSTEAMTV_GETBROADCASTCHANNELBROADCASTERS_RESPONSE_BROADCASTER.fields_by_name['steamid']._options = None
+_CSTEAMTV_GETBROADCASTCHANNELBROADCASTERS_RESPONSE_BROADCASTER.fields_by_name['name']._options = None
+_CSTEAMTV_GETBROADCASTCHANNELBROADCASTERS_RESPONSE_BROADCASTER.fields_by_name['rtmp_token']._options = None
+_GETBROADCASTCHANNELENTRY.fields_by_name['broadcast_channel_id']._options = None
+_GETBROADCASTCHANNELENTRY.fields_by_name['unique_name']._options = None
+_GETBROADCASTCHANNELENTRY.fields_by_name['name']._options = None
+_GETBROADCASTCHANNELENTRY.fields_by_name['appid']._options = None
+_GETBROADCASTCHANNELENTRY.fields_by_name['viewers']._options = None
+_GETBROADCASTCHANNELENTRY.fields_by_name['views']._options = None
+_GETBROADCASTCHANNELENTRY.fields_by_name['thumbnail_url']._options = None
+_GETBROADCASTCHANNELENTRY.fields_by_name['followers']._options = None
+_GETBROADCASTCHANNELENTRY.fields_by_name['headline']._options = None
+_GETBROADCASTCHANNELENTRY.fields_by_name['avatar_url']._options = None
+_GETBROADCASTCHANNELENTRY.fields_by_name['broadcaster_steamid']._options = None
+_GETBROADCASTCHANNELENTRY.fields_by_name['subscribers']._options = None
+_GETBROADCASTCHANNELENTRY.fields_by_name['background_url']._options = None
+_GETBROADCASTCHANNELENTRY.fields_by_name['is_featured']._options = None
+_GETBROADCASTCHANNELENTRY.fields_by_name['is_disabled']._options = None
+_GETBROADCASTCHANNELENTRY.fields_by_name['is_live']._options = None
+_GETBROADCASTCHANNELENTRY.fields_by_name['language']._options = None
+_GETBROADCASTCHANNELENTRY.fields_by_name['reports']._options = None
+_CSTEAMTV_GETFOLLOWEDCHANNELS_RESPONSE.fields_by_name['results']._options = None
+_CSTEAMTV_GETSUBSCRIBEDCHANNELS_RESPONSE.fields_by_name['results']._options = None
+_CSTEAMTV_GETBROADCASTCHANNELSTATUS_REQUEST.fields_by_name['broadcast_channel_id']._options = None
+_CSTEAMTV_GETBROADCASTCHANNELSTATUS_RESPONSE.fields_by_name['is_live']._options = None
+_CSTEAMTV_GETBROADCASTCHANNELSTATUS_RESPONSE.fields_by_name['is_disabled']._options = None
+_CSTEAMTV_GETBROADCASTCHANNELSTATUS_RESPONSE.fields_by_name['appid']._options = None
+_CSTEAMTV_GETBROADCASTCHANNELSTATUS_RESPONSE.fields_by_name['viewers']._options = None
+_CSTEAMTV_GETBROADCASTCHANNELSTATUS_RESPONSE.fields_by_name['views']._options = None
+_CSTEAMTV_GETBROADCASTCHANNELSTATUS_RESPONSE.fields_by_name['broadcaster_steamid']._options = None
+_CSTEAMTV_GETBROADCASTCHANNELSTATUS_RESPONSE.fields_by_name['thumbnail_url']._options = None
+_CSTEAMTV_GETBROADCASTCHANNELSTATUS_RESPONSE.fields_by_name['followers']._options = None
+_CSTEAMTV_GETBROADCASTCHANNELSTATUS_RESPONSE.fields_by_name['subscribers']._options = None
+_CSTEAMTV_FOLLOWBROADCASTCHANNEL_REQUEST.fields_by_name['broadcast_channel_id']._options = None
+_CSTEAMTV_FOLLOWBROADCASTCHANNEL_REQUEST.fields_by_name['undo']._options = None
+_CSTEAMTV_FOLLOWBROADCASTCHANNEL_RESPONSE.fields_by_name['is_followed']._options = None
+_CSTEAMTV_SUBSCRIBEBROADCASTCHANNEL_REQUEST.fields_by_name['broadcast_channel_id']._options = None
+_CSTEAMTV_SUBSCRIBEBROADCASTCHANNEL_RESPONSE.fields_by_name['is_subscribed']._options = None
+_CSTEAMTV_BROADCASTCLIPINFO.fields_by_name['broadcast_clip_id']._options = None
+_CSTEAMTV_BROADCASTCLIPINFO.fields_by_name['channel_id']._options = None
+_CSTEAMTV_BROADCASTCLIPINFO.fields_by_name['app_id']._options = None
+_CSTEAMTV_BROADCASTCLIPINFO.fields_by_name['broadcaster_steamid']._options = None
+_CSTEAMTV_BROADCASTCLIPINFO.fields_by_name['creator_steamid']._options = None
+_CSTEAMTV_BROADCASTCLIPINFO.fields_by_name['video_description']._options = None
+_CSTEAMTV_BROADCASTCLIPINFO.fields_by_name['live_time']._options = None
+_CSTEAMTV_BROADCASTCLIPINFO.fields_by_name['length_ms']._options = None
+_CSTEAMTV_BROADCASTCLIPINFO.fields_by_name['thumbnail_path']._options = None
+_CSTEAMTV_REPORTBROADCASTCHANNEL_REQUEST.fields_by_name['broadcast_channel_id']._options = None
+_CSTEAMTV_REPORTBROADCASTCHANNEL_REQUEST.fields_by_name['reason']._options = None
+_CSTEAMTV_GETBROADCASTCHANNELINTERACTION_REQUEST.fields_by_name['broadcast_channel_id']._options = None
+_CSTEAMTV_GETBROADCASTCHANNELINTERACTION_RESPONSE.fields_by_name['is_followed']._options = None
+_CSTEAMTV_GETBROADCASTCHANNELINTERACTION_RESPONSE.fields_by_name['is_subscribed']._options = None
+_CSTEAMTV_GETGAMES_REQUEST.fields_by_name['appid']._options = None
+_CSTEAMTV_GETGAMES_REQUEST.fields_by_name['algorithm']._options = None
+_CSTEAMTV_GETGAMES_REQUEST.fields_by_name['count']._options = None
+_CSTEAMTV_GAME.fields_by_name['appid']._options = None
+_CSTEAMTV_GAME.fields_by_name['name']._options = None
+_CSTEAMTV_GAME.fields_by_name['image']._options = None
+_CSTEAMTV_GAME.fields_by_name['viewers']._options = None
+_CSTEAMTV_GAME.fields_by_name['channels']._options = None
+_CSTEAMTV_GETGAMES_RESPONSE.fields_by_name['results']._options = None
+_CSTEAMTV_GETCHANNELS_REQUEST.fields_by_name['algorithm']._options = None
+_CSTEAMTV_GETCHANNELS_REQUEST.fields_by_name['count']._options = None
+_CSTEAMTV_GETCHANNELS_REQUEST.fields_by_name['appid']._options = None
+_CSTEAMTV_GETCHANNELS_RESPONSE.fields_by_name['results']._options = None
+_CSTEAMTV_GETCHATBANS_RESPONSE.fields_by_name['results']._options = None
+_CSTEAMTV_GETCHATMODERATORS_RESPONSE.fields_by_name['results']._options = None
+_CSTEAMTV_GETWORDBANS_RESPONSE.fields_by_name['results']._options = None
+_CSTEAMTV_SEARCH_RESPONSE.fields_by_name['results']._options = None
+_CSTEAMTV_GETSTEAMTVUSERSETTINGS_RESPONSE.fields_by_name['stream_live_email']._options = None
+_CSTEAMTV_GETSTEAMTVUSERSETTINGS_RESPONSE.fields_by_name['stream_live_notification']._options = None
+_CSTEAMTV_SETSTEAMTVUSERSETTINGS_REQUEST.fields_by_name['stream_live_email']._options = None
+_CSTEAMTV_SETSTEAMTVUSERSETTINGS_REQUEST.fields_by_name['stream_live_notification']._options = None
+_CSTEAMTV_GETMYBROADCASTCHANNELS_RESPONSE.fields_by_name['results']._options = None
+_CSTEAMTV_APPCHEER_SINGLECHEERTYPE.fields_by_name['cheer_type']._options = None
+_CSTEAMTV_APPCHEER_SINGLECHEERTYPE.fields_by_name['cheer_amount']._options = None
+_CSTEAMTV_APPCHEER_REQUEST.fields_by_name['app_id']._options = None
+_CSTEAMTV_APPCHEER_REQUEST.fields_by_name['cheer_target_id']._options = None
+_CSTEAMTV_APPCHEER_REQUEST.fields_by_name['cheers']._options = None
+_CSTEAMTV_APPCHEER_RESPONSE.fields_by_name['aggregation_delay_ms']._options = None
+
+_STEAMTV = _descriptor.ServiceDescriptor(
+  name='SteamTV',
+  full_name='SteamTV',
+  file=DESCRIPTOR,
+  index=0,
+  serialized_options=b'\202\265\030\037Methods for Steam TV operations',
+  create_key=_descriptor._internal_create_key,
+  serialized_start=15122,
+  serialized_end=20049,
+  methods=[
+  _descriptor.MethodDescriptor(
+    name='CreateBroadcastChannel',
+    full_name='SteamTV.CreateBroadcastChannel',
+    index=0,
+    containing_service=None,
+    input_type=_CSTEAMTV_CREATEBROADCASTCHANNEL_REQUEST,
+    output_type=_CSTEAMTV_CREATEBROADCASTCHANNEL_RESPONSE,
+    serialized_options=b'\202\265\030\033Create a channel on SteamTV',
+    create_key=_descriptor._internal_create_key,
+  ),
+  _descriptor.MethodDescriptor(
+    name='GetBroadcastChannelID',
+    full_name='SteamTV.GetBroadcastChannelID',
+    index=1,
+    containing_service=None,
+    input_type=_CSTEAMTV_GETBROADCASTCHANNELID_REQUEST,
+    output_type=_CSTEAMTV_GETBROADCASTCHANNELID_RESPONSE,
+    serialized_options=b'\202\265\030AGet a broadcast channel ID for a channel by name or owner SteamID',
+    create_key=_descriptor._internal_create_key,
+  ),
+  _descriptor.MethodDescriptor(
+    name='SetBroadcastChannelProfile',
+    full_name='SteamTV.SetBroadcastChannelProfile',
+    index=2,
+    containing_service=None,
+    input_type=_CSTEAMTV_SETBROADCASTCHANNELPROFILE_REQUEST,
+    output_type=_CSTEAMTV_SETBROADCASTCHANNELPROFILE_RESPONSE,
+    serialized_options=b'\202\265\030\"Set broadcast channel profile data',
+    create_key=_descriptor._internal_create_key,
+  ),
+  _descriptor.MethodDescriptor(
+    name='GetBroadcastChannelProfile',
+    full_name='SteamTV.GetBroadcastChannelProfile',
+    index=3,
+    containing_service=None,
+    input_type=_CSTEAMTV_GETBROADCASTCHANNELPROFILE_REQUEST,
+    output_type=_CSTEAMTV_GETBROADCASTCHANNELPROFILE_RESPONSE,
+    serialized_options=b'\202\265\030\"Get broadcast channel profile data',
+    create_key=_descriptor._internal_create_key,
+  ),
+  _descriptor.MethodDescriptor(
+    name='SetBroadcastChannelImage',
+    full_name='SteamTV.SetBroadcastChannelImage',
+    index=4,
+    containing_service=None,
+    input_type=_CSTEAMTV_SETBROADCASTCHANNELIMAGE_REQUEST,
+    output_type=_CSTEAMTV_SETBROADCASTCHANNELIMAGE_RESPONSE,
+    serialized_options=b'\202\265\030 Set broadcast channel image hash',
+    create_key=_descriptor._internal_create_key,
+  ),
+  _descriptor.MethodDescriptor(
+    name='GetBroadcastChannelImages',
+    full_name='SteamTV.GetBroadcastChannelImages',
+    index=5,
+    containing_service=None,
+    input_type=_CSTEAMTV_GETBROADCASTCHANNELIMAGES_REQUEST,
+    output_type=_CSTEAMTV_GETBROADCASTCHANNELIMAGES_RESPONSE,
+    serialized_options=b'\202\265\030\034Get broadcast channel images',
+    create_key=_descriptor._internal_create_key,
+  ),
+  _descriptor.MethodDescriptor(
+    name='SetBroadcastChannelLinkRegions',
+    full_name='SteamTV.SetBroadcastChannelLinkRegions',
+    index=6,
+    containing_service=None,
+    input_type=_CSTEAMTV_SETBROADCASTCHANNELLINKREGIONS_REQUEST,
+    output_type=_CSTEAMTV_SETBROADCASTCHANNELLINKREGIONS_RESPONSE,
+    serialized_options=b'\202\265\030\"Set broadcast channel link regions',
+    create_key=_descriptor._internal_create_key,
+  ),
+  _descriptor.MethodDescriptor(
+    name='GetBroadcastChannelLinks',
+    full_name='SteamTV.GetBroadcastChannelLinks',
+    index=7,
+    containing_service=None,
+    input_type=_CSTEAMTV_GETBROADCASTCHANNELLINKS_REQUEST,
+    output_type=_CSTEAMTV_GETBROADCASTCHANNELLINKS_RESPONSE,
+    serialized_options=b'\202\265\030\"Get broadcast channel link regions',
+    create_key=_descriptor._internal_create_key,
+  ),
+  _descriptor.MethodDescriptor(
+    name='GetBroadcastChannelBroadcasters',
+    full_name='SteamTV.GetBroadcastChannelBroadcasters',
+    index=8,
+    containing_service=None,
+    input_type=_CSTEAMTV_GETBROADCASTCHANNELBROADCASTERS_REQUEST,
+    output_type=_CSTEAMTV_GETBROADCASTCHANNELBROADCASTERS_RESPONSE,
+    serialized_options=b'\202\265\030-Get list of broadcaster info for this channel',
+    create_key=_descriptor._internal_create_key,
+  ),
+  _descriptor.MethodDescriptor(
+    name='GetFollowedChannels',
+    full_name='SteamTV.GetFollowedChannels',
+    index=9,
+    containing_service=None,
+    input_type=_CSTEAMTV_GETFOLLOWEDCHANNELS_REQUEST,
+    output_type=_CSTEAMTV_GETFOLLOWEDCHANNELS_RESPONSE,
+    serialized_options=b'\202\265\030)Get list of followed channels by a viewer',
+    create_key=_descriptor._internal_create_key,
+  ),
+  _descriptor.MethodDescriptor(
+    name='GetSubscribedChannels',
+    full_name='SteamTV.GetSubscribedChannels',
+    index=10,
+    containing_service=None,
+    input_type=_CSTEAMTV_GETSUBSCRIBEDCHANNELS_REQUEST,
+    output_type=_CSTEAMTV_GETSUBSCRIBEDCHANNELS_RESPONSE,
+    serialized_options=b'\202\265\030,Get list of channels a user is subscribed to',
+    create_key=_descriptor._internal_create_key,
+  ),
+  _descriptor.MethodDescriptor(
+    name='GetBroadcastChannelStatus',
+    full_name='SteamTV.GetBroadcastChannelStatus',
+    index=11,
+    containing_service=None,
+    input_type=_CSTEAMTV_GETBROADCASTCHANNELSTATUS_REQUEST,
+    output_type=_CSTEAMTV_GETBROADCASTCHANNELSTATUS_RESPONSE,
+    serialized_options=b'\202\265\030!Get broadcast channel live status',
+    create_key=_descriptor._internal_create_key,
+  ),
+  _descriptor.MethodDescriptor(
+    name='FollowBroadcastChannel',
+    full_name='SteamTV.FollowBroadcastChannel',
+    index=12,
+    containing_service=None,
+    input_type=_CSTEAMTV_FOLLOWBROADCASTCHANNEL_REQUEST,
+    output_type=_CSTEAMTV_FOLLOWBROADCASTCHANNEL_RESPONSE,
+    serialized_options=b'\202\265\030\032Follow a broadcast channel',
+    create_key=_descriptor._internal_create_key,
+  ),
+  _descriptor.MethodDescriptor(
+    name='SubscribeBroadcastChannel',
+    full_name='SteamTV.SubscribeBroadcastChannel',
+    index=13,
+    containing_service=None,
+    input_type=_CSTEAMTV_SUBSCRIBEBROADCASTCHANNEL_REQUEST,
+    output_type=_CSTEAMTV_SUBSCRIBEBROADCASTCHANNEL_RESPONSE,
+    serialized_options=b'\202\265\030 Subscribe to a broadcast channel',
+    create_key=_descriptor._internal_create_key,
+  ),
+  _descriptor.MethodDescriptor(
+    name='GetBroadcastChannelClips',
+    full_name='SteamTV.GetBroadcastChannelClips',
+    index=14,
+    containing_service=None,
+    input_type=_CSTEAMTV_GETBROADCASTCHANNELCLIPS_REQUEST,
+    output_type=_CSTEAMTV_GETBROADCASTCHANNELCLIPS_RESPONSE,
+    serialized_options=b'\202\265\030\033Get broadcast channel clips',
+    create_key=_descriptor._internal_create_key,
+  ),
+  _descriptor.MethodDescriptor(
+    name='ReportBroadcastChannel',
+    full_name='SteamTV.ReportBroadcastChannel',
+    index=15,
+    containing_service=None,
+    input_type=_CSTEAMTV_REPORTBROADCASTCHANNEL_REQUEST,
+    output_type=_CSTEAMTV_REPORTBROADCASTCHANNEL_RESPONSE,
+    serialized_options=b'\202\265\030\032Report a broadcast channel',
+    create_key=_descriptor._internal_create_key,
+  ),
+  _descriptor.MethodDescriptor(
+    name='GetBroadcastChannelInteraction',
+    full_name='SteamTV.GetBroadcastChannelInteraction',
+    index=16,
+    containing_service=None,
+    input_type=_CSTEAMTV_GETBROADCASTCHANNELINTERACTION_REQUEST,
+    output_type=_CSTEAMTV_GETBROADCASTCHANNELINTERACTION_RESPONSE,
+    serialized_options=b'\202\265\0306Get user\'s interaction status with a broadcast channel',
+    create_key=_descriptor._internal_create_key,
+  ),
+  _descriptor.MethodDescriptor(
+    name='GetGames',
+    full_name='SteamTV.GetGames',
+    index=17,
+    containing_service=None,
+    input_type=_CSTEAMTV_GETGAMES_REQUEST,
+    output_type=_CSTEAMTV_GETGAMES_RESPONSE,
+    serialized_options=b'\202\265\030*Get list of games with active broadcasters',
+    create_key=_descriptor._internal_create_key,
+  ),
+  _descriptor.MethodDescriptor(
+    name='GetChannels',
+    full_name='SteamTV.GetChannels',
+    index=18,
+    containing_service=None,
+    input_type=_CSTEAMTV_GETCHANNELS_REQUEST,
+    output_type=_CSTEAMTV_GETCHANNELS_RESPONSE,
+    serialized_options=b'\202\265\030+Get the list of featured broadcast channels',
+    create_key=_descriptor._internal_create_key,
+  ),
+  _descriptor.MethodDescriptor(
+    name='AddChatBan',
+    full_name='SteamTV.AddChatBan',
+    index=19,
+    containing_service=None,
+    input_type=_CSTEAMTV_ADDCHATBAN_REQUEST,
+    output_type=_CSTEAMTV_ADDCHATBAN_RESPONSE,
+    serialized_options=b'\202\265\030QSet the ban for a specific broadcaster. The issuer is the logged in steam account',
+    create_key=_descriptor._internal_create_key,
+  ),
+  _descriptor.MethodDescriptor(
+    name='GetChatBans',
+    full_name='SteamTV.GetChatBans',
+    index=20,
+    containing_service=None,
+    input_type=_CSTEAMTV_GETCHATBANS_REQUEST,
+    output_type=_CSTEAMTV_GETCHATBANS_RESPONSE,
+    serialized_options=b'\202\265\030-Get list of bans for a specific broadcaster. ',
+    create_key=_descriptor._internal_create_key,
+  ),
+  _descriptor.MethodDescriptor(
+    name='AddChatModerator',
+    full_name='SteamTV.AddChatModerator',
+    index=21,
+    containing_service=None,
+    input_type=_CSTEAMTV_ADDCHATMODERATOR_REQUEST,
+    output_type=_CSTEAMTV_ADDCHATMODERATOR_RESPONSE,
+    serialized_options=b'\202\265\0304Add or remove a moderator for this broadcast channel',
+    create_key=_descriptor._internal_create_key,
+  ),
+  _descriptor.MethodDescriptor(
+    name='GetChatModerators',
+    full_name='SteamTV.GetChatModerators',
+    index=22,
+    containing_service=None,
+    input_type=_CSTEAMTV_GETCHATMODERATORS_REQUEST,
+    output_type=_CSTEAMTV_GETCHATMODERATORS_RESPONSE,
+    serialized_options=b'\202\265\0309Returns the list of moderators for this broadcast channel',
+    create_key=_descriptor._internal_create_key,
+  ),
+  _descriptor.MethodDescriptor(
+    name='AddWordBan',
+    full_name='SteamTV.AddWordBan',
+    index=23,
+    containing_service=None,
+    input_type=_CSTEAMTV_ADDWORDBAN_REQUEST,
+    output_type=_CSTEAMTV_ADDWORDBAN_RESPONSE,
+    serialized_options=b'\202\265\030=Add or remove a banned keyword in this broadcast channel chat',
+    create_key=_descriptor._internal_create_key,
+  ),
+  _descriptor.MethodDescriptor(
+    name='GetWordBans',
+    full_name='SteamTV.GetWordBans',
+    index=24,
+    containing_service=None,
+    input_type=_CSTEAMTV_GETWORDBANS_REQUEST,
+    output_type=_CSTEAMTV_GETWORDBANS_RESPONSE,
+    serialized_options=b'\202\265\030>Returns the list of banned keywords for this broadcast channel',
+    create_key=_descriptor._internal_create_key,
+  ),
+  _descriptor.MethodDescriptor(
+    name='JoinChat',
+    full_name='SteamTV.JoinChat',
+    index=25,
+    containing_service=None,
+    input_type=_CSTEAMTV_JOINCHAT_REQUEST,
+    output_type=_CSTEAMTV_JOINCHAT_RESPONSE,
+    serialized_options=b'\202\265\030&Joins the chat channel for a broadcast',
+    create_key=_descriptor._internal_create_key,
+  ),
+  _descriptor.MethodDescriptor(
+    name='Search',
+    full_name='SteamTV.Search',
+    index=26,
+    containing_service=None,
+    input_type=_CSTEAMTV_SEARCH_REQUEST,
+    output_type=_CSTEAMTV_SEARCH_RESPONSE,
+    serialized_options=b'\202\265\0307Searches for broadcast channels based on input keywords',
+    create_key=_descriptor._internal_create_key,
+  ),
+  _descriptor.MethodDescriptor(
+    name='GetSteamTVUserSettings',
+    full_name='SteamTV.GetSteamTVUserSettings',
+    index=27,
+    containing_service=None,
+    input_type=_CSTEAMTV_GETSTEAMTVUSERSETTINGS_REQUEST,
+    output_type=_CSTEAMTV_GETSTEAMTVUSERSETTINGS_RESPONSE,
+    serialized_options=b'\202\265\030!Returns a user\'s SteamTV settings',
+    create_key=_descriptor._internal_create_key,
+  ),
+  _descriptor.MethodDescriptor(
+    name='SetSteamTVUserSettings',
+    full_name='SteamTV.SetSteamTVUserSettings',
+    index=28,
+    containing_service=None,
+    input_type=_CSTEAMTV_SETSTEAMTVUSERSETTINGS_REQUEST,
+    output_type=_CSTEAMTV_SETSTEAMTVUSERSETTINGS_RESPONSE,
+    serialized_options=b'\202\265\030\036Sets a user\'s SteamTV settings',
+    create_key=_descriptor._internal_create_key,
+  ),
+  _descriptor.MethodDescriptor(
+    name='GetMyBroadcastChannels',
+    full_name='SteamTV.GetMyBroadcastChannels',
+    index=29,
+    containing_service=None,
+    input_type=_CSTEAMTV_GETMYBROADCASTCHANNELS_REQUEST,
+    output_type=_CSTEAMTV_GETMYBROADCASTCHANNELS_RESPONSE,
+    serialized_options=b'\202\265\0306Gets the broadcast channels that the current user owns',
+    create_key=_descriptor._internal_create_key,
+  ),
+  _descriptor.MethodDescriptor(
+    name='GetHomePageContents',
+    full_name='SteamTV.GetHomePageContents',
+    index=30,
+    containing_service=None,
+    input_type=_CSTEAMTV_GETHOMEPAGECONTENTS_REQUEST,
+    output_type=_CSTEAMTV_GETHOMEPAGECONTENTS_RESPONSE,
+    serialized_options=b'\202\265\030\"Returns homepage contents for user',
+    create_key=_descriptor._internal_create_key,
+  ),
+  _descriptor.MethodDescriptor(
+    name='AppCheer',
+    full_name='SteamTV.AppCheer',
+    index=31,
+    containing_service=None,
+    input_type=_CSTEAMTV_APPCHEER_REQUEST,
+    output_type=_CSTEAMTV_APPCHEER_RESPONSE,
+    serialized_options=b'\202\265\030AThe user is cheering for a specific broadcast for a specific app.',
+    create_key=_descriptor._internal_create_key,
+  ),
+])
+_sym_db.RegisterServiceDescriptor(_STEAMTV)
+
+DESCRIPTOR.services_by_name['SteamTV'] = _STEAMTV
+
+SteamTV = service_reflection.GeneratedServiceType('SteamTV', (_service.Service,), dict(
+  DESCRIPTOR = _STEAMTV,
+  __module__ = 'steammessages_steamtv_pb2'
+  ))
+
+SteamTV_Stub = service_reflection.GeneratedServiceStubType('SteamTV_Stub', (SteamTV,), dict(
+  DESCRIPTOR = _STEAMTV,
+  __module__ = 'steammessages_steamtv_pb2'
+  ))
+
+
+# @@protoc_insertion_point(module_scope)
diff --git a/steam/protobufs/steammessages_store_pb2.py b/steam/protobufs/steammessages_store_pb2.py
index 4873313..2ee2415 100644
--- a/steam/protobufs/steammessages_store_pb2.py
+++ b/steam/protobufs/steammessages_store_pb2.py
@@ -1,9 +1,7 @@
 # -*- coding: utf-8 -*-
 # Generated by the protocol buffer compiler.  DO NOT EDIT!
 # source: steammessages_store.proto
-
-import sys
-_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1'))
+"""Generated protocol buffer code."""
 from google.protobuf.internal import enum_type_wrapper
 from google.protobuf import descriptor as _descriptor
 from google.protobuf import message as _message
@@ -16,65 +14,500 @@ from google.protobuf import service_reflection
 _sym_db = _symbol_database.Default()
 
 
+import steam.protobufs.steammessages_base_pb2 as steammessages__base__pb2
 import steam.protobufs.steammessages_unified_base_pb2 as steammessages__unified__base__pb2
+import steam.protobufs.enums_pb2 as enums__pb2
 
 
 DESCRIPTOR = _descriptor.FileDescriptor(
   name='steammessages_store.proto',
   package='',
   syntax='proto2',
-  serialized_options=_b('\220\001\001'),
-  serialized_pb=_b('\n\x19steammessages_store.proto\x1a steammessages_unified_base.proto\"5\n!CStore_GetMostPopularTags_Request\x12\x10\n\x08language\x18\x01 \x01(\t\"\x7f\n\"CStore_GetMostPopularTags_Response\x12\x35\n\x04tags\x18\x01 \x03(\x0b\x32\'.CStore_GetMostPopularTags_Response.Tag\x1a\"\n\x03Tag\x12\r\n\x05tagid\x18\x01 \x01(\r\x12\x0c\n\x04name\x18\x02 \x01(\t\"J\n&CStore_GetLocalizedNameForTags_Request\x12\x10\n\x08language\x18\x01 \x01(\t\x12\x0e\n\x06tagids\x18\x02 \x03(\r\"\x9f\x01\n\'CStore_GetLocalizedNameForTags_Response\x12:\n\x04tags\x18\x01 \x03(\x0b\x32,.CStore_GetLocalizedNameForTags_Response.Tag\x1a\x38\n\x03Tag\x12\r\n\x05tagid\x18\x01 \x01(\r\x12\x14\n\x0c\x65nglish_name\x18\x02 \x01(\t\x12\x0c\n\x04name\x18\x03 \x01(\t\"$\n\"CStore_GetStorePreferences_Request\"\xb1\x03\n\x16\x43Store_UserPreferences\x12\x18\n\x10primary_language\x18\x01 \x01(\r\x12\x1b\n\x13secondary_languages\x18\x02 \x01(\r\x12\x18\n\x10platform_windows\x18\x03 \x01(\x08\x12\x14\n\x0cplatform_mac\x18\x04 \x01(\x08\x12\x16\n\x0eplatform_linux\x18\x05 \x01(\x08\x12#\n\x1bhide_adult_content_violence\x18\x06 \x01(\x08\x12\x1e\n\x16hide_adult_content_sex\x18\x07 \x01(\x08\x12\x19\n\x11timestamp_updated\x18\x08 \x01(\r\x12\x1c\n\x14hide_store_broadcast\x18\t \x01(\x08\x12`\n\x17review_score_preference\x18\n \x01(\x0e\x32\x1b.EUserReviewScorePreference:\"k_EUserReviewScorePreference_Unset\x12\x38\n0timestamp_content_descriptor_preferences_updated\x18\x0b \x01(\x05\"\x91\x01\n\x19\x43Store_UserTagPreferences\x12\x37\n\x0ftags_to_exclude\x18\x01 \x03(\x0b\x32\x1e.CStore_UserTagPreferences.Tag\x1a;\n\x03Tag\x12\r\n\x05tagid\x18\x01 \x01(\r\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x17\n\x0ftimestamp_added\x18\x03 \x01(\r\"\xd9\x01\n\'CStore_UserContentDescriptorPreferences\x12\x62\n\x1e\x63ontent_descriptors_to_exclude\x18\x01 \x03(\x0b\x32:.CStore_UserContentDescriptorPreferences.ContentDescriptor\x1aJ\n\x11\x43ontentDescriptor\x12\x1c\n\x14\x63ontent_descriptorid\x18\x01 \x01(\r\x12\x17\n\x0ftimestamp_added\x18\x02 \x01(\r\"\xda\x01\n#CStore_GetStorePreferences_Response\x12,\n\x0bpreferences\x18\x01 \x01(\x0b\x32\x17.CStore_UserPreferences\x12\x33\n\x0ftag_preferences\x18\x02 \x01(\x0b\x32\x1a.CStore_UserTagPreferences\x12P\n\x1e\x63ontent_descriptor_preferences\x18\x03 \x01(\x0b\x32(.CStore_UserContentDescriptorPreferences\"\xe2\x01\n+CStore_StorePreferencesChanged_Notification\x12,\n\x0bpreferences\x18\x01 \x01(\x0b\x32\x17.CStore_UserPreferences\x12\x33\n\x0ftag_preferences\x18\x02 \x01(\x0b\x32\x1a.CStore_UserTagPreferences\x12P\n\x1e\x63ontent_descriptor_preferences\x18\x03 \x01(\x0b\x32(.CStore_UserContentDescriptorPreferences*\xa0\x01\n\x1a\x45UserReviewScorePreference\x12&\n\"k_EUserReviewScorePreference_Unset\x10\x00\x12+\n\'k_EUserReviewScorePreference_IncludeAll\x10\x01\x12-\n)k_EUserReviewScorePreference_ExcludeBombs\x10\x02\x32\x8e\x04\n\x05Store\x12\x92\x01\n\x12GetMostPopularTags\x12\".CStore_GetMostPopularTags_Request\x1a#.CStore_GetMostPopularTags_Response\"3\x82\xb5\x18/Get all whitelisted tags, with localized names.\x12\x98\x01\n\x17GetLocalizedNameForTags\x12\'.CStore_GetLocalizedNameForTags_Request\x1a(.CStore_GetLocalizedNameForTags_Response\"*\x82\xb5\x18&Gets tag names in a different language\x12\xaf\x01\n\x13GetStorePreferences\x12#.CStore_GetStorePreferences_Request\x1a$.CStore_GetStorePreferences_Response\"M\x82\xb5\x18IReturns the desired ratings board and maximum rating to show on the store\x1a#\x82\xb5\x18\x1f\x41 service to access store data.2\xee\x01\n\x0bStoreClient\x12\xb1\x01\n\x1dNotifyStorePreferencesChanged\x12,.CStore_StorePreferencesChanged_Notification\x1a\x0b.NoResponse\"U\x82\xb5\x18QNotification from server to client that the user\'s store preferences have changed\x1a+\x82\xb5\x18#Steam store to client notifications\xc0\xb5\x18\x02\x42\x03\x90\x01\x01')
+  serialized_options=b'\220\001\001',
+  create_key=_descriptor._internal_create_key,
+  serialized_pb=b'\n\x19steammessages_store.proto\x1a\x18steammessages_base.proto\x1a steammessages_unified_base.proto\x1a\x0b\x65nums.proto\"\xa1\x02\n\x1c\x43Store_RegisterCDKey_Request\x12S\n\x0f\x61\x63tivation_code\x18\x01 \x01(\tB:\x82\xb5\x18\x36Key string to register on the logged in user\'s account\x12H\n\x11purchase_platform\x18\x02 \x01(\x05\x42-\x82\xb5\x18)EPurchasePlatform for platform of request\x12\x62\n\x16is_request_from_client\x18\x03 \x01(\x08\x42\x42\x82\xb5\x18>True if the request was initiated from inside the Steam client\"\x9b\x04\n\x1a\x43Store_PurchaseReceiptInfo\x12\x15\n\rtransactionid\x18\x01 \x01(\x04\x12\x11\n\tpackageid\x18\x02 \x01(\r\x12\x17\n\x0fpurchase_status\x18\x03 \x01(\r\x12\x15\n\rresult_detail\x18\x04 \x01(\r\x12\x18\n\x10transaction_time\x18\x05 \x01(\r\x12\x16\n\x0epayment_method\x18\x06 \x01(\r\x12\x12\n\nbase_price\x18\x07 \x01(\x04\x12\x16\n\x0etotal_discount\x18\x08 \x01(\x04\x12\x0b\n\x03tax\x18\t \x01(\x04\x12\x10\n\x08shipping\x18\n \x01(\x04\x12\x15\n\rcurrency_code\x18\x0b \x01(\r\x12\x14\n\x0c\x63ountry_code\x18\x0c \x01(\t\x12\x16\n\x0e\x65rror_headline\x18\r \x01(\t\x12\x14\n\x0c\x65rror_string\x18\x0e \x01(\t\x12\x17\n\x0f\x65rror_link_text\x18\x0f \x01(\t\x12\x16\n\x0e\x65rror_link_url\x18\x10 \x01(\t\x12\x13\n\x0b\x65rror_appid\x18\x11 \x01(\r\x12\x38\n\nline_items\x18\x12 \x03(\x0b\x32$.CStore_PurchaseReceiptInfo.LineItem\x1aK\n\x08LineItem\x12\x11\n\tpackageid\x18\x01 \x01(\r\x12\r\n\x05\x61ppid\x18\x02 \x01(\r\x12\x1d\n\x15line_item_description\x18\x03 \x01(\t\"\xc7\x01\n\x1d\x43Store_RegisterCDKey_Response\x12O\n\x17purchase_result_details\x18\x01 \x01(\x05\x42.\x82\xb5\x18*EPurchaseResultDetails from key activation\x12U\n\x15purchase_receipt_info\x18\x02 \x01(\x0b\x32\x1b.CStore_PurchaseReceiptInfoB\x19\x82\xb5\x18\x15Purchase receipt info\"5\n!CStore_GetMostPopularTags_Request\x12\x10\n\x08language\x18\x01 \x01(\t\"\x7f\n\"CStore_GetMostPopularTags_Response\x12\x35\n\x04tags\x18\x01 \x03(\x0b\x32\'.CStore_GetMostPopularTags_Response.Tag\x1a\"\n\x03Tag\x12\r\n\x05tagid\x18\x01 \x01(\r\x12\x0c\n\x04name\x18\x02 \x01(\t\"J\n&CStore_GetLocalizedNameForTags_Request\x12\x10\n\x08language\x18\x01 \x01(\t\x12\x0e\n\x06tagids\x18\x02 \x03(\r\"\x99\x02\n\'CStore_GetLocalizedNameForTags_Response\x12:\n\x04tags\x18\x01 \x03(\x0b\x32,.CStore_GetLocalizedNameForTags_Response.Tag\x1a\xb1\x01\n\x03Tag\x12\r\n\x05tagid\x18\x01 \x01(\r\x12\x14\n\x0c\x65nglish_name\x18\x02 \x01(\t\x12\x0c\n\x04name\x18\x03 \x01(\t\x12w\n\x0fnormalized_name\x18\x04 \x01(\tB^\x82\xb5\x18Zenglish_name, lowercase, with homoglyphs replaced and spaces and some punctuation removed.\"\xe2\x03\n\x1c\x43StoreDiscoveryQueueSettings\x12\x0e\n\x06os_win\x18\x04 \x01(\x08\x12\x0e\n\x06os_mac\x18\x05 \x01(\x08\x12\x10\n\x08os_linux\x18\x06 \x01(\x08\x12\x1f\n\x17\x66ull_controller_support\x18\x07 \x01(\x08\x12\x1f\n\x17native_steam_controller\x18\x08 \x01(\x08\x12\x1b\n\x13include_coming_soon\x18\t \x01(\x08\x12\x44\n\x0f\x65xcluded_tagids\x18\n \x03(\rB+\x82\xb5\x18\'Don\'t return any games with these tags.\x12\x1c\n\x14\x65xclude_early_access\x18\x0b \x01(\x08\x12\x16\n\x0e\x65xclude_videos\x18\x0c \x01(\x08\x12\x18\n\x10\x65xclude_software\x18\r \x01(\x08\x12\x13\n\x0b\x65xclude_dlc\x18\x0e \x01(\x08\x12\x1b\n\x13\x65xclude_soundtracks\x18\x0f \x01(\x08\x12i\n\x0f\x66\x65\x61tured_tagids\x18\x10 \x03(\rBP\x82\xb5\x18LMust be marked with one of these featured tagids (for sale pages and events)\"\x85\x03\n CStore_GetDiscoveryQueue_Request\x12L\n\nqueue_type\x18\x01 \x01(\x0e\x32\x19.EStoreDiscoveryQueueType:\x1dk_EStoreDiscoveryQueueTypeNew\x12\x14\n\x0c\x63ountry_code\x18\x02 \x01(\t\x12\x15\n\rrebuild_queue\x18\x03 \x01(\x08\x12\x18\n\x10settings_changed\x18\x04 \x01(\x08\x12/\n\x08settings\x18\x05 \x01(\x0b\x32\x1d.CStoreDiscoveryQueueSettings\x12\x1e\n\x16rebuild_queue_if_stale\x18\x06 \x01(\x08\x12\x1f\n\x17ignore_user_preferences\x18\x08 \x01(\x08\x12\x1f\n\x17no_experimental_results\x18\t \x01(\x08\x12\x1b\n\x13\x65xperimental_cohort\x18\n \x01(\r\x12\x1c\n\x14\x64\x65\x62ug_get_solr_query\x18\x0b \x01(\x08\"\xd5\x01\n!CStore_GetDiscoveryQueue_Response\x12\x0e\n\x06\x61ppids\x18\x01 \x03(\r\x12\x14\n\x0c\x63ountry_code\x18\x02 \x01(\t\x12/\n\x08settings\x18\x03 \x01(\x0b\x32\x1d.CStoreDiscoveryQueueSettings\x12\x0f\n\x07skipped\x18\x04 \x01(\x05\x12\x11\n\texhausted\x18\x05 \x01(\x08\x12\x1b\n\x13\x65xperimental_cohort\x18\x06 \x01(\r\x12\x18\n\x10\x64\x65\x62ug_solr_query\x18\x07 \x01(\t\"x\n(CStore_GetDiscoveryQueueSettings_Request\x12L\n\nqueue_type\x18\x01 \x01(\x0e\x32\x19.EStoreDiscoveryQueueType:\x1dk_EStoreDiscoveryQueueTypeNew\"r\n)CStore_GetDiscoveryQueueSettings_Response\x12\x14\n\x0c\x63ountry_code\x18\x01 \x01(\t\x12/\n\x08settings\x18\x02 \x01(\x0b\x32\x1d.CStoreDiscoveryQueueSettings\"\x84\x01\n%CStore_SkipDiscoveryQueueItem_Request\x12L\n\nqueue_type\x18\x01 \x01(\x0e\x32\x19.EStoreDiscoveryQueueType:\x1dk_EStoreDiscoveryQueueTypeNew\x12\r\n\x05\x61ppid\x18\x02 \x01(\r\"(\n&CStore_SkipDiscoveryQueueItem_Response\"a\n\'CStore_GetUserGameInterestState_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x13\n\x0bstore_appid\x18\x02 \x01(\r\x12\x12\n\nbeta_appid\x18\x03 \x01(\r\"\x9d\x08\n(CStore_GetUserGameInterestState_Response\x12\r\n\x05owned\x18\x01 \x01(\x08\x12\x10\n\x08wishlist\x18\x02 \x01(\x08\x12\x0f\n\x07ignored\x18\x03 \x01(\x08\x12\x11\n\tfollowing\x18\x04 \x01(\x08\x12,\n\tin_queues\x18\x05 \x03(\x0e\x32\x19.EStoreDiscoveryQueueType\x12t\n\x10queues_with_skip\x18\x06 \x03(\x0e\x32\x19.EStoreDiscoveryQueueTypeB?\x82\xb5\x18;Discovery queue types where the user has skipped this game.\x12t\n\x15queue_items_remaining\x18\x07 \x03(\x05\x42U\x82\xb5\x18Q# of items remaining in the discovery queue - matches the same order as in_queues\x12\x65\n\x16queue_items_next_appid\x18\x08 \x03(\rBE\x82\xb5\x18\x41the next appid in the queue - matches the same order as in_queues\x12^\n\x11temporarily_owned\x18\t \x01(\x08\x42\x43\x82\xb5\x18?The user owns the game temporarily, eg a rental or free weekend\x12\x41\n\x06queues\x18\n \x03(\x0b\x32\x31.CStore_GetUserGameInterestState_Response.InQueue\x12X\n\x0eignored_reason\x18\x0b \x01(\x05\x42@\x82\xb5\x18<The ERecommendationIgnoreReason why the user ignored the app\x12\x7f\n\x0b\x62\x65ta_status\x18\x0c \x01(\x0e\x32\x10.EPlaytestStatus:\x13k_ETesterStatusNoneBC\x82\xb5\x18?User interest or membership in the playtest for this app if any\x1a\xac\x01\n\x07InQueue\x12\x46\n\x04type\x18\x01 \x01(\x0e\x32\x19.EStoreDiscoveryQueueType:\x1dk_EStoreDiscoveryQueueTypeNew\x12\x0f\n\x07skipped\x18\x02 \x01(\x08\x12\x17\n\x0fitems_remaining\x18\x03 \x01(\x05\x12\x12\n\nnext_appid\x18\x04 \x01(\r\x12\x1b\n\x13\x65xperimental_cohort\x18\x05 \x01(\r\"$\n\"CStore_GetStorePreferences_Request\"\x99\x04\n\x16\x43Store_UserPreferences\x12\x18\n\x10primary_language\x18\x01 \x01(\x05\x12\x1b\n\x13secondary_languages\x18\x02 \x01(\r\x12\x18\n\x10platform_windows\x18\x03 \x01(\x08\x12\x14\n\x0cplatform_mac\x18\x04 \x01(\x08\x12\x16\n\x0eplatform_linux\x18\x05 \x01(\x08\x12#\n\x1bhide_adult_content_violence\x18\x06 \x01(\x08\x12\x1e\n\x16hide_adult_content_sex\x18\x07 \x01(\x08\x12\x19\n\x11timestamp_updated\x18\x08 \x01(\r\x12\x1c\n\x14hide_store_broadcast\x18\t \x01(\x08\x12`\n\x17review_score_preference\x18\n \x01(\x0e\x32\x1b.EUserReviewScorePreference:\"k_EUserReviewScorePreference_Unset\x12\x38\n0timestamp_content_descriptor_preferences_updated\x18\x0b \x01(\x05\x12\x66\n\x15provide_deck_feedback\x18\x0c \x01(\x0e\x32\x1f.EProvideDeckFeedbackPreference:&k_EProvideDeckFeedbackPreference_Unset\"\x91\x01\n\x19\x43Store_UserTagPreferences\x12\x37\n\x0ftags_to_exclude\x18\x01 \x03(\x0b\x32\x1e.CStore_UserTagPreferences.Tag\x1a;\n\x03Tag\x12\r\n\x05tagid\x18\x01 \x01(\r\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x17\n\x0ftimestamp_added\x18\x03 \x01(\r\"\xd9\x01\n\'CStore_UserContentDescriptorPreferences\x12\x62\n\x1e\x63ontent_descriptors_to_exclude\x18\x01 \x03(\x0b\x32:.CStore_UserContentDescriptorPreferences.ContentDescriptor\x1aJ\n\x11\x43ontentDescriptor\x12\x1c\n\x14\x63ontent_descriptorid\x18\x01 \x01(\r\x12\x17\n\x0ftimestamp_added\x18\x02 \x01(\r\"\xda\x01\n#CStore_GetStorePreferences_Response\x12,\n\x0bpreferences\x18\x01 \x01(\x0b\x32\x17.CStore_UserPreferences\x12\x33\n\x0ftag_preferences\x18\x02 \x01(\x0b\x32\x1a.CStore_UserTagPreferences\x12P\n\x1e\x63ontent_descriptor_preferences\x18\x03 \x01(\x0b\x32(.CStore_UserContentDescriptorPreferences\"W\n*CStore_GetTrendingAppsAmongFriends_Request\x12\x10\n\x08num_apps\x18\x01 \x01(\r\x12\x17\n\x0fnum_top_friends\x18\x02 \x01(\r\"\xd9\x01\n+CStore_GetTrendingAppsAmongFriends_Response\x12S\n\rtrending_apps\x18\x01 \x03(\x0b\x32<.CStore_GetTrendingAppsAmongFriends_Response.TrendingAppData\x1aU\n\x0fTrendingAppData\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x1c\n\x14steamids_top_friends\x18\x02 \x03(\x04\x12\x15\n\rtotal_friends\x18\x03 \x01(\r\"\x99\x01\n+CSteamDeckCompatibility_SetFeedback_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12[\n\x08\x66\x65\x65\x64\x62\x61\x63k\x18\x02 \x01(\x0e\x32 .ESteamDeckCompatibilityFeedback:\'k_ESteamDeckCompatibilityFeedback_Unset\".\n,CSteamDeckCompatibility_SetFeedback_Response\"=\n,CSteamDeckCompatibility_ShouldPrompt_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\"\xc0\x01\n-CSteamDeckCompatibility_ShouldPrompt_Response\x12\x0e\n\x06prompt\x18\x01 \x01(\x08\x12\x19\n\x11\x66\x65\x65\x64\x62\x61\x63k_eligible\x18\x02 \x01(\x08\x12\x64\n\x11\x65xisting_feedback\x18\x03 \x01(\x0e\x32 .ESteamDeckCompatibilityFeedback:\'k_ESteamDeckCompatibilityFeedback_Unset\"\xe2\x01\n+CStore_StorePreferencesChanged_Notification\x12,\n\x0bpreferences\x18\x01 \x01(\x0b\x32\x17.CStore_UserPreferences\x12\x33\n\x0ftag_preferences\x18\x02 \x01(\x0b\x32\x1a.CStore_UserTagPreferences\x12P\n\x1e\x63ontent_descriptor_preferences\x18\x03 \x01(\x0b\x32(.CStore_UserContentDescriptorPreferences*\xab\x05\n\x18\x45StoreDiscoveryQueueType\x12!\n\x1dk_EStoreDiscoveryQueueTypeNew\x10\x00\x12(\n$k_EStoreDiscoveryQueueTypeComingSoon\x10\x01\x12)\n%k_EStoreDiscoveryQueueTypeRecommended\x10\x02\x12-\n)k_EStoreDiscoveryQueueTypeEveryNewRelease\x10\x03\x12+\n\'k_EStoreDiscoveryQueueTypeMLRecommender\x10\x05\x12,\n(k_EStoreDiscoveryQueueTypeWishlistOnSale\x10\x06\x12!\n\x1dk_EStoreDiscoveryQueueTypeDLC\x10\x07\x12\'\n#k_EStoreDiscoveryQueueTypeDLCOnSale\x10\x08\x12\x33\n/k_EStoreDiscoveryQueueTypeRecommendedComingSoon\x10\t\x12-\n)k_EStoreDiscoveryQueueTypeRecommendedFree\x10\n\x12/\n+k_EStoreDiscoveryQueueTypeRecommendedOnSale\x10\x0b\x12.\n*k_EStoreDiscoveryQueueTypeRecommendedDemos\x10\x0c\x12,\n(k_EStoreDiscoveryQueueTypeDLCNewReleases\x10\r\x12+\n\'k_EStoreDiscoveryQueueTypeDLCTopSellers\x10\x0e\x12!\n\x1dk_EStoreDiscoveryQueueTypeMAX\x10\x0f*~\n\x0f\x45PlaytestStatus\x12\x17\n\x13k_ETesterStatusNone\x10\x00\x12\x1a\n\x16k_ETesterStatusPending\x10\x01\x12\x1a\n\x16k_ETesterStatusInvited\x10\x02\x12\x1a\n\x16k_ETesterStatusGranted\x10\x03*\xa0\x01\n\x1a\x45UserReviewScorePreference\x12&\n\"k_EUserReviewScorePreference_Unset\x10\x00\x12+\n\'k_EUserReviewScorePreference_IncludeAll\x10\x01\x12-\n)k_EUserReviewScorePreference_ExcludeBombs\x10\x02\x32\xc4\x0f\n\x05Store\x12\x91\x01\n\rRegisterCDKey\x12\x1d.CStore_RegisterCDKey_Request\x1a\x1e.CStore_RegisterCDKey_Response\"A\x82\xb5\x18=Registers a CD key with Steam on the logged in user\'s account\x12\x92\x01\n\x12GetMostPopularTags\x12\".CStore_GetMostPopularTags_Request\x1a#.CStore_GetMostPopularTags_Response\"3\x82\xb5\x18/Get all whitelisted tags, with localized names.\x12\x98\x01\n\x17GetLocalizedNameForTags\x12\'.CStore_GetLocalizedNameForTags_Request\x1a(.CStore_GetLocalizedNameForTags_Response\"*\x82\xb5\x18&Gets tag names in a different language\x12\x99\x01\n\x11GetDiscoveryQueue\x12!.CStore_GetDiscoveryQueue_Request\x1a\".CStore_GetDiscoveryQueue_Response\"=\x82\xb5\x18\x39Get a list of games for the user to explore on the store.\x12\xbd\x01\n\x19GetDiscoveryQueueSettings\x12).CStore_GetDiscoveryQueueSettings_Request\x1a*.CStore_GetDiscoveryQueueSettings_Response\"I\x82\xb5\x18\x45Get the settings that were used to generate a user\'s discovery queue.\x12\x90\x01\n\x16SkipDiscoveryQueueItem\x12&.CStore_SkipDiscoveryQueueItem_Request\x1a\'.CStore_SkipDiscoveryQueueItem_Response\"%\x82\xb5\x18!Skip an item in the user\'s queue.\x12\xdd\x01\n\x18GetUserGameInterestState\x12(.CStore_GetUserGameInterestState_Request\x1a).CStore_GetUserGameInterestState_Response\"l\x82\xb5\x18hGet information about a user\'s relationship to a game - ownership, wishlist, discovery queue state, etc.\x12\xaf\x01\n\x13GetStorePreferences\x12#.CStore_GetStorePreferences_Request\x1a$.CStore_GetStorePreferences_Response\"M\x82\xb5\x18IReturns the desired ratings board and maximum rating to show on the store\x12\x9d\x01\n\x1bGetTrendingAppsAmongFriends\x12+.CStore_GetTrendingAppsAmongFriends_Request\x1a,.CStore_GetTrendingAppsAmongFriends_Response\"#\x82\xb5\x18\x1fGet trending apps among friends\x12\xd5\x01\n\x18SetCompatibilityFeedback\x12,.CSteamDeckCompatibility_SetFeedback_Request\x1a-.CSteamDeckCompatibility_SetFeedback_Response\"\\\x82\xb5\x18XUpserts user feedback regarding the published Steam Deck Compatibility rating for a game\x12\xd8\x01\n$ShouldPromptForCompatibilityFeedback\x12-.CSteamDeckCompatibility_ShouldPrompt_Request\x1a..CSteamDeckCompatibility_ShouldPrompt_Response\"Q\x82\xb5\x18MReturns whether we should ask the user if the compatibility rating is correct\x1a#\x82\xb5\x18\x1f\x41 service to access store data.2\xee\x01\n\x0bStoreClient\x12\xb1\x01\n\x1dNotifyStorePreferencesChanged\x12,.CStore_StorePreferencesChanged_Notification\x1a\x0b.NoResponse\"U\x82\xb5\x18QNotification from server to client that the user\'s store preferences have changed\x1a+\x82\xb5\x18#Steam store to client notifications\xc0\xb5\x18\x02\x42\x03\x90\x01\x01'
   ,
-  dependencies=[steammessages__unified__base__pb2.DESCRIPTOR,])
+  dependencies=[steammessages__base__pb2.DESCRIPTOR,steammessages__unified__base__pb2.DESCRIPTOR,enums__pb2.DESCRIPTOR,])
+
+_ESTOREDISCOVERYQUEUETYPE = _descriptor.EnumDescriptor(
+  name='EStoreDiscoveryQueueType',
+  full_name='EStoreDiscoveryQueueType',
+  filename=None,
+  file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
+  values=[
+    _descriptor.EnumValueDescriptor(
+      name='k_EStoreDiscoveryQueueTypeNew', index=0, number=0,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EStoreDiscoveryQueueTypeComingSoon', index=1, number=1,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EStoreDiscoveryQueueTypeRecommended', index=2, number=2,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EStoreDiscoveryQueueTypeEveryNewRelease', index=3, number=3,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EStoreDiscoveryQueueTypeMLRecommender', index=4, number=5,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EStoreDiscoveryQueueTypeWishlistOnSale', index=5, number=6,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EStoreDiscoveryQueueTypeDLC', index=6, number=7,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EStoreDiscoveryQueueTypeDLCOnSale', index=7, number=8,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EStoreDiscoveryQueueTypeRecommendedComingSoon', index=8, number=9,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EStoreDiscoveryQueueTypeRecommendedFree', index=9, number=10,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EStoreDiscoveryQueueTypeRecommendedOnSale', index=10, number=11,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EStoreDiscoveryQueueTypeRecommendedDemos', index=11, number=12,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EStoreDiscoveryQueueTypeDLCNewReleases', index=12, number=13,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EStoreDiscoveryQueueTypeDLCTopSellers', index=13, number=14,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EStoreDiscoveryQueueTypeMAX', index=14, number=15,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+  ],
+  containing_type=None,
+  serialized_options=None,
+  serialized_start=6513,
+  serialized_end=7196,
+)
+_sym_db.RegisterEnumDescriptor(_ESTOREDISCOVERYQUEUETYPE)
+
+EStoreDiscoveryQueueType = enum_type_wrapper.EnumTypeWrapper(_ESTOREDISCOVERYQUEUETYPE)
+_EPLAYTESTSTATUS = _descriptor.EnumDescriptor(
+  name='EPlaytestStatus',
+  full_name='EPlaytestStatus',
+  filename=None,
+  file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
+  values=[
+    _descriptor.EnumValueDescriptor(
+      name='k_ETesterStatusNone', index=0, number=0,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_ETesterStatusPending', index=1, number=1,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_ETesterStatusInvited', index=2, number=2,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_ETesterStatusGranted', index=3, number=3,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+  ],
+  containing_type=None,
+  serialized_options=None,
+  serialized_start=7198,
+  serialized_end=7324,
+)
+_sym_db.RegisterEnumDescriptor(_EPLAYTESTSTATUS)
 
+EPlaytestStatus = enum_type_wrapper.EnumTypeWrapper(_EPLAYTESTSTATUS)
 _EUSERREVIEWSCOREPREFERENCE = _descriptor.EnumDescriptor(
   name='EUserReviewScorePreference',
   full_name='EUserReviewScorePreference',
   filename=None,
   file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
   values=[
     _descriptor.EnumValueDescriptor(
       name='k_EUserReviewScorePreference_Unset', index=0, number=0,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EUserReviewScorePreference_IncludeAll', index=1, number=1,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EUserReviewScorePreference_ExcludeBombs', index=2, number=2,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
   ],
   containing_type=None,
   serialized_options=None,
-  serialized_start=1778,
-  serialized_end=1938,
+  serialized_start=7327,
+  serialized_end=7487,
 )
 _sym_db.RegisterEnumDescriptor(_EUSERREVIEWSCOREPREFERENCE)
 
 EUserReviewScorePreference = enum_type_wrapper.EnumTypeWrapper(_EUSERREVIEWSCOREPREFERENCE)
+k_EStoreDiscoveryQueueTypeNew = 0
+k_EStoreDiscoveryQueueTypeComingSoon = 1
+k_EStoreDiscoveryQueueTypeRecommended = 2
+k_EStoreDiscoveryQueueTypeEveryNewRelease = 3
+k_EStoreDiscoveryQueueTypeMLRecommender = 5
+k_EStoreDiscoveryQueueTypeWishlistOnSale = 6
+k_EStoreDiscoveryQueueTypeDLC = 7
+k_EStoreDiscoveryQueueTypeDLCOnSale = 8
+k_EStoreDiscoveryQueueTypeRecommendedComingSoon = 9
+k_EStoreDiscoveryQueueTypeRecommendedFree = 10
+k_EStoreDiscoveryQueueTypeRecommendedOnSale = 11
+k_EStoreDiscoveryQueueTypeRecommendedDemos = 12
+k_EStoreDiscoveryQueueTypeDLCNewReleases = 13
+k_EStoreDiscoveryQueueTypeDLCTopSellers = 14
+k_EStoreDiscoveryQueueTypeMAX = 15
+k_ETesterStatusNone = 0
+k_ETesterStatusPending = 1
+k_ETesterStatusInvited = 2
+k_ETesterStatusGranted = 3
 k_EUserReviewScorePreference_Unset = 0
 k_EUserReviewScorePreference_IncludeAll = 1
 k_EUserReviewScorePreference_ExcludeBombs = 2
 
 
 
+_CSTORE_REGISTERCDKEY_REQUEST = _descriptor.Descriptor(
+  name='CStore_RegisterCDKey_Request',
+  full_name='CStore_RegisterCDKey_Request',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='activation_code', full_name='CStore_RegisterCDKey_Request.activation_code', index=0,
+      number=1, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\0306Key string to register on the logged in user\'s account', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='purchase_platform', full_name='CStore_RegisterCDKey_Request.purchase_platform', index=1,
+      number=2, type=5, cpp_type=1, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030)EPurchasePlatform for platform of request', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='is_request_from_client', full_name='CStore_RegisterCDKey_Request.is_request_from_client', index=2,
+      number=3, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030>True if the request was initiated from inside the Steam client', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=103,
+  serialized_end=392,
+)
+
+
+_CSTORE_PURCHASERECEIPTINFO_LINEITEM = _descriptor.Descriptor(
+  name='LineItem',
+  full_name='CStore_PurchaseReceiptInfo.LineItem',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='packageid', full_name='CStore_PurchaseReceiptInfo.LineItem.packageid', index=0,
+      number=1, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='appid', full_name='CStore_PurchaseReceiptInfo.LineItem.appid', index=1,
+      number=2, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='line_item_description', full_name='CStore_PurchaseReceiptInfo.LineItem.line_item_description', index=2,
+      number=3, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=859,
+  serialized_end=934,
+)
+
+_CSTORE_PURCHASERECEIPTINFO = _descriptor.Descriptor(
+  name='CStore_PurchaseReceiptInfo',
+  full_name='CStore_PurchaseReceiptInfo',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='transactionid', full_name='CStore_PurchaseReceiptInfo.transactionid', index=0,
+      number=1, type=4, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='packageid', full_name='CStore_PurchaseReceiptInfo.packageid', index=1,
+      number=2, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='purchase_status', full_name='CStore_PurchaseReceiptInfo.purchase_status', index=2,
+      number=3, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='result_detail', full_name='CStore_PurchaseReceiptInfo.result_detail', index=3,
+      number=4, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='transaction_time', full_name='CStore_PurchaseReceiptInfo.transaction_time', index=4,
+      number=5, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='payment_method', full_name='CStore_PurchaseReceiptInfo.payment_method', index=5,
+      number=6, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='base_price', full_name='CStore_PurchaseReceiptInfo.base_price', index=6,
+      number=7, type=4, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='total_discount', full_name='CStore_PurchaseReceiptInfo.total_discount', index=7,
+      number=8, type=4, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='tax', full_name='CStore_PurchaseReceiptInfo.tax', index=8,
+      number=9, type=4, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='shipping', full_name='CStore_PurchaseReceiptInfo.shipping', index=9,
+      number=10, type=4, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='currency_code', full_name='CStore_PurchaseReceiptInfo.currency_code', index=10,
+      number=11, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='country_code', full_name='CStore_PurchaseReceiptInfo.country_code', index=11,
+      number=12, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='error_headline', full_name='CStore_PurchaseReceiptInfo.error_headline', index=12,
+      number=13, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='error_string', full_name='CStore_PurchaseReceiptInfo.error_string', index=13,
+      number=14, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='error_link_text', full_name='CStore_PurchaseReceiptInfo.error_link_text', index=14,
+      number=15, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='error_link_url', full_name='CStore_PurchaseReceiptInfo.error_link_url', index=15,
+      number=16, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='error_appid', full_name='CStore_PurchaseReceiptInfo.error_appid', index=16,
+      number=17, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='line_items', full_name='CStore_PurchaseReceiptInfo.line_items', index=17,
+      number=18, type=11, cpp_type=10, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[_CSTORE_PURCHASERECEIPTINFO_LINEITEM, ],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=395,
+  serialized_end=934,
+)
+
+
+_CSTORE_REGISTERCDKEY_RESPONSE = _descriptor.Descriptor(
+  name='CStore_RegisterCDKey_Response',
+  full_name='CStore_RegisterCDKey_Response',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='purchase_result_details', full_name='CStore_RegisterCDKey_Response.purchase_result_details', index=0,
+      number=1, type=5, cpp_type=1, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030*EPurchaseResultDetails from key activation', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='purchase_receipt_info', full_name='CStore_RegisterCDKey_Response.purchase_receipt_info', index=1,
+      number=2, type=11, cpp_type=10, label=1,
+      has_default_value=False, default_value=None,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\025Purchase receipt info', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=937,
+  serialized_end=1136,
+)
+
+
 _CSTORE_GETMOSTPOPULARTAGS_REQUEST = _descriptor.Descriptor(
   name='CStore_GetMostPopularTags_Request',
   full_name='CStore_GetMostPopularTags_Request',
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='language', full_name='CStore_GetMostPopularTags_Request.language', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -87,8 +520,8 @@ _CSTORE_GETMOSTPOPULARTAGS_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=63,
-  serialized_end=116,
+  serialized_start=1138,
+  serialized_end=1191,
 )
 
 
@@ -98,6 +531,7 @@ _CSTORE_GETMOSTPOPULARTAGS_RESPONSE_TAG = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='tagid', full_name='CStore_GetMostPopularTags_Response.Tag.tagid', index=0,
@@ -105,14 +539,14 @@ _CSTORE_GETMOSTPOPULARTAGS_RESPONSE_TAG = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='name', full_name='CStore_GetMostPopularTags_Response.Tag.name', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -125,8 +559,8 @@ _CSTORE_GETMOSTPOPULARTAGS_RESPONSE_TAG = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=211,
-  serialized_end=245,
+  serialized_start=1286,
+  serialized_end=1320,
 )
 
 _CSTORE_GETMOSTPOPULARTAGS_RESPONSE = _descriptor.Descriptor(
@@ -135,6 +569,7 @@ _CSTORE_GETMOSTPOPULARTAGS_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='tags', full_name='CStore_GetMostPopularTags_Response.tags', index=0,
@@ -142,7 +577,7 @@ _CSTORE_GETMOSTPOPULARTAGS_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -155,8 +590,8 @@ _CSTORE_GETMOSTPOPULARTAGS_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=118,
-  serialized_end=245,
+  serialized_start=1193,
+  serialized_end=1320,
 )
 
 
@@ -166,25 +601,955 @@ _CSTORE_GETLOCALIZEDNAMEFORTAGS_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='language', full_name='CStore_GetLocalizedNameForTags_Request.language', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='tagids', full_name='CStore_GetLocalizedNameForTags_Request.tagids', index=1,
       number=2, type=13, cpp_type=3, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=1322,
+  serialized_end=1396,
+)
+
+
+_CSTORE_GETLOCALIZEDNAMEFORTAGS_RESPONSE_TAG = _descriptor.Descriptor(
+  name='Tag',
+  full_name='CStore_GetLocalizedNameForTags_Response.Tag',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='tagid', full_name='CStore_GetLocalizedNameForTags_Response.Tag.tagid', index=0,
+      number=1, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='english_name', full_name='CStore_GetLocalizedNameForTags_Response.Tag.english_name', index=1,
+      number=2, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='name', full_name='CStore_GetLocalizedNameForTags_Response.Tag.name', index=2,
+      number=3, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='normalized_name', full_name='CStore_GetLocalizedNameForTags_Response.Tag.normalized_name', index=3,
+      number=4, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030Zenglish_name, lowercase, with homoglyphs replaced and spaces and some punctuation removed.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=1503,
+  serialized_end=1680,
+)
+
+_CSTORE_GETLOCALIZEDNAMEFORTAGS_RESPONSE = _descriptor.Descriptor(
+  name='CStore_GetLocalizedNameForTags_Response',
+  full_name='CStore_GetLocalizedNameForTags_Response',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='tags', full_name='CStore_GetLocalizedNameForTags_Response.tags', index=0,
+      number=1, type=11, cpp_type=10, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[_CSTORE_GETLOCALIZEDNAMEFORTAGS_RESPONSE_TAG, ],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=1399,
+  serialized_end=1680,
+)
+
+
+_CSTOREDISCOVERYQUEUESETTINGS = _descriptor.Descriptor(
+  name='CStoreDiscoveryQueueSettings',
+  full_name='CStoreDiscoveryQueueSettings',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='os_win', full_name='CStoreDiscoveryQueueSettings.os_win', index=0,
+      number=4, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='os_mac', full_name='CStoreDiscoveryQueueSettings.os_mac', index=1,
+      number=5, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='os_linux', full_name='CStoreDiscoveryQueueSettings.os_linux', index=2,
+      number=6, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='full_controller_support', full_name='CStoreDiscoveryQueueSettings.full_controller_support', index=3,
+      number=7, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='native_steam_controller', full_name='CStoreDiscoveryQueueSettings.native_steam_controller', index=4,
+      number=8, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='include_coming_soon', full_name='CStoreDiscoveryQueueSettings.include_coming_soon', index=5,
+      number=9, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='excluded_tagids', full_name='CStoreDiscoveryQueueSettings.excluded_tagids', index=6,
+      number=10, type=13, cpp_type=3, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\'Don\'t return any games with these tags.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='exclude_early_access', full_name='CStoreDiscoveryQueueSettings.exclude_early_access', index=7,
+      number=11, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='exclude_videos', full_name='CStoreDiscoveryQueueSettings.exclude_videos', index=8,
+      number=12, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='exclude_software', full_name='CStoreDiscoveryQueueSettings.exclude_software', index=9,
+      number=13, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='exclude_dlc', full_name='CStoreDiscoveryQueueSettings.exclude_dlc', index=10,
+      number=14, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='exclude_soundtracks', full_name='CStoreDiscoveryQueueSettings.exclude_soundtracks', index=11,
+      number=15, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='featured_tagids', full_name='CStoreDiscoveryQueueSettings.featured_tagids', index=12,
+      number=16, type=13, cpp_type=3, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030LMust be marked with one of these featured tagids (for sale pages and events)', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=1683,
+  serialized_end=2165,
+)
+
+
+_CSTORE_GETDISCOVERYQUEUE_REQUEST = _descriptor.Descriptor(
+  name='CStore_GetDiscoveryQueue_Request',
+  full_name='CStore_GetDiscoveryQueue_Request',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='queue_type', full_name='CStore_GetDiscoveryQueue_Request.queue_type', index=0,
+      number=1, type=14, cpp_type=8, label=1,
+      has_default_value=True, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='country_code', full_name='CStore_GetDiscoveryQueue_Request.country_code', index=1,
+      number=2, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='rebuild_queue', full_name='CStore_GetDiscoveryQueue_Request.rebuild_queue', index=2,
+      number=3, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='settings_changed', full_name='CStore_GetDiscoveryQueue_Request.settings_changed', index=3,
+      number=4, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='settings', full_name='CStore_GetDiscoveryQueue_Request.settings', index=4,
+      number=5, type=11, cpp_type=10, label=1,
+      has_default_value=False, default_value=None,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='rebuild_queue_if_stale', full_name='CStore_GetDiscoveryQueue_Request.rebuild_queue_if_stale', index=5,
+      number=6, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='ignore_user_preferences', full_name='CStore_GetDiscoveryQueue_Request.ignore_user_preferences', index=6,
+      number=8, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='no_experimental_results', full_name='CStore_GetDiscoveryQueue_Request.no_experimental_results', index=7,
+      number=9, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='experimental_cohort', full_name='CStore_GetDiscoveryQueue_Request.experimental_cohort', index=8,
+      number=10, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='debug_get_solr_query', full_name='CStore_GetDiscoveryQueue_Request.debug_get_solr_query', index=9,
+      number=11, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=2168,
+  serialized_end=2557,
+)
+
+
+_CSTORE_GETDISCOVERYQUEUE_RESPONSE = _descriptor.Descriptor(
+  name='CStore_GetDiscoveryQueue_Response',
+  full_name='CStore_GetDiscoveryQueue_Response',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='appids', full_name='CStore_GetDiscoveryQueue_Response.appids', index=0,
+      number=1, type=13, cpp_type=3, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='country_code', full_name='CStore_GetDiscoveryQueue_Response.country_code', index=1,
+      number=2, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='settings', full_name='CStore_GetDiscoveryQueue_Response.settings', index=2,
+      number=3, type=11, cpp_type=10, label=1,
+      has_default_value=False, default_value=None,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='skipped', full_name='CStore_GetDiscoveryQueue_Response.skipped', index=3,
+      number=4, type=5, cpp_type=1, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='exhausted', full_name='CStore_GetDiscoveryQueue_Response.exhausted', index=4,
+      number=5, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='experimental_cohort', full_name='CStore_GetDiscoveryQueue_Response.experimental_cohort', index=5,
+      number=6, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='debug_solr_query', full_name='CStore_GetDiscoveryQueue_Response.debug_solr_query', index=6,
+      number=7, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=2560,
+  serialized_end=2773,
+)
+
+
+_CSTORE_GETDISCOVERYQUEUESETTINGS_REQUEST = _descriptor.Descriptor(
+  name='CStore_GetDiscoveryQueueSettings_Request',
+  full_name='CStore_GetDiscoveryQueueSettings_Request',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='queue_type', full_name='CStore_GetDiscoveryQueueSettings_Request.queue_type', index=0,
+      number=1, type=14, cpp_type=8, label=1,
+      has_default_value=True, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=2775,
+  serialized_end=2895,
+)
+
+
+_CSTORE_GETDISCOVERYQUEUESETTINGS_RESPONSE = _descriptor.Descriptor(
+  name='CStore_GetDiscoveryQueueSettings_Response',
+  full_name='CStore_GetDiscoveryQueueSettings_Response',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='country_code', full_name='CStore_GetDiscoveryQueueSettings_Response.country_code', index=0,
+      number=1, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='settings', full_name='CStore_GetDiscoveryQueueSettings_Response.settings', index=1,
+      number=2, type=11, cpp_type=10, label=1,
+      has_default_value=False, default_value=None,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=2897,
+  serialized_end=3011,
+)
+
+
+_CSTORE_SKIPDISCOVERYQUEUEITEM_REQUEST = _descriptor.Descriptor(
+  name='CStore_SkipDiscoveryQueueItem_Request',
+  full_name='CStore_SkipDiscoveryQueueItem_Request',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='queue_type', full_name='CStore_SkipDiscoveryQueueItem_Request.queue_type', index=0,
+      number=1, type=14, cpp_type=8, label=1,
+      has_default_value=True, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='appid', full_name='CStore_SkipDiscoveryQueueItem_Request.appid', index=1,
+      number=2, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=3014,
+  serialized_end=3146,
+)
+
+
+_CSTORE_SKIPDISCOVERYQUEUEITEM_RESPONSE = _descriptor.Descriptor(
+  name='CStore_SkipDiscoveryQueueItem_Response',
+  full_name='CStore_SkipDiscoveryQueueItem_Response',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=3148,
+  serialized_end=3188,
+)
+
+
+_CSTORE_GETUSERGAMEINTERESTSTATE_REQUEST = _descriptor.Descriptor(
+  name='CStore_GetUserGameInterestState_Request',
+  full_name='CStore_GetUserGameInterestState_Request',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='appid', full_name='CStore_GetUserGameInterestState_Request.appid', index=0,
+      number=1, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='store_appid', full_name='CStore_GetUserGameInterestState_Request.store_appid', index=1,
+      number=2, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='beta_appid', full_name='CStore_GetUserGameInterestState_Request.beta_appid', index=2,
+      number=3, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=3190,
+  serialized_end=3287,
+)
+
+
+_CSTORE_GETUSERGAMEINTERESTSTATE_RESPONSE_INQUEUE = _descriptor.Descriptor(
+  name='InQueue',
+  full_name='CStore_GetUserGameInterestState_Response.InQueue',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='type', full_name='CStore_GetUserGameInterestState_Response.InQueue.type', index=0,
+      number=1, type=14, cpp_type=8, label=1,
+      has_default_value=True, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='skipped', full_name='CStore_GetUserGameInterestState_Response.InQueue.skipped', index=1,
+      number=2, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='items_remaining', full_name='CStore_GetUserGameInterestState_Response.InQueue.items_remaining', index=2,
+      number=3, type=5, cpp_type=1, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='next_appid', full_name='CStore_GetUserGameInterestState_Response.InQueue.next_appid', index=3,
+      number=4, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='experimental_cohort', full_name='CStore_GetUserGameInterestState_Response.InQueue.experimental_cohort', index=4,
+      number=5, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=4171,
+  serialized_end=4343,
+)
+
+_CSTORE_GETUSERGAMEINTERESTSTATE_RESPONSE = _descriptor.Descriptor(
+  name='CStore_GetUserGameInterestState_Response',
+  full_name='CStore_GetUserGameInterestState_Response',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='owned', full_name='CStore_GetUserGameInterestState_Response.owned', index=0,
+      number=1, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='wishlist', full_name='CStore_GetUserGameInterestState_Response.wishlist', index=1,
+      number=2, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='ignored', full_name='CStore_GetUserGameInterestState_Response.ignored', index=2,
+      number=3, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='following', full_name='CStore_GetUserGameInterestState_Response.following', index=3,
+      number=4, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='in_queues', full_name='CStore_GetUserGameInterestState_Response.in_queues', index=4,
+      number=5, type=14, cpp_type=8, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='queues_with_skip', full_name='CStore_GetUserGameInterestState_Response.queues_with_skip', index=5,
+      number=6, type=14, cpp_type=8, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030;Discovery queue types where the user has skipped this game.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='queue_items_remaining', full_name='CStore_GetUserGameInterestState_Response.queue_items_remaining', index=6,
+      number=7, type=5, cpp_type=1, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030Q# of items remaining in the discovery queue - matches the same order as in_queues', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='queue_items_next_appid', full_name='CStore_GetUserGameInterestState_Response.queue_items_next_appid', index=7,
+      number=8, type=13, cpp_type=3, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030Athe next appid in the queue - matches the same order as in_queues', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='temporarily_owned', full_name='CStore_GetUserGameInterestState_Response.temporarily_owned', index=8,
+      number=9, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030?The user owns the game temporarily, eg a rental or free weekend', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='queues', full_name='CStore_GetUserGameInterestState_Response.queues', index=9,
+      number=10, type=11, cpp_type=10, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='ignored_reason', full_name='CStore_GetUserGameInterestState_Response.ignored_reason', index=10,
+      number=11, type=5, cpp_type=1, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030<The ERecommendationIgnoreReason why the user ignored the app', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='beta_status', full_name='CStore_GetUserGameInterestState_Response.beta_status', index=11,
+      number=12, type=14, cpp_type=8, label=1,
+      has_default_value=True, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030?User interest or membership in the playtest for this app if any', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[_CSTORE_GETUSERGAMEINTERESTSTATE_RESPONSE_INQUEUE, ],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=3290,
+  serialized_end=4343,
+)
+
+
+_CSTORE_GETSTOREPREFERENCES_REQUEST = _descriptor.Descriptor(
+  name='CStore_GetStorePreferences_Request',
+  full_name='CStore_GetStorePreferences_Request',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=4345,
+  serialized_end=4381,
+)
+
+
+_CSTORE_USERPREFERENCES = _descriptor.Descriptor(
+  name='CStore_UserPreferences',
+  full_name='CStore_UserPreferences',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='primary_language', full_name='CStore_UserPreferences.primary_language', index=0,
+      number=1, type=5, cpp_type=1, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='secondary_languages', full_name='CStore_UserPreferences.secondary_languages', index=1,
+      number=2, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='platform_windows', full_name='CStore_UserPreferences.platform_windows', index=2,
+      number=3, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='platform_mac', full_name='CStore_UserPreferences.platform_mac', index=3,
+      number=4, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='platform_linux', full_name='CStore_UserPreferences.platform_linux', index=4,
+      number=5, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='hide_adult_content_violence', full_name='CStore_UserPreferences.hide_adult_content_violence', index=5,
+      number=6, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='hide_adult_content_sex', full_name='CStore_UserPreferences.hide_adult_content_sex', index=6,
+      number=7, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='timestamp_updated', full_name='CStore_UserPreferences.timestamp_updated', index=7,
+      number=8, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='hide_store_broadcast', full_name='CStore_UserPreferences.hide_store_broadcast', index=8,
+      number=9, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='review_score_preference', full_name='CStore_UserPreferences.review_score_preference', index=9,
+      number=10, type=14, cpp_type=8, label=1,
+      has_default_value=True, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='timestamp_content_descriptor_preferences_updated', full_name='CStore_UserPreferences.timestamp_content_descriptor_preferences_updated', index=10,
+      number=11, type=5, cpp_type=1, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='provide_deck_feedback', full_name='CStore_UserPreferences.provide_deck_feedback', index=11,
+      number=12, type=14, cpp_type=8, label=1,
+      has_default_value=True, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=4384,
+  serialized_end=4921,
+)
+
+
+_CSTORE_USERTAGPREFERENCES_TAG = _descriptor.Descriptor(
+  name='Tag',
+  full_name='CStore_UserTagPreferences.Tag',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='tagid', full_name='CStore_UserTagPreferences.Tag.tagid', index=0,
+      number=1, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='name', full_name='CStore_UserTagPreferences.Tag.name', index=1,
+      number=2, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='timestamp_added', full_name='CStore_UserTagPreferences.Tag.timestamp_added', index=2,
+      number=3, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=5010,
+  serialized_end=5069,
+)
+
+_CSTORE_USERTAGPREFERENCES = _descriptor.Descriptor(
+  name='CStore_UserTagPreferences',
+  full_name='CStore_UserTagPreferences',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='tags_to_exclude', full_name='CStore_UserTagPreferences.tags_to_exclude', index=0,
+      number=1, type=11, cpp_type=10, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
-  nested_types=[],
+  nested_types=[_CSTORE_USERTAGPREFERENCES_TAG, ],
   enum_types=[
   ],
   serialized_options=None,
@@ -193,39 +1558,33 @@ _CSTORE_GETLOCALIZEDNAMEFORTAGS_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=247,
-  serialized_end=321,
+  serialized_start=4924,
+  serialized_end=5069,
 )
 
 
-_CSTORE_GETLOCALIZEDNAMEFORTAGS_RESPONSE_TAG = _descriptor.Descriptor(
-  name='Tag',
-  full_name='CStore_GetLocalizedNameForTags_Response.Tag',
+_CSTORE_USERCONTENTDESCRIPTORPREFERENCES_CONTENTDESCRIPTOR = _descriptor.Descriptor(
+  name='ContentDescriptor',
+  full_name='CStore_UserContentDescriptorPreferences.ContentDescriptor',
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
-      name='tagid', full_name='CStore_GetLocalizedNameForTags_Response.Tag.tagid', index=0,
+      name='content_descriptorid', full_name='CStore_UserContentDescriptorPreferences.ContentDescriptor.content_descriptorid', index=0,
       number=1, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='english_name', full_name='CStore_GetLocalizedNameForTags_Response.Tag.english_name', index=1,
-      number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
-      name='name', full_name='CStore_GetLocalizedNameForTags_Response.Tag.name', index=2,
-      number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      name='timestamp_added', full_name='CStore_UserContentDescriptorPreferences.ContentDescriptor.timestamp_added', index=1,
+      number=2, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -238,28 +1597,29 @@ _CSTORE_GETLOCALIZEDNAMEFORTAGS_RESPONSE_TAG = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=427,
-  serialized_end=483,
+  serialized_start=5215,
+  serialized_end=5289,
 )
 
-_CSTORE_GETLOCALIZEDNAMEFORTAGS_RESPONSE = _descriptor.Descriptor(
-  name='CStore_GetLocalizedNameForTags_Response',
-  full_name='CStore_GetLocalizedNameForTags_Response',
+_CSTORE_USERCONTENTDESCRIPTORPREFERENCES = _descriptor.Descriptor(
+  name='CStore_UserContentDescriptorPreferences',
+  full_name='CStore_UserContentDescriptorPreferences',
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
-      name='tags', full_name='CStore_GetLocalizedNameForTags_Response.tags', index=0,
+      name='content_descriptors_to_exclude', full_name='CStore_UserContentDescriptorPreferences.content_descriptors_to_exclude', index=0,
       number=1, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
-  nested_types=[_CSTORE_GETLOCALIZEDNAMEFORTAGS_RESPONSE_TAG, ],
+  nested_types=[_CSTORE_USERCONTENTDESCRIPTORPREFERENCES_CONTENTDESCRIPTOR, ],
   enum_types=[
   ],
   serialized_options=None,
@@ -268,18 +1628,40 @@ _CSTORE_GETLOCALIZEDNAMEFORTAGS_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=324,
-  serialized_end=483,
+  serialized_start=5072,
+  serialized_end=5289,
 )
 
 
-_CSTORE_GETSTOREPREFERENCES_REQUEST = _descriptor.Descriptor(
-  name='CStore_GetStorePreferences_Request',
-  full_name='CStore_GetStorePreferences_Request',
+_CSTORE_GETSTOREPREFERENCES_RESPONSE = _descriptor.Descriptor(
+  name='CStore_GetStorePreferences_Response',
+  full_name='CStore_GetStorePreferences_Response',
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
+    _descriptor.FieldDescriptor(
+      name='preferences', full_name='CStore_GetStorePreferences_Response.preferences', index=0,
+      number=1, type=11, cpp_type=10, label=1,
+      has_default_value=False, default_value=None,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='tag_preferences', full_name='CStore_GetStorePreferences_Response.tag_preferences', index=1,
+      number=2, type=11, cpp_type=10, label=1,
+      has_default_value=False, default_value=None,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='content_descriptor_preferences', full_name='CStore_GetStorePreferences_Response.content_descriptor_preferences', index=2,
+      number=3, type=11, cpp_type=10, label=1,
+      has_default_value=False, default_value=None,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -292,95 +1674,33 @@ _CSTORE_GETSTOREPREFERENCES_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=485,
-  serialized_end=521,
+  serialized_start=5292,
+  serialized_end=5510,
 )
 
 
-_CSTORE_USERPREFERENCES = _descriptor.Descriptor(
-  name='CStore_UserPreferences',
-  full_name='CStore_UserPreferences',
+_CSTORE_GETTRENDINGAPPSAMONGFRIENDS_REQUEST = _descriptor.Descriptor(
+  name='CStore_GetTrendingAppsAmongFriends_Request',
+  full_name='CStore_GetTrendingAppsAmongFriends_Request',
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
-      name='primary_language', full_name='CStore_UserPreferences.primary_language', index=0,
+      name='num_apps', full_name='CStore_GetTrendingAppsAmongFriends_Request.num_apps', index=0,
       number=1, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
-      name='secondary_languages', full_name='CStore_UserPreferences.secondary_languages', index=1,
+      name='num_top_friends', full_name='CStore_GetTrendingAppsAmongFriends_Request.num_top_friends', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='platform_windows', full_name='CStore_UserPreferences.platform_windows', index=2,
-      number=3, type=8, cpp_type=7, label=1,
-      has_default_value=False, default_value=False,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='platform_mac', full_name='CStore_UserPreferences.platform_mac', index=3,
-      number=4, type=8, cpp_type=7, label=1,
-      has_default_value=False, default_value=False,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='platform_linux', full_name='CStore_UserPreferences.platform_linux', index=4,
-      number=5, type=8, cpp_type=7, label=1,
-      has_default_value=False, default_value=False,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='hide_adult_content_violence', full_name='CStore_UserPreferences.hide_adult_content_violence', index=5,
-      number=6, type=8, cpp_type=7, label=1,
-      has_default_value=False, default_value=False,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='hide_adult_content_sex', full_name='CStore_UserPreferences.hide_adult_content_sex', index=6,
-      number=7, type=8, cpp_type=7, label=1,
-      has_default_value=False, default_value=False,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='timestamp_updated', full_name='CStore_UserPreferences.timestamp_updated', index=7,
-      number=8, type=13, cpp_type=3, label=1,
-      has_default_value=False, default_value=0,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='hide_store_broadcast', full_name='CStore_UserPreferences.hide_store_broadcast', index=8,
-      number=9, type=8, cpp_type=7, label=1,
-      has_default_value=False, default_value=False,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='review_score_preference', full_name='CStore_UserPreferences.review_score_preference', index=9,
-      number=10, type=14, cpp_type=8, label=1,
-      has_default_value=True, default_value=0,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='timestamp_content_descriptor_preferences_updated', full_name='CStore_UserPreferences.timestamp_content_descriptor_preferences_updated', index=10,
-      number=11, type=5, cpp_type=1, label=1,
-      has_default_value=False, default_value=0,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -393,39 +1713,40 @@ _CSTORE_USERPREFERENCES = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=524,
-  serialized_end=957,
+  serialized_start=5512,
+  serialized_end=5599,
 )
 
 
-_CSTORE_USERTAGPREFERENCES_TAG = _descriptor.Descriptor(
-  name='Tag',
-  full_name='CStore_UserTagPreferences.Tag',
+_CSTORE_GETTRENDINGAPPSAMONGFRIENDS_RESPONSE_TRENDINGAPPDATA = _descriptor.Descriptor(
+  name='TrendingAppData',
+  full_name='CStore_GetTrendingAppsAmongFriends_Response.TrendingAppData',
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
-      name='tagid', full_name='CStore_UserTagPreferences.Tag.tagid', index=0,
+      name='appid', full_name='CStore_GetTrendingAppsAmongFriends_Response.TrendingAppData.appid', index=0,
       number=1, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
-      name='name', full_name='CStore_UserTagPreferences.Tag.name', index=1,
-      number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      name='steamids_top_friends', full_name='CStore_GetTrendingAppsAmongFriends_Response.TrendingAppData.steamids_top_friends', index=1,
+      number=2, type=4, cpp_type=4, label=3,
+      has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
-      name='timestamp_added', full_name='CStore_UserTagPreferences.Tag.timestamp_added', index=2,
+      name='total_friends', full_name='CStore_GetTrendingAppsAmongFriends_Response.TrendingAppData.total_friends', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -438,28 +1759,29 @@ _CSTORE_USERTAGPREFERENCES_TAG = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1046,
-  serialized_end=1105,
+  serialized_start=5734,
+  serialized_end=5819,
 )
 
-_CSTORE_USERTAGPREFERENCES = _descriptor.Descriptor(
-  name='CStore_UserTagPreferences',
-  full_name='CStore_UserTagPreferences',
+_CSTORE_GETTRENDINGAPPSAMONGFRIENDS_RESPONSE = _descriptor.Descriptor(
+  name='CStore_GetTrendingAppsAmongFriends_Response',
+  full_name='CStore_GetTrendingAppsAmongFriends_Response',
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
-      name='tags_to_exclude', full_name='CStore_UserTagPreferences.tags_to_exclude', index=0,
+      name='trending_apps', full_name='CStore_GetTrendingAppsAmongFriends_Response.trending_apps', index=0,
       number=1, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
-  nested_types=[_CSTORE_USERTAGPREFERENCES_TAG, ],
+  nested_types=[_CSTORE_GETTRENDINGAPPSAMONGFRIENDS_RESPONSE_TRENDINGAPPDATA, ],
   enum_types=[
   ],
   serialized_options=None,
@@ -468,32 +1790,33 @@ _CSTORE_USERTAGPREFERENCES = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=960,
-  serialized_end=1105,
+  serialized_start=5602,
+  serialized_end=5819,
 )
 
 
-_CSTORE_USERCONTENTDESCRIPTORPREFERENCES_CONTENTDESCRIPTOR = _descriptor.Descriptor(
-  name='ContentDescriptor',
-  full_name='CStore_UserContentDescriptorPreferences.ContentDescriptor',
+_CSTEAMDECKCOMPATIBILITY_SETFEEDBACK_REQUEST = _descriptor.Descriptor(
+  name='CSteamDeckCompatibility_SetFeedback_Request',
+  full_name='CSteamDeckCompatibility_SetFeedback_Request',
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
-      name='content_descriptorid', full_name='CStore_UserContentDescriptorPreferences.ContentDescriptor.content_descriptorid', index=0,
+      name='appid', full_name='CSteamDeckCompatibility_SetFeedback_Request.appid', index=0,
       number=1, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
-      name='timestamp_added', full_name='CStore_UserContentDescriptorPreferences.ContentDescriptor.timestamp_added', index=1,
-      number=2, type=13, cpp_type=3, label=1,
-      has_default_value=False, default_value=0,
+      name='feedback', full_name='CSteamDeckCompatibility_SetFeedback_Request.feedback', index=1,
+      number=2, type=14, cpp_type=8, label=1,
+      has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -506,28 +1829,55 @@ _CSTORE_USERCONTENTDESCRIPTORPREFERENCES_CONTENTDESCRIPTOR = _descriptor.Descrip
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1251,
-  serialized_end=1325,
+  serialized_start=5822,
+  serialized_end=5975,
 )
 
-_CSTORE_USERCONTENTDESCRIPTORPREFERENCES = _descriptor.Descriptor(
-  name='CStore_UserContentDescriptorPreferences',
-  full_name='CStore_UserContentDescriptorPreferences',
+
+_CSTEAMDECKCOMPATIBILITY_SETFEEDBACK_RESPONSE = _descriptor.Descriptor(
+  name='CSteamDeckCompatibility_SetFeedback_Response',
+  full_name='CSteamDeckCompatibility_SetFeedback_Response',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=5977,
+  serialized_end=6023,
+)
+
+
+_CSTEAMDECKCOMPATIBILITY_SHOULDPROMPT_REQUEST = _descriptor.Descriptor(
+  name='CSteamDeckCompatibility_ShouldPrompt_Request',
+  full_name='CSteamDeckCompatibility_ShouldPrompt_Request',
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
-      name='content_descriptors_to_exclude', full_name='CStore_UserContentDescriptorPreferences.content_descriptors_to_exclude', index=0,
-      number=1, type=11, cpp_type=10, label=3,
-      has_default_value=False, default_value=[],
+      name='appid', full_name='CSteamDeckCompatibility_ShouldPrompt_Request.appid', index=0,
+      number=1, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
-  nested_types=[_CSTORE_USERCONTENTDESCRIPTORPREFERENCES_CONTENTDESCRIPTOR, ],
+  nested_types=[],
   enum_types=[
   ],
   serialized_options=None,
@@ -536,39 +1886,40 @@ _CSTORE_USERCONTENTDESCRIPTORPREFERENCES = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1108,
-  serialized_end=1325,
+  serialized_start=6025,
+  serialized_end=6086,
 )
 
 
-_CSTORE_GETSTOREPREFERENCES_RESPONSE = _descriptor.Descriptor(
-  name='CStore_GetStorePreferences_Response',
-  full_name='CStore_GetStorePreferences_Response',
+_CSTEAMDECKCOMPATIBILITY_SHOULDPROMPT_RESPONSE = _descriptor.Descriptor(
+  name='CSteamDeckCompatibility_ShouldPrompt_Response',
+  full_name='CSteamDeckCompatibility_ShouldPrompt_Response',
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
-      name='preferences', full_name='CStore_GetStorePreferences_Response.preferences', index=0,
-      number=1, type=11, cpp_type=10, label=1,
-      has_default_value=False, default_value=None,
+      name='prompt', full_name='CSteamDeckCompatibility_ShouldPrompt_Response.prompt', index=0,
+      number=1, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
-      name='tag_preferences', full_name='CStore_GetStorePreferences_Response.tag_preferences', index=1,
-      number=2, type=11, cpp_type=10, label=1,
-      has_default_value=False, default_value=None,
+      name='feedback_eligible', full_name='CSteamDeckCompatibility_ShouldPrompt_Response.feedback_eligible', index=1,
+      number=2, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
-      name='content_descriptor_preferences', full_name='CStore_GetStorePreferences_Response.content_descriptor_preferences', index=2,
-      number=3, type=11, cpp_type=10, label=1,
-      has_default_value=False, default_value=None,
+      name='existing_feedback', full_name='CSteamDeckCompatibility_ShouldPrompt_Response.existing_feedback', index=2,
+      number=3, type=14, cpp_type=8, label=1,
+      has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -581,8 +1932,8 @@ _CSTORE_GETSTOREPREFERENCES_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1328,
-  serialized_end=1546,
+  serialized_start=6089,
+  serialized_end=6281,
 )
 
 
@@ -592,6 +1943,7 @@ _CSTORE_STOREPREFERENCESCHANGED_NOTIFICATION = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='preferences', full_name='CStore_StorePreferencesChanged_Notification.preferences', index=0,
@@ -599,21 +1951,21 @@ _CSTORE_STOREPREFERENCESCHANGED_NOTIFICATION = _descriptor.Descriptor(
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='tag_preferences', full_name='CStore_StorePreferencesChanged_Notification.tag_preferences', index=1,
       number=2, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='content_descriptor_preferences', full_name='CStore_StorePreferencesChanged_Notification.content_descriptor_preferences', index=2,
       number=3, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -626,15 +1978,31 @@ _CSTORE_STOREPREFERENCESCHANGED_NOTIFICATION = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1549,
-  serialized_end=1775,
+  serialized_start=6284,
+  serialized_end=6510,
 )
 
+_CSTORE_PURCHASERECEIPTINFO_LINEITEM.containing_type = _CSTORE_PURCHASERECEIPTINFO
+_CSTORE_PURCHASERECEIPTINFO.fields_by_name['line_items'].message_type = _CSTORE_PURCHASERECEIPTINFO_LINEITEM
+_CSTORE_REGISTERCDKEY_RESPONSE.fields_by_name['purchase_receipt_info'].message_type = _CSTORE_PURCHASERECEIPTINFO
 _CSTORE_GETMOSTPOPULARTAGS_RESPONSE_TAG.containing_type = _CSTORE_GETMOSTPOPULARTAGS_RESPONSE
 _CSTORE_GETMOSTPOPULARTAGS_RESPONSE.fields_by_name['tags'].message_type = _CSTORE_GETMOSTPOPULARTAGS_RESPONSE_TAG
 _CSTORE_GETLOCALIZEDNAMEFORTAGS_RESPONSE_TAG.containing_type = _CSTORE_GETLOCALIZEDNAMEFORTAGS_RESPONSE
 _CSTORE_GETLOCALIZEDNAMEFORTAGS_RESPONSE.fields_by_name['tags'].message_type = _CSTORE_GETLOCALIZEDNAMEFORTAGS_RESPONSE_TAG
+_CSTORE_GETDISCOVERYQUEUE_REQUEST.fields_by_name['queue_type'].enum_type = _ESTOREDISCOVERYQUEUETYPE
+_CSTORE_GETDISCOVERYQUEUE_REQUEST.fields_by_name['settings'].message_type = _CSTOREDISCOVERYQUEUESETTINGS
+_CSTORE_GETDISCOVERYQUEUE_RESPONSE.fields_by_name['settings'].message_type = _CSTOREDISCOVERYQUEUESETTINGS
+_CSTORE_GETDISCOVERYQUEUESETTINGS_REQUEST.fields_by_name['queue_type'].enum_type = _ESTOREDISCOVERYQUEUETYPE
+_CSTORE_GETDISCOVERYQUEUESETTINGS_RESPONSE.fields_by_name['settings'].message_type = _CSTOREDISCOVERYQUEUESETTINGS
+_CSTORE_SKIPDISCOVERYQUEUEITEM_REQUEST.fields_by_name['queue_type'].enum_type = _ESTOREDISCOVERYQUEUETYPE
+_CSTORE_GETUSERGAMEINTERESTSTATE_RESPONSE_INQUEUE.fields_by_name['type'].enum_type = _ESTOREDISCOVERYQUEUETYPE
+_CSTORE_GETUSERGAMEINTERESTSTATE_RESPONSE_INQUEUE.containing_type = _CSTORE_GETUSERGAMEINTERESTSTATE_RESPONSE
+_CSTORE_GETUSERGAMEINTERESTSTATE_RESPONSE.fields_by_name['in_queues'].enum_type = _ESTOREDISCOVERYQUEUETYPE
+_CSTORE_GETUSERGAMEINTERESTSTATE_RESPONSE.fields_by_name['queues_with_skip'].enum_type = _ESTOREDISCOVERYQUEUETYPE
+_CSTORE_GETUSERGAMEINTERESTSTATE_RESPONSE.fields_by_name['queues'].message_type = _CSTORE_GETUSERGAMEINTERESTSTATE_RESPONSE_INQUEUE
+_CSTORE_GETUSERGAMEINTERESTSTATE_RESPONSE.fields_by_name['beta_status'].enum_type = _EPLAYTESTSTATUS
 _CSTORE_USERPREFERENCES.fields_by_name['review_score_preference'].enum_type = _EUSERREVIEWSCOREPREFERENCE
+_CSTORE_USERPREFERENCES.fields_by_name['provide_deck_feedback'].enum_type = enums__pb2._EPROVIDEDECKFEEDBACKPREFERENCE
 _CSTORE_USERTAGPREFERENCES_TAG.containing_type = _CSTORE_USERTAGPREFERENCES
 _CSTORE_USERTAGPREFERENCES.fields_by_name['tags_to_exclude'].message_type = _CSTORE_USERTAGPREFERENCES_TAG
 _CSTORE_USERCONTENTDESCRIPTORPREFERENCES_CONTENTDESCRIPTOR.containing_type = _CSTORE_USERCONTENTDESCRIPTORPREFERENCES
@@ -642,162 +2010,434 @@ _CSTORE_USERCONTENTDESCRIPTORPREFERENCES.fields_by_name['content_descriptors_to_
 _CSTORE_GETSTOREPREFERENCES_RESPONSE.fields_by_name['preferences'].message_type = _CSTORE_USERPREFERENCES
 _CSTORE_GETSTOREPREFERENCES_RESPONSE.fields_by_name['tag_preferences'].message_type = _CSTORE_USERTAGPREFERENCES
 _CSTORE_GETSTOREPREFERENCES_RESPONSE.fields_by_name['content_descriptor_preferences'].message_type = _CSTORE_USERCONTENTDESCRIPTORPREFERENCES
+_CSTORE_GETTRENDINGAPPSAMONGFRIENDS_RESPONSE_TRENDINGAPPDATA.containing_type = _CSTORE_GETTRENDINGAPPSAMONGFRIENDS_RESPONSE
+_CSTORE_GETTRENDINGAPPSAMONGFRIENDS_RESPONSE.fields_by_name['trending_apps'].message_type = _CSTORE_GETTRENDINGAPPSAMONGFRIENDS_RESPONSE_TRENDINGAPPDATA
+_CSTEAMDECKCOMPATIBILITY_SETFEEDBACK_REQUEST.fields_by_name['feedback'].enum_type = enums__pb2._ESTEAMDECKCOMPATIBILITYFEEDBACK
+_CSTEAMDECKCOMPATIBILITY_SHOULDPROMPT_RESPONSE.fields_by_name['existing_feedback'].enum_type = enums__pb2._ESTEAMDECKCOMPATIBILITYFEEDBACK
 _CSTORE_STOREPREFERENCESCHANGED_NOTIFICATION.fields_by_name['preferences'].message_type = _CSTORE_USERPREFERENCES
 _CSTORE_STOREPREFERENCESCHANGED_NOTIFICATION.fields_by_name['tag_preferences'].message_type = _CSTORE_USERTAGPREFERENCES
 _CSTORE_STOREPREFERENCESCHANGED_NOTIFICATION.fields_by_name['content_descriptor_preferences'].message_type = _CSTORE_USERCONTENTDESCRIPTORPREFERENCES
+DESCRIPTOR.message_types_by_name['CStore_RegisterCDKey_Request'] = _CSTORE_REGISTERCDKEY_REQUEST
+DESCRIPTOR.message_types_by_name['CStore_PurchaseReceiptInfo'] = _CSTORE_PURCHASERECEIPTINFO
+DESCRIPTOR.message_types_by_name['CStore_RegisterCDKey_Response'] = _CSTORE_REGISTERCDKEY_RESPONSE
 DESCRIPTOR.message_types_by_name['CStore_GetMostPopularTags_Request'] = _CSTORE_GETMOSTPOPULARTAGS_REQUEST
 DESCRIPTOR.message_types_by_name['CStore_GetMostPopularTags_Response'] = _CSTORE_GETMOSTPOPULARTAGS_RESPONSE
 DESCRIPTOR.message_types_by_name['CStore_GetLocalizedNameForTags_Request'] = _CSTORE_GETLOCALIZEDNAMEFORTAGS_REQUEST
 DESCRIPTOR.message_types_by_name['CStore_GetLocalizedNameForTags_Response'] = _CSTORE_GETLOCALIZEDNAMEFORTAGS_RESPONSE
+DESCRIPTOR.message_types_by_name['CStoreDiscoveryQueueSettings'] = _CSTOREDISCOVERYQUEUESETTINGS
+DESCRIPTOR.message_types_by_name['CStore_GetDiscoveryQueue_Request'] = _CSTORE_GETDISCOVERYQUEUE_REQUEST
+DESCRIPTOR.message_types_by_name['CStore_GetDiscoveryQueue_Response'] = _CSTORE_GETDISCOVERYQUEUE_RESPONSE
+DESCRIPTOR.message_types_by_name['CStore_GetDiscoveryQueueSettings_Request'] = _CSTORE_GETDISCOVERYQUEUESETTINGS_REQUEST
+DESCRIPTOR.message_types_by_name['CStore_GetDiscoveryQueueSettings_Response'] = _CSTORE_GETDISCOVERYQUEUESETTINGS_RESPONSE
+DESCRIPTOR.message_types_by_name['CStore_SkipDiscoveryQueueItem_Request'] = _CSTORE_SKIPDISCOVERYQUEUEITEM_REQUEST
+DESCRIPTOR.message_types_by_name['CStore_SkipDiscoveryQueueItem_Response'] = _CSTORE_SKIPDISCOVERYQUEUEITEM_RESPONSE
+DESCRIPTOR.message_types_by_name['CStore_GetUserGameInterestState_Request'] = _CSTORE_GETUSERGAMEINTERESTSTATE_REQUEST
+DESCRIPTOR.message_types_by_name['CStore_GetUserGameInterestState_Response'] = _CSTORE_GETUSERGAMEINTERESTSTATE_RESPONSE
 DESCRIPTOR.message_types_by_name['CStore_GetStorePreferences_Request'] = _CSTORE_GETSTOREPREFERENCES_REQUEST
 DESCRIPTOR.message_types_by_name['CStore_UserPreferences'] = _CSTORE_USERPREFERENCES
 DESCRIPTOR.message_types_by_name['CStore_UserTagPreferences'] = _CSTORE_USERTAGPREFERENCES
 DESCRIPTOR.message_types_by_name['CStore_UserContentDescriptorPreferences'] = _CSTORE_USERCONTENTDESCRIPTORPREFERENCES
 DESCRIPTOR.message_types_by_name['CStore_GetStorePreferences_Response'] = _CSTORE_GETSTOREPREFERENCES_RESPONSE
+DESCRIPTOR.message_types_by_name['CStore_GetTrendingAppsAmongFriends_Request'] = _CSTORE_GETTRENDINGAPPSAMONGFRIENDS_REQUEST
+DESCRIPTOR.message_types_by_name['CStore_GetTrendingAppsAmongFriends_Response'] = _CSTORE_GETTRENDINGAPPSAMONGFRIENDS_RESPONSE
+DESCRIPTOR.message_types_by_name['CSteamDeckCompatibility_SetFeedback_Request'] = _CSTEAMDECKCOMPATIBILITY_SETFEEDBACK_REQUEST
+DESCRIPTOR.message_types_by_name['CSteamDeckCompatibility_SetFeedback_Response'] = _CSTEAMDECKCOMPATIBILITY_SETFEEDBACK_RESPONSE
+DESCRIPTOR.message_types_by_name['CSteamDeckCompatibility_ShouldPrompt_Request'] = _CSTEAMDECKCOMPATIBILITY_SHOULDPROMPT_REQUEST
+DESCRIPTOR.message_types_by_name['CSteamDeckCompatibility_ShouldPrompt_Response'] = _CSTEAMDECKCOMPATIBILITY_SHOULDPROMPT_RESPONSE
 DESCRIPTOR.message_types_by_name['CStore_StorePreferencesChanged_Notification'] = _CSTORE_STOREPREFERENCESCHANGED_NOTIFICATION
+DESCRIPTOR.enum_types_by_name['EStoreDiscoveryQueueType'] = _ESTOREDISCOVERYQUEUETYPE
+DESCRIPTOR.enum_types_by_name['EPlaytestStatus'] = _EPLAYTESTSTATUS
 DESCRIPTOR.enum_types_by_name['EUserReviewScorePreference'] = _EUSERREVIEWSCOREPREFERENCE
 _sym_db.RegisterFileDescriptor(DESCRIPTOR)
 
-CStore_GetMostPopularTags_Request = _reflection.GeneratedProtocolMessageType('CStore_GetMostPopularTags_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CSTORE_GETMOSTPOPULARTAGS_REQUEST,
-  __module__ = 'steammessages_store_pb2'
+CStore_RegisterCDKey_Request = _reflection.GeneratedProtocolMessageType('CStore_RegisterCDKey_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CSTORE_REGISTERCDKEY_REQUEST,
+  '__module__' : 'steammessages_store_pb2'
+  # @@protoc_insertion_point(class_scope:CStore_RegisterCDKey_Request)
+  })
+_sym_db.RegisterMessage(CStore_RegisterCDKey_Request)
+
+CStore_PurchaseReceiptInfo = _reflection.GeneratedProtocolMessageType('CStore_PurchaseReceiptInfo', (_message.Message,), {
+
+  'LineItem' : _reflection.GeneratedProtocolMessageType('LineItem', (_message.Message,), {
+    'DESCRIPTOR' : _CSTORE_PURCHASERECEIPTINFO_LINEITEM,
+    '__module__' : 'steammessages_store_pb2'
+    # @@protoc_insertion_point(class_scope:CStore_PurchaseReceiptInfo.LineItem)
+    })
+  ,
+  'DESCRIPTOR' : _CSTORE_PURCHASERECEIPTINFO,
+  '__module__' : 'steammessages_store_pb2'
+  # @@protoc_insertion_point(class_scope:CStore_PurchaseReceiptInfo)
+  })
+_sym_db.RegisterMessage(CStore_PurchaseReceiptInfo)
+_sym_db.RegisterMessage(CStore_PurchaseReceiptInfo.LineItem)
+
+CStore_RegisterCDKey_Response = _reflection.GeneratedProtocolMessageType('CStore_RegisterCDKey_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CSTORE_REGISTERCDKEY_RESPONSE,
+  '__module__' : 'steammessages_store_pb2'
+  # @@protoc_insertion_point(class_scope:CStore_RegisterCDKey_Response)
+  })
+_sym_db.RegisterMessage(CStore_RegisterCDKey_Response)
+
+CStore_GetMostPopularTags_Request = _reflection.GeneratedProtocolMessageType('CStore_GetMostPopularTags_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CSTORE_GETMOSTPOPULARTAGS_REQUEST,
+  '__module__' : 'steammessages_store_pb2'
   # @@protoc_insertion_point(class_scope:CStore_GetMostPopularTags_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CStore_GetMostPopularTags_Request)
 
-CStore_GetMostPopularTags_Response = _reflection.GeneratedProtocolMessageType('CStore_GetMostPopularTags_Response', (_message.Message,), dict(
+CStore_GetMostPopularTags_Response = _reflection.GeneratedProtocolMessageType('CStore_GetMostPopularTags_Response', (_message.Message,), {
 
-  Tag = _reflection.GeneratedProtocolMessageType('Tag', (_message.Message,), dict(
-    DESCRIPTOR = _CSTORE_GETMOSTPOPULARTAGS_RESPONSE_TAG,
-    __module__ = 'steammessages_store_pb2'
+  'Tag' : _reflection.GeneratedProtocolMessageType('Tag', (_message.Message,), {
+    'DESCRIPTOR' : _CSTORE_GETMOSTPOPULARTAGS_RESPONSE_TAG,
+    '__module__' : 'steammessages_store_pb2'
     # @@protoc_insertion_point(class_scope:CStore_GetMostPopularTags_Response.Tag)
-    ))
+    })
   ,
-  DESCRIPTOR = _CSTORE_GETMOSTPOPULARTAGS_RESPONSE,
-  __module__ = 'steammessages_store_pb2'
+  'DESCRIPTOR' : _CSTORE_GETMOSTPOPULARTAGS_RESPONSE,
+  '__module__' : 'steammessages_store_pb2'
   # @@protoc_insertion_point(class_scope:CStore_GetMostPopularTags_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CStore_GetMostPopularTags_Response)
 _sym_db.RegisterMessage(CStore_GetMostPopularTags_Response.Tag)
 
-CStore_GetLocalizedNameForTags_Request = _reflection.GeneratedProtocolMessageType('CStore_GetLocalizedNameForTags_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CSTORE_GETLOCALIZEDNAMEFORTAGS_REQUEST,
-  __module__ = 'steammessages_store_pb2'
+CStore_GetLocalizedNameForTags_Request = _reflection.GeneratedProtocolMessageType('CStore_GetLocalizedNameForTags_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CSTORE_GETLOCALIZEDNAMEFORTAGS_REQUEST,
+  '__module__' : 'steammessages_store_pb2'
   # @@protoc_insertion_point(class_scope:CStore_GetLocalizedNameForTags_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CStore_GetLocalizedNameForTags_Request)
 
-CStore_GetLocalizedNameForTags_Response = _reflection.GeneratedProtocolMessageType('CStore_GetLocalizedNameForTags_Response', (_message.Message,), dict(
+CStore_GetLocalizedNameForTags_Response = _reflection.GeneratedProtocolMessageType('CStore_GetLocalizedNameForTags_Response', (_message.Message,), {
 
-  Tag = _reflection.GeneratedProtocolMessageType('Tag', (_message.Message,), dict(
-    DESCRIPTOR = _CSTORE_GETLOCALIZEDNAMEFORTAGS_RESPONSE_TAG,
-    __module__ = 'steammessages_store_pb2'
+  'Tag' : _reflection.GeneratedProtocolMessageType('Tag', (_message.Message,), {
+    'DESCRIPTOR' : _CSTORE_GETLOCALIZEDNAMEFORTAGS_RESPONSE_TAG,
+    '__module__' : 'steammessages_store_pb2'
     # @@protoc_insertion_point(class_scope:CStore_GetLocalizedNameForTags_Response.Tag)
-    ))
+    })
   ,
-  DESCRIPTOR = _CSTORE_GETLOCALIZEDNAMEFORTAGS_RESPONSE,
-  __module__ = 'steammessages_store_pb2'
+  'DESCRIPTOR' : _CSTORE_GETLOCALIZEDNAMEFORTAGS_RESPONSE,
+  '__module__' : 'steammessages_store_pb2'
   # @@protoc_insertion_point(class_scope:CStore_GetLocalizedNameForTags_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CStore_GetLocalizedNameForTags_Response)
 _sym_db.RegisterMessage(CStore_GetLocalizedNameForTags_Response.Tag)
 
-CStore_GetStorePreferences_Request = _reflection.GeneratedProtocolMessageType('CStore_GetStorePreferences_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CSTORE_GETSTOREPREFERENCES_REQUEST,
-  __module__ = 'steammessages_store_pb2'
+CStoreDiscoveryQueueSettings = _reflection.GeneratedProtocolMessageType('CStoreDiscoveryQueueSettings', (_message.Message,), {
+  'DESCRIPTOR' : _CSTOREDISCOVERYQUEUESETTINGS,
+  '__module__' : 'steammessages_store_pb2'
+  # @@protoc_insertion_point(class_scope:CStoreDiscoveryQueueSettings)
+  })
+_sym_db.RegisterMessage(CStoreDiscoveryQueueSettings)
+
+CStore_GetDiscoveryQueue_Request = _reflection.GeneratedProtocolMessageType('CStore_GetDiscoveryQueue_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CSTORE_GETDISCOVERYQUEUE_REQUEST,
+  '__module__' : 'steammessages_store_pb2'
+  # @@protoc_insertion_point(class_scope:CStore_GetDiscoveryQueue_Request)
+  })
+_sym_db.RegisterMessage(CStore_GetDiscoveryQueue_Request)
+
+CStore_GetDiscoveryQueue_Response = _reflection.GeneratedProtocolMessageType('CStore_GetDiscoveryQueue_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CSTORE_GETDISCOVERYQUEUE_RESPONSE,
+  '__module__' : 'steammessages_store_pb2'
+  # @@protoc_insertion_point(class_scope:CStore_GetDiscoveryQueue_Response)
+  })
+_sym_db.RegisterMessage(CStore_GetDiscoveryQueue_Response)
+
+CStore_GetDiscoveryQueueSettings_Request = _reflection.GeneratedProtocolMessageType('CStore_GetDiscoveryQueueSettings_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CSTORE_GETDISCOVERYQUEUESETTINGS_REQUEST,
+  '__module__' : 'steammessages_store_pb2'
+  # @@protoc_insertion_point(class_scope:CStore_GetDiscoveryQueueSettings_Request)
+  })
+_sym_db.RegisterMessage(CStore_GetDiscoveryQueueSettings_Request)
+
+CStore_GetDiscoveryQueueSettings_Response = _reflection.GeneratedProtocolMessageType('CStore_GetDiscoveryQueueSettings_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CSTORE_GETDISCOVERYQUEUESETTINGS_RESPONSE,
+  '__module__' : 'steammessages_store_pb2'
+  # @@protoc_insertion_point(class_scope:CStore_GetDiscoveryQueueSettings_Response)
+  })
+_sym_db.RegisterMessage(CStore_GetDiscoveryQueueSettings_Response)
+
+CStore_SkipDiscoveryQueueItem_Request = _reflection.GeneratedProtocolMessageType('CStore_SkipDiscoveryQueueItem_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CSTORE_SKIPDISCOVERYQUEUEITEM_REQUEST,
+  '__module__' : 'steammessages_store_pb2'
+  # @@protoc_insertion_point(class_scope:CStore_SkipDiscoveryQueueItem_Request)
+  })
+_sym_db.RegisterMessage(CStore_SkipDiscoveryQueueItem_Request)
+
+CStore_SkipDiscoveryQueueItem_Response = _reflection.GeneratedProtocolMessageType('CStore_SkipDiscoveryQueueItem_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CSTORE_SKIPDISCOVERYQUEUEITEM_RESPONSE,
+  '__module__' : 'steammessages_store_pb2'
+  # @@protoc_insertion_point(class_scope:CStore_SkipDiscoveryQueueItem_Response)
+  })
+_sym_db.RegisterMessage(CStore_SkipDiscoveryQueueItem_Response)
+
+CStore_GetUserGameInterestState_Request = _reflection.GeneratedProtocolMessageType('CStore_GetUserGameInterestState_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CSTORE_GETUSERGAMEINTERESTSTATE_REQUEST,
+  '__module__' : 'steammessages_store_pb2'
+  # @@protoc_insertion_point(class_scope:CStore_GetUserGameInterestState_Request)
+  })
+_sym_db.RegisterMessage(CStore_GetUserGameInterestState_Request)
+
+CStore_GetUserGameInterestState_Response = _reflection.GeneratedProtocolMessageType('CStore_GetUserGameInterestState_Response', (_message.Message,), {
+
+  'InQueue' : _reflection.GeneratedProtocolMessageType('InQueue', (_message.Message,), {
+    'DESCRIPTOR' : _CSTORE_GETUSERGAMEINTERESTSTATE_RESPONSE_INQUEUE,
+    '__module__' : 'steammessages_store_pb2'
+    # @@protoc_insertion_point(class_scope:CStore_GetUserGameInterestState_Response.InQueue)
+    })
+  ,
+  'DESCRIPTOR' : _CSTORE_GETUSERGAMEINTERESTSTATE_RESPONSE,
+  '__module__' : 'steammessages_store_pb2'
+  # @@protoc_insertion_point(class_scope:CStore_GetUserGameInterestState_Response)
+  })
+_sym_db.RegisterMessage(CStore_GetUserGameInterestState_Response)
+_sym_db.RegisterMessage(CStore_GetUserGameInterestState_Response.InQueue)
+
+CStore_GetStorePreferences_Request = _reflection.GeneratedProtocolMessageType('CStore_GetStorePreferences_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CSTORE_GETSTOREPREFERENCES_REQUEST,
+  '__module__' : 'steammessages_store_pb2'
   # @@protoc_insertion_point(class_scope:CStore_GetStorePreferences_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CStore_GetStorePreferences_Request)
 
-CStore_UserPreferences = _reflection.GeneratedProtocolMessageType('CStore_UserPreferences', (_message.Message,), dict(
-  DESCRIPTOR = _CSTORE_USERPREFERENCES,
-  __module__ = 'steammessages_store_pb2'
+CStore_UserPreferences = _reflection.GeneratedProtocolMessageType('CStore_UserPreferences', (_message.Message,), {
+  'DESCRIPTOR' : _CSTORE_USERPREFERENCES,
+  '__module__' : 'steammessages_store_pb2'
   # @@protoc_insertion_point(class_scope:CStore_UserPreferences)
-  ))
+  })
 _sym_db.RegisterMessage(CStore_UserPreferences)
 
-CStore_UserTagPreferences = _reflection.GeneratedProtocolMessageType('CStore_UserTagPreferences', (_message.Message,), dict(
+CStore_UserTagPreferences = _reflection.GeneratedProtocolMessageType('CStore_UserTagPreferences', (_message.Message,), {
 
-  Tag = _reflection.GeneratedProtocolMessageType('Tag', (_message.Message,), dict(
-    DESCRIPTOR = _CSTORE_USERTAGPREFERENCES_TAG,
-    __module__ = 'steammessages_store_pb2'
+  'Tag' : _reflection.GeneratedProtocolMessageType('Tag', (_message.Message,), {
+    'DESCRIPTOR' : _CSTORE_USERTAGPREFERENCES_TAG,
+    '__module__' : 'steammessages_store_pb2'
     # @@protoc_insertion_point(class_scope:CStore_UserTagPreferences.Tag)
-    ))
+    })
   ,
-  DESCRIPTOR = _CSTORE_USERTAGPREFERENCES,
-  __module__ = 'steammessages_store_pb2'
+  'DESCRIPTOR' : _CSTORE_USERTAGPREFERENCES,
+  '__module__' : 'steammessages_store_pb2'
   # @@protoc_insertion_point(class_scope:CStore_UserTagPreferences)
-  ))
+  })
 _sym_db.RegisterMessage(CStore_UserTagPreferences)
 _sym_db.RegisterMessage(CStore_UserTagPreferences.Tag)
 
-CStore_UserContentDescriptorPreferences = _reflection.GeneratedProtocolMessageType('CStore_UserContentDescriptorPreferences', (_message.Message,), dict(
+CStore_UserContentDescriptorPreferences = _reflection.GeneratedProtocolMessageType('CStore_UserContentDescriptorPreferences', (_message.Message,), {
 
-  ContentDescriptor = _reflection.GeneratedProtocolMessageType('ContentDescriptor', (_message.Message,), dict(
-    DESCRIPTOR = _CSTORE_USERCONTENTDESCRIPTORPREFERENCES_CONTENTDESCRIPTOR,
-    __module__ = 'steammessages_store_pb2'
+  'ContentDescriptor' : _reflection.GeneratedProtocolMessageType('ContentDescriptor', (_message.Message,), {
+    'DESCRIPTOR' : _CSTORE_USERCONTENTDESCRIPTORPREFERENCES_CONTENTDESCRIPTOR,
+    '__module__' : 'steammessages_store_pb2'
     # @@protoc_insertion_point(class_scope:CStore_UserContentDescriptorPreferences.ContentDescriptor)
-    ))
+    })
   ,
-  DESCRIPTOR = _CSTORE_USERCONTENTDESCRIPTORPREFERENCES,
-  __module__ = 'steammessages_store_pb2'
+  'DESCRIPTOR' : _CSTORE_USERCONTENTDESCRIPTORPREFERENCES,
+  '__module__' : 'steammessages_store_pb2'
   # @@protoc_insertion_point(class_scope:CStore_UserContentDescriptorPreferences)
-  ))
+  })
 _sym_db.RegisterMessage(CStore_UserContentDescriptorPreferences)
 _sym_db.RegisterMessage(CStore_UserContentDescriptorPreferences.ContentDescriptor)
 
-CStore_GetStorePreferences_Response = _reflection.GeneratedProtocolMessageType('CStore_GetStorePreferences_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CSTORE_GETSTOREPREFERENCES_RESPONSE,
-  __module__ = 'steammessages_store_pb2'
+CStore_GetStorePreferences_Response = _reflection.GeneratedProtocolMessageType('CStore_GetStorePreferences_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CSTORE_GETSTOREPREFERENCES_RESPONSE,
+  '__module__' : 'steammessages_store_pb2'
   # @@protoc_insertion_point(class_scope:CStore_GetStorePreferences_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CStore_GetStorePreferences_Response)
 
-CStore_StorePreferencesChanged_Notification = _reflection.GeneratedProtocolMessageType('CStore_StorePreferencesChanged_Notification', (_message.Message,), dict(
-  DESCRIPTOR = _CSTORE_STOREPREFERENCESCHANGED_NOTIFICATION,
-  __module__ = 'steammessages_store_pb2'
+CStore_GetTrendingAppsAmongFriends_Request = _reflection.GeneratedProtocolMessageType('CStore_GetTrendingAppsAmongFriends_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CSTORE_GETTRENDINGAPPSAMONGFRIENDS_REQUEST,
+  '__module__' : 'steammessages_store_pb2'
+  # @@protoc_insertion_point(class_scope:CStore_GetTrendingAppsAmongFriends_Request)
+  })
+_sym_db.RegisterMessage(CStore_GetTrendingAppsAmongFriends_Request)
+
+CStore_GetTrendingAppsAmongFriends_Response = _reflection.GeneratedProtocolMessageType('CStore_GetTrendingAppsAmongFriends_Response', (_message.Message,), {
+
+  'TrendingAppData' : _reflection.GeneratedProtocolMessageType('TrendingAppData', (_message.Message,), {
+    'DESCRIPTOR' : _CSTORE_GETTRENDINGAPPSAMONGFRIENDS_RESPONSE_TRENDINGAPPDATA,
+    '__module__' : 'steammessages_store_pb2'
+    # @@protoc_insertion_point(class_scope:CStore_GetTrendingAppsAmongFriends_Response.TrendingAppData)
+    })
+  ,
+  'DESCRIPTOR' : _CSTORE_GETTRENDINGAPPSAMONGFRIENDS_RESPONSE,
+  '__module__' : 'steammessages_store_pb2'
+  # @@protoc_insertion_point(class_scope:CStore_GetTrendingAppsAmongFriends_Response)
+  })
+_sym_db.RegisterMessage(CStore_GetTrendingAppsAmongFriends_Response)
+_sym_db.RegisterMessage(CStore_GetTrendingAppsAmongFriends_Response.TrendingAppData)
+
+CSteamDeckCompatibility_SetFeedback_Request = _reflection.GeneratedProtocolMessageType('CSteamDeckCompatibility_SetFeedback_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CSTEAMDECKCOMPATIBILITY_SETFEEDBACK_REQUEST,
+  '__module__' : 'steammessages_store_pb2'
+  # @@protoc_insertion_point(class_scope:CSteamDeckCompatibility_SetFeedback_Request)
+  })
+_sym_db.RegisterMessage(CSteamDeckCompatibility_SetFeedback_Request)
+
+CSteamDeckCompatibility_SetFeedback_Response = _reflection.GeneratedProtocolMessageType('CSteamDeckCompatibility_SetFeedback_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CSTEAMDECKCOMPATIBILITY_SETFEEDBACK_RESPONSE,
+  '__module__' : 'steammessages_store_pb2'
+  # @@protoc_insertion_point(class_scope:CSteamDeckCompatibility_SetFeedback_Response)
+  })
+_sym_db.RegisterMessage(CSteamDeckCompatibility_SetFeedback_Response)
+
+CSteamDeckCompatibility_ShouldPrompt_Request = _reflection.GeneratedProtocolMessageType('CSteamDeckCompatibility_ShouldPrompt_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CSTEAMDECKCOMPATIBILITY_SHOULDPROMPT_REQUEST,
+  '__module__' : 'steammessages_store_pb2'
+  # @@protoc_insertion_point(class_scope:CSteamDeckCompatibility_ShouldPrompt_Request)
+  })
+_sym_db.RegisterMessage(CSteamDeckCompatibility_ShouldPrompt_Request)
+
+CSteamDeckCompatibility_ShouldPrompt_Response = _reflection.GeneratedProtocolMessageType('CSteamDeckCompatibility_ShouldPrompt_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CSTEAMDECKCOMPATIBILITY_SHOULDPROMPT_RESPONSE,
+  '__module__' : 'steammessages_store_pb2'
+  # @@protoc_insertion_point(class_scope:CSteamDeckCompatibility_ShouldPrompt_Response)
+  })
+_sym_db.RegisterMessage(CSteamDeckCompatibility_ShouldPrompt_Response)
+
+CStore_StorePreferencesChanged_Notification = _reflection.GeneratedProtocolMessageType('CStore_StorePreferencesChanged_Notification', (_message.Message,), {
+  'DESCRIPTOR' : _CSTORE_STOREPREFERENCESCHANGED_NOTIFICATION,
+  '__module__' : 'steammessages_store_pb2'
   # @@protoc_insertion_point(class_scope:CStore_StorePreferencesChanged_Notification)
-  ))
+  })
 _sym_db.RegisterMessage(CStore_StorePreferencesChanged_Notification)
 
 
 DESCRIPTOR._options = None
+_CSTORE_REGISTERCDKEY_REQUEST.fields_by_name['activation_code']._options = None
+_CSTORE_REGISTERCDKEY_REQUEST.fields_by_name['purchase_platform']._options = None
+_CSTORE_REGISTERCDKEY_REQUEST.fields_by_name['is_request_from_client']._options = None
+_CSTORE_REGISTERCDKEY_RESPONSE.fields_by_name['purchase_result_details']._options = None
+_CSTORE_REGISTERCDKEY_RESPONSE.fields_by_name['purchase_receipt_info']._options = None
+_CSTORE_GETLOCALIZEDNAMEFORTAGS_RESPONSE_TAG.fields_by_name['normalized_name']._options = None
+_CSTOREDISCOVERYQUEUESETTINGS.fields_by_name['excluded_tagids']._options = None
+_CSTOREDISCOVERYQUEUESETTINGS.fields_by_name['featured_tagids']._options = None
+_CSTORE_GETUSERGAMEINTERESTSTATE_RESPONSE.fields_by_name['queues_with_skip']._options = None
+_CSTORE_GETUSERGAMEINTERESTSTATE_RESPONSE.fields_by_name['queue_items_remaining']._options = None
+_CSTORE_GETUSERGAMEINTERESTSTATE_RESPONSE.fields_by_name['queue_items_next_appid']._options = None
+_CSTORE_GETUSERGAMEINTERESTSTATE_RESPONSE.fields_by_name['temporarily_owned']._options = None
+_CSTORE_GETUSERGAMEINTERESTSTATE_RESPONSE.fields_by_name['ignored_reason']._options = None
+_CSTORE_GETUSERGAMEINTERESTSTATE_RESPONSE.fields_by_name['beta_status']._options = None
 
 _STORE = _descriptor.ServiceDescriptor(
   name='Store',
   full_name='Store',
   file=DESCRIPTOR,
   index=0,
-  serialized_options=_b('\202\265\030\037A service to access store data.'),
-  serialized_start=1941,
-  serialized_end=2467,
+  serialized_options=b'\202\265\030\037A service to access store data.',
+  create_key=_descriptor._internal_create_key,
+  serialized_start=7490,
+  serialized_end=9478,
   methods=[
+  _descriptor.MethodDescriptor(
+    name='RegisterCDKey',
+    full_name='Store.RegisterCDKey',
+    index=0,
+    containing_service=None,
+    input_type=_CSTORE_REGISTERCDKEY_REQUEST,
+    output_type=_CSTORE_REGISTERCDKEY_RESPONSE,
+    serialized_options=b'\202\265\030=Registers a CD key with Steam on the logged in user\'s account',
+    create_key=_descriptor._internal_create_key,
+  ),
   _descriptor.MethodDescriptor(
     name='GetMostPopularTags',
     full_name='Store.GetMostPopularTags',
-    index=0,
+    index=1,
     containing_service=None,
     input_type=_CSTORE_GETMOSTPOPULARTAGS_REQUEST,
     output_type=_CSTORE_GETMOSTPOPULARTAGS_RESPONSE,
-    serialized_options=_b('\202\265\030/Get all whitelisted tags, with localized names.'),
+    serialized_options=b'\202\265\030/Get all whitelisted tags, with localized names.',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetLocalizedNameForTags',
     full_name='Store.GetLocalizedNameForTags',
-    index=1,
+    index=2,
     containing_service=None,
     input_type=_CSTORE_GETLOCALIZEDNAMEFORTAGS_REQUEST,
     output_type=_CSTORE_GETLOCALIZEDNAMEFORTAGS_RESPONSE,
-    serialized_options=_b('\202\265\030&Gets tag names in a different language'),
+    serialized_options=b'\202\265\030&Gets tag names in a different language',
+    create_key=_descriptor._internal_create_key,
+  ),
+  _descriptor.MethodDescriptor(
+    name='GetDiscoveryQueue',
+    full_name='Store.GetDiscoveryQueue',
+    index=3,
+    containing_service=None,
+    input_type=_CSTORE_GETDISCOVERYQUEUE_REQUEST,
+    output_type=_CSTORE_GETDISCOVERYQUEUE_RESPONSE,
+    serialized_options=b'\202\265\0309Get a list of games for the user to explore on the store.',
+    create_key=_descriptor._internal_create_key,
+  ),
+  _descriptor.MethodDescriptor(
+    name='GetDiscoveryQueueSettings',
+    full_name='Store.GetDiscoveryQueueSettings',
+    index=4,
+    containing_service=None,
+    input_type=_CSTORE_GETDISCOVERYQUEUESETTINGS_REQUEST,
+    output_type=_CSTORE_GETDISCOVERYQUEUESETTINGS_RESPONSE,
+    serialized_options=b'\202\265\030EGet the settings that were used to generate a user\'s discovery queue.',
+    create_key=_descriptor._internal_create_key,
+  ),
+  _descriptor.MethodDescriptor(
+    name='SkipDiscoveryQueueItem',
+    full_name='Store.SkipDiscoveryQueueItem',
+    index=5,
+    containing_service=None,
+    input_type=_CSTORE_SKIPDISCOVERYQUEUEITEM_REQUEST,
+    output_type=_CSTORE_SKIPDISCOVERYQUEUEITEM_RESPONSE,
+    serialized_options=b'\202\265\030!Skip an item in the user\'s queue.',
+    create_key=_descriptor._internal_create_key,
+  ),
+  _descriptor.MethodDescriptor(
+    name='GetUserGameInterestState',
+    full_name='Store.GetUserGameInterestState',
+    index=6,
+    containing_service=None,
+    input_type=_CSTORE_GETUSERGAMEINTERESTSTATE_REQUEST,
+    output_type=_CSTORE_GETUSERGAMEINTERESTSTATE_RESPONSE,
+    serialized_options=b'\202\265\030hGet information about a user\'s relationship to a game - ownership, wishlist, discovery queue state, etc.',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetStorePreferences',
     full_name='Store.GetStorePreferences',
-    index=2,
+    index=7,
     containing_service=None,
     input_type=_CSTORE_GETSTOREPREFERENCES_REQUEST,
     output_type=_CSTORE_GETSTOREPREFERENCES_RESPONSE,
-    serialized_options=_b('\202\265\030IReturns the desired ratings board and maximum rating to show on the store'),
+    serialized_options=b'\202\265\030IReturns the desired ratings board and maximum rating to show on the store',
+    create_key=_descriptor._internal_create_key,
+  ),
+  _descriptor.MethodDescriptor(
+    name='GetTrendingAppsAmongFriends',
+    full_name='Store.GetTrendingAppsAmongFriends',
+    index=8,
+    containing_service=None,
+    input_type=_CSTORE_GETTRENDINGAPPSAMONGFRIENDS_REQUEST,
+    output_type=_CSTORE_GETTRENDINGAPPSAMONGFRIENDS_RESPONSE,
+    serialized_options=b'\202\265\030\037Get trending apps among friends',
+    create_key=_descriptor._internal_create_key,
+  ),
+  _descriptor.MethodDescriptor(
+    name='SetCompatibilityFeedback',
+    full_name='Store.SetCompatibilityFeedback',
+    index=9,
+    containing_service=None,
+    input_type=_CSTEAMDECKCOMPATIBILITY_SETFEEDBACK_REQUEST,
+    output_type=_CSTEAMDECKCOMPATIBILITY_SETFEEDBACK_RESPONSE,
+    serialized_options=b'\202\265\030XUpserts user feedback regarding the published Steam Deck Compatibility rating for a game',
+    create_key=_descriptor._internal_create_key,
+  ),
+  _descriptor.MethodDescriptor(
+    name='ShouldPromptForCompatibilityFeedback',
+    full_name='Store.ShouldPromptForCompatibilityFeedback',
+    index=10,
+    containing_service=None,
+    input_type=_CSTEAMDECKCOMPATIBILITY_SHOULDPROMPT_REQUEST,
+    output_type=_CSTEAMDECKCOMPATIBILITY_SHOULDPROMPT_RESPONSE,
+    serialized_options=b'\202\265\030MReturns whether we should ask the user if the compatibility rating is correct',
+    create_key=_descriptor._internal_create_key,
   ),
 ])
 _sym_db.RegisterServiceDescriptor(_STORE)
@@ -810,9 +2450,10 @@ _STORECLIENT = _descriptor.ServiceDescriptor(
   full_name='StoreClient',
   file=DESCRIPTOR,
   index=1,
-  serialized_options=_b('\202\265\030#Steam store to client notifications\300\265\030\002'),
-  serialized_start=2470,
-  serialized_end=2708,
+  serialized_options=b'\202\265\030#Steam store to client notifications\300\265\030\002',
+  create_key=_descriptor._internal_create_key,
+  serialized_start=9481,
+  serialized_end=9719,
   methods=[
   _descriptor.MethodDescriptor(
     name='NotifyStorePreferencesChanged',
@@ -821,7 +2462,8 @@ _STORECLIENT = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CSTORE_STOREPREFERENCESCHANGED_NOTIFICATION,
     output_type=steammessages__unified__base__pb2._NORESPONSE,
-    serialized_options=_b('\202\265\030QNotification from server to client that the user\'s store preferences have changed'),
+    serialized_options=b'\202\265\030QNotification from server to client that the user\'s store preferences have changed',
+    create_key=_descriptor._internal_create_key,
   ),
 ])
 _sym_db.RegisterServiceDescriptor(_STORECLIENT)
diff --git a/steam/protobufs/steammessages_storebrowse_pb2.py b/steam/protobufs/steammessages_storebrowse_pb2.py
new file mode 100644
index 0000000..6c12848
--- /dev/null
+++ b/steam/protobufs/steammessages_storebrowse_pb2.py
@@ -0,0 +1,2671 @@
+# -*- coding: utf-8 -*-
+# Generated by the protocol buffer compiler.  DO NOT EDIT!
+# source: steammessages_storebrowse.proto
+"""Generated protocol buffer code."""
+from google.protobuf.internal import enum_type_wrapper
+from google.protobuf import descriptor as _descriptor
+from google.protobuf import message as _message
+from google.protobuf import reflection as _reflection
+from google.protobuf import symbol_database as _symbol_database
+from google.protobuf import service as _service
+from google.protobuf import service_reflection
+# @@protoc_insertion_point(imports)
+
+_sym_db = _symbol_database.Default()
+
+
+import steam.protobufs.steammessages_base_pb2 as steammessages__base__pb2
+import steam.protobufs.steammessages_unified_base_pb2 as steammessages__unified__base__pb2
+import steam.protobufs.enums_productinfo_pb2 as enums__productinfo__pb2
+import steam.protobufs.enums_pb2 as enums__pb2
+
+
+DESCRIPTOR = _descriptor.FileDescriptor(
+  name='steammessages_storebrowse.proto',
+  package='',
+  syntax='proto2',
+  serialized_options=b'\220\001\001',
+  create_key=_descriptor._internal_create_key,
+  serialized_pb=b'\n\x1fsteammessages_storebrowse.proto\x1a\x18steammessages_base.proto\x1a steammessages_unified_base.proto\x1a\x17\x65nums_productinfo.proto\x1a\x0b\x65nums.proto\"A\n\x0bStoreItemID\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x11\n\tpackageid\x18\x02 \x01(\r\x12\x10\n\x08\x62undleid\x18\x03 \x01(\r\"\xac\x01\n\x12StoreBrowseContext\x12\x10\n\x08language\x18\x01 \x01(\t\x12 \n\telanguage\x18\x02 \x01(\x05\x42\r\x82\xb5\x18\tELanguage\x12<\n\x0c\x63ountry_code\x18\x03 \x01(\tB&\x82\xb5\x18\"2-character country code; required\x12$\n\x0bsteam_realm\x18\x04 \x01(\x05\x42\x0f\x82\xb5\x18\x0b\x45SteamRealm\"\x8f\x04\n\x1aStoreBrowseItemDataRequest\x12\x16\n\x0einclude_assets\x18\x01 \x01(\x08\x12\x17\n\x0finclude_release\x18\x02 \x01(\x08\x12\x19\n\x11include_platforms\x18\x03 \x01(\x08\x12$\n\x1cinclude_all_purchase_options\x18\x04 \x01(\x08\x12\x1b\n\x13include_screenshots\x18\x05 \x01(\x08\x12\x18\n\x10include_trailers\x18\x06 \x01(\x08\x12\x17\n\x0finclude_ratings\x18\x07 \x01(\x08\x12O\n\x11include_tag_count\x18\x08 \x01(\x05\x42\x34\x82\xb5\x18\x30\x43ount of tags to return, as tagids.  Maximum 20.\x12\x17\n\x0finclude_reviews\x18\t \x01(\x08\x12P\n\x12include_basic_info\x18\n \x01(\x08\x42\x34\x82\xb5\x18\x30Include short description, publisher, developers\x12s\n\x1binclude_supported_languages\x18\x0b \x01(\x08\x42N\x82\xb5\x18Jincludes the games support for languages: supported, full_audio, subtitles\"\x93\x01\n\x1d\x43StoreBrowse_GetItems_Request\x12\x19\n\x03ids\x18\x01 \x03(\x0b\x32\x0c.StoreItemID\x12$\n\x07\x63ontext\x18\x02 \x01(\x0b\x32\x13.StoreBrowseContext\x12\x31\n\x0c\x64\x61ta_request\x18\x03 \x01(\x0b\x32\x1b.StoreBrowseItemDataRequest\"\xf8\x03\n\x0fStoreGameRating\x12%\n\x04type\x18\x01 \x01(\tB\x17\x82\xb5\x18\x13\'esrb\', \'pegi\', ...\x12\x35\n\x06rating\x18\x02 \x01(\tB%\x82\xb5\x18!\'t\' for teen, \'m\' for mature, ...\x12^\n\x0b\x64\x65scriptors\x18\x03 \x03(\tBI\x82\xb5\x18\x45\x41\x64\x64itional descriptors like \'Intense Violence\', \'Strong Language\',...\x12/\n\x14interactive_elements\x18\x04 \x01(\tB\x11\x82\xb5\x18\rESRB-specific\x12Q\n\x0crequired_age\x18\n \x01(\x05\x42;\x82\xb5\x18\x37\x41ge in years.  Store pages will prompt with an age gate\x12\x14\n\x0cuse_age_gate\x18\x0b \x01(\x08\x12<\n\timage_url\x18\x14 \x01(\tB)\x82\xb5\x18%An image corresponding to the rating.\x12O\n\x0cimage_target\x18\x15 \x01(\tB9\x82\xb5\x18\x35URL where the image should link for more information.\"\xbbK\n\tStoreItem\x12<\n\titem_type\x18\x01 \x01(\x0e\x32\x0f.EStoreItemType:\x18k_EStoreItemType_Invalid\x12\n\n\x02id\x18\x02 \x01(\r\x12\x32\n\x07success\x18\x03 \x01(\rB!\x82\xb5\x18\x1d\x45Result of this lookup action\x12\x0f\n\x07visible\x18\x04 \x01(\x08\x12}\n\"unvailable_for_country_restriction\x18\x05 \x01(\x08\x42Q\x82\xb5\x18MIndicates this app is visible in other regions, but not the requested reagion\x12\x0c\n\x04name\x18\x06 \x01(\t\x12`\n\x0estore_url_path\x18\x07 \x01(\tBH\x82\xb5\x18\x44The URL of this item\'s store page, to be appended to STORE_BASE_URL.\x12T\n\x05\x61ppid\x18\t \x01(\rBE\x82\xb5\x18\x41If this is an app, or a single-app package, the steamworks appid.\x12\xce\x01\n\x04type\x18\n \x01(\x0e\x32\x0e.EStoreAppType:\x14k_EStoreAppType_GameB\x99\x01\x82\xb5\x18\x94\x01Type of app (Game, Software, Music).  For packages/bundles, this will be the most interesting type (eg Game + Soundtrack bundle will have type Game)\x12]\n\x0eincluded_types\x18\x0b \x03(\x0e\x32\x0e.EStoreAppTypeB5\x82\xb5\x18\x31\x46or packages/bundles, all types of included items\x12\x46\n\x0fincluded_appids\x18\x0c \x03(\rB-\x82\xb5\x18)For packages/bundles, all included appids\x12\x0f\n\x07is_free\x18\r \x01(\x08\x12\x17\n\x0fis_early_access\x18\x0e \x01(\x08\x12.\n\rrelated_items\x18\x0f \x01(\x0b\x32\x17.StoreItem.RelatedItems\x12\x34\n\x15\x63ontent_descriptorids\x18\x14 \x03(\x0e\x32\x15.EContentDescriptorID\x12\x0e\n\x06tagids\x18\x15 \x03(\r\x12)\n\ncategories\x18\x16 \x01(\x0b\x32\x15.StoreItem.Categories\x12#\n\x07reviews\x18\x17 \x01(\x0b\x32\x12.StoreItem.Reviews\x12(\n\nbasic_info\x18\x18 \x01(\x0b\x32\x14.StoreItem.BasicInfo\x12\x1c\n\x04tags\x18\x19 \x03(\x0b\x32\x0e.StoreItem.Tag\x12!\n\x06\x61ssets\x18\x1e \x01(\x0b\x32\x11.StoreItem.Assets\x12\'\n\x07release\x18\x1f \x01(\x0b\x32\x16.StoreItem.ReleaseInfo\x12\'\n\tplatforms\x18  \x01(\x0b\x32\x14.StoreItem.Platforms\x12^\n\x0bgame_rating\x18! \x01(\x0b\x32\x10.StoreGameRatingB7\x82\xb5\x18\x33Local ratings agency information, like ESRB or PEGI\x12\x8c\x01\n\x14\x62\x65st_purchase_option\x18( \x01(\x0b\x32\x19.StoreItem.PurchaseOptionBS\x82\xb5\x18OThe cheapest way for the user to acquire this app or package (may be a bundle).\x12\xae\x01\n\x10purchase_options\x18) \x03(\x0b\x32\x19.StoreItem.PurchaseOptionBy\x82\xb5\x18uDifferent ways to buy this app or packages (packages can be purchased directly, but may also be included in bundles).\x12\x8b\x01\n\x0b\x61\x63\x63\x65ssories\x18* \x03(\x0b\x32\x19.StoreItem.PurchaseOptionB[\x82\xb5\x18WAdditional packages or bundles associated with an app, but that do not contain the app.\x12+\n\x0bscreenshots\x18\x32 \x01(\x0b\x32\x16.StoreItem.Screenshots\x12%\n\x08trailers\x18\x33 \x01(\x0b\x32\x13.StoreItem.Trailers\x12\x39\n\x13supported_languages\x18\x34 \x03(\x0b\x32\x1c.StoreItem.SupportedLanguage\x12\xde\x01\n\x17store_url_path_override\x18\x35 \x01(\tB\xbc\x01\x82\xb5\x18\xb7\x01Navigate to this URL (relative to store home) when the store capsule for this item is clicked, instead of the default /app/... URL. Used by advertising apps that point to a sale page.\x12Y\n\x0c\x66ree_weekend\x18\x36 \x01(\x0b\x32\x16.StoreItem.FreeWeekendB+\x82\xb5\x18\'Information about a free weekend offer.\x1aT\n\x0cRelatedItems\x12\x44\n\x0cparent_appid\x18\x01 \x01(\rB.\x82\xb5\x18*For DLC, Demos, etc, this is the main app.\x1a\xc6\x02\n\nCategories\x12Y\n\x1csupported_player_categoryids\x18\x02 \x03(\rB3\x82\xb5\x18/Categories like Single Player, Multiplayer, MMO\x12r\n\x13\x66\x65\x61ture_categoryids\x18\x03 \x03(\rBU\x82\xb5\x18QCategories indicating supported features like Steam Cloud, VAC, Achievements, etc\x12i\n\x16\x63ontroller_categoryids\x18\x04 \x03(\rBI\x82\xb5\x18\x45\x43\x61tegories indicating controller support and full controller support.\x1a\xc6\x04\n\x07Reviews\x12\xab\x01\n\x10summary_filtered\x18\x01 \x01(\x0b\x32%.StoreItem.Reviews.StoreReviewSummaryBj\x82\xb5\x18\x66Review summary with review bombs removed (if any).  Always present (if include_reviews set in request)\x12\x9a\x01\n\x12summary_unfiltered\x18\x02 \x01(\x0b\x32%.StoreItem.Reviews.StoreReviewSummaryBW\x82\xb5\x18SReview summary with review bombs included.  Only present if there are review bombs.\x1a\xef\x01\n\x12StoreReviewSummary\x12\x14\n\x0creview_count\x18\x01 \x01(\r\x12#\n\x10percent_positive\x18\x02 \x01(\x05\x42\t\x82\xb5\x18\x05\x30-100\x12@\n\x0creview_score\x18\x03 \x01(\x0e\x32\x11.EUserReviewScore:\x17k_EUserReviewScore_None\x12\\\n\x12review_score_label\x18\x04 \x01(\tB@\x82\xb5\x18<A string like \'Mixed\', \'Negative\', \'Overwhelmingly Positive\'\x1a\x8c\x04\n\tBasicInfo\x12\x19\n\x11short_description\x18\x01 \x01(\t\x12\x38\n\npublishers\x18\x02 \x03(\x0b\x32$.StoreItem.BasicInfo.CreatorHomeLink\x12\x38\n\ndevelopers\x18\x03 \x03(\x0b\x32$.StoreItem.BasicInfo.CreatorHomeLink\x12\x38\n\nfranchises\x18\x04 \x03(\x0b\x32$.StoreItem.BasicInfo.CreatorHomeLink\x12\x8c\x01\n\x10\x63\x61psule_headline\x18\x05 \x01(\tBr\x82\xb5\x18nA custom string specified by the partner for display on or around a capsule on the store, e.g. \'Just Updated!\'\x1a\xa6\x01\n\x0f\x43reatorHomeLink\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x84\x01\n\x17\x63reator_clan_account_id\x18\x02 \x01(\rBc\x82\xb5\x18_Optioanl field indicating this name is associated this the creator home via the clan account id\x1a$\n\x03Tag\x12\r\n\x05tagid\x18\x01 \x01(\r\x12\x0e\n\x06weight\x18\x02 \x01(\r\x1a\xf4\x06\n\x06\x41ssets\x12m\n\x10\x61sset_url_format\x18\x01 \x01(\tBS\x82\xb5\x18OFormat for URLs, should substitute the capsule name for ${FILENAME} in the URL.\x12\x14\n\x0cmain_capsule\x18\x02 \x01(\t\x12\x15\n\rsmall_capsule\x18\x03 \x01(\t\x12\x7f\n\x06header\x18\x04 \x01(\tBo\x82\xb5\x18kEquivalent to GetConstantRatioHeaderImage in PHP; apps will always have this, packages and bundles may not.\x12[\n\x0epackage_header\x18\x05 \x01(\tBC\x82\xb5\x18?A wider header used on package/bundle pages.  Not set for apps.\x12\x17\n\x0fpage_background\x18\x06 \x01(\t\x12!\n\x0chero_capsule\x18\x07 \x01(\tB\x0b\x82\xb5\x18\x07\x33\x37\x34x448\x12=\n\x0fhero_capsule_2x\x18\x08 \x01(\tB$\x82\xb5\x18 748x896 version of hero capsule.\x12\x39\n\x0flibrary_capsule\x18\t \x01(\tB \x82\xb5\x18\x1c\x33\x30\x30x450 - tall library asset\x12<\n\x12library_capsule_2x\x18\n \x01(\tB \x82\xb5\x18\x1c\x36\x30\x30x900 - tall library asset\x12O\n\x0clibrary_hero\x18\x0b \x01(\tB9\x82\xb5\x18\x35\x39\x36\x30x310 or 1920x620 - library detail background asset\x12T\n\x0flibrary_hero_2x\x18\x0c \x01(\tB;\x82\xb5\x18\x37\x31\x39\x32\x30x620 or 3840x1240 - library detail background asset\x12U\n\x0e\x63ommunity_icon\x18\r \x01(\tB=\x82\xb5\x18\x39\x33\x32x32 jpg uploading via steamworks under community assets\x1a\xc2\x08\n\x0bReleaseInfo\x12\x90\x01\n\x12steam_release_date\x18\x01 \x01(\rBt\x82\xb5\x18pThe date this item first released on the Steam store.  For Early Access graduates, this is their graduation day.\x12w\n\x15original_release_date\x18\x02 \x01(\rBX\x82\xb5\x18TOptional; the date this item first released elsewhere, typically back catalog items.\x12o\n\x1boriginal_steam_release_date\x18\x03 \x01(\rBJ\x82\xb5\x18\x46\x46or Early Access graduates, the date the game first appeared on Steam.\x12\x88\x01\n\x0eis_coming_soon\x18\x04 \x01(\x08\x42p\x82\xb5\x18lIs the app coming soon?  This flag should be preferred to doing time comparisons against steam_release_date.\x12V\n\nis_preload\x18\x05 \x01(\x08\x42\x42\x82\xb5\x18>Can the app be preloaded?  Only applies to Coming Soon titles.\x12v\n\x1b\x63ustom_release_date_message\x18\x06 \x01(\tBQ\x82\xb5\x18MCustom release date string.  steam_release_date will be unset if this is set.\x12\x8c\x01\n\x18is_abridged_release_date\x18\x07 \x01(\x08\x42j\x82\xb5\x18\x66Release date should be displayed as month-year only.  steam_release_date is the last day of the month.\x12}\n\x13\x63oming_soon_display\x18\x08 \x01(\tB`\x82\xb5\x18\\One of \'date_full\', \'date_month\', \'date_quarter\', \'date_year\', \'text_comingsoon\', \'text_tba\'\x12\x17\n\x0fis_early_access\x18\n \x01(\x08\x12\x18\n\x10mac_release_date\x18\x14 \x01(\r\x12\x1a\n\x12linux_release_date\x18\x15 \x01(\r\x1a\xe5\x02\n\tPlatforms\x12\x0f\n\x07windows\x18\x01 \x01(\x08\x12\x0b\n\x03mac\x18\x02 \x01(\x08\x12\x15\n\rsteamos_linux\x18\x03 \x01(\x08\x12\x32\n\nvr_support\x18\n \x01(\x0b\x32\x1e.StoreItem.Platforms.VRSupport\x12o\n\x1asteam_deck_compat_category\x18\x0b \x01(\x0e\x32 .ESteamDeckCompatibilityCategory:)k_ESteamDeckCompatibilityCategory_Unknown\x1a~\n\tVRSupport\x12\r\n\x05vrhmd\x18\x01 \x01(\x08\x12\x12\n\nvrhmd_only\x18\x02 \x01(\x08\x12\x10\n\x08htc_vive\x18( \x01(\x08\x12\x13\n\x0boculus_rift\x18) \x01(\x08\x12\x12\n\nwindows_mr\x18* \x01(\x08\x12\x13\n\x0bvalve_index\x18+ \x01(\x08\x1a\xf6\x0b\n\x0ePurchaseOption\x12\x11\n\tpackageid\x18\x01 \x01(\x05\x12\x10\n\x08\x62undleid\x18\x02 \x01(\x05\x12\x43\n\x14purchase_option_name\x18\x03 \x01(\tB%\x82\xb5\x18!The name of the package or bundle\x12\x63\n\x14\x66inal_price_in_cents\x18\x05 \x01(\x03\x42\x45\x82\xb5\x18\x41\x41lways set.  Includes any applicable non user-specific discounts.\x12\x63\n\x17original_price_in_cents\x18\x06 \x01(\x03\x42\x42\x82\xb5\x18>If discounted, this is the price the item would normally cost.\x12!\n\x19user_final_price_in_cents\x18\x07 \x01(\x03\x12j\n\x15\x66ormatted_final_price\x18\x08 \x01(\tBK\x82\xb5\x18GAlways set.  Formatted with currency symbol and decimal, like \'$10.00\'.\x12 \n\x18\x66ormatted_original_price\x18\t \x01(\t\x12X\n\x0c\x64iscount_pct\x18\n \x01(\x05\x42\x42\x82\xb5\x18>If discounted, calculated from final price and original price.\x12\x19\n\x11user_discount_pct\x18\x0b \x01(\x05\x12\xae\x01\n\x13\x62undle_discount_pct\x18\x0c \x01(\x05\x42\x90\x01\x82\xb5\x18\x8b\x01If this is a bundle, the savings from buying the bundle.  If no bundle items are on active discount, this will be the same as discount_pct.\x12r\n\x10\x61\x63tive_discounts\x18\x14 \x03(\x0b\x32\".StoreItem.PurchaseOption.DiscountB4\x82\xb5\x18\x30\x44iscounts included in discounted_price_in_cents.\x12\x87\x01\n\x15user_active_discounts\x18\x15 \x03(\x0b\x32\".StoreItem.PurchaseOption.DiscountBD\x82\xb5\x18@Additional discounts included in user_discounted_price_in_cents.\x12\x8d\x01\n\x12inactive_discounts\x18\x16 \x03(\x0b\x32\".StoreItem.PurchaseOption.DiscountBM\x82\xb5\x18IAdditional user-specific discounts that do not apply to the current user.\x12\x19\n\x11user_can_purchase\x18\x1e \x01(\x08\x12!\n\x19user_can_purchase_as_gift\x18\x1f \x01(\x08\x12?\n\x15is_commercial_license\x18( \x01(\x08\x42 \x82\xb5\x18\x1cThis is a commercial license\x12n\n\x1cshould_suppress_discount_pct\x18) \x01(\x08\x42H\x82\xb5\x18\x44\x44on\'t show the discount percentage on a store capsule for this item.\x1a\\\n\x08\x44iscount\x12\x17\n\x0f\x64iscount_amount\x18\x01 \x01(\x03\x12\x1c\n\x14\x64iscount_description\x18\x02 \x01(\t\x12\x19\n\x11\x64iscount_end_date\x18\x03 \x01(\r\x1a\xf9\x04\n\x0bScreenshots\x12g\n\x14\x61ll_ages_screenshots\x18\x02 \x03(\x0b\x32!.StoreItem.Screenshots.ScreenshotB&\x82\xb5\x18\"Screenshots suitable for all ages.\x12\xb2\x01\n\x1amature_content_screenshots\x18\x03 \x03(\x0b\x32!.StoreItem.Screenshots.ScreenshotBk\x82\xb5\x18gScreenshots that may contain mature content; these should only be shown after verifying age (age gate).\x1a\xcb\x02\n\nScreenshot\x12\x83\x01\n\x08\x66ilename\x18\x01 \x01(\tBq\x82\xb5\x18mPath to file on media CDN.  Can access sized version by appending to SHA: \'.1920x1080\', \'.600x338\', \'.116x65\'\x12\xb6\x01\n\x07ordinal\x18\x02 \x01(\x05\x42\xa4\x01\x82\xb5\x18\x9f\x01Screenshots should be displayed in order of ascending ordinal; they are returned in-order but client may need to merge all_ages and mature_content_screenshots.\x1a\xd4\x07\n\x08Trailers\x12R\n\nhighlights\x18\x01 \x03(\x0b\x32\x1b.StoreItem.Trailers.TrailerB!\x82\xb5\x18\x1dPrimary trailers for this app\x12\x9a\x01\n\x0eother_trailers\x18\x02 \x03(\x0b\x32\x1b.StoreItem.Trailers.TrailerBe\x82\xb5\x18\x61\x41\x64\x64itional trailers; on the app page, these are shown after screenshots (highlights shown before)\x1a\xa8\x01\n\x0bVideoSource\x12\x38\n\x08\x66ilename\x18\x01 \x01(\tB&\x82\xb5\x18\"Substitute into trailer_url_format\x12_\n\x04type\x18\x02 \x01(\tBQ\x82\xb5\x18M\'video/webm\' or \'video/mp4\'; can just put this directly in to a <source> tag.\x1a\xab\x04\n\x07Trailer\x12\x14\n\x0ctrailer_name\x18\x01 \x01(\t\x12g\n\x12trailer_url_format\x18\x02 \x01(\tBK\x82\xb5\x18GFormat for URLs, should substitute filename for ${FILENAME} in the URL.\x12\x35\n\x0ctrailer_480p\x18\x03 \x03(\x0b\x32\x1f.StoreItem.Trailers.VideoSource\x12\x34\n\x0btrailer_max\x18\x04 \x03(\x0b\x32\x1f.StoreItem.Trailers.VideoSource\x12\x35\n\x0cmicrotrailer\x18\x05 \x03(\x0b\x32\x1f.StoreItem.Trailers.VideoSource\x12\x42\n\x11screenshot_medium\x18\n \x01(\tB\'\x82\xb5\x18#293x165px.  Use trailer_url_format.\x12O\n\x0fscreenshot_full\x18\x0b \x01(\tB6\x82\xb5\x18\x32Same size as trailer_max.  Use trailer_url_format.\x12h\n\x0ftrailer_base_id\x18\x0c \x01(\x05\x42O\x82\xb5\x18KTrailer ID.  For localized trailers, this will be the original trailer\'s ID\x1ao\n\x11SupportedLanguage\x12 \n\telanguage\x18\x01 \x01(\x05\x42\r\x82\xb5\x18\tELanguage\x12\x11\n\tsupported\x18\x02 \x01(\x08\x12\x12\n\nfull_audio\x18\x03 \x01(\x08\x12\x11\n\tsubtitles\x18\x04 \x01(\x08\x1a\xbd\x01\n\x0b\x46reeWeekend\x12\x35\n\nstart_time\x18\x01 \x01(\rB!\x82\xb5\x18\x1dWhen the free weekend starts.\x12\x31\n\x08\x65nd_time\x18\x02 \x01(\rB\x1f\x82\xb5\x18\x1bWhen the free weekend ends.\x12\x44\n\x04text\x18\x03 \x01(\tB6\x82\xb5\x18\x32Text to show as a description of the free weekend.\"A\n\x1e\x43StoreBrowse_GetItems_Response\x12\x1f\n\x0bstore_items\x18\x01 \x03(\x0b\x32\n.StoreItem\"a\n\'CStoreBrowse_GetStoreCategories_Request\x12\x10\n\x08language\x18\x01 \x01(\t\x12$\n\telanguage\x18\x02 \x01(\x05:\x02-1B\r\x82\xb5\x18\tELanguage\"\xa1\x03\n(CStoreBrowse_GetStoreCategories_Response\x12\x46\n\ncategories\x18\x01 \x03(\x0b\x32\x32.CStoreBrowse_GetStoreCategories_Response.Category\x1a\xac\x02\n\x08\x43\x61tegory\x12\x12\n\ncategoryid\x18\x01 \x01(\r\x12@\n\x04type\x18\x02 \x01(\x0e\x32\x13.EStoreCategoryType:\x1dk_EStoreCategoryType_Category\x12\x15\n\rinternal_name\x18\x03 \x01(\t\x12\x14\n\x0c\x64isplay_name\x18\x04 \x01(\t\x12.\n\timage_url\x18\x05 \x01(\tB\x1b\x82\xb5\x18\x17\x41ppend to STORE_CDN_URL\x12m\n\x0eshow_in_search\x18\x06 \x01(\x08\x42U\x82\xb5\x18QIndicates this category can link to search results showing all items in category.*\xa6\x01\n\x0e\x45StoreItemType\x12%\n\x18k_EStoreItemType_Invalid\x10\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01\x12\x18\n\x14k_EStoreItemType_App\x10\x00\x12\x1c\n\x18k_EStoreItemType_Package\x10\x01\x12\x1b\n\x17k_EStoreItemType_Bundle\x10\x02\x12\x18\n\x14k_EStoreItemType_Mtx\x10\x03*\xab\x03\n\rEStoreAppType\x12\x18\n\x14k_EStoreAppType_Game\x10\x00\x12\x18\n\x14k_EStoreAppType_Demo\x10\x01\x12\x17\n\x13k_EStoreAppType_Mod\x10\x02\x12\x19\n\x15k_EStoreAppType_Movie\x10\x03\x12\x17\n\x13k_EStoreAppType_DLC\x10\x04\x12\x19\n\x15k_EStoreAppType_Guide\x10\x05\x12\x1c\n\x18k_EStoreAppType_Software\x10\x06\x12\x19\n\x15k_EStoreAppType_Video\x10\x07\x12\x1a\n\x16k_EStoreAppType_Series\x10\x08\x12\x1b\n\x17k_EStoreAppType_Episode\x10\t\x12\x1c\n\x18k_EStoreAppType_Hardware\x10\n\x12\x19\n\x15k_EStoreAppType_Music\x10\x0b\x12\x18\n\x14k_EStoreAppType_Beta\x10\x0c\x12\x18\n\x14k_EStoreAppType_Tool\x10\r\x12\x1f\n\x1bk_EStoreAppType_Advertising\x10\x0e*\x85\x03\n\x10\x45UserReviewScore\x12\x1b\n\x17k_EUserReviewScore_None\x10\x00\x12-\n)k_EUserReviewScore_OverwhelminglyNegative\x10\x01\x12#\n\x1fk_EUserReviewScore_VeryNegative\x10\x02\x12\x1f\n\x1bk_EUserReviewScore_Negative\x10\x03\x12%\n!k_EUserReviewScore_MostlyNegative\x10\x04\x12\x1c\n\x18k_EUserReviewScore_Mixed\x10\x05\x12%\n!k_EUserReviewScore_MostlyPositive\x10\x06\x12\x1f\n\x1bk_EUserReviewScore_Positive\x10\x07\x12#\n\x1fk_EUserReviewScore_VeryPositive\x10\x08\x12-\n)k_EUserReviewScore_OverwhelminglyPositive\x10\t*\xf4\x01\n\x12\x45StoreCategoryType\x12!\n\x1dk_EStoreCategoryType_Category\x10\x00\x12)\n%k_EStoreCategoryType_SupportedPlayers\x10\x01\x12 \n\x1ck_EStoreCategoryType_Feature\x10\x02\x12*\n&k_EStoreCategoryType_ControllerSupport\x10\x03\x12$\n k_EStoreCategoryType_CloudGaming\x10\x04\x12\x1c\n\x18k_EStoreCategoryType_MAX\x10\x05\x32\xab\x03\n\x0bStoreBrowse\x12y\n\x08GetItems\x12\x1e.CStoreBrowse_GetItems_Request\x1a\x1f.CStoreBrowse_GetItems_Response\",\x82\xb5\x18(Get information about items on the store\x12\xf8\x01\n\x12GetStoreCategories\x12(.CStoreBrowse_GetStoreCategories_Request\x1a).CStoreBrowse_GetStoreCategories_Response\"\x8c\x01\x82\xb5\x18\x87\x01Get category definitions for store.  This is a public-facing API (as compared to StoreCatalog.GetCategories, which is intended for PHP)\x1a&\x82\xb5\x18\"APIs for accessing store item dataB\x03\x90\x01\x01'
+  ,
+  dependencies=[steammessages__base__pb2.DESCRIPTOR,steammessages__unified__base__pb2.DESCRIPTOR,enums__productinfo__pb2.DESCRIPTOR,enums__pb2.DESCRIPTOR,])
+
+_ESTOREITEMTYPE = _descriptor.EnumDescriptor(
+  name='EStoreItemType',
+  full_name='EStoreItemType',
+  filename=None,
+  file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
+  values=[
+    _descriptor.EnumValueDescriptor(
+      name='k_EStoreItemType_Invalid', index=0, number=-1,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EStoreItemType_App', index=1, number=0,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EStoreItemType_Package', index=2, number=1,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EStoreItemType_Bundle', index=3, number=2,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EStoreItemType_Mtx', index=4, number=3,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+  ],
+  containing_type=None,
+  serialized_options=None,
+  serialized_start=11811,
+  serialized_end=11977,
+)
+_sym_db.RegisterEnumDescriptor(_ESTOREITEMTYPE)
+
+EStoreItemType = enum_type_wrapper.EnumTypeWrapper(_ESTOREITEMTYPE)
+_ESTOREAPPTYPE = _descriptor.EnumDescriptor(
+  name='EStoreAppType',
+  full_name='EStoreAppType',
+  filename=None,
+  file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
+  values=[
+    _descriptor.EnumValueDescriptor(
+      name='k_EStoreAppType_Game', index=0, number=0,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EStoreAppType_Demo', index=1, number=1,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EStoreAppType_Mod', index=2, number=2,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EStoreAppType_Movie', index=3, number=3,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EStoreAppType_DLC', index=4, number=4,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EStoreAppType_Guide', index=5, number=5,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EStoreAppType_Software', index=6, number=6,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EStoreAppType_Video', index=7, number=7,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EStoreAppType_Series', index=8, number=8,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EStoreAppType_Episode', index=9, number=9,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EStoreAppType_Hardware', index=10, number=10,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EStoreAppType_Music', index=11, number=11,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EStoreAppType_Beta', index=12, number=12,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EStoreAppType_Tool', index=13, number=13,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EStoreAppType_Advertising', index=14, number=14,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+  ],
+  containing_type=None,
+  serialized_options=None,
+  serialized_start=11980,
+  serialized_end=12407,
+)
+_sym_db.RegisterEnumDescriptor(_ESTOREAPPTYPE)
+
+EStoreAppType = enum_type_wrapper.EnumTypeWrapper(_ESTOREAPPTYPE)
+_EUSERREVIEWSCORE = _descriptor.EnumDescriptor(
+  name='EUserReviewScore',
+  full_name='EUserReviewScore',
+  filename=None,
+  file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
+  values=[
+    _descriptor.EnumValueDescriptor(
+      name='k_EUserReviewScore_None', index=0, number=0,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EUserReviewScore_OverwhelminglyNegative', index=1, number=1,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EUserReviewScore_VeryNegative', index=2, number=2,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EUserReviewScore_Negative', index=3, number=3,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EUserReviewScore_MostlyNegative', index=4, number=4,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EUserReviewScore_Mixed', index=5, number=5,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EUserReviewScore_MostlyPositive', index=6, number=6,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EUserReviewScore_Positive', index=7, number=7,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EUserReviewScore_VeryPositive', index=8, number=8,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EUserReviewScore_OverwhelminglyPositive', index=9, number=9,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+  ],
+  containing_type=None,
+  serialized_options=None,
+  serialized_start=12410,
+  serialized_end=12799,
+)
+_sym_db.RegisterEnumDescriptor(_EUSERREVIEWSCORE)
+
+EUserReviewScore = enum_type_wrapper.EnumTypeWrapper(_EUSERREVIEWSCORE)
+_ESTORECATEGORYTYPE = _descriptor.EnumDescriptor(
+  name='EStoreCategoryType',
+  full_name='EStoreCategoryType',
+  filename=None,
+  file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
+  values=[
+    _descriptor.EnumValueDescriptor(
+      name='k_EStoreCategoryType_Category', index=0, number=0,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EStoreCategoryType_SupportedPlayers', index=1, number=1,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EStoreCategoryType_Feature', index=2, number=2,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EStoreCategoryType_ControllerSupport', index=3, number=3,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EStoreCategoryType_CloudGaming', index=4, number=4,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='k_EStoreCategoryType_MAX', index=5, number=5,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+  ],
+  containing_type=None,
+  serialized_options=None,
+  serialized_start=12802,
+  serialized_end=13046,
+)
+_sym_db.RegisterEnumDescriptor(_ESTORECATEGORYTYPE)
+
+EStoreCategoryType = enum_type_wrapper.EnumTypeWrapper(_ESTORECATEGORYTYPE)
+k_EStoreItemType_Invalid = -1
+k_EStoreItemType_App = 0
+k_EStoreItemType_Package = 1
+k_EStoreItemType_Bundle = 2
+k_EStoreItemType_Mtx = 3
+k_EStoreAppType_Game = 0
+k_EStoreAppType_Demo = 1
+k_EStoreAppType_Mod = 2
+k_EStoreAppType_Movie = 3
+k_EStoreAppType_DLC = 4
+k_EStoreAppType_Guide = 5
+k_EStoreAppType_Software = 6
+k_EStoreAppType_Video = 7
+k_EStoreAppType_Series = 8
+k_EStoreAppType_Episode = 9
+k_EStoreAppType_Hardware = 10
+k_EStoreAppType_Music = 11
+k_EStoreAppType_Beta = 12
+k_EStoreAppType_Tool = 13
+k_EStoreAppType_Advertising = 14
+k_EUserReviewScore_None = 0
+k_EUserReviewScore_OverwhelminglyNegative = 1
+k_EUserReviewScore_VeryNegative = 2
+k_EUserReviewScore_Negative = 3
+k_EUserReviewScore_MostlyNegative = 4
+k_EUserReviewScore_Mixed = 5
+k_EUserReviewScore_MostlyPositive = 6
+k_EUserReviewScore_Positive = 7
+k_EUserReviewScore_VeryPositive = 8
+k_EUserReviewScore_OverwhelminglyPositive = 9
+k_EStoreCategoryType_Category = 0
+k_EStoreCategoryType_SupportedPlayers = 1
+k_EStoreCategoryType_Feature = 2
+k_EStoreCategoryType_ControllerSupport = 3
+k_EStoreCategoryType_CloudGaming = 4
+k_EStoreCategoryType_MAX = 5
+
+
+
+_STOREITEMID = _descriptor.Descriptor(
+  name='StoreItemID',
+  full_name='StoreItemID',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='appid', full_name='StoreItemID.appid', index=0,
+      number=1, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='packageid', full_name='StoreItemID.packageid', index=1,
+      number=2, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='bundleid', full_name='StoreItemID.bundleid', index=2,
+      number=3, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=133,
+  serialized_end=198,
+)
+
+
+_STOREBROWSECONTEXT = _descriptor.Descriptor(
+  name='StoreBrowseContext',
+  full_name='StoreBrowseContext',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='language', full_name='StoreBrowseContext.language', index=0,
+      number=1, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='elanguage', full_name='StoreBrowseContext.elanguage', index=1,
+      number=2, type=5, cpp_type=1, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\tELanguage', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='country_code', full_name='StoreBrowseContext.country_code', index=2,
+      number=3, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\"2-character country code; required', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='steam_realm', full_name='StoreBrowseContext.steam_realm', index=3,
+      number=4, type=5, cpp_type=1, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\013ESteamRealm', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=201,
+  serialized_end=373,
+)
+
+
+_STOREBROWSEITEMDATAREQUEST = _descriptor.Descriptor(
+  name='StoreBrowseItemDataRequest',
+  full_name='StoreBrowseItemDataRequest',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='include_assets', full_name='StoreBrowseItemDataRequest.include_assets', index=0,
+      number=1, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='include_release', full_name='StoreBrowseItemDataRequest.include_release', index=1,
+      number=2, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='include_platforms', full_name='StoreBrowseItemDataRequest.include_platforms', index=2,
+      number=3, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='include_all_purchase_options', full_name='StoreBrowseItemDataRequest.include_all_purchase_options', index=3,
+      number=4, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='include_screenshots', full_name='StoreBrowseItemDataRequest.include_screenshots', index=4,
+      number=5, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='include_trailers', full_name='StoreBrowseItemDataRequest.include_trailers', index=5,
+      number=6, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='include_ratings', full_name='StoreBrowseItemDataRequest.include_ratings', index=6,
+      number=7, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='include_tag_count', full_name='StoreBrowseItemDataRequest.include_tag_count', index=7,
+      number=8, type=5, cpp_type=1, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\0300Count of tags to return, as tagids.  Maximum 20.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='include_reviews', full_name='StoreBrowseItemDataRequest.include_reviews', index=8,
+      number=9, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='include_basic_info', full_name='StoreBrowseItemDataRequest.include_basic_info', index=9,
+      number=10, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\0300Include short description, publisher, developers', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='include_supported_languages', full_name='StoreBrowseItemDataRequest.include_supported_languages', index=10,
+      number=11, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030Jincludes the games support for languages: supported, full_audio, subtitles', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=376,
+  serialized_end=903,
+)
+
+
+_CSTOREBROWSE_GETITEMS_REQUEST = _descriptor.Descriptor(
+  name='CStoreBrowse_GetItems_Request',
+  full_name='CStoreBrowse_GetItems_Request',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='ids', full_name='CStoreBrowse_GetItems_Request.ids', index=0,
+      number=1, type=11, cpp_type=10, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='context', full_name='CStoreBrowse_GetItems_Request.context', index=1,
+      number=2, type=11, cpp_type=10, label=1,
+      has_default_value=False, default_value=None,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='data_request', full_name='CStoreBrowse_GetItems_Request.data_request', index=2,
+      number=3, type=11, cpp_type=10, label=1,
+      has_default_value=False, default_value=None,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=906,
+  serialized_end=1053,
+)
+
+
+_STOREGAMERATING = _descriptor.Descriptor(
+  name='StoreGameRating',
+  full_name='StoreGameRating',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='type', full_name='StoreGameRating.type', index=0,
+      number=1, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\023\'esrb\', \'pegi\', ...', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='rating', full_name='StoreGameRating.rating', index=1,
+      number=2, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030!\'t\' for teen, \'m\' for mature, ...', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='descriptors', full_name='StoreGameRating.descriptors', index=2,
+      number=3, type=9, cpp_type=9, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030EAdditional descriptors like \'Intense Violence\', \'Strong Language\',...', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='interactive_elements', full_name='StoreGameRating.interactive_elements', index=3,
+      number=4, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\rESRB-specific', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='required_age', full_name='StoreGameRating.required_age', index=4,
+      number=10, type=5, cpp_type=1, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\0307Age in years.  Store pages will prompt with an age gate', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='use_age_gate', full_name='StoreGameRating.use_age_gate', index=5,
+      number=11, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='image_url', full_name='StoreGameRating.image_url', index=6,
+      number=20, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030%An image corresponding to the rating.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='image_target', full_name='StoreGameRating.image_target', index=7,
+      number=21, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\0305URL where the image should link for more information.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=1056,
+  serialized_end=1560,
+)
+
+
+_STOREITEM_RELATEDITEMS = _descriptor.Descriptor(
+  name='RelatedItems',
+  full_name='StoreItem.RelatedItems',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='parent_appid', full_name='StoreItem.RelatedItems.parent_appid', index=0,
+      number=1, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030*For DLC, Demos, etc, this is the main app.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=3866,
+  serialized_end=3950,
+)
+
+_STOREITEM_CATEGORIES = _descriptor.Descriptor(
+  name='Categories',
+  full_name='StoreItem.Categories',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='supported_player_categoryids', full_name='StoreItem.Categories.supported_player_categoryids', index=0,
+      number=2, type=13, cpp_type=3, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030/Categories like Single Player, Multiplayer, MMO', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='feature_categoryids', full_name='StoreItem.Categories.feature_categoryids', index=1,
+      number=3, type=13, cpp_type=3, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030QCategories indicating supported features like Steam Cloud, VAC, Achievements, etc', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='controller_categoryids', full_name='StoreItem.Categories.controller_categoryids', index=2,
+      number=4, type=13, cpp_type=3, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030ECategories indicating controller support and full controller support.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=3953,
+  serialized_end=4279,
+)
+
+_STOREITEM_REVIEWS_STOREREVIEWSUMMARY = _descriptor.Descriptor(
+  name='StoreReviewSummary',
+  full_name='StoreItem.Reviews.StoreReviewSummary',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='review_count', full_name='StoreItem.Reviews.StoreReviewSummary.review_count', index=0,
+      number=1, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='percent_positive', full_name='StoreItem.Reviews.StoreReviewSummary.percent_positive', index=1,
+      number=2, type=5, cpp_type=1, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\0050-100', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='review_score', full_name='StoreItem.Reviews.StoreReviewSummary.review_score', index=2,
+      number=3, type=14, cpp_type=8, label=1,
+      has_default_value=True, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='review_score_label', full_name='StoreItem.Reviews.StoreReviewSummary.review_score_label', index=3,
+      number=4, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030<A string like \'Mixed\', \'Negative\', \'Overwhelmingly Positive\'', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=4625,
+  serialized_end=4864,
+)
+
+_STOREITEM_REVIEWS = _descriptor.Descriptor(
+  name='Reviews',
+  full_name='StoreItem.Reviews',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='summary_filtered', full_name='StoreItem.Reviews.summary_filtered', index=0,
+      number=1, type=11, cpp_type=10, label=1,
+      has_default_value=False, default_value=None,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030fReview summary with review bombs removed (if any).  Always present (if include_reviews set in request)', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='summary_unfiltered', full_name='StoreItem.Reviews.summary_unfiltered', index=1,
+      number=2, type=11, cpp_type=10, label=1,
+      has_default_value=False, default_value=None,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030SReview summary with review bombs included.  Only present if there are review bombs.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[_STOREITEM_REVIEWS_STOREREVIEWSUMMARY, ],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=4282,
+  serialized_end=4864,
+)
+
+_STOREITEM_BASICINFO_CREATORHOMELINK = _descriptor.Descriptor(
+  name='CreatorHomeLink',
+  full_name='StoreItem.BasicInfo.CreatorHomeLink',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='name', full_name='StoreItem.BasicInfo.CreatorHomeLink.name', index=0,
+      number=1, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='creator_clan_account_id', full_name='StoreItem.BasicInfo.CreatorHomeLink.creator_clan_account_id', index=1,
+      number=2, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030_Optioanl field indicating this name is associated this the creator home via the clan account id', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=5225,
+  serialized_end=5391,
+)
+
+_STOREITEM_BASICINFO = _descriptor.Descriptor(
+  name='BasicInfo',
+  full_name='StoreItem.BasicInfo',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='short_description', full_name='StoreItem.BasicInfo.short_description', index=0,
+      number=1, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='publishers', full_name='StoreItem.BasicInfo.publishers', index=1,
+      number=2, type=11, cpp_type=10, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='developers', full_name='StoreItem.BasicInfo.developers', index=2,
+      number=3, type=11, cpp_type=10, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='franchises', full_name='StoreItem.BasicInfo.franchises', index=3,
+      number=4, type=11, cpp_type=10, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='capsule_headline', full_name='StoreItem.BasicInfo.capsule_headline', index=4,
+      number=5, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030nA custom string specified by the partner for display on or around a capsule on the store, e.g. \'Just Updated!\'', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[_STOREITEM_BASICINFO_CREATORHOMELINK, ],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=4867,
+  serialized_end=5391,
+)
+
+_STOREITEM_TAG = _descriptor.Descriptor(
+  name='Tag',
+  full_name='StoreItem.Tag',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='tagid', full_name='StoreItem.Tag.tagid', index=0,
+      number=1, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='weight', full_name='StoreItem.Tag.weight', index=1,
+      number=2, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=5393,
+  serialized_end=5429,
+)
+
+_STOREITEM_ASSETS = _descriptor.Descriptor(
+  name='Assets',
+  full_name='StoreItem.Assets',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='asset_url_format', full_name='StoreItem.Assets.asset_url_format', index=0,
+      number=1, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030OFormat for URLs, should substitute the capsule name for ${FILENAME} in the URL.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='main_capsule', full_name='StoreItem.Assets.main_capsule', index=1,
+      number=2, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='small_capsule', full_name='StoreItem.Assets.small_capsule', index=2,
+      number=3, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='header', full_name='StoreItem.Assets.header', index=3,
+      number=4, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030kEquivalent to GetConstantRatioHeaderImage in PHP; apps will always have this, packages and bundles may not.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='package_header', full_name='StoreItem.Assets.package_header', index=4,
+      number=5, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030?A wider header used on package/bundle pages.  Not set for apps.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='page_background', full_name='StoreItem.Assets.page_background', index=5,
+      number=6, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='hero_capsule', full_name='StoreItem.Assets.hero_capsule', index=6,
+      number=7, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\007374x448', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='hero_capsule_2x', full_name='StoreItem.Assets.hero_capsule_2x', index=7,
+      number=8, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030 748x896 version of hero capsule.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='library_capsule', full_name='StoreItem.Assets.library_capsule', index=8,
+      number=9, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\034300x450 - tall library asset', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='library_capsule_2x', full_name='StoreItem.Assets.library_capsule_2x', index=9,
+      number=10, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\034600x900 - tall library asset', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='library_hero', full_name='StoreItem.Assets.library_hero', index=10,
+      number=11, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\0305960x310 or 1920x620 - library detail background asset', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='library_hero_2x', full_name='StoreItem.Assets.library_hero_2x', index=11,
+      number=12, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\03071920x620 or 3840x1240 - library detail background asset', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='community_icon', full_name='StoreItem.Assets.community_icon', index=12,
+      number=13, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030932x32 jpg uploading via steamworks under community assets', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=5432,
+  serialized_end=6316,
+)
+
+_STOREITEM_RELEASEINFO = _descriptor.Descriptor(
+  name='ReleaseInfo',
+  full_name='StoreItem.ReleaseInfo',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='steam_release_date', full_name='StoreItem.ReleaseInfo.steam_release_date', index=0,
+      number=1, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030pThe date this item first released on the Steam store.  For Early Access graduates, this is their graduation day.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='original_release_date', full_name='StoreItem.ReleaseInfo.original_release_date', index=1,
+      number=2, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030TOptional; the date this item first released elsewhere, typically back catalog items.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='original_steam_release_date', full_name='StoreItem.ReleaseInfo.original_steam_release_date', index=2,
+      number=3, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030FFor Early Access graduates, the date the game first appeared on Steam.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='is_coming_soon', full_name='StoreItem.ReleaseInfo.is_coming_soon', index=3,
+      number=4, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030lIs the app coming soon?  This flag should be preferred to doing time comparisons against steam_release_date.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='is_preload', full_name='StoreItem.ReleaseInfo.is_preload', index=4,
+      number=5, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030>Can the app be preloaded?  Only applies to Coming Soon titles.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='custom_release_date_message', full_name='StoreItem.ReleaseInfo.custom_release_date_message', index=5,
+      number=6, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030MCustom release date string.  steam_release_date will be unset if this is set.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='is_abridged_release_date', full_name='StoreItem.ReleaseInfo.is_abridged_release_date', index=6,
+      number=7, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030fRelease date should be displayed as month-year only.  steam_release_date is the last day of the month.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='coming_soon_display', full_name='StoreItem.ReleaseInfo.coming_soon_display', index=7,
+      number=8, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\\One of \'date_full\', \'date_month\', \'date_quarter\', \'date_year\', \'text_comingsoon\', \'text_tba\'', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='is_early_access', full_name='StoreItem.ReleaseInfo.is_early_access', index=8,
+      number=10, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='mac_release_date', full_name='StoreItem.ReleaseInfo.mac_release_date', index=9,
+      number=20, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='linux_release_date', full_name='StoreItem.ReleaseInfo.linux_release_date', index=10,
+      number=21, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=6319,
+  serialized_end=7409,
+)
+
+_STOREITEM_PLATFORMS_VRSUPPORT = _descriptor.Descriptor(
+  name='VRSupport',
+  full_name='StoreItem.Platforms.VRSupport',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='vrhmd', full_name='StoreItem.Platforms.VRSupport.vrhmd', index=0,
+      number=1, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='vrhmd_only', full_name='StoreItem.Platforms.VRSupport.vrhmd_only', index=1,
+      number=2, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='htc_vive', full_name='StoreItem.Platforms.VRSupport.htc_vive', index=2,
+      number=40, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='oculus_rift', full_name='StoreItem.Platforms.VRSupport.oculus_rift', index=3,
+      number=41, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='windows_mr', full_name='StoreItem.Platforms.VRSupport.windows_mr', index=4,
+      number=42, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='valve_index', full_name='StoreItem.Platforms.VRSupport.valve_index', index=5,
+      number=43, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=7643,
+  serialized_end=7769,
+)
+
+_STOREITEM_PLATFORMS = _descriptor.Descriptor(
+  name='Platforms',
+  full_name='StoreItem.Platforms',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='windows', full_name='StoreItem.Platforms.windows', index=0,
+      number=1, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='mac', full_name='StoreItem.Platforms.mac', index=1,
+      number=2, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='steamos_linux', full_name='StoreItem.Platforms.steamos_linux', index=2,
+      number=3, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='vr_support', full_name='StoreItem.Platforms.vr_support', index=3,
+      number=10, type=11, cpp_type=10, label=1,
+      has_default_value=False, default_value=None,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='steam_deck_compat_category', full_name='StoreItem.Platforms.steam_deck_compat_category', index=4,
+      number=11, type=14, cpp_type=8, label=1,
+      has_default_value=True, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[_STOREITEM_PLATFORMS_VRSUPPORT, ],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=7412,
+  serialized_end=7769,
+)
+
+_STOREITEM_PURCHASEOPTION_DISCOUNT = _descriptor.Descriptor(
+  name='Discount',
+  full_name='StoreItem.PurchaseOption.Discount',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='discount_amount', full_name='StoreItem.PurchaseOption.Discount.discount_amount', index=0,
+      number=1, type=3, cpp_type=2, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='discount_description', full_name='StoreItem.PurchaseOption.Discount.discount_description', index=1,
+      number=2, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='discount_end_date', full_name='StoreItem.PurchaseOption.Discount.discount_end_date', index=2,
+      number=3, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=9206,
+  serialized_end=9298,
+)
+
+_STOREITEM_PURCHASEOPTION = _descriptor.Descriptor(
+  name='PurchaseOption',
+  full_name='StoreItem.PurchaseOption',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='packageid', full_name='StoreItem.PurchaseOption.packageid', index=0,
+      number=1, type=5, cpp_type=1, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='bundleid', full_name='StoreItem.PurchaseOption.bundleid', index=1,
+      number=2, type=5, cpp_type=1, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='purchase_option_name', full_name='StoreItem.PurchaseOption.purchase_option_name', index=2,
+      number=3, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030!The name of the package or bundle', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='final_price_in_cents', full_name='StoreItem.PurchaseOption.final_price_in_cents', index=3,
+      number=5, type=3, cpp_type=2, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030AAlways set.  Includes any applicable non user-specific discounts.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='original_price_in_cents', full_name='StoreItem.PurchaseOption.original_price_in_cents', index=4,
+      number=6, type=3, cpp_type=2, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030>If discounted, this is the price the item would normally cost.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='user_final_price_in_cents', full_name='StoreItem.PurchaseOption.user_final_price_in_cents', index=5,
+      number=7, type=3, cpp_type=2, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='formatted_final_price', full_name='StoreItem.PurchaseOption.formatted_final_price', index=6,
+      number=8, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030GAlways set.  Formatted with currency symbol and decimal, like \'$10.00\'.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='formatted_original_price', full_name='StoreItem.PurchaseOption.formatted_original_price', index=7,
+      number=9, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='discount_pct', full_name='StoreItem.PurchaseOption.discount_pct', index=8,
+      number=10, type=5, cpp_type=1, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030>If discounted, calculated from final price and original price.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='user_discount_pct', full_name='StoreItem.PurchaseOption.user_discount_pct', index=9,
+      number=11, type=5, cpp_type=1, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='bundle_discount_pct', full_name='StoreItem.PurchaseOption.bundle_discount_pct', index=10,
+      number=12, type=5, cpp_type=1, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\213\001If this is a bundle, the savings from buying the bundle.  If no bundle items are on active discount, this will be the same as discount_pct.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='active_discounts', full_name='StoreItem.PurchaseOption.active_discounts', index=11,
+      number=20, type=11, cpp_type=10, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\0300Discounts included in discounted_price_in_cents.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='user_active_discounts', full_name='StoreItem.PurchaseOption.user_active_discounts', index=12,
+      number=21, type=11, cpp_type=10, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030@Additional discounts included in user_discounted_price_in_cents.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='inactive_discounts', full_name='StoreItem.PurchaseOption.inactive_discounts', index=13,
+      number=22, type=11, cpp_type=10, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030IAdditional user-specific discounts that do not apply to the current user.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='user_can_purchase', full_name='StoreItem.PurchaseOption.user_can_purchase', index=14,
+      number=30, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='user_can_purchase_as_gift', full_name='StoreItem.PurchaseOption.user_can_purchase_as_gift', index=15,
+      number=31, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='is_commercial_license', full_name='StoreItem.PurchaseOption.is_commercial_license', index=16,
+      number=40, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\034This is a commercial license', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='should_suppress_discount_pct', full_name='StoreItem.PurchaseOption.should_suppress_discount_pct', index=17,
+      number=41, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030DDon\'t show the discount percentage on a store capsule for this item.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[_STOREITEM_PURCHASEOPTION_DISCOUNT, ],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=7772,
+  serialized_end=9298,
+)
+
+_STOREITEM_SCREENSHOTS_SCREENSHOT = _descriptor.Descriptor(
+  name='Screenshot',
+  full_name='StoreItem.Screenshots.Screenshot',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='filename', full_name='StoreItem.Screenshots.Screenshot.filename', index=0,
+      number=1, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030mPath to file on media CDN.  Can access sized version by appending to SHA: \'.1920x1080\', \'.600x338\', \'.116x65\'', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='ordinal', full_name='StoreItem.Screenshots.Screenshot.ordinal', index=1,
+      number=2, type=5, cpp_type=1, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\237\001Screenshots should be displayed in order of ascending ordinal; they are returned in-order but client may need to merge all_ages and mature_content_screenshots.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=9603,
+  serialized_end=9934,
+)
+
+_STOREITEM_SCREENSHOTS = _descriptor.Descriptor(
+  name='Screenshots',
+  full_name='StoreItem.Screenshots',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='all_ages_screenshots', full_name='StoreItem.Screenshots.all_ages_screenshots', index=0,
+      number=2, type=11, cpp_type=10, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\"Screenshots suitable for all ages.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='mature_content_screenshots', full_name='StoreItem.Screenshots.mature_content_screenshots', index=1,
+      number=3, type=11, cpp_type=10, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030gScreenshots that may contain mature content; these should only be shown after verifying age (age gate).', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[_STOREITEM_SCREENSHOTS_SCREENSHOT, ],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=9301,
+  serialized_end=9934,
+)
+
+_STOREITEM_TRAILERS_VIDEOSOURCE = _descriptor.Descriptor(
+  name='VideoSource',
+  full_name='StoreItem.Trailers.VideoSource',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='filename', full_name='StoreItem.Trailers.VideoSource.filename', index=0,
+      number=1, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\"Substitute into trailer_url_format', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='type', full_name='StoreItem.Trailers.VideoSource.type', index=1,
+      number=2, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030M\'video/webm\' or \'video/mp4\'; can just put this directly in to a <source> tag.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=10191,
+  serialized_end=10359,
+)
+
+_STOREITEM_TRAILERS_TRAILER = _descriptor.Descriptor(
+  name='Trailer',
+  full_name='StoreItem.Trailers.Trailer',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='trailer_name', full_name='StoreItem.Trailers.Trailer.trailer_name', index=0,
+      number=1, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='trailer_url_format', full_name='StoreItem.Trailers.Trailer.trailer_url_format', index=1,
+      number=2, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030GFormat for URLs, should substitute filename for ${FILENAME} in the URL.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='trailer_480p', full_name='StoreItem.Trailers.Trailer.trailer_480p', index=2,
+      number=3, type=11, cpp_type=10, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='trailer_max', full_name='StoreItem.Trailers.Trailer.trailer_max', index=3,
+      number=4, type=11, cpp_type=10, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='microtrailer', full_name='StoreItem.Trailers.Trailer.microtrailer', index=4,
+      number=5, type=11, cpp_type=10, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='screenshot_medium', full_name='StoreItem.Trailers.Trailer.screenshot_medium', index=5,
+      number=10, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030#293x165px.  Use trailer_url_format.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='screenshot_full', full_name='StoreItem.Trailers.Trailer.screenshot_full', index=6,
+      number=11, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\0302Same size as trailer_max.  Use trailer_url_format.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='trailer_base_id', full_name='StoreItem.Trailers.Trailer.trailer_base_id', index=7,
+      number=12, type=5, cpp_type=1, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030KTrailer ID.  For localized trailers, this will be the original trailer\'s ID', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=10362,
+  serialized_end=10917,
+)
+
+_STOREITEM_TRAILERS = _descriptor.Descriptor(
+  name='Trailers',
+  full_name='StoreItem.Trailers',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='highlights', full_name='StoreItem.Trailers.highlights', index=0,
+      number=1, type=11, cpp_type=10, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\035Primary trailers for this app', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='other_trailers', full_name='StoreItem.Trailers.other_trailers', index=1,
+      number=2, type=11, cpp_type=10, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030aAdditional trailers; on the app page, these are shown after screenshots (highlights shown before)', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[_STOREITEM_TRAILERS_VIDEOSOURCE, _STOREITEM_TRAILERS_TRAILER, ],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=9937,
+  serialized_end=10917,
+)
+
+_STOREITEM_SUPPORTEDLANGUAGE = _descriptor.Descriptor(
+  name='SupportedLanguage',
+  full_name='StoreItem.SupportedLanguage',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='elanguage', full_name='StoreItem.SupportedLanguage.elanguage', index=0,
+      number=1, type=5, cpp_type=1, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\tELanguage', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='supported', full_name='StoreItem.SupportedLanguage.supported', index=1,
+      number=2, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='full_audio', full_name='StoreItem.SupportedLanguage.full_audio', index=2,
+      number=3, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='subtitles', full_name='StoreItem.SupportedLanguage.subtitles', index=3,
+      number=4, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=10919,
+  serialized_end=11030,
+)
+
+_STOREITEM_FREEWEEKEND = _descriptor.Descriptor(
+  name='FreeWeekend',
+  full_name='StoreItem.FreeWeekend',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='start_time', full_name='StoreItem.FreeWeekend.start_time', index=0,
+      number=1, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\035When the free weekend starts.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='end_time', full_name='StoreItem.FreeWeekend.end_time', index=1,
+      number=2, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\033When the free weekend ends.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='text', full_name='StoreItem.FreeWeekend.text', index=2,
+      number=3, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\0302Text to show as a description of the free weekend.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=11033,
+  serialized_end=11222,
+)
+
+_STOREITEM = _descriptor.Descriptor(
+  name='StoreItem',
+  full_name='StoreItem',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='item_type', full_name='StoreItem.item_type', index=0,
+      number=1, type=14, cpp_type=8, label=1,
+      has_default_value=True, default_value=-1,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='id', full_name='StoreItem.id', index=1,
+      number=2, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='success', full_name='StoreItem.success', index=2,
+      number=3, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\035EResult of this lookup action', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='visible', full_name='StoreItem.visible', index=3,
+      number=4, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='unvailable_for_country_restriction', full_name='StoreItem.unvailable_for_country_restriction', index=4,
+      number=5, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030MIndicates this app is visible in other regions, but not the requested reagion', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='name', full_name='StoreItem.name', index=5,
+      number=6, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='store_url_path', full_name='StoreItem.store_url_path', index=6,
+      number=7, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030DThe URL of this item\'s store page, to be appended to STORE_BASE_URL.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='appid', full_name='StoreItem.appid', index=7,
+      number=9, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030AIf this is an app, or a single-app package, the steamworks appid.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='type', full_name='StoreItem.type', index=8,
+      number=10, type=14, cpp_type=8, label=1,
+      has_default_value=True, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\224\001Type of app (Game, Software, Music).  For packages/bundles, this will be the most interesting type (eg Game + Soundtrack bundle will have type Game)', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='included_types', full_name='StoreItem.included_types', index=9,
+      number=11, type=14, cpp_type=8, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\0301For packages/bundles, all types of included items', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='included_appids', full_name='StoreItem.included_appids', index=10,
+      number=12, type=13, cpp_type=3, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030)For packages/bundles, all included appids', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='is_free', full_name='StoreItem.is_free', index=11,
+      number=13, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='is_early_access', full_name='StoreItem.is_early_access', index=12,
+      number=14, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='related_items', full_name='StoreItem.related_items', index=13,
+      number=15, type=11, cpp_type=10, label=1,
+      has_default_value=False, default_value=None,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='content_descriptorids', full_name='StoreItem.content_descriptorids', index=14,
+      number=20, type=14, cpp_type=8, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='tagids', full_name='StoreItem.tagids', index=15,
+      number=21, type=13, cpp_type=3, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='categories', full_name='StoreItem.categories', index=16,
+      number=22, type=11, cpp_type=10, label=1,
+      has_default_value=False, default_value=None,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='reviews', full_name='StoreItem.reviews', index=17,
+      number=23, type=11, cpp_type=10, label=1,
+      has_default_value=False, default_value=None,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='basic_info', full_name='StoreItem.basic_info', index=18,
+      number=24, type=11, cpp_type=10, label=1,
+      has_default_value=False, default_value=None,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='tags', full_name='StoreItem.tags', index=19,
+      number=25, type=11, cpp_type=10, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='assets', full_name='StoreItem.assets', index=20,
+      number=30, type=11, cpp_type=10, label=1,
+      has_default_value=False, default_value=None,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='release', full_name='StoreItem.release', index=21,
+      number=31, type=11, cpp_type=10, label=1,
+      has_default_value=False, default_value=None,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='platforms', full_name='StoreItem.platforms', index=22,
+      number=32, type=11, cpp_type=10, label=1,
+      has_default_value=False, default_value=None,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='game_rating', full_name='StoreItem.game_rating', index=23,
+      number=33, type=11, cpp_type=10, label=1,
+      has_default_value=False, default_value=None,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\0303Local ratings agency information, like ESRB or PEGI', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='best_purchase_option', full_name='StoreItem.best_purchase_option', index=24,
+      number=40, type=11, cpp_type=10, label=1,
+      has_default_value=False, default_value=None,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030OThe cheapest way for the user to acquire this app or package (may be a bundle).', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='purchase_options', full_name='StoreItem.purchase_options', index=25,
+      number=41, type=11, cpp_type=10, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030uDifferent ways to buy this app or packages (packages can be purchased directly, but may also be included in bundles).', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='accessories', full_name='StoreItem.accessories', index=26,
+      number=42, type=11, cpp_type=10, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030WAdditional packages or bundles associated with an app, but that do not contain the app.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='screenshots', full_name='StoreItem.screenshots', index=27,
+      number=50, type=11, cpp_type=10, label=1,
+      has_default_value=False, default_value=None,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='trailers', full_name='StoreItem.trailers', index=28,
+      number=51, type=11, cpp_type=10, label=1,
+      has_default_value=False, default_value=None,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='supported_languages', full_name='StoreItem.supported_languages', index=29,
+      number=52, type=11, cpp_type=10, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='store_url_path_override', full_name='StoreItem.store_url_path_override', index=30,
+      number=53, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\267\001Navigate to this URL (relative to store home) when the store capsule for this item is clicked, instead of the default /app/... URL. Used by advertising apps that point to a sale page.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='free_weekend', full_name='StoreItem.free_weekend', index=31,
+      number=54, type=11, cpp_type=10, label=1,
+      has_default_value=False, default_value=None,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\'Information about a free weekend offer.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[_STOREITEM_RELATEDITEMS, _STOREITEM_CATEGORIES, _STOREITEM_REVIEWS, _STOREITEM_BASICINFO, _STOREITEM_TAG, _STOREITEM_ASSETS, _STOREITEM_RELEASEINFO, _STOREITEM_PLATFORMS, _STOREITEM_PURCHASEOPTION, _STOREITEM_SCREENSHOTS, _STOREITEM_TRAILERS, _STOREITEM_SUPPORTEDLANGUAGE, _STOREITEM_FREEWEEKEND, ],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=1563,
+  serialized_end=11222,
+)
+
+
+_CSTOREBROWSE_GETITEMS_RESPONSE = _descriptor.Descriptor(
+  name='CStoreBrowse_GetItems_Response',
+  full_name='CStoreBrowse_GetItems_Response',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='store_items', full_name='CStoreBrowse_GetItems_Response.store_items', index=0,
+      number=1, type=11, cpp_type=10, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=11224,
+  serialized_end=11289,
+)
+
+
+_CSTOREBROWSE_GETSTORECATEGORIES_REQUEST = _descriptor.Descriptor(
+  name='CStoreBrowse_GetStoreCategories_Request',
+  full_name='CStoreBrowse_GetStoreCategories_Request',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='language', full_name='CStoreBrowse_GetStoreCategories_Request.language', index=0,
+      number=1, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='elanguage', full_name='CStoreBrowse_GetStoreCategories_Request.elanguage', index=1,
+      number=2, type=5, cpp_type=1, label=1,
+      has_default_value=True, default_value=-1,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\tELanguage', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=11291,
+  serialized_end=11388,
+)
+
+
+_CSTOREBROWSE_GETSTORECATEGORIES_RESPONSE_CATEGORY = _descriptor.Descriptor(
+  name='Category',
+  full_name='CStoreBrowse_GetStoreCategories_Response.Category',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='categoryid', full_name='CStoreBrowse_GetStoreCategories_Response.Category.categoryid', index=0,
+      number=1, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='type', full_name='CStoreBrowse_GetStoreCategories_Response.Category.type', index=1,
+      number=2, type=14, cpp_type=8, label=1,
+      has_default_value=True, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='internal_name', full_name='CStoreBrowse_GetStoreCategories_Response.Category.internal_name', index=2,
+      number=3, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='display_name', full_name='CStoreBrowse_GetStoreCategories_Response.Category.display_name', index=3,
+      number=4, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='image_url', full_name='CStoreBrowse_GetStoreCategories_Response.Category.image_url', index=4,
+      number=5, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\027Append to STORE_CDN_URL', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='show_in_search', full_name='CStoreBrowse_GetStoreCategories_Response.Category.show_in_search', index=5,
+      number=6, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030QIndicates this category can link to search results showing all items in category.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=11508,
+  serialized_end=11808,
+)
+
+_CSTOREBROWSE_GETSTORECATEGORIES_RESPONSE = _descriptor.Descriptor(
+  name='CStoreBrowse_GetStoreCategories_Response',
+  full_name='CStoreBrowse_GetStoreCategories_Response',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='categories', full_name='CStoreBrowse_GetStoreCategories_Response.categories', index=0,
+      number=1, type=11, cpp_type=10, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[_CSTOREBROWSE_GETSTORECATEGORIES_RESPONSE_CATEGORY, ],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=11391,
+  serialized_end=11808,
+)
+
+_CSTOREBROWSE_GETITEMS_REQUEST.fields_by_name['ids'].message_type = _STOREITEMID
+_CSTOREBROWSE_GETITEMS_REQUEST.fields_by_name['context'].message_type = _STOREBROWSECONTEXT
+_CSTOREBROWSE_GETITEMS_REQUEST.fields_by_name['data_request'].message_type = _STOREBROWSEITEMDATAREQUEST
+_STOREITEM_RELATEDITEMS.containing_type = _STOREITEM
+_STOREITEM_CATEGORIES.containing_type = _STOREITEM
+_STOREITEM_REVIEWS_STOREREVIEWSUMMARY.fields_by_name['review_score'].enum_type = _EUSERREVIEWSCORE
+_STOREITEM_REVIEWS_STOREREVIEWSUMMARY.containing_type = _STOREITEM_REVIEWS
+_STOREITEM_REVIEWS.fields_by_name['summary_filtered'].message_type = _STOREITEM_REVIEWS_STOREREVIEWSUMMARY
+_STOREITEM_REVIEWS.fields_by_name['summary_unfiltered'].message_type = _STOREITEM_REVIEWS_STOREREVIEWSUMMARY
+_STOREITEM_REVIEWS.containing_type = _STOREITEM
+_STOREITEM_BASICINFO_CREATORHOMELINK.containing_type = _STOREITEM_BASICINFO
+_STOREITEM_BASICINFO.fields_by_name['publishers'].message_type = _STOREITEM_BASICINFO_CREATORHOMELINK
+_STOREITEM_BASICINFO.fields_by_name['developers'].message_type = _STOREITEM_BASICINFO_CREATORHOMELINK
+_STOREITEM_BASICINFO.fields_by_name['franchises'].message_type = _STOREITEM_BASICINFO_CREATORHOMELINK
+_STOREITEM_BASICINFO.containing_type = _STOREITEM
+_STOREITEM_TAG.containing_type = _STOREITEM
+_STOREITEM_ASSETS.containing_type = _STOREITEM
+_STOREITEM_RELEASEINFO.containing_type = _STOREITEM
+_STOREITEM_PLATFORMS_VRSUPPORT.containing_type = _STOREITEM_PLATFORMS
+_STOREITEM_PLATFORMS.fields_by_name['vr_support'].message_type = _STOREITEM_PLATFORMS_VRSUPPORT
+_STOREITEM_PLATFORMS.fields_by_name['steam_deck_compat_category'].enum_type = enums__pb2._ESTEAMDECKCOMPATIBILITYCATEGORY
+_STOREITEM_PLATFORMS.containing_type = _STOREITEM
+_STOREITEM_PURCHASEOPTION_DISCOUNT.containing_type = _STOREITEM_PURCHASEOPTION
+_STOREITEM_PURCHASEOPTION.fields_by_name['active_discounts'].message_type = _STOREITEM_PURCHASEOPTION_DISCOUNT
+_STOREITEM_PURCHASEOPTION.fields_by_name['user_active_discounts'].message_type = _STOREITEM_PURCHASEOPTION_DISCOUNT
+_STOREITEM_PURCHASEOPTION.fields_by_name['inactive_discounts'].message_type = _STOREITEM_PURCHASEOPTION_DISCOUNT
+_STOREITEM_PURCHASEOPTION.containing_type = _STOREITEM
+_STOREITEM_SCREENSHOTS_SCREENSHOT.containing_type = _STOREITEM_SCREENSHOTS
+_STOREITEM_SCREENSHOTS.fields_by_name['all_ages_screenshots'].message_type = _STOREITEM_SCREENSHOTS_SCREENSHOT
+_STOREITEM_SCREENSHOTS.fields_by_name['mature_content_screenshots'].message_type = _STOREITEM_SCREENSHOTS_SCREENSHOT
+_STOREITEM_SCREENSHOTS.containing_type = _STOREITEM
+_STOREITEM_TRAILERS_VIDEOSOURCE.containing_type = _STOREITEM_TRAILERS
+_STOREITEM_TRAILERS_TRAILER.fields_by_name['trailer_480p'].message_type = _STOREITEM_TRAILERS_VIDEOSOURCE
+_STOREITEM_TRAILERS_TRAILER.fields_by_name['trailer_max'].message_type = _STOREITEM_TRAILERS_VIDEOSOURCE
+_STOREITEM_TRAILERS_TRAILER.fields_by_name['microtrailer'].message_type = _STOREITEM_TRAILERS_VIDEOSOURCE
+_STOREITEM_TRAILERS_TRAILER.containing_type = _STOREITEM_TRAILERS
+_STOREITEM_TRAILERS.fields_by_name['highlights'].message_type = _STOREITEM_TRAILERS_TRAILER
+_STOREITEM_TRAILERS.fields_by_name['other_trailers'].message_type = _STOREITEM_TRAILERS_TRAILER
+_STOREITEM_TRAILERS.containing_type = _STOREITEM
+_STOREITEM_SUPPORTEDLANGUAGE.containing_type = _STOREITEM
+_STOREITEM_FREEWEEKEND.containing_type = _STOREITEM
+_STOREITEM.fields_by_name['item_type'].enum_type = _ESTOREITEMTYPE
+_STOREITEM.fields_by_name['type'].enum_type = _ESTOREAPPTYPE
+_STOREITEM.fields_by_name['included_types'].enum_type = _ESTOREAPPTYPE
+_STOREITEM.fields_by_name['related_items'].message_type = _STOREITEM_RELATEDITEMS
+_STOREITEM.fields_by_name['content_descriptorids'].enum_type = enums__productinfo__pb2._ECONTENTDESCRIPTORID
+_STOREITEM.fields_by_name['categories'].message_type = _STOREITEM_CATEGORIES
+_STOREITEM.fields_by_name['reviews'].message_type = _STOREITEM_REVIEWS
+_STOREITEM.fields_by_name['basic_info'].message_type = _STOREITEM_BASICINFO
+_STOREITEM.fields_by_name['tags'].message_type = _STOREITEM_TAG
+_STOREITEM.fields_by_name['assets'].message_type = _STOREITEM_ASSETS
+_STOREITEM.fields_by_name['release'].message_type = _STOREITEM_RELEASEINFO
+_STOREITEM.fields_by_name['platforms'].message_type = _STOREITEM_PLATFORMS
+_STOREITEM.fields_by_name['game_rating'].message_type = _STOREGAMERATING
+_STOREITEM.fields_by_name['best_purchase_option'].message_type = _STOREITEM_PURCHASEOPTION
+_STOREITEM.fields_by_name['purchase_options'].message_type = _STOREITEM_PURCHASEOPTION
+_STOREITEM.fields_by_name['accessories'].message_type = _STOREITEM_PURCHASEOPTION
+_STOREITEM.fields_by_name['screenshots'].message_type = _STOREITEM_SCREENSHOTS
+_STOREITEM.fields_by_name['trailers'].message_type = _STOREITEM_TRAILERS
+_STOREITEM.fields_by_name['supported_languages'].message_type = _STOREITEM_SUPPORTEDLANGUAGE
+_STOREITEM.fields_by_name['free_weekend'].message_type = _STOREITEM_FREEWEEKEND
+_CSTOREBROWSE_GETITEMS_RESPONSE.fields_by_name['store_items'].message_type = _STOREITEM
+_CSTOREBROWSE_GETSTORECATEGORIES_RESPONSE_CATEGORY.fields_by_name['type'].enum_type = _ESTORECATEGORYTYPE
+_CSTOREBROWSE_GETSTORECATEGORIES_RESPONSE_CATEGORY.containing_type = _CSTOREBROWSE_GETSTORECATEGORIES_RESPONSE
+_CSTOREBROWSE_GETSTORECATEGORIES_RESPONSE.fields_by_name['categories'].message_type = _CSTOREBROWSE_GETSTORECATEGORIES_RESPONSE_CATEGORY
+DESCRIPTOR.message_types_by_name['StoreItemID'] = _STOREITEMID
+DESCRIPTOR.message_types_by_name['StoreBrowseContext'] = _STOREBROWSECONTEXT
+DESCRIPTOR.message_types_by_name['StoreBrowseItemDataRequest'] = _STOREBROWSEITEMDATAREQUEST
+DESCRIPTOR.message_types_by_name['CStoreBrowse_GetItems_Request'] = _CSTOREBROWSE_GETITEMS_REQUEST
+DESCRIPTOR.message_types_by_name['StoreGameRating'] = _STOREGAMERATING
+DESCRIPTOR.message_types_by_name['StoreItem'] = _STOREITEM
+DESCRIPTOR.message_types_by_name['CStoreBrowse_GetItems_Response'] = _CSTOREBROWSE_GETITEMS_RESPONSE
+DESCRIPTOR.message_types_by_name['CStoreBrowse_GetStoreCategories_Request'] = _CSTOREBROWSE_GETSTORECATEGORIES_REQUEST
+DESCRIPTOR.message_types_by_name['CStoreBrowse_GetStoreCategories_Response'] = _CSTOREBROWSE_GETSTORECATEGORIES_RESPONSE
+DESCRIPTOR.enum_types_by_name['EStoreItemType'] = _ESTOREITEMTYPE
+DESCRIPTOR.enum_types_by_name['EStoreAppType'] = _ESTOREAPPTYPE
+DESCRIPTOR.enum_types_by_name['EUserReviewScore'] = _EUSERREVIEWSCORE
+DESCRIPTOR.enum_types_by_name['EStoreCategoryType'] = _ESTORECATEGORYTYPE
+_sym_db.RegisterFileDescriptor(DESCRIPTOR)
+
+StoreItemID = _reflection.GeneratedProtocolMessageType('StoreItemID', (_message.Message,), {
+  'DESCRIPTOR' : _STOREITEMID,
+  '__module__' : 'steammessages_storebrowse_pb2'
+  # @@protoc_insertion_point(class_scope:StoreItemID)
+  })
+_sym_db.RegisterMessage(StoreItemID)
+
+StoreBrowseContext = _reflection.GeneratedProtocolMessageType('StoreBrowseContext', (_message.Message,), {
+  'DESCRIPTOR' : _STOREBROWSECONTEXT,
+  '__module__' : 'steammessages_storebrowse_pb2'
+  # @@protoc_insertion_point(class_scope:StoreBrowseContext)
+  })
+_sym_db.RegisterMessage(StoreBrowseContext)
+
+StoreBrowseItemDataRequest = _reflection.GeneratedProtocolMessageType('StoreBrowseItemDataRequest', (_message.Message,), {
+  'DESCRIPTOR' : _STOREBROWSEITEMDATAREQUEST,
+  '__module__' : 'steammessages_storebrowse_pb2'
+  # @@protoc_insertion_point(class_scope:StoreBrowseItemDataRequest)
+  })
+_sym_db.RegisterMessage(StoreBrowseItemDataRequest)
+
+CStoreBrowse_GetItems_Request = _reflection.GeneratedProtocolMessageType('CStoreBrowse_GetItems_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CSTOREBROWSE_GETITEMS_REQUEST,
+  '__module__' : 'steammessages_storebrowse_pb2'
+  # @@protoc_insertion_point(class_scope:CStoreBrowse_GetItems_Request)
+  })
+_sym_db.RegisterMessage(CStoreBrowse_GetItems_Request)
+
+StoreGameRating = _reflection.GeneratedProtocolMessageType('StoreGameRating', (_message.Message,), {
+  'DESCRIPTOR' : _STOREGAMERATING,
+  '__module__' : 'steammessages_storebrowse_pb2'
+  # @@protoc_insertion_point(class_scope:StoreGameRating)
+  })
+_sym_db.RegisterMessage(StoreGameRating)
+
+StoreItem = _reflection.GeneratedProtocolMessageType('StoreItem', (_message.Message,), {
+
+  'RelatedItems' : _reflection.GeneratedProtocolMessageType('RelatedItems', (_message.Message,), {
+    'DESCRIPTOR' : _STOREITEM_RELATEDITEMS,
+    '__module__' : 'steammessages_storebrowse_pb2'
+    # @@protoc_insertion_point(class_scope:StoreItem.RelatedItems)
+    })
+  ,
+
+  'Categories' : _reflection.GeneratedProtocolMessageType('Categories', (_message.Message,), {
+    'DESCRIPTOR' : _STOREITEM_CATEGORIES,
+    '__module__' : 'steammessages_storebrowse_pb2'
+    # @@protoc_insertion_point(class_scope:StoreItem.Categories)
+    })
+  ,
+
+  'Reviews' : _reflection.GeneratedProtocolMessageType('Reviews', (_message.Message,), {
+
+    'StoreReviewSummary' : _reflection.GeneratedProtocolMessageType('StoreReviewSummary', (_message.Message,), {
+      'DESCRIPTOR' : _STOREITEM_REVIEWS_STOREREVIEWSUMMARY,
+      '__module__' : 'steammessages_storebrowse_pb2'
+      # @@protoc_insertion_point(class_scope:StoreItem.Reviews.StoreReviewSummary)
+      })
+    ,
+    'DESCRIPTOR' : _STOREITEM_REVIEWS,
+    '__module__' : 'steammessages_storebrowse_pb2'
+    # @@protoc_insertion_point(class_scope:StoreItem.Reviews)
+    })
+  ,
+
+  'BasicInfo' : _reflection.GeneratedProtocolMessageType('BasicInfo', (_message.Message,), {
+
+    'CreatorHomeLink' : _reflection.GeneratedProtocolMessageType('CreatorHomeLink', (_message.Message,), {
+      'DESCRIPTOR' : _STOREITEM_BASICINFO_CREATORHOMELINK,
+      '__module__' : 'steammessages_storebrowse_pb2'
+      # @@protoc_insertion_point(class_scope:StoreItem.BasicInfo.CreatorHomeLink)
+      })
+    ,
+    'DESCRIPTOR' : _STOREITEM_BASICINFO,
+    '__module__' : 'steammessages_storebrowse_pb2'
+    # @@protoc_insertion_point(class_scope:StoreItem.BasicInfo)
+    })
+  ,
+
+  'Tag' : _reflection.GeneratedProtocolMessageType('Tag', (_message.Message,), {
+    'DESCRIPTOR' : _STOREITEM_TAG,
+    '__module__' : 'steammessages_storebrowse_pb2'
+    # @@protoc_insertion_point(class_scope:StoreItem.Tag)
+    })
+  ,
+
+  'Assets' : _reflection.GeneratedProtocolMessageType('Assets', (_message.Message,), {
+    'DESCRIPTOR' : _STOREITEM_ASSETS,
+    '__module__' : 'steammessages_storebrowse_pb2'
+    # @@protoc_insertion_point(class_scope:StoreItem.Assets)
+    })
+  ,
+
+  'ReleaseInfo' : _reflection.GeneratedProtocolMessageType('ReleaseInfo', (_message.Message,), {
+    'DESCRIPTOR' : _STOREITEM_RELEASEINFO,
+    '__module__' : 'steammessages_storebrowse_pb2'
+    # @@protoc_insertion_point(class_scope:StoreItem.ReleaseInfo)
+    })
+  ,
+
+  'Platforms' : _reflection.GeneratedProtocolMessageType('Platforms', (_message.Message,), {
+
+    'VRSupport' : _reflection.GeneratedProtocolMessageType('VRSupport', (_message.Message,), {
+      'DESCRIPTOR' : _STOREITEM_PLATFORMS_VRSUPPORT,
+      '__module__' : 'steammessages_storebrowse_pb2'
+      # @@protoc_insertion_point(class_scope:StoreItem.Platforms.VRSupport)
+      })
+    ,
+    'DESCRIPTOR' : _STOREITEM_PLATFORMS,
+    '__module__' : 'steammessages_storebrowse_pb2'
+    # @@protoc_insertion_point(class_scope:StoreItem.Platforms)
+    })
+  ,
+
+  'PurchaseOption' : _reflection.GeneratedProtocolMessageType('PurchaseOption', (_message.Message,), {
+
+    'Discount' : _reflection.GeneratedProtocolMessageType('Discount', (_message.Message,), {
+      'DESCRIPTOR' : _STOREITEM_PURCHASEOPTION_DISCOUNT,
+      '__module__' : 'steammessages_storebrowse_pb2'
+      # @@protoc_insertion_point(class_scope:StoreItem.PurchaseOption.Discount)
+      })
+    ,
+    'DESCRIPTOR' : _STOREITEM_PURCHASEOPTION,
+    '__module__' : 'steammessages_storebrowse_pb2'
+    # @@protoc_insertion_point(class_scope:StoreItem.PurchaseOption)
+    })
+  ,
+
+  'Screenshots' : _reflection.GeneratedProtocolMessageType('Screenshots', (_message.Message,), {
+
+    'Screenshot' : _reflection.GeneratedProtocolMessageType('Screenshot', (_message.Message,), {
+      'DESCRIPTOR' : _STOREITEM_SCREENSHOTS_SCREENSHOT,
+      '__module__' : 'steammessages_storebrowse_pb2'
+      # @@protoc_insertion_point(class_scope:StoreItem.Screenshots.Screenshot)
+      })
+    ,
+    'DESCRIPTOR' : _STOREITEM_SCREENSHOTS,
+    '__module__' : 'steammessages_storebrowse_pb2'
+    # @@protoc_insertion_point(class_scope:StoreItem.Screenshots)
+    })
+  ,
+
+  'Trailers' : _reflection.GeneratedProtocolMessageType('Trailers', (_message.Message,), {
+
+    'VideoSource' : _reflection.GeneratedProtocolMessageType('VideoSource', (_message.Message,), {
+      'DESCRIPTOR' : _STOREITEM_TRAILERS_VIDEOSOURCE,
+      '__module__' : 'steammessages_storebrowse_pb2'
+      # @@protoc_insertion_point(class_scope:StoreItem.Trailers.VideoSource)
+      })
+    ,
+
+    'Trailer' : _reflection.GeneratedProtocolMessageType('Trailer', (_message.Message,), {
+      'DESCRIPTOR' : _STOREITEM_TRAILERS_TRAILER,
+      '__module__' : 'steammessages_storebrowse_pb2'
+      # @@protoc_insertion_point(class_scope:StoreItem.Trailers.Trailer)
+      })
+    ,
+    'DESCRIPTOR' : _STOREITEM_TRAILERS,
+    '__module__' : 'steammessages_storebrowse_pb2'
+    # @@protoc_insertion_point(class_scope:StoreItem.Trailers)
+    })
+  ,
+
+  'SupportedLanguage' : _reflection.GeneratedProtocolMessageType('SupportedLanguage', (_message.Message,), {
+    'DESCRIPTOR' : _STOREITEM_SUPPORTEDLANGUAGE,
+    '__module__' : 'steammessages_storebrowse_pb2'
+    # @@protoc_insertion_point(class_scope:StoreItem.SupportedLanguage)
+    })
+  ,
+
+  'FreeWeekend' : _reflection.GeneratedProtocolMessageType('FreeWeekend', (_message.Message,), {
+    'DESCRIPTOR' : _STOREITEM_FREEWEEKEND,
+    '__module__' : 'steammessages_storebrowse_pb2'
+    # @@protoc_insertion_point(class_scope:StoreItem.FreeWeekend)
+    })
+  ,
+  'DESCRIPTOR' : _STOREITEM,
+  '__module__' : 'steammessages_storebrowse_pb2'
+  # @@protoc_insertion_point(class_scope:StoreItem)
+  })
+_sym_db.RegisterMessage(StoreItem)
+_sym_db.RegisterMessage(StoreItem.RelatedItems)
+_sym_db.RegisterMessage(StoreItem.Categories)
+_sym_db.RegisterMessage(StoreItem.Reviews)
+_sym_db.RegisterMessage(StoreItem.Reviews.StoreReviewSummary)
+_sym_db.RegisterMessage(StoreItem.BasicInfo)
+_sym_db.RegisterMessage(StoreItem.BasicInfo.CreatorHomeLink)
+_sym_db.RegisterMessage(StoreItem.Tag)
+_sym_db.RegisterMessage(StoreItem.Assets)
+_sym_db.RegisterMessage(StoreItem.ReleaseInfo)
+_sym_db.RegisterMessage(StoreItem.Platforms)
+_sym_db.RegisterMessage(StoreItem.Platforms.VRSupport)
+_sym_db.RegisterMessage(StoreItem.PurchaseOption)
+_sym_db.RegisterMessage(StoreItem.PurchaseOption.Discount)
+_sym_db.RegisterMessage(StoreItem.Screenshots)
+_sym_db.RegisterMessage(StoreItem.Screenshots.Screenshot)
+_sym_db.RegisterMessage(StoreItem.Trailers)
+_sym_db.RegisterMessage(StoreItem.Trailers.VideoSource)
+_sym_db.RegisterMessage(StoreItem.Trailers.Trailer)
+_sym_db.RegisterMessage(StoreItem.SupportedLanguage)
+_sym_db.RegisterMessage(StoreItem.FreeWeekend)
+
+CStoreBrowse_GetItems_Response = _reflection.GeneratedProtocolMessageType('CStoreBrowse_GetItems_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CSTOREBROWSE_GETITEMS_RESPONSE,
+  '__module__' : 'steammessages_storebrowse_pb2'
+  # @@protoc_insertion_point(class_scope:CStoreBrowse_GetItems_Response)
+  })
+_sym_db.RegisterMessage(CStoreBrowse_GetItems_Response)
+
+CStoreBrowse_GetStoreCategories_Request = _reflection.GeneratedProtocolMessageType('CStoreBrowse_GetStoreCategories_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CSTOREBROWSE_GETSTORECATEGORIES_REQUEST,
+  '__module__' : 'steammessages_storebrowse_pb2'
+  # @@protoc_insertion_point(class_scope:CStoreBrowse_GetStoreCategories_Request)
+  })
+_sym_db.RegisterMessage(CStoreBrowse_GetStoreCategories_Request)
+
+CStoreBrowse_GetStoreCategories_Response = _reflection.GeneratedProtocolMessageType('CStoreBrowse_GetStoreCategories_Response', (_message.Message,), {
+
+  'Category' : _reflection.GeneratedProtocolMessageType('Category', (_message.Message,), {
+    'DESCRIPTOR' : _CSTOREBROWSE_GETSTORECATEGORIES_RESPONSE_CATEGORY,
+    '__module__' : 'steammessages_storebrowse_pb2'
+    # @@protoc_insertion_point(class_scope:CStoreBrowse_GetStoreCategories_Response.Category)
+    })
+  ,
+  'DESCRIPTOR' : _CSTOREBROWSE_GETSTORECATEGORIES_RESPONSE,
+  '__module__' : 'steammessages_storebrowse_pb2'
+  # @@protoc_insertion_point(class_scope:CStoreBrowse_GetStoreCategories_Response)
+  })
+_sym_db.RegisterMessage(CStoreBrowse_GetStoreCategories_Response)
+_sym_db.RegisterMessage(CStoreBrowse_GetStoreCategories_Response.Category)
+
+
+DESCRIPTOR._options = None
+_STOREBROWSECONTEXT.fields_by_name['elanguage']._options = None
+_STOREBROWSECONTEXT.fields_by_name['country_code']._options = None
+_STOREBROWSECONTEXT.fields_by_name['steam_realm']._options = None
+_STOREBROWSEITEMDATAREQUEST.fields_by_name['include_tag_count']._options = None
+_STOREBROWSEITEMDATAREQUEST.fields_by_name['include_basic_info']._options = None
+_STOREBROWSEITEMDATAREQUEST.fields_by_name['include_supported_languages']._options = None
+_STOREGAMERATING.fields_by_name['type']._options = None
+_STOREGAMERATING.fields_by_name['rating']._options = None
+_STOREGAMERATING.fields_by_name['descriptors']._options = None
+_STOREGAMERATING.fields_by_name['interactive_elements']._options = None
+_STOREGAMERATING.fields_by_name['required_age']._options = None
+_STOREGAMERATING.fields_by_name['image_url']._options = None
+_STOREGAMERATING.fields_by_name['image_target']._options = None
+_STOREITEM_RELATEDITEMS.fields_by_name['parent_appid']._options = None
+_STOREITEM_CATEGORIES.fields_by_name['supported_player_categoryids']._options = None
+_STOREITEM_CATEGORIES.fields_by_name['feature_categoryids']._options = None
+_STOREITEM_CATEGORIES.fields_by_name['controller_categoryids']._options = None
+_STOREITEM_REVIEWS_STOREREVIEWSUMMARY.fields_by_name['percent_positive']._options = None
+_STOREITEM_REVIEWS_STOREREVIEWSUMMARY.fields_by_name['review_score_label']._options = None
+_STOREITEM_REVIEWS.fields_by_name['summary_filtered']._options = None
+_STOREITEM_REVIEWS.fields_by_name['summary_unfiltered']._options = None
+_STOREITEM_BASICINFO_CREATORHOMELINK.fields_by_name['creator_clan_account_id']._options = None
+_STOREITEM_BASICINFO.fields_by_name['capsule_headline']._options = None
+_STOREITEM_ASSETS.fields_by_name['asset_url_format']._options = None
+_STOREITEM_ASSETS.fields_by_name['header']._options = None
+_STOREITEM_ASSETS.fields_by_name['package_header']._options = None
+_STOREITEM_ASSETS.fields_by_name['hero_capsule']._options = None
+_STOREITEM_ASSETS.fields_by_name['hero_capsule_2x']._options = None
+_STOREITEM_ASSETS.fields_by_name['library_capsule']._options = None
+_STOREITEM_ASSETS.fields_by_name['library_capsule_2x']._options = None
+_STOREITEM_ASSETS.fields_by_name['library_hero']._options = None
+_STOREITEM_ASSETS.fields_by_name['library_hero_2x']._options = None
+_STOREITEM_ASSETS.fields_by_name['community_icon']._options = None
+_STOREITEM_RELEASEINFO.fields_by_name['steam_release_date']._options = None
+_STOREITEM_RELEASEINFO.fields_by_name['original_release_date']._options = None
+_STOREITEM_RELEASEINFO.fields_by_name['original_steam_release_date']._options = None
+_STOREITEM_RELEASEINFO.fields_by_name['is_coming_soon']._options = None
+_STOREITEM_RELEASEINFO.fields_by_name['is_preload']._options = None
+_STOREITEM_RELEASEINFO.fields_by_name['custom_release_date_message']._options = None
+_STOREITEM_RELEASEINFO.fields_by_name['is_abridged_release_date']._options = None
+_STOREITEM_RELEASEINFO.fields_by_name['coming_soon_display']._options = None
+_STOREITEM_PURCHASEOPTION.fields_by_name['purchase_option_name']._options = None
+_STOREITEM_PURCHASEOPTION.fields_by_name['final_price_in_cents']._options = None
+_STOREITEM_PURCHASEOPTION.fields_by_name['original_price_in_cents']._options = None
+_STOREITEM_PURCHASEOPTION.fields_by_name['formatted_final_price']._options = None
+_STOREITEM_PURCHASEOPTION.fields_by_name['discount_pct']._options = None
+_STOREITEM_PURCHASEOPTION.fields_by_name['bundle_discount_pct']._options = None
+_STOREITEM_PURCHASEOPTION.fields_by_name['active_discounts']._options = None
+_STOREITEM_PURCHASEOPTION.fields_by_name['user_active_discounts']._options = None
+_STOREITEM_PURCHASEOPTION.fields_by_name['inactive_discounts']._options = None
+_STOREITEM_PURCHASEOPTION.fields_by_name['is_commercial_license']._options = None
+_STOREITEM_PURCHASEOPTION.fields_by_name['should_suppress_discount_pct']._options = None
+_STOREITEM_SCREENSHOTS_SCREENSHOT.fields_by_name['filename']._options = None
+_STOREITEM_SCREENSHOTS_SCREENSHOT.fields_by_name['ordinal']._options = None
+_STOREITEM_SCREENSHOTS.fields_by_name['all_ages_screenshots']._options = None
+_STOREITEM_SCREENSHOTS.fields_by_name['mature_content_screenshots']._options = None
+_STOREITEM_TRAILERS_VIDEOSOURCE.fields_by_name['filename']._options = None
+_STOREITEM_TRAILERS_VIDEOSOURCE.fields_by_name['type']._options = None
+_STOREITEM_TRAILERS_TRAILER.fields_by_name['trailer_url_format']._options = None
+_STOREITEM_TRAILERS_TRAILER.fields_by_name['screenshot_medium']._options = None
+_STOREITEM_TRAILERS_TRAILER.fields_by_name['screenshot_full']._options = None
+_STOREITEM_TRAILERS_TRAILER.fields_by_name['trailer_base_id']._options = None
+_STOREITEM_TRAILERS.fields_by_name['highlights']._options = None
+_STOREITEM_TRAILERS.fields_by_name['other_trailers']._options = None
+_STOREITEM_SUPPORTEDLANGUAGE.fields_by_name['elanguage']._options = None
+_STOREITEM_FREEWEEKEND.fields_by_name['start_time']._options = None
+_STOREITEM_FREEWEEKEND.fields_by_name['end_time']._options = None
+_STOREITEM_FREEWEEKEND.fields_by_name['text']._options = None
+_STOREITEM.fields_by_name['success']._options = None
+_STOREITEM.fields_by_name['unvailable_for_country_restriction']._options = None
+_STOREITEM.fields_by_name['store_url_path']._options = None
+_STOREITEM.fields_by_name['appid']._options = None
+_STOREITEM.fields_by_name['type']._options = None
+_STOREITEM.fields_by_name['included_types']._options = None
+_STOREITEM.fields_by_name['included_appids']._options = None
+_STOREITEM.fields_by_name['game_rating']._options = None
+_STOREITEM.fields_by_name['best_purchase_option']._options = None
+_STOREITEM.fields_by_name['purchase_options']._options = None
+_STOREITEM.fields_by_name['accessories']._options = None
+_STOREITEM.fields_by_name['store_url_path_override']._options = None
+_STOREITEM.fields_by_name['free_weekend']._options = None
+_CSTOREBROWSE_GETSTORECATEGORIES_REQUEST.fields_by_name['elanguage']._options = None
+_CSTOREBROWSE_GETSTORECATEGORIES_RESPONSE_CATEGORY.fields_by_name['image_url']._options = None
+_CSTOREBROWSE_GETSTORECATEGORIES_RESPONSE_CATEGORY.fields_by_name['show_in_search']._options = None
+
+_STOREBROWSE = _descriptor.ServiceDescriptor(
+  name='StoreBrowse',
+  full_name='StoreBrowse',
+  file=DESCRIPTOR,
+  index=0,
+  serialized_options=b'\202\265\030\"APIs for accessing store item data',
+  create_key=_descriptor._internal_create_key,
+  serialized_start=13049,
+  serialized_end=13476,
+  methods=[
+  _descriptor.MethodDescriptor(
+    name='GetItems',
+    full_name='StoreBrowse.GetItems',
+    index=0,
+    containing_service=None,
+    input_type=_CSTOREBROWSE_GETITEMS_REQUEST,
+    output_type=_CSTOREBROWSE_GETITEMS_RESPONSE,
+    serialized_options=b'\202\265\030(Get information about items on the store',
+    create_key=_descriptor._internal_create_key,
+  ),
+  _descriptor.MethodDescriptor(
+    name='GetStoreCategories',
+    full_name='StoreBrowse.GetStoreCategories',
+    index=1,
+    containing_service=None,
+    input_type=_CSTOREBROWSE_GETSTORECATEGORIES_REQUEST,
+    output_type=_CSTOREBROWSE_GETSTORECATEGORIES_RESPONSE,
+    serialized_options=b'\202\265\030\207\001Get category definitions for store.  This is a public-facing API (as compared to StoreCatalog.GetCategories, which is intended for PHP)',
+    create_key=_descriptor._internal_create_key,
+  ),
+])
+_sym_db.RegisterServiceDescriptor(_STOREBROWSE)
+
+DESCRIPTOR.services_by_name['StoreBrowse'] = _STOREBROWSE
+
+StoreBrowse = service_reflection.GeneratedServiceType('StoreBrowse', (_service.Service,), dict(
+  DESCRIPTOR = _STOREBROWSE,
+  __module__ = 'steammessages_storebrowse_pb2'
+  ))
+
+StoreBrowse_Stub = service_reflection.GeneratedServiceStubType('StoreBrowse_Stub', (StoreBrowse,), dict(
+  DESCRIPTOR = _STOREBROWSE,
+  __module__ = 'steammessages_storebrowse_pb2'
+  ))
+
+
+# @@protoc_insertion_point(module_scope)
diff --git a/steam/protobufs/steammessages_timedtrial_pb2.py b/steam/protobufs/steammessages_timedtrial_pb2.py
index 97f7bd9..0fb1c50 100644
--- a/steam/protobufs/steammessages_timedtrial_pb2.py
+++ b/steam/protobufs/steammessages_timedtrial_pb2.py
@@ -1,9 +1,7 @@
 # -*- coding: utf-8 -*-
 # Generated by the protocol buffer compiler.  DO NOT EDIT!
 # source: steammessages_timedtrial.proto
-
-import sys
-_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1'))
+"""Generated protocol buffer code."""
 from google.protobuf import descriptor as _descriptor
 from google.protobuf import message as _message
 from google.protobuf import reflection as _reflection
@@ -15,6 +13,7 @@ from google.protobuf import service_reflection
 _sym_db = _symbol_database.Default()
 
 
+import steam.protobufs.steammessages_base_pb2 as steammessages__base__pb2
 import steam.protobufs.steammessages_unified_base_pb2 as steammessages__unified__base__pb2
 
 
@@ -22,10 +21,11 @@ DESCRIPTOR = _descriptor.FileDescriptor(
   name='steammessages_timedtrial.proto',
   package='',
   syntax='proto2',
-  serialized_options=_b('\220\001\001'),
-  serialized_pb=_b('\n\x1esteammessages_timedtrial.proto\x1a steammessages_unified_base.proto\"5\n$CTimedTrial_GetTimeRemaining_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\"\x84\x01\n%CTimedTrial_GetTimeRemaining_Response\x12\x16\n\x0eseconds_played\x18\x01 \x01(\r\x12\x17\n\x0fseconds_allowed\x18\x02 \x01(\r\x12\x11\n\tpackageid\x18\x03 \x01(\r\x12\x17\n\x0fmastersub_appid\x18\x04 \x01(\r\"K\n\"CTimedTrial_RecordPlaytime_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x16\n\x0eseconds_played\x18\x02 \x01(\r\"V\n#CTimedTrial_RecordPlaytime_Response\x12\x16\n\x0eseconds_played\x18\x01 \x01(\r\x12\x17\n\x0fseconds_allowed\x18\x02 \x01(\r\"2\n!CTimedTrial_ResetPlaytime_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\"U\n\"CTimedTrial_ResetPlaytime_Response\x12\x16\n\x0eseconds_played\x18\x01 \x01(\r\x12\x17\n\x0fseconds_allowed\x18\x02 \x01(\r2\x9b\x04\n\nTimedTrial\x12\xad\x01\n\x10GetTimeRemaining\x12%.CTimedTrial_GetTimeRemaining_Request\x1a&.CTimedTrial_GetTimeRemaining_Response\"J\x82\xb5\x18\x46Returns the amount of time a user has left on a timed trial for an app\x12\x94\x01\n\x0eRecordPlaytime\x12#.CTimedTrial_RecordPlaytime_Request\x1a$.CTimedTrial_RecordPlaytime_Response\"7\x82\xb5\x18\x33Updates the user\'s remaining playtime while in game\x12\x92\x01\n\rResetPlaytime\x12\".CTimedTrial_ResetPlaytime_Request\x1a#.CTimedTrial_ResetPlaytime_Response\"8\x82\xb5\x18\x34Reset the user\'s remaining playtime (developer only)\x1a\x31\x82\xb5\x18-A service to get user timed trial informationB\x03\x90\x01\x01')
+  serialized_options=b'\220\001\001',
+  create_key=_descriptor._internal_create_key,
+  serialized_pb=b'\n\x1esteammessages_timedtrial.proto\x1a\x18steammessages_base.proto\x1a steammessages_unified_base.proto\"5\n$CTimedTrial_GetTimeRemaining_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\"\x84\x01\n%CTimedTrial_GetTimeRemaining_Response\x12\x16\n\x0eseconds_played\x18\x01 \x01(\r\x12\x17\n\x0fseconds_allowed\x18\x02 \x01(\r\x12\x11\n\tpackageid\x18\x03 \x01(\r\x12\x17\n\x0fmastersub_appid\x18\x04 \x01(\r\"K\n\"CTimedTrial_RecordPlaytime_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x16\n\x0eseconds_played\x18\x02 \x01(\r\"V\n#CTimedTrial_RecordPlaytime_Response\x12\x16\n\x0eseconds_played\x18\x01 \x01(\r\x12\x17\n\x0fseconds_allowed\x18\x02 \x01(\r\"2\n!CTimedTrial_ResetPlaytime_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\"U\n\"CTimedTrial_ResetPlaytime_Response\x12\x16\n\x0eseconds_played\x18\x01 \x01(\r\x12\x17\n\x0fseconds_allowed\x18\x02 \x01(\r2\x9b\x04\n\nTimedTrial\x12\xad\x01\n\x10GetTimeRemaining\x12%.CTimedTrial_GetTimeRemaining_Request\x1a&.CTimedTrial_GetTimeRemaining_Response\"J\x82\xb5\x18\x46Returns the amount of time a user has left on a timed trial for an app\x12\x94\x01\n\x0eRecordPlaytime\x12#.CTimedTrial_RecordPlaytime_Request\x1a$.CTimedTrial_RecordPlaytime_Response\"7\x82\xb5\x18\x33Updates the user\'s remaining playtime while in game\x12\x92\x01\n\rResetPlaytime\x12\".CTimedTrial_ResetPlaytime_Request\x1a#.CTimedTrial_ResetPlaytime_Response\"8\x82\xb5\x18\x34Reset the user\'s remaining playtime (developer only)\x1a\x31\x82\xb5\x18-A service to get user timed trial informationB\x03\x90\x01\x01'
   ,
-  dependencies=[steammessages__unified__base__pb2.DESCRIPTOR,])
+  dependencies=[steammessages__base__pb2.DESCRIPTOR,steammessages__unified__base__pb2.DESCRIPTOR,])
 
 
 
@@ -36,6 +36,7 @@ _CTIMEDTRIAL_GETTIMEREMAINING_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CTimedTrial_GetTimeRemaining_Request.appid', index=0,
@@ -43,7 +44,7 @@ _CTIMEDTRIAL_GETTIMEREMAINING_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -56,8 +57,8 @@ _CTIMEDTRIAL_GETTIMEREMAINING_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=68,
-  serialized_end=121,
+  serialized_start=94,
+  serialized_end=147,
 )
 
 
@@ -67,6 +68,7 @@ _CTIMEDTRIAL_GETTIMEREMAINING_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='seconds_played', full_name='CTimedTrial_GetTimeRemaining_Response.seconds_played', index=0,
@@ -74,28 +76,28 @@ _CTIMEDTRIAL_GETTIMEREMAINING_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='seconds_allowed', full_name='CTimedTrial_GetTimeRemaining_Response.seconds_allowed', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='packageid', full_name='CTimedTrial_GetTimeRemaining_Response.packageid', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='mastersub_appid', full_name='CTimedTrial_GetTimeRemaining_Response.mastersub_appid', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -108,8 +110,8 @@ _CTIMEDTRIAL_GETTIMEREMAINING_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=124,
-  serialized_end=256,
+  serialized_start=150,
+  serialized_end=282,
 )
 
 
@@ -119,6 +121,7 @@ _CTIMEDTRIAL_RECORDPLAYTIME_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CTimedTrial_RecordPlaytime_Request.appid', index=0,
@@ -126,14 +129,14 @@ _CTIMEDTRIAL_RECORDPLAYTIME_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='seconds_played', full_name='CTimedTrial_RecordPlaytime_Request.seconds_played', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -146,8 +149,8 @@ _CTIMEDTRIAL_RECORDPLAYTIME_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=258,
-  serialized_end=333,
+  serialized_start=284,
+  serialized_end=359,
 )
 
 
@@ -157,6 +160,7 @@ _CTIMEDTRIAL_RECORDPLAYTIME_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='seconds_played', full_name='CTimedTrial_RecordPlaytime_Response.seconds_played', index=0,
@@ -164,14 +168,14 @@ _CTIMEDTRIAL_RECORDPLAYTIME_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='seconds_allowed', full_name='CTimedTrial_RecordPlaytime_Response.seconds_allowed', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -184,8 +188,8 @@ _CTIMEDTRIAL_RECORDPLAYTIME_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=335,
-  serialized_end=421,
+  serialized_start=361,
+  serialized_end=447,
 )
 
 
@@ -195,6 +199,7 @@ _CTIMEDTRIAL_RESETPLAYTIME_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CTimedTrial_ResetPlaytime_Request.appid', index=0,
@@ -202,7 +207,7 @@ _CTIMEDTRIAL_RESETPLAYTIME_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -215,8 +220,8 @@ _CTIMEDTRIAL_RESETPLAYTIME_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=423,
-  serialized_end=473,
+  serialized_start=449,
+  serialized_end=499,
 )
 
 
@@ -226,6 +231,7 @@ _CTIMEDTRIAL_RESETPLAYTIME_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='seconds_played', full_name='CTimedTrial_ResetPlaytime_Response.seconds_played', index=0,
@@ -233,14 +239,14 @@ _CTIMEDTRIAL_RESETPLAYTIME_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='seconds_allowed', full_name='CTimedTrial_ResetPlaytime_Response.seconds_allowed', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -253,8 +259,8 @@ _CTIMEDTRIAL_RESETPLAYTIME_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=475,
-  serialized_end=560,
+  serialized_start=501,
+  serialized_end=586,
 )
 
 DESCRIPTOR.message_types_by_name['CTimedTrial_GetTimeRemaining_Request'] = _CTIMEDTRIAL_GETTIMEREMAINING_REQUEST
@@ -265,46 +271,46 @@ DESCRIPTOR.message_types_by_name['CTimedTrial_ResetPlaytime_Request'] = _CTIMEDT
 DESCRIPTOR.message_types_by_name['CTimedTrial_ResetPlaytime_Response'] = _CTIMEDTRIAL_RESETPLAYTIME_RESPONSE
 _sym_db.RegisterFileDescriptor(DESCRIPTOR)
 
-CTimedTrial_GetTimeRemaining_Request = _reflection.GeneratedProtocolMessageType('CTimedTrial_GetTimeRemaining_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CTIMEDTRIAL_GETTIMEREMAINING_REQUEST,
-  __module__ = 'steammessages_timedtrial_pb2'
+CTimedTrial_GetTimeRemaining_Request = _reflection.GeneratedProtocolMessageType('CTimedTrial_GetTimeRemaining_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CTIMEDTRIAL_GETTIMEREMAINING_REQUEST,
+  '__module__' : 'steammessages_timedtrial_pb2'
   # @@protoc_insertion_point(class_scope:CTimedTrial_GetTimeRemaining_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CTimedTrial_GetTimeRemaining_Request)
 
-CTimedTrial_GetTimeRemaining_Response = _reflection.GeneratedProtocolMessageType('CTimedTrial_GetTimeRemaining_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CTIMEDTRIAL_GETTIMEREMAINING_RESPONSE,
-  __module__ = 'steammessages_timedtrial_pb2'
+CTimedTrial_GetTimeRemaining_Response = _reflection.GeneratedProtocolMessageType('CTimedTrial_GetTimeRemaining_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CTIMEDTRIAL_GETTIMEREMAINING_RESPONSE,
+  '__module__' : 'steammessages_timedtrial_pb2'
   # @@protoc_insertion_point(class_scope:CTimedTrial_GetTimeRemaining_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CTimedTrial_GetTimeRemaining_Response)
 
-CTimedTrial_RecordPlaytime_Request = _reflection.GeneratedProtocolMessageType('CTimedTrial_RecordPlaytime_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CTIMEDTRIAL_RECORDPLAYTIME_REQUEST,
-  __module__ = 'steammessages_timedtrial_pb2'
+CTimedTrial_RecordPlaytime_Request = _reflection.GeneratedProtocolMessageType('CTimedTrial_RecordPlaytime_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CTIMEDTRIAL_RECORDPLAYTIME_REQUEST,
+  '__module__' : 'steammessages_timedtrial_pb2'
   # @@protoc_insertion_point(class_scope:CTimedTrial_RecordPlaytime_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CTimedTrial_RecordPlaytime_Request)
 
-CTimedTrial_RecordPlaytime_Response = _reflection.GeneratedProtocolMessageType('CTimedTrial_RecordPlaytime_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CTIMEDTRIAL_RECORDPLAYTIME_RESPONSE,
-  __module__ = 'steammessages_timedtrial_pb2'
+CTimedTrial_RecordPlaytime_Response = _reflection.GeneratedProtocolMessageType('CTimedTrial_RecordPlaytime_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CTIMEDTRIAL_RECORDPLAYTIME_RESPONSE,
+  '__module__' : 'steammessages_timedtrial_pb2'
   # @@protoc_insertion_point(class_scope:CTimedTrial_RecordPlaytime_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CTimedTrial_RecordPlaytime_Response)
 
-CTimedTrial_ResetPlaytime_Request = _reflection.GeneratedProtocolMessageType('CTimedTrial_ResetPlaytime_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CTIMEDTRIAL_RESETPLAYTIME_REQUEST,
-  __module__ = 'steammessages_timedtrial_pb2'
+CTimedTrial_ResetPlaytime_Request = _reflection.GeneratedProtocolMessageType('CTimedTrial_ResetPlaytime_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CTIMEDTRIAL_RESETPLAYTIME_REQUEST,
+  '__module__' : 'steammessages_timedtrial_pb2'
   # @@protoc_insertion_point(class_scope:CTimedTrial_ResetPlaytime_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CTimedTrial_ResetPlaytime_Request)
 
-CTimedTrial_ResetPlaytime_Response = _reflection.GeneratedProtocolMessageType('CTimedTrial_ResetPlaytime_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CTIMEDTRIAL_RESETPLAYTIME_RESPONSE,
-  __module__ = 'steammessages_timedtrial_pb2'
+CTimedTrial_ResetPlaytime_Response = _reflection.GeneratedProtocolMessageType('CTimedTrial_ResetPlaytime_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CTIMEDTRIAL_RESETPLAYTIME_RESPONSE,
+  '__module__' : 'steammessages_timedtrial_pb2'
   # @@protoc_insertion_point(class_scope:CTimedTrial_ResetPlaytime_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CTimedTrial_ResetPlaytime_Response)
 
 
@@ -315,9 +321,10 @@ _TIMEDTRIAL = _descriptor.ServiceDescriptor(
   full_name='TimedTrial',
   file=DESCRIPTOR,
   index=0,
-  serialized_options=_b('\202\265\030-A service to get user timed trial information'),
-  serialized_start=563,
-  serialized_end=1102,
+  serialized_options=b'\202\265\030-A service to get user timed trial information',
+  create_key=_descriptor._internal_create_key,
+  serialized_start=589,
+  serialized_end=1128,
   methods=[
   _descriptor.MethodDescriptor(
     name='GetTimeRemaining',
@@ -326,7 +333,8 @@ _TIMEDTRIAL = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CTIMEDTRIAL_GETTIMEREMAINING_REQUEST,
     output_type=_CTIMEDTRIAL_GETTIMEREMAINING_RESPONSE,
-    serialized_options=_b('\202\265\030FReturns the amount of time a user has left on a timed trial for an app'),
+    serialized_options=b'\202\265\030FReturns the amount of time a user has left on a timed trial for an app',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='RecordPlaytime',
@@ -335,7 +343,8 @@ _TIMEDTRIAL = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CTIMEDTRIAL_RECORDPLAYTIME_REQUEST,
     output_type=_CTIMEDTRIAL_RECORDPLAYTIME_RESPONSE,
-    serialized_options=_b('\202\265\0303Updates the user\'s remaining playtime while in game'),
+    serialized_options=b'\202\265\0303Updates the user\'s remaining playtime while in game',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='ResetPlaytime',
@@ -344,7 +353,8 @@ _TIMEDTRIAL = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CTIMEDTRIAL_RESETPLAYTIME_REQUEST,
     output_type=_CTIMEDTRIAL_RESETPLAYTIME_RESPONSE,
-    serialized_options=_b('\202\265\0304Reset the user\'s remaining playtime (developer only)'),
+    serialized_options=b'\202\265\0304Reset the user\'s remaining playtime (developer only)',
+    create_key=_descriptor._internal_create_key,
   ),
 ])
 _sym_db.RegisterServiceDescriptor(_TIMEDTRIAL)
diff --git a/steam/protobufs/steammessages_twofactor_pb2.py b/steam/protobufs/steammessages_twofactor_pb2.py
index 8d16f55..c8f6bc6 100644
--- a/steam/protobufs/steammessages_twofactor_pb2.py
+++ b/steam/protobufs/steammessages_twofactor_pb2.py
@@ -1,9 +1,7 @@
 # -*- coding: utf-8 -*-
 # Generated by the protocol buffer compiler.  DO NOT EDIT!
 # source: steammessages_twofactor.proto
-
-import sys
-_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1'))
+"""Generated protocol buffer code."""
 from google.protobuf import descriptor as _descriptor
 from google.protobuf import message as _message
 from google.protobuf import reflection as _reflection
@@ -15,6 +13,7 @@ from google.protobuf import service_reflection
 _sym_db = _symbol_database.Default()
 
 
+import steam.protobufs.steammessages_base_pb2 as steammessages__base__pb2
 import steam.protobufs.steammessages_unified_base_pb2 as steammessages__unified__base__pb2
 
 
@@ -22,10 +21,11 @@ DESCRIPTOR = _descriptor.FileDescriptor(
   name='steammessages_twofactor.proto',
   package='',
   syntax='proto2',
-  serialized_options=_b('\220\001\001'),
-  serialized_pb=_b('\n\x1dsteammessages_twofactor.proto\x1a steammessages_unified_base.proto\"@\n\x19\x43TwoFactor_Status_Request\x12#\n\x07steamid\x18\x01 \x01(\x06\x42\x12\x82\xb5\x18\x0esteamid to use\"\xc6\x07\n\x1a\x43TwoFactor_Status_Response\x12&\n\x05state\x18\x01 \x01(\rB\x17\x82\xb5\x18\x13\x41uthenticator state\x12=\n\x13inactivation_reason\x18\x02 \x01(\rB \x82\xb5\x18\x1cInactivation reason (if any)\x12\x35\n\x12\x61uthenticator_type\x18\x03 \x01(\rB\x19\x82\xb5\x18\x15Type of authenticator\x12L\n\x15\x61uthenticator_allowed\x18\x04 \x01(\x08\x42-\x82\xb5\x18)Account allowed to have an authenticator?\x12;\n\x11steamguard_scheme\x18\x05 \x01(\rB \x82\xb5\x18\x1cSteam Guard scheme in effect\x12\x41\n\ttoken_gid\x18\x06 \x01(\tB.\x82\xb5\x18*String rep of token GID assigned by server\x12\x42\n\x0f\x65mail_validated\x18\x07 \x01(\x08\x42)\x82\xb5\x18%Account has verified email capability\x12?\n\x11\x64\x65vice_identifier\x18\x08 \x01(\tB$\x82\xb5\x18 Authenticator (phone) identifier\x12\x34\n\x0ctime_created\x18\t \x01(\rB\x1e\x82\xb5\x18\x1aWhen the token was created\x12W\n\x1drevocation_attempts_remaining\x18\n \x01(\rB0\x82\xb5\x18,Number of revocation code attempts remaining\x12^\n\x10\x63lassified_agent\x18\x0b \x01(\tBD\x82\xb5\x18@Agent that added the authenticator (e.g., ios / android / other)\x12g\n\x1c\x61llow_external_authenticator\x18\x0c \x01(\x08\x42\x41\x82\xb5\x18=Allow a third-party authenticator (in addition to two-factor)\x12_\n\x10time_transferred\x18\r \x01(\rBE\x82\xb5\x18\x41When the token was transferred from another device, if applicable\"\xb2\x03\n#CTwoFactor_AddAuthenticator_Request\x12#\n\x07steamid\x18\x01 \x01(\x06\x42\x12\x82\xb5\x18\x0esteamid to use\x12:\n\x12\x61uthenticator_time\x18\x02 \x01(\x04\x42\x1e\x82\xb5\x18\x1a\x43urrent authenticator time\x12?\n\rserial_number\x18\x03 \x01(\x06\x42(\x82\xb5\x18$locally computed serial (deprecated)\x12\x32\n\x12\x61uthenticator_type\x18\x04 \x01(\rB\x16\x82\xb5\x18\x12\x41uthenticator type\x12\x37\n\x11\x64\x65vice_identifier\x18\x05 \x01(\tB\x1c\x82\xb5\x18\x18\x41uthenticator identifier\x12\x41\n\x0csms_phone_id\x18\x06 \x01(\tB+\x82\xb5\x18\'ID of phone to use for SMS verification\x12\x39\n\x0chttp_headers\x18\x07 \x03(\tB#\x82\xb5\x18\x1fHTTP headers alternating by K/V\"\xf3\x04\n$CTwoFactor_AddAuthenticator_Response\x12I\n\rshared_secret\x18\x01 \x01(\x0c\x42\x32\x82\xb5\x18.Shared secret between server and authenticator\x12I\n\rserial_number\x18\x02 \x01(\x06\x42\x32\x82\xb5\x18.Authenticator serial number (unique per token)\x12>\n\x0frevocation_code\x18\x03 \x01(\tB%\x82\xb5\x18!code used to revoke authenticator\x12+\n\x03uri\x18\x04 \x01(\tB\x1e\x82\xb5\x18\x1aURI for QR code generation\x12,\n\x0bserver_time\x18\x05 \x01(\x04\x42\x17\x82\xb5\x18\x13\x43urrent server time\x12\x41\n\x0c\x61\x63\x63ount_name\x18\x06 \x01(\tB+\x82\xb5\x18\'Account name to display on token client\x12\x33\n\ttoken_gid\x18\x07 \x01(\tB \x82\xb5\x18\x1cToken GID assigned by server\x12V\n\x0fidentity_secret\x18\x08 \x01(\x0c\x42=\x82\xb5\x18\x39Secret used for identity attestation (e.g., for eventing)\x12)\n\x08secret_1\x18\t \x01(\x0c\x42\x17\x82\xb5\x18\x13Spare shared secret\x12\x1f\n\x06status\x18\n \x01(\x05\x42\x0f\x82\xb5\x18\x0bResult code\"\xdd\x01\n\x1c\x43TwoFactor_SendEmail_Request\x12#\n\x07steamid\x18\x01 \x01(\x06\x42\x12\x82\xb5\x18\x0eSteamid to use\x12\x46\n\nemail_type\x18\x02 \x01(\rB2\x82\xb5\x18.Type of email to send (ETwoFactorEmailType::*)\x12P\n\x17include_activation_code\x18\x03 \x01(\x08\x42/\x82\xb5\x18+Include activation code in email parameters\"\x1f\n\x1d\x43TwoFactor_SendEmail_Response\"\xc3\x02\n+CTwoFactor_FinalizeAddAuthenticator_Request\x12#\n\x07steamid\x18\x01 \x01(\x06\x42\x12\x82\xb5\x18\x0esteamid to use\x12\x31\n\x12\x61uthenticator_code\x18\x02 \x01(\tB\x15\x82\xb5\x18\x11\x43urrent auth code\x12:\n\x12\x61uthenticator_time\x18\x03 \x01(\x04\x42\x1e\x82\xb5\x18\x1a\x43urrent authenticator time\x12\x45\n\x0f\x61\x63tivation_code\x18\x04 \x01(\tB,\x82\xb5\x18(Activation code from out-of-band message\x12\x39\n\x0chttp_headers\x18\x05 \x03(\tB#\x82\xb5\x18\x1fHTTP headers alternating by K/V\"\xe9\x01\n,CTwoFactor_FinalizeAddAuthenticator_Response\x12:\n\x07success\x18\x01 \x01(\x08\x42)\x82\xb5\x18%True if succeeded, or want more tries\x12.\n\twant_more\x18\x02 \x01(\x08\x42\x1b\x82\xb5\x18\x17True if want more tries\x12,\n\x0bserver_time\x18\x03 \x01(\x04\x42\x17\x82\xb5\x18\x13\x43urrent server time\x12\x1f\n\x06status\x18\x04 \x01(\x05\x42\x0f\x82\xb5\x18\x0bResult code\"\xcb\x02\n&CTwoFactor_RemoveAuthenticator_Request\x12<\n\x0frevocation_code\x18\x02 \x01(\tB#\x82\xb5\x18\x1fPassword needed to remove token\x12H\n\x11revocation_reason\x18\x05 \x01(\rB-\x82\xb5\x18)Reason the authenticator is being removed\x12O\n\x11steamguard_scheme\x18\x06 \x01(\rB4\x82\xb5\x18\x30Type of Steam Guard to use once token is removed\x12H\n\x1dremove_all_steamguard_cookies\x18\x07 \x01(\x08\x42!\x82\xb5\x18\x1dRemove all steamguard cookies\"\xfe\x01\n\'CTwoFactor_RemoveAuthenticator_Response\x12L\n\x07success\x18\x01 \x01(\x08\x42;\x82\xb5\x18\x37True if request succeeeded. The mobile app checks this.\x12,\n\x0bserver_time\x18\x03 \x01(\x04\x42\x17\x82\xb5\x18\x13\x43urrent server time\x12W\n\x1drevocation_attempts_remaining\x18\x05 \x01(\rB0\x82\xb5\x18,Number of revocation code attempts remaining\"7\n\'CTwoFactor_CreateEmergencyCodes_Request\x12\x0c\n\x04\x63ode\x18\x01 \x01(\t\"N\n(CTwoFactor_CreateEmergencyCodes_Response\x12\"\n\x05\x63odes\x18\x01 \x03(\tB\x13\x82\xb5\x18\x0f\x45mergency codes\"O\n(CTwoFactor_DestroyEmergencyCodes_Request\x12#\n\x07steamid\x18\x01 \x01(\x06\x42\x12\x82\xb5\x18\x0esteamid to use\"+\n)CTwoFactor_DestroyEmergencyCodes_Response\"F\n CTwoFactor_ValidateToken_Request\x12\"\n\x04\x63ode\x18\x01 \x01(\tB\x14\x82\xb5\x18\x10\x63ode to validate\"L\n!CTwoFactor_ValidateToken_Response\x12\'\n\x05valid\x18\x01 \x01(\x08\x42\x18\x82\xb5\x18\x14result of validation2\x84\n\n\tTwoFactor\x12\x8c\x01\n\x0bQueryStatus\x12\x1a.CTwoFactor_Status_Request\x1a\x1b.CTwoFactor_Status_Response\"D\x82\xb5\x18@Get two-factor authentication settings for the logged-in account\x12\x9a\x01\n\x10\x41\x64\x64\x41uthenticator\x12$.CTwoFactor_AddAuthenticator_Request\x1a%.CTwoFactor_AddAuthenticator_Response\"9\x82\xb5\x18\x35\x41\x64\x64 two-factor authenticator to the logged-in account\x12i\n\tSendEmail\x12\x1d.CTwoFactor_SendEmail_Request\x1a\x1e.CTwoFactor_SendEmail_Response\"\x1d\x82\xb5\x18\x19Send email to the account\x12\xc1\x01\n\x18\x46inalizeAddAuthenticator\x12,.CTwoFactor_FinalizeAddAuthenticator_Request\x1a-.CTwoFactor_FinalizeAddAuthenticator_Response\"H\x82\xb5\x18\x44\x46inalize two-factor authentication addition to the logged-in account\x12\xb2\x01\n\x13RemoveAuthenticator\x12\'.CTwoFactor_RemoveAuthenticator_Request\x1a(.CTwoFactor_RemoveAuthenticator_Response\"H\x82\xb5\x18\x44Remove two-factor authentication addition from the logged-in account\x12\x97\x01\n\x14\x43reateEmergencyCodes\x12(.CTwoFactor_CreateEmergencyCodes_Request\x1a).CTwoFactor_CreateEmergencyCodes_Response\"*\x82\xb5\x18&Generate emergency authenticator codes\x12\xa9\x01\n\x15\x44\x65stroyEmergencyCodes\x12).CTwoFactor_DestroyEmergencyCodes_Request\x1a*.CTwoFactor_DestroyEmergencyCodes_Response\"9\x82\xb5\x18\x35\x44\x65stroy emergency authenticator codes for the account\x12z\n\rValidateToken\x12!.CTwoFactor_ValidateToken_Request\x1a\".CTwoFactor_ValidateToken_Response\"\"\x82\xb5\x18\x1eValidate (and consume) a token\x1a%\x82\xb5\x18!Two Factor Authentication ServiceB\x03\x90\x01\x01')
+  serialized_options=b'\220\001\001',
+  create_key=_descriptor._internal_create_key,
+  serialized_pb=b'\n\x1dsteammessages_twofactor.proto\x1a\x18steammessages_base.proto\x1a steammessages_unified_base.proto\"@\n\x19\x43TwoFactor_Status_Request\x12#\n\x07steamid\x18\x01 \x01(\x06\x42\x12\x82\xb5\x18\x0esteamid to use\"\xc6\x07\n\x1a\x43TwoFactor_Status_Response\x12&\n\x05state\x18\x01 \x01(\rB\x17\x82\xb5\x18\x13\x41uthenticator state\x12=\n\x13inactivation_reason\x18\x02 \x01(\rB \x82\xb5\x18\x1cInactivation reason (if any)\x12\x35\n\x12\x61uthenticator_type\x18\x03 \x01(\rB\x19\x82\xb5\x18\x15Type of authenticator\x12L\n\x15\x61uthenticator_allowed\x18\x04 \x01(\x08\x42-\x82\xb5\x18)Account allowed to have an authenticator?\x12;\n\x11steamguard_scheme\x18\x05 \x01(\rB \x82\xb5\x18\x1cSteam Guard scheme in effect\x12\x41\n\ttoken_gid\x18\x06 \x01(\tB.\x82\xb5\x18*String rep of token GID assigned by server\x12\x42\n\x0f\x65mail_validated\x18\x07 \x01(\x08\x42)\x82\xb5\x18%Account has verified email capability\x12?\n\x11\x64\x65vice_identifier\x18\x08 \x01(\tB$\x82\xb5\x18 Authenticator (phone) identifier\x12\x34\n\x0ctime_created\x18\t \x01(\rB\x1e\x82\xb5\x18\x1aWhen the token was created\x12W\n\x1drevocation_attempts_remaining\x18\n \x01(\rB0\x82\xb5\x18,Number of revocation code attempts remaining\x12^\n\x10\x63lassified_agent\x18\x0b \x01(\tBD\x82\xb5\x18@Agent that added the authenticator (e.g., ios / android / other)\x12g\n\x1c\x61llow_external_authenticator\x18\x0c \x01(\x08\x42\x41\x82\xb5\x18=Allow a third-party authenticator (in addition to two-factor)\x12_\n\x10time_transferred\x18\r \x01(\rBE\x82\xb5\x18\x41When the token was transferred from another device, if applicable\"\xf3\x03\n#CTwoFactor_AddAuthenticator_Request\x12#\n\x07steamid\x18\x01 \x01(\x06\x42\x12\x82\xb5\x18\x0esteamid to use\x12:\n\x12\x61uthenticator_time\x18\x02 \x01(\x04\x42\x1e\x82\xb5\x18\x1a\x43urrent authenticator time\x12?\n\rserial_number\x18\x03 \x01(\x06\x42(\x82\xb5\x18$locally computed serial (deprecated)\x12\x32\n\x12\x61uthenticator_type\x18\x04 \x01(\rB\x16\x82\xb5\x18\x12\x41uthenticator type\x12\x37\n\x11\x64\x65vice_identifier\x18\x05 \x01(\tB\x1c\x82\xb5\x18\x18\x41uthenticator identifier\x12\x41\n\x0csms_phone_id\x18\x06 \x01(\tB+\x82\xb5\x18\'ID of phone to use for SMS verification\x12\x39\n\x0chttp_headers\x18\x07 \x03(\tB#\x82\xb5\x18\x1fHTTP headers alternating by K/V\x12?\n\x07version\x18\x08 \x01(\r:\x01\x31\x42+\x82\xb5\x18\'What the version of our token should be\"\xca\x05\n$CTwoFactor_AddAuthenticator_Response\x12I\n\rshared_secret\x18\x01 \x01(\x0c\x42\x32\x82\xb5\x18.Shared secret between server and authenticator\x12I\n\rserial_number\x18\x02 \x01(\x06\x42\x32\x82\xb5\x18.Authenticator serial number (unique per token)\x12>\n\x0frevocation_code\x18\x03 \x01(\tB%\x82\xb5\x18!code used to revoke authenticator\x12+\n\x03uri\x18\x04 \x01(\tB\x1e\x82\xb5\x18\x1aURI for QR code generation\x12,\n\x0bserver_time\x18\x05 \x01(\x04\x42\x17\x82\xb5\x18\x13\x43urrent server time\x12\x41\n\x0c\x61\x63\x63ount_name\x18\x06 \x01(\tB+\x82\xb5\x18\'Account name to display on token client\x12\x33\n\ttoken_gid\x18\x07 \x01(\tB \x82\xb5\x18\x1cToken GID assigned by server\x12V\n\x0fidentity_secret\x18\x08 \x01(\x0c\x42=\x82\xb5\x18\x39Secret used for identity attestation (e.g., for eventing)\x12)\n\x08secret_1\x18\t \x01(\x0c\x42\x17\x82\xb5\x18\x13Spare shared secret\x12\x1f\n\x06status\x18\n \x01(\x05\x42\x0f\x82\xb5\x18\x0bResult code\x12U\n\x11phone_number_hint\x18\x0b \x01(\tB:\x82\xb5\x18\x36\x61 portion of the phone number the SMS code was sent to\"\xdd\x01\n\x1c\x43TwoFactor_SendEmail_Request\x12#\n\x07steamid\x18\x01 \x01(\x06\x42\x12\x82\xb5\x18\x0eSteamid to use\x12\x46\n\nemail_type\x18\x02 \x01(\rB2\x82\xb5\x18.Type of email to send (ETwoFactorEmailType::*)\x12P\n\x17include_activation_code\x18\x03 \x01(\x08\x42/\x82\xb5\x18+Include activation code in email parameters\"\x1f\n\x1d\x43TwoFactor_SendEmail_Response\"\xc7\x03\n+CTwoFactor_FinalizeAddAuthenticator_Request\x12#\n\x07steamid\x18\x01 \x01(\x06\x42\x12\x82\xb5\x18\x0esteamid to use\x12\x31\n\x12\x61uthenticator_code\x18\x02 \x01(\tB\x15\x82\xb5\x18\x11\x43urrent auth code\x12:\n\x12\x61uthenticator_time\x18\x03 \x01(\x04\x42\x1e\x82\xb5\x18\x1a\x43urrent authenticator time\x12\x45\n\x0f\x61\x63tivation_code\x18\x04 \x01(\tB,\x82\xb5\x18(Activation code from out-of-band message\x12\x39\n\x0chttp_headers\x18\x05 \x03(\tB#\x82\xb5\x18\x1fHTTP headers alternating by K/V\x12\x81\x01\n\x11validate_sms_code\x18\x06 \x01(\x08\x42\x66\x82\xb5\x18\x62When finalizing with an SMS code, pass the request on to the PhoneService to update its state too.\"\xe9\x01\n,CTwoFactor_FinalizeAddAuthenticator_Response\x12:\n\x07success\x18\x01 \x01(\x08\x42)\x82\xb5\x18%True if succeeded, or want more tries\x12.\n\twant_more\x18\x02 \x01(\x08\x42\x1b\x82\xb5\x18\x17True if want more tries\x12,\n\x0bserver_time\x18\x03 \x01(\x04\x42\x17\x82\xb5\x18\x13\x43urrent server time\x12\x1f\n\x06status\x18\x04 \x01(\x05\x42\x0f\x82\xb5\x18\x0bResult code\"\xb2\x01\n%CTwoFactor_UpdateTokenVersion_Request\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12<\n\x07version\x18\x02 \x01(\rB+\x82\xb5\x18\'What the version of our token should be\x12:\n\tsignature\x18\x03 \x01(\x0c\x42\'\x82\xb5\x18#HMAC digest over user\'s private key\"(\n&CTwoFactor_UpdateTokenVersion_Response\"\xcb\x02\n&CTwoFactor_RemoveAuthenticator_Request\x12<\n\x0frevocation_code\x18\x02 \x01(\tB#\x82\xb5\x18\x1fPassword needed to remove token\x12H\n\x11revocation_reason\x18\x05 \x01(\rB-\x82\xb5\x18)Reason the authenticator is being removed\x12O\n\x11steamguard_scheme\x18\x06 \x01(\rB4\x82\xb5\x18\x30Type of Steam Guard to use once token is removed\x12H\n\x1dremove_all_steamguard_cookies\x18\x07 \x01(\x08\x42!\x82\xb5\x18\x1dRemove all steamguard cookies\"\xfe\x01\n\'CTwoFactor_RemoveAuthenticator_Response\x12L\n\x07success\x18\x01 \x01(\x08\x42;\x82\xb5\x18\x37True if request succeeeded. The mobile app checks this.\x12,\n\x0bserver_time\x18\x03 \x01(\x04\x42\x17\x82\xb5\x18\x13\x43urrent server time\x12W\n\x1drevocation_attempts_remaining\x18\x05 \x01(\rB0\x82\xb5\x18,Number of revocation code attempts remaining\"7\n\'CTwoFactor_CreateEmergencyCodes_Request\x12\x0c\n\x04\x63ode\x18\x01 \x01(\t\"N\n(CTwoFactor_CreateEmergencyCodes_Response\x12\"\n\x05\x63odes\x18\x01 \x03(\tB\x13\x82\xb5\x18\x0f\x45mergency codes\"O\n(CTwoFactor_DestroyEmergencyCodes_Request\x12#\n\x07steamid\x18\x01 \x01(\x06\x42\x12\x82\xb5\x18\x0esteamid to use\"+\n)CTwoFactor_DestroyEmergencyCodes_Response\"F\n CTwoFactor_ValidateToken_Request\x12\"\n\x04\x63ode\x18\x01 \x01(\tB\x14\x82\xb5\x18\x10\x63ode to validate\"L\n!CTwoFactor_ValidateToken_Response\x12\'\n\x05valid\x18\x01 \x01(\x08\x42\x18\x82\xb5\x18\x14result of validation\"9\n7CTwoFactor_RemoveAuthenticatorViaChallengeStart_Request\"\x91\x01\n8CTwoFactor_RemoveAuthenticatorViaChallengeStart_Response\x12U\n\x07success\x18\x01 \x01(\x08\x42\x44\x82\xb5\x18@True if succeeded, or want more tries with an authenticator_code\"\xb3\x01\n:CTwoFactor_RemoveAuthenticatorViaChallengeContinue_Request\x12#\n\x08sms_code\x18\x01 \x01(\tB\x11\x82\xb5\x18\rCode from SMS\x12P\n\x12generate_new_token\x18\x02 \x01(\x08\x42\x34\x82\xb5\x18\x30Generate new token (instead of removing old one)\"\x8d\x06\n:CRemoveAuthenticatorViaChallengeContinue_Replacement_Token\x12I\n\rshared_secret\x18\x01 \x01(\x0c\x42\x32\x82\xb5\x18.Shared secret between server and authenticator\x12I\n\rserial_number\x18\x02 \x01(\x06\x42\x32\x82\xb5\x18.Authenticator serial number (unique per token)\x12>\n\x0frevocation_code\x18\x03 \x01(\tB%\x82\xb5\x18!code used to revoke authenticator\x12+\n\x03uri\x18\x04 \x01(\tB\x1e\x82\xb5\x18\x1aURI for QR code generation\x12,\n\x0bserver_time\x18\x05 \x01(\x04\x42\x17\x82\xb5\x18\x13\x43urrent server time\x12\x41\n\x0c\x61\x63\x63ount_name\x18\x06 \x01(\tB+\x82\xb5\x18\'Account name to display on token client\x12\x33\n\ttoken_gid\x18\x07 \x01(\tB \x82\xb5\x18\x1cToken GID assigned by server\x12V\n\x0fidentity_secret\x18\x08 \x01(\x0c\x42=\x82\xb5\x18\x39Secret used for identity attestation (e.g., for eventing)\x12)\n\x08secret_1\x18\t \x01(\x0c\x42\x17\x82\xb5\x18\x13Spare shared secret\x12\x1f\n\x06status\x18\n \x01(\x05\x42\x0f\x82\xb5\x18\x0bResult code\x12O\n\x11steamguard_scheme\x18\x0b \x01(\rB4\x82\xb5\x18\x30Type of Steam Guard to use once token is removed\x12\x31\n\x07steamid\x18\x0c \x01(\x06\x42 \x82\xb5\x18\x1csteamid that owns the secret\"\x89\x02\n;CTwoFactor_RemoveAuthenticatorViaChallengeContinue_Response\x12U\n\x07success\x18\x01 \x01(\x08\x42\x44\x82\xb5\x18@True if succeeded, or want more tries with an authenticator_code\x12s\n\x11replacement_token\x18\x02 \x01(\x0b\x32;.CRemoveAuthenticatorViaChallengeContinue_Replacement_TokenB\x1b\x82\xb5\x18\x17\x46resh secret to install2\xbb\x0e\n\tTwoFactor\x12\x8c\x01\n\x0bQueryStatus\x12\x1a.CTwoFactor_Status_Request\x1a\x1b.CTwoFactor_Status_Response\"D\x82\xb5\x18@Get two-factor authentication settings for the logged-in account\x12\x9a\x01\n\x10\x41\x64\x64\x41uthenticator\x12$.CTwoFactor_AddAuthenticator_Request\x1a%.CTwoFactor_AddAuthenticator_Response\"9\x82\xb5\x18\x35\x41\x64\x64 two-factor authenticator to the logged-in account\x12i\n\tSendEmail\x12\x1d.CTwoFactor_SendEmail_Request\x1a\x1e.CTwoFactor_SendEmail_Response\"\x1d\x82\xb5\x18\x19Send email to the account\x12\xc1\x01\n\x18\x46inalizeAddAuthenticator\x12,.CTwoFactor_FinalizeAddAuthenticator_Request\x1a-.CTwoFactor_FinalizeAddAuthenticator_Response\"H\x82\xb5\x18\x44\x46inalize two-factor authentication addition to the logged-in account\x12\x8a\x01\n\x12UpdateTokenVersion\x12&.CTwoFactor_UpdateTokenVersion_Request\x1a\'.CTwoFactor_UpdateTokenVersion_Response\"#\x82\xb5\x18\x1fUpdate the version for my token\x12\xb2\x01\n\x13RemoveAuthenticator\x12\'.CTwoFactor_RemoveAuthenticator_Request\x1a(.CTwoFactor_RemoveAuthenticator_Response\"H\x82\xb5\x18\x44Remove two-factor authentication addition from the logged-in account\x12\x97\x01\n\x14\x43reateEmergencyCodes\x12(.CTwoFactor_CreateEmergencyCodes_Request\x1a).CTwoFactor_CreateEmergencyCodes_Response\"*\x82\xb5\x18&Generate emergency authenticator codes\x12\xa9\x01\n\x15\x44\x65stroyEmergencyCodes\x12).CTwoFactor_DestroyEmergencyCodes_Request\x1a*.CTwoFactor_DestroyEmergencyCodes_Response\"9\x82\xb5\x18\x35\x44\x65stroy emergency authenticator codes for the account\x12z\n\rValidateToken\x12!.CTwoFactor_ValidateToken_Request\x1a\".CTwoFactor_ValidateToken_Response\"\"\x82\xb5\x18\x1eValidate (and consume) a token\x12\xcc\x01\n$RemoveAuthenticatorViaChallengeStart\x12\x38.CTwoFactor_RemoveAuthenticatorViaChallengeStart_Request\x1a\x39.CTwoFactor_RemoveAuthenticatorViaChallengeStart_Response\"/\x82\xb5\x18+Start challenge-based authenticator removal\x12\xd8\x01\n\'RemoveAuthenticatorViaChallengeContinue\x12;.CTwoFactor_RemoveAuthenticatorViaChallengeContinue_Request\x1a<.CTwoFactor_RemoveAuthenticatorViaChallengeContinue_Response\"2\x82\xb5\x18.Continue challenge-based authenticator removal\x1a%\x82\xb5\x18!Two Factor Authentication ServiceB\x03\x90\x01\x01'
   ,
-  dependencies=[steammessages__unified__base__pb2.DESCRIPTOR,])
+  dependencies=[steammessages__base__pb2.DESCRIPTOR,steammessages__unified__base__pb2.DESCRIPTOR,])
 
 
 
@@ -36,6 +36,7 @@ _CTWOFACTOR_STATUS_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CTwoFactor_Status_Request.steamid', index=0,
@@ -43,7 +44,7 @@ _CTWOFACTOR_STATUS_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\016steamid to use'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\016steamid to use', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -56,8 +57,8 @@ _CTWOFACTOR_STATUS_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=67,
-  serialized_end=131,
+  serialized_start=93,
+  serialized_end=157,
 )
 
 
@@ -67,6 +68,7 @@ _CTWOFACTOR_STATUS_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='state', full_name='CTwoFactor_Status_Response.state', index=0,
@@ -74,91 +76,91 @@ _CTWOFACTOR_STATUS_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\023Authenticator state'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\023Authenticator state', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='inactivation_reason', full_name='CTwoFactor_Status_Response.inactivation_reason', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\034Inactivation reason (if any)'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\034Inactivation reason (if any)', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='authenticator_type', full_name='CTwoFactor_Status_Response.authenticator_type', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\025Type of authenticator'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\025Type of authenticator', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='authenticator_allowed', full_name='CTwoFactor_Status_Response.authenticator_allowed', index=3,
       number=4, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030)Account allowed to have an authenticator?'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030)Account allowed to have an authenticator?', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steamguard_scheme', full_name='CTwoFactor_Status_Response.steamguard_scheme', index=4,
       number=5, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\034Steam Guard scheme in effect'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\034Steam Guard scheme in effect', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='token_gid', full_name='CTwoFactor_Status_Response.token_gid', index=5,
       number=6, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030*String rep of token GID assigned by server'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030*String rep of token GID assigned by server', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='email_validated', full_name='CTwoFactor_Status_Response.email_validated', index=6,
       number=7, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030%Account has verified email capability'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030%Account has verified email capability', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='device_identifier', full_name='CTwoFactor_Status_Response.device_identifier', index=7,
       number=8, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030 Authenticator (phone) identifier'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030 Authenticator (phone) identifier', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='time_created', full_name='CTwoFactor_Status_Response.time_created', index=8,
       number=9, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\032When the token was created'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\032When the token was created', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='revocation_attempts_remaining', full_name='CTwoFactor_Status_Response.revocation_attempts_remaining', index=9,
       number=10, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030,Number of revocation code attempts remaining'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030,Number of revocation code attempts remaining', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='classified_agent', full_name='CTwoFactor_Status_Response.classified_agent', index=10,
       number=11, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030@Agent that added the authenticator (e.g., ios / android / other)'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030@Agent that added the authenticator (e.g., ios / android / other)', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='allow_external_authenticator', full_name='CTwoFactor_Status_Response.allow_external_authenticator', index=11,
       number=12, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030=Allow a third-party authenticator (in addition to two-factor)'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030=Allow a third-party authenticator (in addition to two-factor)', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='time_transferred', full_name='CTwoFactor_Status_Response.time_transferred', index=12,
       number=13, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030AWhen the token was transferred from another device, if applicable'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030AWhen the token was transferred from another device, if applicable', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -171,8 +173,8 @@ _CTWOFACTOR_STATUS_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=134,
-  serialized_end=1100,
+  serialized_start=160,
+  serialized_end=1126,
 )
 
 
@@ -182,6 +184,7 @@ _CTWOFACTOR_ADDAUTHENTICATOR_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CTwoFactor_AddAuthenticator_Request.steamid', index=0,
@@ -189,49 +192,56 @@ _CTWOFACTOR_ADDAUTHENTICATOR_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\016steamid to use'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\016steamid to use', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='authenticator_time', full_name='CTwoFactor_AddAuthenticator_Request.authenticator_time', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\032Current authenticator time'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\032Current authenticator time', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='serial_number', full_name='CTwoFactor_AddAuthenticator_Request.serial_number', index=2,
       number=3, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030$locally computed serial (deprecated)'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030$locally computed serial (deprecated)', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='authenticator_type', full_name='CTwoFactor_AddAuthenticator_Request.authenticator_type', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\022Authenticator type'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\022Authenticator type', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='device_identifier', full_name='CTwoFactor_AddAuthenticator_Request.device_identifier', index=4,
       number=5, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\030Authenticator identifier'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\030Authenticator identifier', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='sms_phone_id', full_name='CTwoFactor_AddAuthenticator_Request.sms_phone_id', index=5,
       number=6, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\'ID of phone to use for SMS verification'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\'ID of phone to use for SMS verification', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='http_headers', full_name='CTwoFactor_AddAuthenticator_Request.http_headers', index=6,
       number=7, type=9, cpp_type=9, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\037HTTP headers alternating by K/V'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\037HTTP headers alternating by K/V', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='version', full_name='CTwoFactor_AddAuthenticator_Request.version', index=7,
+      number=8, type=13, cpp_type=3, label=1,
+      has_default_value=True, default_value=1,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\'What the version of our token should be', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -244,8 +254,8 @@ _CTWOFACTOR_ADDAUTHENTICATOR_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1103,
-  serialized_end=1537,
+  serialized_start=1129,
+  serialized_end=1628,
 )
 
 
@@ -255,77 +265,85 @@ _CTWOFACTOR_ADDAUTHENTICATOR_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='shared_secret', full_name='CTwoFactor_AddAuthenticator_Response.shared_secret', index=0,
       number=1, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030.Shared secret between server and authenticator'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030.Shared secret between server and authenticator', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='serial_number', full_name='CTwoFactor_AddAuthenticator_Response.serial_number', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030.Authenticator serial number (unique per token)'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030.Authenticator serial number (unique per token)', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='revocation_code', full_name='CTwoFactor_AddAuthenticator_Response.revocation_code', index=2,
       number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030!code used to revoke authenticator'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030!code used to revoke authenticator', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='uri', full_name='CTwoFactor_AddAuthenticator_Response.uri', index=3,
       number=4, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\032URI for QR code generation'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\032URI for QR code generation', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='server_time', full_name='CTwoFactor_AddAuthenticator_Response.server_time', index=4,
       number=5, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\023Current server time'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\023Current server time', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='account_name', full_name='CTwoFactor_AddAuthenticator_Response.account_name', index=5,
       number=6, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\'Account name to display on token client'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\'Account name to display on token client', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='token_gid', full_name='CTwoFactor_AddAuthenticator_Response.token_gid', index=6,
       number=7, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\034Token GID assigned by server'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\034Token GID assigned by server', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='identity_secret', full_name='CTwoFactor_AddAuthenticator_Response.identity_secret', index=7,
       number=8, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\0309Secret used for identity attestation (e.g., for eventing)'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\0309Secret used for identity attestation (e.g., for eventing)', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='secret_1', full_name='CTwoFactor_AddAuthenticator_Response.secret_1', index=8,
       number=9, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\023Spare shared secret'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\023Spare shared secret', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='status', full_name='CTwoFactor_AddAuthenticator_Response.status', index=9,
       number=10, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\013Result code'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\013Result code', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='phone_number_hint', full_name='CTwoFactor_AddAuthenticator_Response.phone_number_hint', index=10,
+      number=11, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\0306a portion of the phone number the SMS code was sent to', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -338,8 +356,8 @@ _CTWOFACTOR_ADDAUTHENTICATOR_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1540,
-  serialized_end=2167,
+  serialized_start=1631,
+  serialized_end=2345,
 )
 
 
@@ -349,6 +367,7 @@ _CTWOFACTOR_SENDEMAIL_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CTwoFactor_SendEmail_Request.steamid', index=0,
@@ -356,21 +375,21 @@ _CTWOFACTOR_SENDEMAIL_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\016Steamid to use'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\016Steamid to use', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='email_type', full_name='CTwoFactor_SendEmail_Request.email_type', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030.Type of email to send (ETwoFactorEmailType::*)'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030.Type of email to send (ETwoFactorEmailType::*)', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='include_activation_code', full_name='CTwoFactor_SendEmail_Request.include_activation_code', index=2,
       number=3, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030+Include activation code in email parameters'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030+Include activation code in email parameters', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -383,8 +402,8 @@ _CTWOFACTOR_SENDEMAIL_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=2170,
-  serialized_end=2391,
+  serialized_start=2348,
+  serialized_end=2569,
 )
 
 
@@ -394,6 +413,7 @@ _CTWOFACTOR_SENDEMAIL_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -407,8 +427,8 @@ _CTWOFACTOR_SENDEMAIL_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=2393,
-  serialized_end=2424,
+  serialized_start=2571,
+  serialized_end=2602,
 )
 
 
@@ -418,6 +438,7 @@ _CTWOFACTOR_FINALIZEADDAUTHENTICATOR_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CTwoFactor_FinalizeAddAuthenticator_Request.steamid', index=0,
@@ -425,35 +446,42 @@ _CTWOFACTOR_FINALIZEADDAUTHENTICATOR_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\016steamid to use'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\016steamid to use', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='authenticator_code', full_name='CTwoFactor_FinalizeAddAuthenticator_Request.authenticator_code', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\021Current auth code'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\021Current auth code', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='authenticator_time', full_name='CTwoFactor_FinalizeAddAuthenticator_Request.authenticator_time', index=2,
       number=3, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\032Current authenticator time'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\032Current authenticator time', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='activation_code', full_name='CTwoFactor_FinalizeAddAuthenticator_Request.activation_code', index=3,
       number=4, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030(Activation code from out-of-band message'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030(Activation code from out-of-band message', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='http_headers', full_name='CTwoFactor_FinalizeAddAuthenticator_Request.http_headers', index=4,
       number=5, type=9, cpp_type=9, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\037HTTP headers alternating by K/V'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\037HTTP headers alternating by K/V', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='validate_sms_code', full_name='CTwoFactor_FinalizeAddAuthenticator_Request.validate_sms_code', index=5,
+      number=6, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030bWhen finalizing with an SMS code, pass the request on to the PhoneService to update its state too.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -466,8 +494,8 @@ _CTWOFACTOR_FINALIZEADDAUTHENTICATOR_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=2427,
-  serialized_end=2750,
+  serialized_start=2605,
+  serialized_end=3060,
 )
 
 
@@ -477,6 +505,7 @@ _CTWOFACTOR_FINALIZEADDAUTHENTICATOR_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='success', full_name='CTwoFactor_FinalizeAddAuthenticator_Response.success', index=0,
@@ -484,28 +513,28 @@ _CTWOFACTOR_FINALIZEADDAUTHENTICATOR_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030%True if succeeded, or want more tries'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030%True if succeeded, or want more tries', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='want_more', full_name='CTwoFactor_FinalizeAddAuthenticator_Response.want_more', index=1,
       number=2, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\027True if want more tries'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\027True if want more tries', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='server_time', full_name='CTwoFactor_FinalizeAddAuthenticator_Response.server_time', index=2,
       number=3, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\023Current server time'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\023Current server time', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='status', full_name='CTwoFactor_FinalizeAddAuthenticator_Response.status', index=3,
       number=4, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\013Result code'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\013Result code', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -518,8 +547,79 @@ _CTWOFACTOR_FINALIZEADDAUTHENTICATOR_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=2753,
-  serialized_end=2986,
+  serialized_start=3063,
+  serialized_end=3296,
+)
+
+
+_CTWOFACTOR_UPDATETOKENVERSION_REQUEST = _descriptor.Descriptor(
+  name='CTwoFactor_UpdateTokenVersion_Request',
+  full_name='CTwoFactor_UpdateTokenVersion_Request',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='steamid', full_name='CTwoFactor_UpdateTokenVersion_Request.steamid', index=0,
+      number=1, type=6, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='version', full_name='CTwoFactor_UpdateTokenVersion_Request.version', index=1,
+      number=2, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\'What the version of our token should be', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='signature', full_name='CTwoFactor_UpdateTokenVersion_Request.signature', index=2,
+      number=3, type=12, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"",
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030#HMAC digest over user\'s private key', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=3299,
+  serialized_end=3477,
+)
+
+
+_CTWOFACTOR_UPDATETOKENVERSION_RESPONSE = _descriptor.Descriptor(
+  name='CTwoFactor_UpdateTokenVersion_Response',
+  full_name='CTwoFactor_UpdateTokenVersion_Response',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=3479,
+  serialized_end=3519,
 )
 
 
@@ -529,35 +629,36 @@ _CTWOFACTOR_REMOVEAUTHENTICATOR_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='revocation_code', full_name='CTwoFactor_RemoveAuthenticator_Request.revocation_code', index=0,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\037Password needed to remove token'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\037Password needed to remove token', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='revocation_reason', full_name='CTwoFactor_RemoveAuthenticator_Request.revocation_reason', index=1,
       number=5, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030)Reason the authenticator is being removed'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030)Reason the authenticator is being removed', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steamguard_scheme', full_name='CTwoFactor_RemoveAuthenticator_Request.steamguard_scheme', index=2,
       number=6, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\0300Type of Steam Guard to use once token is removed'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\0300Type of Steam Guard to use once token is removed', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='remove_all_steamguard_cookies', full_name='CTwoFactor_RemoveAuthenticator_Request.remove_all_steamguard_cookies', index=3,
       number=7, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\035Remove all steamguard cookies'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\035Remove all steamguard cookies', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -570,8 +671,8 @@ _CTWOFACTOR_REMOVEAUTHENTICATOR_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=2989,
-  serialized_end=3320,
+  serialized_start=3522,
+  serialized_end=3853,
 )
 
 
@@ -581,6 +682,7 @@ _CTWOFACTOR_REMOVEAUTHENTICATOR_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='success', full_name='CTwoFactor_RemoveAuthenticator_Response.success', index=0,
@@ -588,21 +690,21 @@ _CTWOFACTOR_REMOVEAUTHENTICATOR_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\0307True if request succeeeded. The mobile app checks this.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\0307True if request succeeeded. The mobile app checks this.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='server_time', full_name='CTwoFactor_RemoveAuthenticator_Response.server_time', index=1,
       number=3, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\023Current server time'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\023Current server time', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='revocation_attempts_remaining', full_name='CTwoFactor_RemoveAuthenticator_Response.revocation_attempts_remaining', index=2,
       number=5, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030,Number of revocation code attempts remaining'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030,Number of revocation code attempts remaining', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -615,8 +717,8 @@ _CTWOFACTOR_REMOVEAUTHENTICATOR_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=3323,
-  serialized_end=3577,
+  serialized_start=3856,
+  serialized_end=4110,
 )
 
 
@@ -626,14 +728,15 @@ _CTWOFACTOR_CREATEEMERGENCYCODES_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='code', full_name='CTwoFactor_CreateEmergencyCodes_Request.code', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -646,8 +749,8 @@ _CTWOFACTOR_CREATEEMERGENCYCODES_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=3579,
-  serialized_end=3634,
+  serialized_start=4112,
+  serialized_end=4167,
 )
 
 
@@ -657,6 +760,7 @@ _CTWOFACTOR_CREATEEMERGENCYCODES_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='codes', full_name='CTwoFactor_CreateEmergencyCodes_Response.codes', index=0,
@@ -664,7 +768,7 @@ _CTWOFACTOR_CREATEEMERGENCYCODES_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\017Emergency codes'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\017Emergency codes', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -677,8 +781,8 @@ _CTWOFACTOR_CREATEEMERGENCYCODES_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=3636,
-  serialized_end=3714,
+  serialized_start=4169,
+  serialized_end=4247,
 )
 
 
@@ -688,6 +792,7 @@ _CTWOFACTOR_DESTROYEMERGENCYCODES_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CTwoFactor_DestroyEmergencyCodes_Request.steamid', index=0,
@@ -695,7 +800,7 @@ _CTWOFACTOR_DESTROYEMERGENCYCODES_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\016steamid to use'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\016steamid to use', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -708,8 +813,8 @@ _CTWOFACTOR_DESTROYEMERGENCYCODES_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=3716,
-  serialized_end=3795,
+  serialized_start=4249,
+  serialized_end=4328,
 )
 
 
@@ -719,6 +824,7 @@ _CTWOFACTOR_DESTROYEMERGENCYCODES_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -732,8 +838,8 @@ _CTWOFACTOR_DESTROYEMERGENCYCODES_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=3797,
-  serialized_end=3840,
+  serialized_start=4330,
+  serialized_end=4373,
 )
 
 
@@ -743,14 +849,15 @@ _CTWOFACTOR_VALIDATETOKEN_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='code', full_name='CTwoFactor_ValidateToken_Request.code', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\020code to validate'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\020code to validate', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -763,8 +870,8 @@ _CTWOFACTOR_VALIDATETOKEN_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=3842,
-  serialized_end=3912,
+  serialized_start=4375,
+  serialized_end=4445,
 )
 
 
@@ -774,6 +881,7 @@ _CTWOFACTOR_VALIDATETOKEN_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='valid', full_name='CTwoFactor_ValidateToken_Response.valid', index=0,
@@ -781,7 +889,7 @@ _CTWOFACTOR_VALIDATETOKEN_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\024result of validation'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\024result of validation', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -794,10 +902,255 @@ _CTWOFACTOR_VALIDATETOKEN_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=3914,
-  serialized_end=3990,
+  serialized_start=4447,
+  serialized_end=4523,
 )
 
+
+_CTWOFACTOR_REMOVEAUTHENTICATORVIACHALLENGESTART_REQUEST = _descriptor.Descriptor(
+  name='CTwoFactor_RemoveAuthenticatorViaChallengeStart_Request',
+  full_name='CTwoFactor_RemoveAuthenticatorViaChallengeStart_Request',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=4525,
+  serialized_end=4582,
+)
+
+
+_CTWOFACTOR_REMOVEAUTHENTICATORVIACHALLENGESTART_RESPONSE = _descriptor.Descriptor(
+  name='CTwoFactor_RemoveAuthenticatorViaChallengeStart_Response',
+  full_name='CTwoFactor_RemoveAuthenticatorViaChallengeStart_Response',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='success', full_name='CTwoFactor_RemoveAuthenticatorViaChallengeStart_Response.success', index=0,
+      number=1, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030@True if succeeded, or want more tries with an authenticator_code', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=4585,
+  serialized_end=4730,
+)
+
+
+_CTWOFACTOR_REMOVEAUTHENTICATORVIACHALLENGECONTINUE_REQUEST = _descriptor.Descriptor(
+  name='CTwoFactor_RemoveAuthenticatorViaChallengeContinue_Request',
+  full_name='CTwoFactor_RemoveAuthenticatorViaChallengeContinue_Request',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='sms_code', full_name='CTwoFactor_RemoveAuthenticatorViaChallengeContinue_Request.sms_code', index=0,
+      number=1, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\rCode from SMS', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='generate_new_token', full_name='CTwoFactor_RemoveAuthenticatorViaChallengeContinue_Request.generate_new_token', index=1,
+      number=2, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\0300Generate new token (instead of removing old one)', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=4733,
+  serialized_end=4912,
+)
+
+
+_CREMOVEAUTHENTICATORVIACHALLENGECONTINUE_REPLACEMENT_TOKEN = _descriptor.Descriptor(
+  name='CRemoveAuthenticatorViaChallengeContinue_Replacement_Token',
+  full_name='CRemoveAuthenticatorViaChallengeContinue_Replacement_Token',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='shared_secret', full_name='CRemoveAuthenticatorViaChallengeContinue_Replacement_Token.shared_secret', index=0,
+      number=1, type=12, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"",
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030.Shared secret between server and authenticator', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='serial_number', full_name='CRemoveAuthenticatorViaChallengeContinue_Replacement_Token.serial_number', index=1,
+      number=2, type=6, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030.Authenticator serial number (unique per token)', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='revocation_code', full_name='CRemoveAuthenticatorViaChallengeContinue_Replacement_Token.revocation_code', index=2,
+      number=3, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030!code used to revoke authenticator', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='uri', full_name='CRemoveAuthenticatorViaChallengeContinue_Replacement_Token.uri', index=3,
+      number=4, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\032URI for QR code generation', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='server_time', full_name='CRemoveAuthenticatorViaChallengeContinue_Replacement_Token.server_time', index=4,
+      number=5, type=4, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\023Current server time', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='account_name', full_name='CRemoveAuthenticatorViaChallengeContinue_Replacement_Token.account_name', index=5,
+      number=6, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\'Account name to display on token client', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='token_gid', full_name='CRemoveAuthenticatorViaChallengeContinue_Replacement_Token.token_gid', index=6,
+      number=7, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\034Token GID assigned by server', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='identity_secret', full_name='CRemoveAuthenticatorViaChallengeContinue_Replacement_Token.identity_secret', index=7,
+      number=8, type=12, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"",
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\0309Secret used for identity attestation (e.g., for eventing)', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='secret_1', full_name='CRemoveAuthenticatorViaChallengeContinue_Replacement_Token.secret_1', index=8,
+      number=9, type=12, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"",
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\023Spare shared secret', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='status', full_name='CRemoveAuthenticatorViaChallengeContinue_Replacement_Token.status', index=9,
+      number=10, type=5, cpp_type=1, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\013Result code', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='steamguard_scheme', full_name='CRemoveAuthenticatorViaChallengeContinue_Replacement_Token.steamguard_scheme', index=10,
+      number=11, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\0300Type of Steam Guard to use once token is removed', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='steamid', full_name='CRemoveAuthenticatorViaChallengeContinue_Replacement_Token.steamid', index=11,
+      number=12, type=6, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\034steamid that owns the secret', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=4915,
+  serialized_end=5696,
+)
+
+
+_CTWOFACTOR_REMOVEAUTHENTICATORVIACHALLENGECONTINUE_RESPONSE = _descriptor.Descriptor(
+  name='CTwoFactor_RemoveAuthenticatorViaChallengeContinue_Response',
+  full_name='CTwoFactor_RemoveAuthenticatorViaChallengeContinue_Response',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='success', full_name='CTwoFactor_RemoveAuthenticatorViaChallengeContinue_Response.success', index=0,
+      number=1, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030@True if succeeded, or want more tries with an authenticator_code', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='replacement_token', full_name='CTwoFactor_RemoveAuthenticatorViaChallengeContinue_Response.replacement_token', index=1,
+      number=2, type=11, cpp_type=10, label=1,
+      has_default_value=False, default_value=None,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=b'\202\265\030\027Fresh secret to install', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=5699,
+  serialized_end=5964,
+)
+
+_CTWOFACTOR_REMOVEAUTHENTICATORVIACHALLENGECONTINUE_RESPONSE.fields_by_name['replacement_token'].message_type = _CREMOVEAUTHENTICATORVIACHALLENGECONTINUE_REPLACEMENT_TOKEN
 DESCRIPTOR.message_types_by_name['CTwoFactor_Status_Request'] = _CTWOFACTOR_STATUS_REQUEST
 DESCRIPTOR.message_types_by_name['CTwoFactor_Status_Response'] = _CTWOFACTOR_STATUS_RESPONSE
 DESCRIPTOR.message_types_by_name['CTwoFactor_AddAuthenticator_Request'] = _CTWOFACTOR_ADDAUTHENTICATOR_REQUEST
@@ -806,6 +1159,8 @@ DESCRIPTOR.message_types_by_name['CTwoFactor_SendEmail_Request'] = _CTWOFACTOR_S
 DESCRIPTOR.message_types_by_name['CTwoFactor_SendEmail_Response'] = _CTWOFACTOR_SENDEMAIL_RESPONSE
 DESCRIPTOR.message_types_by_name['CTwoFactor_FinalizeAddAuthenticator_Request'] = _CTWOFACTOR_FINALIZEADDAUTHENTICATOR_REQUEST
 DESCRIPTOR.message_types_by_name['CTwoFactor_FinalizeAddAuthenticator_Response'] = _CTWOFACTOR_FINALIZEADDAUTHENTICATOR_RESPONSE
+DESCRIPTOR.message_types_by_name['CTwoFactor_UpdateTokenVersion_Request'] = _CTWOFACTOR_UPDATETOKENVERSION_REQUEST
+DESCRIPTOR.message_types_by_name['CTwoFactor_UpdateTokenVersion_Response'] = _CTWOFACTOR_UPDATETOKENVERSION_RESPONSE
 DESCRIPTOR.message_types_by_name['CTwoFactor_RemoveAuthenticator_Request'] = _CTWOFACTOR_REMOVEAUTHENTICATOR_REQUEST
 DESCRIPTOR.message_types_by_name['CTwoFactor_RemoveAuthenticator_Response'] = _CTWOFACTOR_REMOVEAUTHENTICATOR_RESPONSE
 DESCRIPTOR.message_types_by_name['CTwoFactor_CreateEmergencyCodes_Request'] = _CTWOFACTOR_CREATEEMERGENCYCODES_REQUEST
@@ -814,120 +1169,174 @@ DESCRIPTOR.message_types_by_name['CTwoFactor_DestroyEmergencyCodes_Request'] = _
 DESCRIPTOR.message_types_by_name['CTwoFactor_DestroyEmergencyCodes_Response'] = _CTWOFACTOR_DESTROYEMERGENCYCODES_RESPONSE
 DESCRIPTOR.message_types_by_name['CTwoFactor_ValidateToken_Request'] = _CTWOFACTOR_VALIDATETOKEN_REQUEST
 DESCRIPTOR.message_types_by_name['CTwoFactor_ValidateToken_Response'] = _CTWOFACTOR_VALIDATETOKEN_RESPONSE
+DESCRIPTOR.message_types_by_name['CTwoFactor_RemoveAuthenticatorViaChallengeStart_Request'] = _CTWOFACTOR_REMOVEAUTHENTICATORVIACHALLENGESTART_REQUEST
+DESCRIPTOR.message_types_by_name['CTwoFactor_RemoveAuthenticatorViaChallengeStart_Response'] = _CTWOFACTOR_REMOVEAUTHENTICATORVIACHALLENGESTART_RESPONSE
+DESCRIPTOR.message_types_by_name['CTwoFactor_RemoveAuthenticatorViaChallengeContinue_Request'] = _CTWOFACTOR_REMOVEAUTHENTICATORVIACHALLENGECONTINUE_REQUEST
+DESCRIPTOR.message_types_by_name['CRemoveAuthenticatorViaChallengeContinue_Replacement_Token'] = _CREMOVEAUTHENTICATORVIACHALLENGECONTINUE_REPLACEMENT_TOKEN
+DESCRIPTOR.message_types_by_name['CTwoFactor_RemoveAuthenticatorViaChallengeContinue_Response'] = _CTWOFACTOR_REMOVEAUTHENTICATORVIACHALLENGECONTINUE_RESPONSE
 _sym_db.RegisterFileDescriptor(DESCRIPTOR)
 
-CTwoFactor_Status_Request = _reflection.GeneratedProtocolMessageType('CTwoFactor_Status_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CTWOFACTOR_STATUS_REQUEST,
-  __module__ = 'steammessages_twofactor_pb2'
+CTwoFactor_Status_Request = _reflection.GeneratedProtocolMessageType('CTwoFactor_Status_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CTWOFACTOR_STATUS_REQUEST,
+  '__module__' : 'steammessages_twofactor_pb2'
   # @@protoc_insertion_point(class_scope:CTwoFactor_Status_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CTwoFactor_Status_Request)
 
-CTwoFactor_Status_Response = _reflection.GeneratedProtocolMessageType('CTwoFactor_Status_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CTWOFACTOR_STATUS_RESPONSE,
-  __module__ = 'steammessages_twofactor_pb2'
+CTwoFactor_Status_Response = _reflection.GeneratedProtocolMessageType('CTwoFactor_Status_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CTWOFACTOR_STATUS_RESPONSE,
+  '__module__' : 'steammessages_twofactor_pb2'
   # @@protoc_insertion_point(class_scope:CTwoFactor_Status_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CTwoFactor_Status_Response)
 
-CTwoFactor_AddAuthenticator_Request = _reflection.GeneratedProtocolMessageType('CTwoFactor_AddAuthenticator_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CTWOFACTOR_ADDAUTHENTICATOR_REQUEST,
-  __module__ = 'steammessages_twofactor_pb2'
+CTwoFactor_AddAuthenticator_Request = _reflection.GeneratedProtocolMessageType('CTwoFactor_AddAuthenticator_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CTWOFACTOR_ADDAUTHENTICATOR_REQUEST,
+  '__module__' : 'steammessages_twofactor_pb2'
   # @@protoc_insertion_point(class_scope:CTwoFactor_AddAuthenticator_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CTwoFactor_AddAuthenticator_Request)
 
-CTwoFactor_AddAuthenticator_Response = _reflection.GeneratedProtocolMessageType('CTwoFactor_AddAuthenticator_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CTWOFACTOR_ADDAUTHENTICATOR_RESPONSE,
-  __module__ = 'steammessages_twofactor_pb2'
+CTwoFactor_AddAuthenticator_Response = _reflection.GeneratedProtocolMessageType('CTwoFactor_AddAuthenticator_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CTWOFACTOR_ADDAUTHENTICATOR_RESPONSE,
+  '__module__' : 'steammessages_twofactor_pb2'
   # @@protoc_insertion_point(class_scope:CTwoFactor_AddAuthenticator_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CTwoFactor_AddAuthenticator_Response)
 
-CTwoFactor_SendEmail_Request = _reflection.GeneratedProtocolMessageType('CTwoFactor_SendEmail_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CTWOFACTOR_SENDEMAIL_REQUEST,
-  __module__ = 'steammessages_twofactor_pb2'
+CTwoFactor_SendEmail_Request = _reflection.GeneratedProtocolMessageType('CTwoFactor_SendEmail_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CTWOFACTOR_SENDEMAIL_REQUEST,
+  '__module__' : 'steammessages_twofactor_pb2'
   # @@protoc_insertion_point(class_scope:CTwoFactor_SendEmail_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CTwoFactor_SendEmail_Request)
 
-CTwoFactor_SendEmail_Response = _reflection.GeneratedProtocolMessageType('CTwoFactor_SendEmail_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CTWOFACTOR_SENDEMAIL_RESPONSE,
-  __module__ = 'steammessages_twofactor_pb2'
+CTwoFactor_SendEmail_Response = _reflection.GeneratedProtocolMessageType('CTwoFactor_SendEmail_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CTWOFACTOR_SENDEMAIL_RESPONSE,
+  '__module__' : 'steammessages_twofactor_pb2'
   # @@protoc_insertion_point(class_scope:CTwoFactor_SendEmail_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CTwoFactor_SendEmail_Response)
 
-CTwoFactor_FinalizeAddAuthenticator_Request = _reflection.GeneratedProtocolMessageType('CTwoFactor_FinalizeAddAuthenticator_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CTWOFACTOR_FINALIZEADDAUTHENTICATOR_REQUEST,
-  __module__ = 'steammessages_twofactor_pb2'
+CTwoFactor_FinalizeAddAuthenticator_Request = _reflection.GeneratedProtocolMessageType('CTwoFactor_FinalizeAddAuthenticator_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CTWOFACTOR_FINALIZEADDAUTHENTICATOR_REQUEST,
+  '__module__' : 'steammessages_twofactor_pb2'
   # @@protoc_insertion_point(class_scope:CTwoFactor_FinalizeAddAuthenticator_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CTwoFactor_FinalizeAddAuthenticator_Request)
 
-CTwoFactor_FinalizeAddAuthenticator_Response = _reflection.GeneratedProtocolMessageType('CTwoFactor_FinalizeAddAuthenticator_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CTWOFACTOR_FINALIZEADDAUTHENTICATOR_RESPONSE,
-  __module__ = 'steammessages_twofactor_pb2'
+CTwoFactor_FinalizeAddAuthenticator_Response = _reflection.GeneratedProtocolMessageType('CTwoFactor_FinalizeAddAuthenticator_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CTWOFACTOR_FINALIZEADDAUTHENTICATOR_RESPONSE,
+  '__module__' : 'steammessages_twofactor_pb2'
   # @@protoc_insertion_point(class_scope:CTwoFactor_FinalizeAddAuthenticator_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CTwoFactor_FinalizeAddAuthenticator_Response)
 
-CTwoFactor_RemoveAuthenticator_Request = _reflection.GeneratedProtocolMessageType('CTwoFactor_RemoveAuthenticator_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CTWOFACTOR_REMOVEAUTHENTICATOR_REQUEST,
-  __module__ = 'steammessages_twofactor_pb2'
+CTwoFactor_UpdateTokenVersion_Request = _reflection.GeneratedProtocolMessageType('CTwoFactor_UpdateTokenVersion_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CTWOFACTOR_UPDATETOKENVERSION_REQUEST,
+  '__module__' : 'steammessages_twofactor_pb2'
+  # @@protoc_insertion_point(class_scope:CTwoFactor_UpdateTokenVersion_Request)
+  })
+_sym_db.RegisterMessage(CTwoFactor_UpdateTokenVersion_Request)
+
+CTwoFactor_UpdateTokenVersion_Response = _reflection.GeneratedProtocolMessageType('CTwoFactor_UpdateTokenVersion_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CTWOFACTOR_UPDATETOKENVERSION_RESPONSE,
+  '__module__' : 'steammessages_twofactor_pb2'
+  # @@protoc_insertion_point(class_scope:CTwoFactor_UpdateTokenVersion_Response)
+  })
+_sym_db.RegisterMessage(CTwoFactor_UpdateTokenVersion_Response)
+
+CTwoFactor_RemoveAuthenticator_Request = _reflection.GeneratedProtocolMessageType('CTwoFactor_RemoveAuthenticator_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CTWOFACTOR_REMOVEAUTHENTICATOR_REQUEST,
+  '__module__' : 'steammessages_twofactor_pb2'
   # @@protoc_insertion_point(class_scope:CTwoFactor_RemoveAuthenticator_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CTwoFactor_RemoveAuthenticator_Request)
 
-CTwoFactor_RemoveAuthenticator_Response = _reflection.GeneratedProtocolMessageType('CTwoFactor_RemoveAuthenticator_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CTWOFACTOR_REMOVEAUTHENTICATOR_RESPONSE,
-  __module__ = 'steammessages_twofactor_pb2'
+CTwoFactor_RemoveAuthenticator_Response = _reflection.GeneratedProtocolMessageType('CTwoFactor_RemoveAuthenticator_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CTWOFACTOR_REMOVEAUTHENTICATOR_RESPONSE,
+  '__module__' : 'steammessages_twofactor_pb2'
   # @@protoc_insertion_point(class_scope:CTwoFactor_RemoveAuthenticator_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CTwoFactor_RemoveAuthenticator_Response)
 
-CTwoFactor_CreateEmergencyCodes_Request = _reflection.GeneratedProtocolMessageType('CTwoFactor_CreateEmergencyCodes_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CTWOFACTOR_CREATEEMERGENCYCODES_REQUEST,
-  __module__ = 'steammessages_twofactor_pb2'
+CTwoFactor_CreateEmergencyCodes_Request = _reflection.GeneratedProtocolMessageType('CTwoFactor_CreateEmergencyCodes_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CTWOFACTOR_CREATEEMERGENCYCODES_REQUEST,
+  '__module__' : 'steammessages_twofactor_pb2'
   # @@protoc_insertion_point(class_scope:CTwoFactor_CreateEmergencyCodes_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CTwoFactor_CreateEmergencyCodes_Request)
 
-CTwoFactor_CreateEmergencyCodes_Response = _reflection.GeneratedProtocolMessageType('CTwoFactor_CreateEmergencyCodes_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CTWOFACTOR_CREATEEMERGENCYCODES_RESPONSE,
-  __module__ = 'steammessages_twofactor_pb2'
+CTwoFactor_CreateEmergencyCodes_Response = _reflection.GeneratedProtocolMessageType('CTwoFactor_CreateEmergencyCodes_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CTWOFACTOR_CREATEEMERGENCYCODES_RESPONSE,
+  '__module__' : 'steammessages_twofactor_pb2'
   # @@protoc_insertion_point(class_scope:CTwoFactor_CreateEmergencyCodes_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CTwoFactor_CreateEmergencyCodes_Response)
 
-CTwoFactor_DestroyEmergencyCodes_Request = _reflection.GeneratedProtocolMessageType('CTwoFactor_DestroyEmergencyCodes_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CTWOFACTOR_DESTROYEMERGENCYCODES_REQUEST,
-  __module__ = 'steammessages_twofactor_pb2'
+CTwoFactor_DestroyEmergencyCodes_Request = _reflection.GeneratedProtocolMessageType('CTwoFactor_DestroyEmergencyCodes_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CTWOFACTOR_DESTROYEMERGENCYCODES_REQUEST,
+  '__module__' : 'steammessages_twofactor_pb2'
   # @@protoc_insertion_point(class_scope:CTwoFactor_DestroyEmergencyCodes_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CTwoFactor_DestroyEmergencyCodes_Request)
 
-CTwoFactor_DestroyEmergencyCodes_Response = _reflection.GeneratedProtocolMessageType('CTwoFactor_DestroyEmergencyCodes_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CTWOFACTOR_DESTROYEMERGENCYCODES_RESPONSE,
-  __module__ = 'steammessages_twofactor_pb2'
+CTwoFactor_DestroyEmergencyCodes_Response = _reflection.GeneratedProtocolMessageType('CTwoFactor_DestroyEmergencyCodes_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CTWOFACTOR_DESTROYEMERGENCYCODES_RESPONSE,
+  '__module__' : 'steammessages_twofactor_pb2'
   # @@protoc_insertion_point(class_scope:CTwoFactor_DestroyEmergencyCodes_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CTwoFactor_DestroyEmergencyCodes_Response)
 
-CTwoFactor_ValidateToken_Request = _reflection.GeneratedProtocolMessageType('CTwoFactor_ValidateToken_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CTWOFACTOR_VALIDATETOKEN_REQUEST,
-  __module__ = 'steammessages_twofactor_pb2'
+CTwoFactor_ValidateToken_Request = _reflection.GeneratedProtocolMessageType('CTwoFactor_ValidateToken_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CTWOFACTOR_VALIDATETOKEN_REQUEST,
+  '__module__' : 'steammessages_twofactor_pb2'
   # @@protoc_insertion_point(class_scope:CTwoFactor_ValidateToken_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CTwoFactor_ValidateToken_Request)
 
-CTwoFactor_ValidateToken_Response = _reflection.GeneratedProtocolMessageType('CTwoFactor_ValidateToken_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CTWOFACTOR_VALIDATETOKEN_RESPONSE,
-  __module__ = 'steammessages_twofactor_pb2'
+CTwoFactor_ValidateToken_Response = _reflection.GeneratedProtocolMessageType('CTwoFactor_ValidateToken_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CTWOFACTOR_VALIDATETOKEN_RESPONSE,
+  '__module__' : 'steammessages_twofactor_pb2'
   # @@protoc_insertion_point(class_scope:CTwoFactor_ValidateToken_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CTwoFactor_ValidateToken_Response)
 
+CTwoFactor_RemoveAuthenticatorViaChallengeStart_Request = _reflection.GeneratedProtocolMessageType('CTwoFactor_RemoveAuthenticatorViaChallengeStart_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CTWOFACTOR_REMOVEAUTHENTICATORVIACHALLENGESTART_REQUEST,
+  '__module__' : 'steammessages_twofactor_pb2'
+  # @@protoc_insertion_point(class_scope:CTwoFactor_RemoveAuthenticatorViaChallengeStart_Request)
+  })
+_sym_db.RegisterMessage(CTwoFactor_RemoveAuthenticatorViaChallengeStart_Request)
+
+CTwoFactor_RemoveAuthenticatorViaChallengeStart_Response = _reflection.GeneratedProtocolMessageType('CTwoFactor_RemoveAuthenticatorViaChallengeStart_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CTWOFACTOR_REMOVEAUTHENTICATORVIACHALLENGESTART_RESPONSE,
+  '__module__' : 'steammessages_twofactor_pb2'
+  # @@protoc_insertion_point(class_scope:CTwoFactor_RemoveAuthenticatorViaChallengeStart_Response)
+  })
+_sym_db.RegisterMessage(CTwoFactor_RemoveAuthenticatorViaChallengeStart_Response)
+
+CTwoFactor_RemoveAuthenticatorViaChallengeContinue_Request = _reflection.GeneratedProtocolMessageType('CTwoFactor_RemoveAuthenticatorViaChallengeContinue_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CTWOFACTOR_REMOVEAUTHENTICATORVIACHALLENGECONTINUE_REQUEST,
+  '__module__' : 'steammessages_twofactor_pb2'
+  # @@protoc_insertion_point(class_scope:CTwoFactor_RemoveAuthenticatorViaChallengeContinue_Request)
+  })
+_sym_db.RegisterMessage(CTwoFactor_RemoveAuthenticatorViaChallengeContinue_Request)
+
+CRemoveAuthenticatorViaChallengeContinue_Replacement_Token = _reflection.GeneratedProtocolMessageType('CRemoveAuthenticatorViaChallengeContinue_Replacement_Token', (_message.Message,), {
+  'DESCRIPTOR' : _CREMOVEAUTHENTICATORVIACHALLENGECONTINUE_REPLACEMENT_TOKEN,
+  '__module__' : 'steammessages_twofactor_pb2'
+  # @@protoc_insertion_point(class_scope:CRemoveAuthenticatorViaChallengeContinue_Replacement_Token)
+  })
+_sym_db.RegisterMessage(CRemoveAuthenticatorViaChallengeContinue_Replacement_Token)
+
+CTwoFactor_RemoveAuthenticatorViaChallengeContinue_Response = _reflection.GeneratedProtocolMessageType('CTwoFactor_RemoveAuthenticatorViaChallengeContinue_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CTWOFACTOR_REMOVEAUTHENTICATORVIACHALLENGECONTINUE_RESPONSE,
+  '__module__' : 'steammessages_twofactor_pb2'
+  # @@protoc_insertion_point(class_scope:CTwoFactor_RemoveAuthenticatorViaChallengeContinue_Response)
+  })
+_sym_db.RegisterMessage(CTwoFactor_RemoveAuthenticatorViaChallengeContinue_Response)
+
 
 DESCRIPTOR._options = None
 _CTWOFACTOR_STATUS_REQUEST.fields_by_name['steamid']._options = None
@@ -951,6 +1360,7 @@ _CTWOFACTOR_ADDAUTHENTICATOR_REQUEST.fields_by_name['authenticator_type']._optio
 _CTWOFACTOR_ADDAUTHENTICATOR_REQUEST.fields_by_name['device_identifier']._options = None
 _CTWOFACTOR_ADDAUTHENTICATOR_REQUEST.fields_by_name['sms_phone_id']._options = None
 _CTWOFACTOR_ADDAUTHENTICATOR_REQUEST.fields_by_name['http_headers']._options = None
+_CTWOFACTOR_ADDAUTHENTICATOR_REQUEST.fields_by_name['version']._options = None
 _CTWOFACTOR_ADDAUTHENTICATOR_RESPONSE.fields_by_name['shared_secret']._options = None
 _CTWOFACTOR_ADDAUTHENTICATOR_RESPONSE.fields_by_name['serial_number']._options = None
 _CTWOFACTOR_ADDAUTHENTICATOR_RESPONSE.fields_by_name['revocation_code']._options = None
@@ -961,6 +1371,7 @@ _CTWOFACTOR_ADDAUTHENTICATOR_RESPONSE.fields_by_name['token_gid']._options = Non
 _CTWOFACTOR_ADDAUTHENTICATOR_RESPONSE.fields_by_name['identity_secret']._options = None
 _CTWOFACTOR_ADDAUTHENTICATOR_RESPONSE.fields_by_name['secret_1']._options = None
 _CTWOFACTOR_ADDAUTHENTICATOR_RESPONSE.fields_by_name['status']._options = None
+_CTWOFACTOR_ADDAUTHENTICATOR_RESPONSE.fields_by_name['phone_number_hint']._options = None
 _CTWOFACTOR_SENDEMAIL_REQUEST.fields_by_name['steamid']._options = None
 _CTWOFACTOR_SENDEMAIL_REQUEST.fields_by_name['email_type']._options = None
 _CTWOFACTOR_SENDEMAIL_REQUEST.fields_by_name['include_activation_code']._options = None
@@ -969,10 +1380,13 @@ _CTWOFACTOR_FINALIZEADDAUTHENTICATOR_REQUEST.fields_by_name['authenticator_code'
 _CTWOFACTOR_FINALIZEADDAUTHENTICATOR_REQUEST.fields_by_name['authenticator_time']._options = None
 _CTWOFACTOR_FINALIZEADDAUTHENTICATOR_REQUEST.fields_by_name['activation_code']._options = None
 _CTWOFACTOR_FINALIZEADDAUTHENTICATOR_REQUEST.fields_by_name['http_headers']._options = None
+_CTWOFACTOR_FINALIZEADDAUTHENTICATOR_REQUEST.fields_by_name['validate_sms_code']._options = None
 _CTWOFACTOR_FINALIZEADDAUTHENTICATOR_RESPONSE.fields_by_name['success']._options = None
 _CTWOFACTOR_FINALIZEADDAUTHENTICATOR_RESPONSE.fields_by_name['want_more']._options = None
 _CTWOFACTOR_FINALIZEADDAUTHENTICATOR_RESPONSE.fields_by_name['server_time']._options = None
 _CTWOFACTOR_FINALIZEADDAUTHENTICATOR_RESPONSE.fields_by_name['status']._options = None
+_CTWOFACTOR_UPDATETOKENVERSION_REQUEST.fields_by_name['version']._options = None
+_CTWOFACTOR_UPDATETOKENVERSION_REQUEST.fields_by_name['signature']._options = None
 _CTWOFACTOR_REMOVEAUTHENTICATOR_REQUEST.fields_by_name['revocation_code']._options = None
 _CTWOFACTOR_REMOVEAUTHENTICATOR_REQUEST.fields_by_name['revocation_reason']._options = None
 _CTWOFACTOR_REMOVEAUTHENTICATOR_REQUEST.fields_by_name['steamguard_scheme']._options = None
@@ -984,15 +1398,33 @@ _CTWOFACTOR_CREATEEMERGENCYCODES_RESPONSE.fields_by_name['codes']._options = Non
 _CTWOFACTOR_DESTROYEMERGENCYCODES_REQUEST.fields_by_name['steamid']._options = None
 _CTWOFACTOR_VALIDATETOKEN_REQUEST.fields_by_name['code']._options = None
 _CTWOFACTOR_VALIDATETOKEN_RESPONSE.fields_by_name['valid']._options = None
+_CTWOFACTOR_REMOVEAUTHENTICATORVIACHALLENGESTART_RESPONSE.fields_by_name['success']._options = None
+_CTWOFACTOR_REMOVEAUTHENTICATORVIACHALLENGECONTINUE_REQUEST.fields_by_name['sms_code']._options = None
+_CTWOFACTOR_REMOVEAUTHENTICATORVIACHALLENGECONTINUE_REQUEST.fields_by_name['generate_new_token']._options = None
+_CREMOVEAUTHENTICATORVIACHALLENGECONTINUE_REPLACEMENT_TOKEN.fields_by_name['shared_secret']._options = None
+_CREMOVEAUTHENTICATORVIACHALLENGECONTINUE_REPLACEMENT_TOKEN.fields_by_name['serial_number']._options = None
+_CREMOVEAUTHENTICATORVIACHALLENGECONTINUE_REPLACEMENT_TOKEN.fields_by_name['revocation_code']._options = None
+_CREMOVEAUTHENTICATORVIACHALLENGECONTINUE_REPLACEMENT_TOKEN.fields_by_name['uri']._options = None
+_CREMOVEAUTHENTICATORVIACHALLENGECONTINUE_REPLACEMENT_TOKEN.fields_by_name['server_time']._options = None
+_CREMOVEAUTHENTICATORVIACHALLENGECONTINUE_REPLACEMENT_TOKEN.fields_by_name['account_name']._options = None
+_CREMOVEAUTHENTICATORVIACHALLENGECONTINUE_REPLACEMENT_TOKEN.fields_by_name['token_gid']._options = None
+_CREMOVEAUTHENTICATORVIACHALLENGECONTINUE_REPLACEMENT_TOKEN.fields_by_name['identity_secret']._options = None
+_CREMOVEAUTHENTICATORVIACHALLENGECONTINUE_REPLACEMENT_TOKEN.fields_by_name['secret_1']._options = None
+_CREMOVEAUTHENTICATORVIACHALLENGECONTINUE_REPLACEMENT_TOKEN.fields_by_name['status']._options = None
+_CREMOVEAUTHENTICATORVIACHALLENGECONTINUE_REPLACEMENT_TOKEN.fields_by_name['steamguard_scheme']._options = None
+_CREMOVEAUTHENTICATORVIACHALLENGECONTINUE_REPLACEMENT_TOKEN.fields_by_name['steamid']._options = None
+_CTWOFACTOR_REMOVEAUTHENTICATORVIACHALLENGECONTINUE_RESPONSE.fields_by_name['success']._options = None
+_CTWOFACTOR_REMOVEAUTHENTICATORVIACHALLENGECONTINUE_RESPONSE.fields_by_name['replacement_token']._options = None
 
 _TWOFACTOR = _descriptor.ServiceDescriptor(
   name='TwoFactor',
   full_name='TwoFactor',
   file=DESCRIPTOR,
   index=0,
-  serialized_options=_b('\202\265\030!Two Factor Authentication Service'),
-  serialized_start=3993,
-  serialized_end=5277,
+  serialized_options=b'\202\265\030!Two Factor Authentication Service',
+  create_key=_descriptor._internal_create_key,
+  serialized_start=5967,
+  serialized_end=7818,
   methods=[
   _descriptor.MethodDescriptor(
     name='QueryStatus',
@@ -1001,7 +1433,8 @@ _TWOFACTOR = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CTWOFACTOR_STATUS_REQUEST,
     output_type=_CTWOFACTOR_STATUS_RESPONSE,
-    serialized_options=_b('\202\265\030@Get two-factor authentication settings for the logged-in account'),
+    serialized_options=b'\202\265\030@Get two-factor authentication settings for the logged-in account',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='AddAuthenticator',
@@ -1010,7 +1443,8 @@ _TWOFACTOR = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CTWOFACTOR_ADDAUTHENTICATOR_REQUEST,
     output_type=_CTWOFACTOR_ADDAUTHENTICATOR_RESPONSE,
-    serialized_options=_b('\202\265\0305Add two-factor authenticator to the logged-in account'),
+    serialized_options=b'\202\265\0305Add two-factor authenticator to the logged-in account',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='SendEmail',
@@ -1019,7 +1453,8 @@ _TWOFACTOR = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CTWOFACTOR_SENDEMAIL_REQUEST,
     output_type=_CTWOFACTOR_SENDEMAIL_RESPONSE,
-    serialized_options=_b('\202\265\030\031Send email to the account'),
+    serialized_options=b'\202\265\030\031Send email to the account',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='FinalizeAddAuthenticator',
@@ -1028,43 +1463,78 @@ _TWOFACTOR = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CTWOFACTOR_FINALIZEADDAUTHENTICATOR_REQUEST,
     output_type=_CTWOFACTOR_FINALIZEADDAUTHENTICATOR_RESPONSE,
-    serialized_options=_b('\202\265\030DFinalize two-factor authentication addition to the logged-in account'),
+    serialized_options=b'\202\265\030DFinalize two-factor authentication addition to the logged-in account',
+    create_key=_descriptor._internal_create_key,
+  ),
+  _descriptor.MethodDescriptor(
+    name='UpdateTokenVersion',
+    full_name='TwoFactor.UpdateTokenVersion',
+    index=4,
+    containing_service=None,
+    input_type=_CTWOFACTOR_UPDATETOKENVERSION_REQUEST,
+    output_type=_CTWOFACTOR_UPDATETOKENVERSION_RESPONSE,
+    serialized_options=b'\202\265\030\037Update the version for my token',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='RemoveAuthenticator',
     full_name='TwoFactor.RemoveAuthenticator',
-    index=4,
+    index=5,
     containing_service=None,
     input_type=_CTWOFACTOR_REMOVEAUTHENTICATOR_REQUEST,
     output_type=_CTWOFACTOR_REMOVEAUTHENTICATOR_RESPONSE,
-    serialized_options=_b('\202\265\030DRemove two-factor authentication addition from the logged-in account'),
+    serialized_options=b'\202\265\030DRemove two-factor authentication addition from the logged-in account',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='CreateEmergencyCodes',
     full_name='TwoFactor.CreateEmergencyCodes',
-    index=5,
+    index=6,
     containing_service=None,
     input_type=_CTWOFACTOR_CREATEEMERGENCYCODES_REQUEST,
     output_type=_CTWOFACTOR_CREATEEMERGENCYCODES_RESPONSE,
-    serialized_options=_b('\202\265\030&Generate emergency authenticator codes'),
+    serialized_options=b'\202\265\030&Generate emergency authenticator codes',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='DestroyEmergencyCodes',
     full_name='TwoFactor.DestroyEmergencyCodes',
-    index=6,
+    index=7,
     containing_service=None,
     input_type=_CTWOFACTOR_DESTROYEMERGENCYCODES_REQUEST,
     output_type=_CTWOFACTOR_DESTROYEMERGENCYCODES_RESPONSE,
-    serialized_options=_b('\202\265\0305Destroy emergency authenticator codes for the account'),
+    serialized_options=b'\202\265\0305Destroy emergency authenticator codes for the account',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='ValidateToken',
     full_name='TwoFactor.ValidateToken',
-    index=7,
+    index=8,
     containing_service=None,
     input_type=_CTWOFACTOR_VALIDATETOKEN_REQUEST,
     output_type=_CTWOFACTOR_VALIDATETOKEN_RESPONSE,
-    serialized_options=_b('\202\265\030\036Validate (and consume) a token'),
+    serialized_options=b'\202\265\030\036Validate (and consume) a token',
+    create_key=_descriptor._internal_create_key,
+  ),
+  _descriptor.MethodDescriptor(
+    name='RemoveAuthenticatorViaChallengeStart',
+    full_name='TwoFactor.RemoveAuthenticatorViaChallengeStart',
+    index=9,
+    containing_service=None,
+    input_type=_CTWOFACTOR_REMOVEAUTHENTICATORVIACHALLENGESTART_REQUEST,
+    output_type=_CTWOFACTOR_REMOVEAUTHENTICATORVIACHALLENGESTART_RESPONSE,
+    serialized_options=b'\202\265\030+Start challenge-based authenticator removal',
+    create_key=_descriptor._internal_create_key,
+  ),
+  _descriptor.MethodDescriptor(
+    name='RemoveAuthenticatorViaChallengeContinue',
+    full_name='TwoFactor.RemoveAuthenticatorViaChallengeContinue',
+    index=10,
+    containing_service=None,
+    input_type=_CTWOFACTOR_REMOVEAUTHENTICATORVIACHALLENGECONTINUE_REQUEST,
+    output_type=_CTWOFACTOR_REMOVEAUTHENTICATORVIACHALLENGECONTINUE_RESPONSE,
+    serialized_options=b'\202\265\030.Continue challenge-based authenticator removal',
+    create_key=_descriptor._internal_create_key,
   ),
 ])
 _sym_db.RegisterServiceDescriptor(_TWOFACTOR)
diff --git a/steam/protobufs/steammessages_unified_base_pb2.py b/steam/protobufs/steammessages_unified_base_pb2.py
index 6c7e8a7..b38966b 100644
--- a/steam/protobufs/steammessages_unified_base_pb2.py
+++ b/steam/protobufs/steammessages_unified_base_pb2.py
@@ -1,9 +1,7 @@
 # -*- coding: utf-8 -*-
 # Generated by the protocol buffer compiler.  DO NOT EDIT!
 # source: steammessages_unified_base.proto
-
-import sys
-_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1'))
+"""Generated protocol buffer code."""
 from google.protobuf.internal import enum_type_wrapper
 from google.protobuf import descriptor as _descriptor
 from google.protobuf import message as _message
@@ -21,8 +19,9 @@ DESCRIPTOR = _descriptor.FileDescriptor(
   name='steammessages_unified_base.proto',
   package='',
   syntax='proto2',
-  serialized_options=_b('H\001\220\001\000'),
-  serialized_pb=_b('\n steammessages_unified_base.proto\x1a google/protobuf/descriptor.proto\"\x0c\n\nNoResponse*]\n\x13\x45ProtoExecutionSite\x12 \n\x1ck_EProtoExecutionSiteUnknown\x10\x00\x12$\n k_EProtoExecutionSiteSteamClient\x10\x02:4\n\x0b\x64\x65scription\x12\x1d.google.protobuf.FieldOptions\x18\xd0\x86\x03 \x01(\t:>\n\x13service_description\x12\x1f.google.protobuf.ServiceOptions\x18\xd0\x86\x03 \x01(\t:u\n\x16service_execution_site\x12\x1f.google.protobuf.ServiceOptions\x18\xd8\x86\x03 \x01(\x0e\x32\x14.EProtoExecutionSite:\x1ck_EProtoExecutionSiteUnknown:<\n\x12method_description\x12\x1e.google.protobuf.MethodOptions\x18\xd0\x86\x03 \x01(\t:8\n\x10\x65num_description\x12\x1c.google.protobuf.EnumOptions\x18\xd0\x86\x03 \x01(\t:C\n\x16\x65num_value_description\x12!.google.protobuf.EnumValueOptions\x18\xd0\x86\x03 \x01(\tB\x05H\x01\x90\x01\x00')
+  serialized_options=b'H\001\220\001\000',
+  create_key=_descriptor._internal_create_key,
+  serialized_pb=b'\n steammessages_unified_base.proto\x1a google/protobuf/descriptor.proto\"\x0c\n\nNoResponse*]\n\x13\x45ProtoExecutionSite\x12 \n\x1ck_EProtoExecutionSiteUnknown\x10\x00\x12$\n k_EProtoExecutionSiteSteamClient\x10\x02:4\n\x0b\x64\x65scription\x12\x1d.google.protobuf.FieldOptions\x18\xd0\x86\x03 \x01(\t:>\n\x13service_description\x12\x1f.google.protobuf.ServiceOptions\x18\xd0\x86\x03 \x01(\t:u\n\x16service_execution_site\x12\x1f.google.protobuf.ServiceOptions\x18\xd8\x86\x03 \x01(\x0e\x32\x14.EProtoExecutionSite:\x1ck_EProtoExecutionSiteUnknown:<\n\x12method_description\x12\x1e.google.protobuf.MethodOptions\x18\xd0\x86\x03 \x01(\t:8\n\x10\x65num_description\x12\x1c.google.protobuf.EnumOptions\x18\xd0\x86\x03 \x01(\t:C\n\x16\x65num_value_description\x12!.google.protobuf.EnumValueOptions\x18\xd0\x86\x03 \x01(\tB\x05H\x01\x90\x01\x00'
   ,
   dependencies=[google_dot_protobuf_dot_descriptor__pb2.DESCRIPTOR,])
 
@@ -31,15 +30,18 @@ _EPROTOEXECUTIONSITE = _descriptor.EnumDescriptor(
   full_name='EProtoExecutionSite',
   filename=None,
   file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
   values=[
     _descriptor.EnumValueDescriptor(
       name='k_EProtoExecutionSiteUnknown', index=0, number=0,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EProtoExecutionSiteSteamClient', index=1, number=2,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
   ],
   containing_type=None,
   serialized_options=None,
@@ -56,18 +58,18 @@ DESCRIPTION_FIELD_NUMBER = 50000
 description = _descriptor.FieldDescriptor(
   name='description', full_name='description', index=0,
   number=50000, type=9, cpp_type=9, label=1,
-  has_default_value=False, default_value=_b("").decode('utf-8'),
+  has_default_value=False, default_value=b"".decode('utf-8'),
   message_type=None, enum_type=None, containing_type=None,
   is_extension=True, extension_scope=None,
-  serialized_options=None, file=DESCRIPTOR)
+  serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key)
 SERVICE_DESCRIPTION_FIELD_NUMBER = 50000
 service_description = _descriptor.FieldDescriptor(
   name='service_description', full_name='service_description', index=1,
   number=50000, type=9, cpp_type=9, label=1,
-  has_default_value=False, default_value=_b("").decode('utf-8'),
+  has_default_value=False, default_value=b"".decode('utf-8'),
   message_type=None, enum_type=None, containing_type=None,
   is_extension=True, extension_scope=None,
-  serialized_options=None, file=DESCRIPTOR)
+  serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key)
 SERVICE_EXECUTION_SITE_FIELD_NUMBER = 50008
 service_execution_site = _descriptor.FieldDescriptor(
   name='service_execution_site', full_name='service_execution_site', index=2,
@@ -75,31 +77,31 @@ service_execution_site = _descriptor.FieldDescriptor(
   has_default_value=True, default_value=0,
   message_type=None, enum_type=None, containing_type=None,
   is_extension=True, extension_scope=None,
-  serialized_options=None, file=DESCRIPTOR)
+  serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key)
 METHOD_DESCRIPTION_FIELD_NUMBER = 50000
 method_description = _descriptor.FieldDescriptor(
   name='method_description', full_name='method_description', index=3,
   number=50000, type=9, cpp_type=9, label=1,
-  has_default_value=False, default_value=_b("").decode('utf-8'),
+  has_default_value=False, default_value=b"".decode('utf-8'),
   message_type=None, enum_type=None, containing_type=None,
   is_extension=True, extension_scope=None,
-  serialized_options=None, file=DESCRIPTOR)
+  serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key)
 ENUM_DESCRIPTION_FIELD_NUMBER = 50000
 enum_description = _descriptor.FieldDescriptor(
   name='enum_description', full_name='enum_description', index=4,
   number=50000, type=9, cpp_type=9, label=1,
-  has_default_value=False, default_value=_b("").decode('utf-8'),
+  has_default_value=False, default_value=b"".decode('utf-8'),
   message_type=None, enum_type=None, containing_type=None,
   is_extension=True, extension_scope=None,
-  serialized_options=None, file=DESCRIPTOR)
+  serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key)
 ENUM_VALUE_DESCRIPTION_FIELD_NUMBER = 50000
 enum_value_description = _descriptor.FieldDescriptor(
   name='enum_value_description', full_name='enum_value_description', index=5,
   number=50000, type=9, cpp_type=9, label=1,
-  has_default_value=False, default_value=_b("").decode('utf-8'),
+  has_default_value=False, default_value=b"".decode('utf-8'),
   message_type=None, enum_type=None, containing_type=None,
   is_extension=True, extension_scope=None,
-  serialized_options=None, file=DESCRIPTOR)
+  serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key)
 
 
 _NORESPONSE = _descriptor.Descriptor(
@@ -108,6 +110,7 @@ _NORESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -135,11 +138,11 @@ DESCRIPTOR.extensions_by_name['enum_description'] = enum_description
 DESCRIPTOR.extensions_by_name['enum_value_description'] = enum_value_description
 _sym_db.RegisterFileDescriptor(DESCRIPTOR)
 
-NoResponse = _reflection.GeneratedProtocolMessageType('NoResponse', (_message.Message,), dict(
-  DESCRIPTOR = _NORESPONSE,
-  __module__ = 'steammessages_unified_base_pb2'
+NoResponse = _reflection.GeneratedProtocolMessageType('NoResponse', (_message.Message,), {
+  'DESCRIPTOR' : _NORESPONSE,
+  '__module__' : 'steammessages_unified_base_pb2'
   # @@protoc_insertion_point(class_scope:NoResponse)
-  ))
+  })
 _sym_db.RegisterMessage(NoResponse)
 
 google_dot_protobuf_dot_descriptor__pb2.FieldOptions.RegisterExtension(description)
diff --git a/steam/protobufs/steammessages_unified_test_pb2.py b/steam/protobufs/steammessages_unified_test_pb2.py
index 4a93742..02a92b7 100644
--- a/steam/protobufs/steammessages_unified_test_pb2.py
+++ b/steam/protobufs/steammessages_unified_test_pb2.py
@@ -1,9 +1,7 @@
 # -*- coding: utf-8 -*-
 # Generated by the protocol buffer compiler.  DO NOT EDIT!
 # source: steammessages_unified_test.proto
-
-import sys
-_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1'))
+"""Generated protocol buffer code."""
 from google.protobuf import descriptor as _descriptor
 from google.protobuf import message as _message
 from google.protobuf import reflection as _reflection
@@ -15,6 +13,7 @@ from google.protobuf import service_reflection
 _sym_db = _symbol_database.Default()
 
 
+import steam.protobufs.steammessages_base_pb2 as steammessages__base__pb2
 import steam.protobufs.steammessages_unified_base_pb2 as steammessages__unified__base__pb2
 
 
@@ -22,10 +21,11 @@ DESCRIPTOR = _descriptor.FileDescriptor(
   name='steammessages_unified_test.proto',
   package='',
   syntax='proto2',
-  serialized_options=_b('\220\001\001'),
-  serialized_pb=_b('\n steammessages_unified_test.proto\x1a steammessages_unified_base.proto\"G\n CMsgTest_MessageToClient_Request\x12#\n\tsome_text\x18\x01 \x01(\tB\x10\x82\xb5\x18\x0cSome string.\"H\n!CMsgTest_MessageToClient_Response\x12#\n\tsome_text\x18\x01 \x01(\tB\x10\x82\xb5\x18\x0cSome string.\"I\n\"CMsgTest_NotifyClient_Notification\x12#\n\tsome_text\x18\x01 \x01(\tB\x10\x82\xb5\x18\x0cSome string.\"G\n CMsgTest_MessageToServer_Request\x12#\n\tsome_text\x18\x01 \x01(\tB\x10\x82\xb5\x18\x0cSome string.\"H\n!CMsgTest_MessageToServer_Response\x12#\n\tsome_text\x18\x01 \x01(\tB\x10\x82\xb5\x18\x0cSome string.\"I\n\"CMsgTest_NotifyServer_Notification\x12#\n\tsome_text\x18\x01 \x01(\tB\x10\x82\xb5\x18\x0cSome string.2\x83\x02\n\x0fTestSteamClient\x12\x81\x01\n\x0fMessageToClient\x12!.CMsgTest_MessageToClient_Request\x1a\".CMsgTest_MessageToClient_Response\"\'\x82\xb5\x18#Some description - MessageToClient.\x12\x66\n\x0cNotifyClient\x12#.CMsgTest_NotifyClient_Notification\x1a\x0b.NoResponse\"$\x82\xb5\x18 Some description - NotifyClient.\x1a\x04\xc0\xb5\x18\x02\x32\x82\x02\n\x14TestServerFromClient\x12\x81\x01\n\x0fMessageToServer\x12!.CMsgTest_MessageToServer_Request\x1a\".CMsgTest_MessageToServer_Response\"\'\x82\xb5\x18#Some description - MessageToServer.\x12\x66\n\x0cNotifyServer\x12#.CMsgTest_NotifyServer_Notification\x1a\x0b.NoResponse\"$\x82\xb5\x18 Some description - NotifyServer.B\x03\x90\x01\x01')
+  serialized_options=b'\220\001\001',
+  create_key=_descriptor._internal_create_key,
+  serialized_pb=b'\n steammessages_unified_test.proto\x1a\x18steammessages_base.proto\x1a steammessages_unified_base.proto\"G\n CMsgTest_MessageToClient_Request\x12#\n\tsome_text\x18\x01 \x01(\tB\x10\x82\xb5\x18\x0cSome string.\"H\n!CMsgTest_MessageToClient_Response\x12#\n\tsome_text\x18\x01 \x01(\tB\x10\x82\xb5\x18\x0cSome string.\"I\n\"CMsgTest_NotifyClient_Notification\x12#\n\tsome_text\x18\x01 \x01(\tB\x10\x82\xb5\x18\x0cSome string.\"G\n CMsgTest_MessageToServer_Request\x12#\n\tsome_text\x18\x01 \x01(\tB\x10\x82\xb5\x18\x0cSome string.\"H\n!CMsgTest_MessageToServer_Response\x12#\n\tsome_text\x18\x01 \x01(\tB\x10\x82\xb5\x18\x0cSome string.\"I\n\"CMsgTest_NotifyServer_Notification\x12#\n\tsome_text\x18\x01 \x01(\tB\x10\x82\xb5\x18\x0cSome string.2\x83\x02\n\x0fTestSteamClient\x12\x81\x01\n\x0fMessageToClient\x12!.CMsgTest_MessageToClient_Request\x1a\".CMsgTest_MessageToClient_Response\"\'\x82\xb5\x18#Some description - MessageToClient.\x12\x66\n\x0cNotifyClient\x12#.CMsgTest_NotifyClient_Notification\x1a\x0b.NoResponse\"$\x82\xb5\x18 Some description - NotifyClient.\x1a\x04\xc0\xb5\x18\x02\x32\x82\x02\n\x14TestServerFromClient\x12\x81\x01\n\x0fMessageToServer\x12!.CMsgTest_MessageToServer_Request\x1a\".CMsgTest_MessageToServer_Response\"\'\x82\xb5\x18#Some description - MessageToServer.\x12\x66\n\x0cNotifyServer\x12#.CMsgTest_NotifyServer_Notification\x1a\x0b.NoResponse\"$\x82\xb5\x18 Some description - NotifyServer.B\x03\x90\x01\x01'
   ,
-  dependencies=[steammessages__unified__base__pb2.DESCRIPTOR,])
+  dependencies=[steammessages__base__pb2.DESCRIPTOR,steammessages__unified__base__pb2.DESCRIPTOR,])
 
 
 
@@ -36,14 +36,15 @@ _CMSGTEST_MESSAGETOCLIENT_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='some_text', full_name='CMsgTest_MessageToClient_Request.some_text', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\014Some string.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\014Some string.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -56,8 +57,8 @@ _CMSGTEST_MESSAGETOCLIENT_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=70,
-  serialized_end=141,
+  serialized_start=96,
+  serialized_end=167,
 )
 
 
@@ -67,14 +68,15 @@ _CMSGTEST_MESSAGETOCLIENT_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='some_text', full_name='CMsgTest_MessageToClient_Response.some_text', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\014Some string.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\014Some string.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -87,8 +89,8 @@ _CMSGTEST_MESSAGETOCLIENT_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=143,
-  serialized_end=215,
+  serialized_start=169,
+  serialized_end=241,
 )
 
 
@@ -98,14 +100,15 @@ _CMSGTEST_NOTIFYCLIENT_NOTIFICATION = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='some_text', full_name='CMsgTest_NotifyClient_Notification.some_text', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\014Some string.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\014Some string.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -118,8 +121,8 @@ _CMSGTEST_NOTIFYCLIENT_NOTIFICATION = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=217,
-  serialized_end=290,
+  serialized_start=243,
+  serialized_end=316,
 )
 
 
@@ -129,14 +132,15 @@ _CMSGTEST_MESSAGETOSERVER_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='some_text', full_name='CMsgTest_MessageToServer_Request.some_text', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\014Some string.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\014Some string.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -149,8 +153,8 @@ _CMSGTEST_MESSAGETOSERVER_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=292,
-  serialized_end=363,
+  serialized_start=318,
+  serialized_end=389,
 )
 
 
@@ -160,14 +164,15 @@ _CMSGTEST_MESSAGETOSERVER_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='some_text', full_name='CMsgTest_MessageToServer_Response.some_text', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\014Some string.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\014Some string.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -180,8 +185,8 @@ _CMSGTEST_MESSAGETOSERVER_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=365,
-  serialized_end=437,
+  serialized_start=391,
+  serialized_end=463,
 )
 
 
@@ -191,14 +196,15 @@ _CMSGTEST_NOTIFYSERVER_NOTIFICATION = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='some_text', full_name='CMsgTest_NotifyServer_Notification.some_text', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\014Some string.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\014Some string.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -211,8 +217,8 @@ _CMSGTEST_NOTIFYSERVER_NOTIFICATION = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=439,
-  serialized_end=512,
+  serialized_start=465,
+  serialized_end=538,
 )
 
 DESCRIPTOR.message_types_by_name['CMsgTest_MessageToClient_Request'] = _CMSGTEST_MESSAGETOCLIENT_REQUEST
@@ -223,46 +229,46 @@ DESCRIPTOR.message_types_by_name['CMsgTest_MessageToServer_Response'] = _CMSGTES
 DESCRIPTOR.message_types_by_name['CMsgTest_NotifyServer_Notification'] = _CMSGTEST_NOTIFYSERVER_NOTIFICATION
 _sym_db.RegisterFileDescriptor(DESCRIPTOR)
 
-CMsgTest_MessageToClient_Request = _reflection.GeneratedProtocolMessageType('CMsgTest_MessageToClient_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGTEST_MESSAGETOCLIENT_REQUEST,
-  __module__ = 'steammessages_unified_test_pb2'
+CMsgTest_MessageToClient_Request = _reflection.GeneratedProtocolMessageType('CMsgTest_MessageToClient_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGTEST_MESSAGETOCLIENT_REQUEST,
+  '__module__' : 'steammessages_unified_test_pb2'
   # @@protoc_insertion_point(class_scope:CMsgTest_MessageToClient_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgTest_MessageToClient_Request)
 
-CMsgTest_MessageToClient_Response = _reflection.GeneratedProtocolMessageType('CMsgTest_MessageToClient_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGTEST_MESSAGETOCLIENT_RESPONSE,
-  __module__ = 'steammessages_unified_test_pb2'
+CMsgTest_MessageToClient_Response = _reflection.GeneratedProtocolMessageType('CMsgTest_MessageToClient_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGTEST_MESSAGETOCLIENT_RESPONSE,
+  '__module__' : 'steammessages_unified_test_pb2'
   # @@protoc_insertion_point(class_scope:CMsgTest_MessageToClient_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgTest_MessageToClient_Response)
 
-CMsgTest_NotifyClient_Notification = _reflection.GeneratedProtocolMessageType('CMsgTest_NotifyClient_Notification', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGTEST_NOTIFYCLIENT_NOTIFICATION,
-  __module__ = 'steammessages_unified_test_pb2'
+CMsgTest_NotifyClient_Notification = _reflection.GeneratedProtocolMessageType('CMsgTest_NotifyClient_Notification', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGTEST_NOTIFYCLIENT_NOTIFICATION,
+  '__module__' : 'steammessages_unified_test_pb2'
   # @@protoc_insertion_point(class_scope:CMsgTest_NotifyClient_Notification)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgTest_NotifyClient_Notification)
 
-CMsgTest_MessageToServer_Request = _reflection.GeneratedProtocolMessageType('CMsgTest_MessageToServer_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGTEST_MESSAGETOSERVER_REQUEST,
-  __module__ = 'steammessages_unified_test_pb2'
+CMsgTest_MessageToServer_Request = _reflection.GeneratedProtocolMessageType('CMsgTest_MessageToServer_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGTEST_MESSAGETOSERVER_REQUEST,
+  '__module__' : 'steammessages_unified_test_pb2'
   # @@protoc_insertion_point(class_scope:CMsgTest_MessageToServer_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgTest_MessageToServer_Request)
 
-CMsgTest_MessageToServer_Response = _reflection.GeneratedProtocolMessageType('CMsgTest_MessageToServer_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGTEST_MESSAGETOSERVER_RESPONSE,
-  __module__ = 'steammessages_unified_test_pb2'
+CMsgTest_MessageToServer_Response = _reflection.GeneratedProtocolMessageType('CMsgTest_MessageToServer_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGTEST_MESSAGETOSERVER_RESPONSE,
+  '__module__' : 'steammessages_unified_test_pb2'
   # @@protoc_insertion_point(class_scope:CMsgTest_MessageToServer_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgTest_MessageToServer_Response)
 
-CMsgTest_NotifyServer_Notification = _reflection.GeneratedProtocolMessageType('CMsgTest_NotifyServer_Notification', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGTEST_NOTIFYSERVER_NOTIFICATION,
-  __module__ = 'steammessages_unified_test_pb2'
+CMsgTest_NotifyServer_Notification = _reflection.GeneratedProtocolMessageType('CMsgTest_NotifyServer_Notification', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGTEST_NOTIFYSERVER_NOTIFICATION,
+  '__module__' : 'steammessages_unified_test_pb2'
   # @@protoc_insertion_point(class_scope:CMsgTest_NotifyServer_Notification)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgTest_NotifyServer_Notification)
 
 
@@ -279,9 +285,10 @@ _TESTSTEAMCLIENT = _descriptor.ServiceDescriptor(
   full_name='TestSteamClient',
   file=DESCRIPTOR,
   index=0,
-  serialized_options=_b('\300\265\030\002'),
-  serialized_start=515,
-  serialized_end=774,
+  serialized_options=b'\300\265\030\002',
+  create_key=_descriptor._internal_create_key,
+  serialized_start=541,
+  serialized_end=800,
   methods=[
   _descriptor.MethodDescriptor(
     name='MessageToClient',
@@ -290,7 +297,8 @@ _TESTSTEAMCLIENT = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CMSGTEST_MESSAGETOCLIENT_REQUEST,
     output_type=_CMSGTEST_MESSAGETOCLIENT_RESPONSE,
-    serialized_options=_b('\202\265\030#Some description - MessageToClient.'),
+    serialized_options=b'\202\265\030#Some description - MessageToClient.',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='NotifyClient',
@@ -299,7 +307,8 @@ _TESTSTEAMCLIENT = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CMSGTEST_NOTIFYCLIENT_NOTIFICATION,
     output_type=steammessages__unified__base__pb2._NORESPONSE,
-    serialized_options=_b('\202\265\030 Some description - NotifyClient.'),
+    serialized_options=b'\202\265\030 Some description - NotifyClient.',
+    create_key=_descriptor._internal_create_key,
   ),
 ])
 _sym_db.RegisterServiceDescriptor(_TESTSTEAMCLIENT)
@@ -313,8 +322,9 @@ _TESTSERVERFROMCLIENT = _descriptor.ServiceDescriptor(
   file=DESCRIPTOR,
   index=1,
   serialized_options=None,
-  serialized_start=777,
-  serialized_end=1035,
+  create_key=_descriptor._internal_create_key,
+  serialized_start=803,
+  serialized_end=1061,
   methods=[
   _descriptor.MethodDescriptor(
     name='MessageToServer',
@@ -323,7 +333,8 @@ _TESTSERVERFROMCLIENT = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CMSGTEST_MESSAGETOSERVER_REQUEST,
     output_type=_CMSGTEST_MESSAGETOSERVER_RESPONSE,
-    serialized_options=_b('\202\265\030#Some description - MessageToServer.'),
+    serialized_options=b'\202\265\030#Some description - MessageToServer.',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='NotifyServer',
@@ -332,7 +343,8 @@ _TESTSERVERFROMCLIENT = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CMSGTEST_NOTIFYSERVER_NOTIFICATION,
     output_type=steammessages__unified__base__pb2._NORESPONSE,
-    serialized_options=_b('\202\265\030 Some description - NotifyServer.'),
+    serialized_options=b'\202\265\030 Some description - NotifyServer.',
+    create_key=_descriptor._internal_create_key,
   ),
 ])
 _sym_db.RegisterServiceDescriptor(_TESTSERVERFROMCLIENT)
diff --git a/steam/protobufs/steammessages_useraccount_pb2.py b/steam/protobufs/steammessages_useraccount_pb2.py
index 154bd3f..a1fdc4a 100644
--- a/steam/protobufs/steammessages_useraccount_pb2.py
+++ b/steam/protobufs/steammessages_useraccount_pb2.py
@@ -1,9 +1,7 @@
 # -*- coding: utf-8 -*-
 # Generated by the protocol buffer compiler.  DO NOT EDIT!
 # source: steammessages_useraccount.proto
-
-import sys
-_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1'))
+"""Generated protocol buffer code."""
 from google.protobuf.internal import enum_type_wrapper
 from google.protobuf import descriptor as _descriptor
 from google.protobuf import message as _message
@@ -16,6 +14,7 @@ from google.protobuf import service_reflection
 _sym_db = _symbol_database.Default()
 
 
+import steam.protobufs.steammessages_base_pb2 as steammessages__base__pb2
 import steam.protobufs.steammessages_unified_base_pb2 as steammessages__unified__base__pb2
 
 
@@ -23,38 +22,44 @@ DESCRIPTOR = _descriptor.FileDescriptor(
   name='steammessages_useraccount.proto',
   package='',
   syntax='proto2',
-  serialized_options=_b('\220\001\001'),
-  serialized_pb=_b('\n\x1fsteammessages_useraccount.proto\x1a steammessages_unified_base.proto\"P\n8CUserAccount_GetAvailableValveDiscountPromotions_Request\x12\x14\n\x0c\x63ountry_code\x18\x01 \x01(\t\"\x85\x04\n9CUserAccount_GetAvailableValveDiscountPromotions_Response\x12l\n\npromotions\x18\x01 \x03(\x0b\x32X.CUserAccount_GetAvailableValveDiscountPromotions_Response.ValveDiscountPromotionDetails\x1a\xd9\x02\n\x1dValveDiscountPromotionDetails\x12\x13\n\x0bpromotionid\x18\x01 \x01(\r\x12\x1d\n\x15promotion_description\x18\x02 \x01(\t\x12\x1b\n\x13minimum_cart_amount\x18\x03 \x01(\x03\x12\'\n\x1fminimum_cart_amount_for_display\x18\x04 \x01(\x03\x12\x17\n\x0f\x64iscount_amount\x18\x05 \x01(\x03\x12\x15\n\rcurrency_code\x18\x06 \x01(\x05\x12\x1b\n\x13\x61vailable_use_count\x18\x07 \x01(\x05\x12!\n\x19promotional_discount_type\x18\x08 \x01(\x05\x12\x19\n\x11loyalty_reward_id\x18\t \x01(\x05\x12\x1c\n\x14localized_name_token\x18\n \x01(\t\x12\x15\n\rmax_use_count\x18\x0b \x01(\x05\"+\n)CUserAccount_GetAccountLinkStatus_Request\"}\n*CUserAccount_GetAccountLinkStatus_Response\x12\x0c\n\x04pwid\x18\x01 \x01(\r\x12\x1d\n\x15identity_verification\x18\x02 \x01(\r\x12\"\n\x1aperformed_age_verification\x18\x03 \x01(\x08\"9\n(CUserAccount_CancelLicenseForApp_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\"+\n)CUserAccount_CancelLicenseForApp_Response\"r\n,CUserAccount_CreateFriendInviteToken_Request\x12\x14\n\x0cinvite_limit\x18\x01 \x01(\r\x12\x17\n\x0finvite_duration\x18\x02 \x01(\r\x12\x13\n\x0binvite_note\x18\x03 \x01(\t\"\x99\x01\n-CUserAccount_CreateFriendInviteToken_Response\x12\x14\n\x0cinvite_token\x18\x01 \x01(\t\x12\x14\n\x0cinvite_limit\x18\x02 \x01(\x04\x12\x17\n\x0finvite_duration\x18\x03 \x01(\x04\x12\x14\n\x0ctime_created\x18\x04 \x01(\x07\x12\r\n\x05valid\x18\x05 \x01(\x08\",\n*CUserAccount_GetFriendInviteTokens_Request\"m\n+CUserAccount_GetFriendInviteTokens_Response\x12>\n\x06tokens\x18\x01 \x03(\x0b\x32..CUserAccount_CreateFriendInviteToken_Response\"S\n*CUserAccount_ViewFriendInviteToken_Request\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12\x14\n\x0cinvite_token\x18\x02 \x01(\t\"f\n+CUserAccount_ViewFriendInviteToken_Response\x12\r\n\x05valid\x18\x01 \x01(\x08\x12\x0f\n\x07steamid\x18\x02 \x01(\x04\x12\x17\n\x0finvite_duration\x18\x03 \x01(\x04\"U\n,CUserAccount_RedeemFriendInviteToken_Request\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12\x14\n\x0cinvite_token\x18\x02 \x01(\t\"/\n-CUserAccount_RedeemFriendInviteToken_Response\"D\n,CUserAccount_RevokeFriendInviteToken_Request\x12\x14\n\x0cinvite_token\x18\x01 \x01(\t\"/\n-CUserAccount_RevokeFriendInviteToken_Response\">\n\'CUserAccount_RegisterCompatTool_Request\x12\x13\n\x0b\x63ompat_tool\x18\x01 \x01(\r\"*\n(CUserAccount_RegisterCompatTool_Response\"\x9c\x03\n,CAccountLinking_GetLinkedAccountInfo_Request\x12H\n\x0c\x61\x63\x63ount_type\x18\x01 \x01(\x0e\x32\x15.EInternalAccountType:\x1bk_EInternalSteamAccountType\x12+\n\naccount_id\x18\x02 \x01(\x04\x42\x17\x82\xb5\x18\x13Internal account ID\x12t\n\x06\x66ilter\x18\x03 \x01(\x0e\x32\x15.EExternalAccountType:\x0fk_EExternalNoneB<\x82\xb5\x18\x38if specified then only return this external account type\x12\x7f\n\x13return_access_token\x18\x04 \x01(\x08\x42\x62\x82\xb5\x18^if provided and true, then returns valid access token if available. It may refresh the token. \"\x8b\x06\n-CAccountLinking_GetLinkedAccountInfo_Response\x12h\n\x11\x65xternal_accounts\x18\x01 \x03(\x0b\x32M.CAccountLinking_GetLinkedAccountInfo_Response.CExternalAccountTuple_Response\x1a\xef\x04\n\x1e\x43\x45xternalAccountTuple_Response\x12=\n\rexternal_type\x18\x01 \x01(\x0e\x32\x15.EExternalAccountType:\x0fk_EExternalNone\x12;\n\x0b\x65xternal_id\x18\x02 \x01(\tB&\x82\xb5\x18\"unique external account identifier\x12:\n\x12\x65xternal_user_name\x18\x03 \x01(\tB\x1e\x82\xb5\x18\x1auser readable; best effort\x12S\n\x0c\x65xternal_url\x18\x04 \x01(\tB=\x82\xb5\x18\x39required for all, can be a sentinal to verify correctness\x12@\n\x0c\x61\x63\x63\x65ss_token\x18\x05 \x01(\tB*\x82\xb5\x18&provided if requeest and it was valid.\x12k\n\x13\x61\x63\x63\x65ss_token_secret\x18\x06 \x01(\tBN\x82\xb5\x18Jrequired for OAuth v1 and signing the message, provided with access token.\x12\x90\x01\n\x08is_valid\x18\x07 \x01(\x08\x42~\x82\xb5\x18zIf false, it means access token no longer work (expired, disconnected) and the link is now broken. Inform user to refresh.\"w\n.CEmbeddedClient_AuthorizeCurrentDevice_Request\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12\r\n\x05\x61ppid\x18\x02 \x01(\r\x12\x13\n\x0b\x64\x65vice_info\x18\x03 \x01(\t\x12\x10\n\x08\x64\x65viceid\x18\x04 \x01(\r\"`\n\x15\x43\x45mbeddedClient_Token\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12\x14\n\x0c\x63lient_token\x18\x02 \x01(\x0c\x12\x0e\n\x06\x65xpiry\x18\x03 \x01(\r\x12\x10\n\x08\x64\x65viceid\x18\x04 \x01(\r\"a\n(CEmbeddedClient_AuthorizeDevice_Response\x12\x0e\n\x06result\x18\x01 \x01(\r\x12%\n\x05token\x18\x02 \x01(\x0b\x32\x16.CEmbeddedClient_Token*\x8d\x01\n\x14\x45InternalAccountType\x12\x1f\n\x1bk_EInternalSteamAccountType\x10\x01\x12\x17\n\x13k_EInternalClanType\x10\x02\x12\x16\n\x12k_EInternalAppType\x10\x03\x12#\n\x1fk_EInternalBroadcastChannelType\x10\x04*\x86\x02\n\x14\x45\x45xternalAccountType\x12\x13\n\x0fk_EExternalNone\x10\x00\x12\x1b\n\x17k_EExternalSteamAccount\x10\x01\x12\x1c\n\x18k_EExternalGoogleAccount\x10\x02\x12\x1e\n\x1ak_EExternalFacebookAccount\x10\x03\x12\x1d\n\x19k_EExternalTwitterAccount\x10\x04\x12\x1c\n\x18k_EExternalTwitchAccount\x10\x05\x12$\n k_EExternalYouTubeChannelAccount\x10\x06\x12\x1b\n\x17k_EExternalFacebookPage\x10\x07\x32\xcb\x0c\n\x0bUserAccount\x12\xe0\x01\n#GetAvailableValveDiscountPromotions\x12\x39.CUserAccount_GetAvailableValveDiscountPromotions_Request\x1a:.CUserAccount_GetAvailableValveDiscountPromotions_Response\"B\x82\xb5\x18>Gets the available promotional discounts available to the user\x12\x90\x01\n\x14GetAccountLinkStatus\x12*.CUserAccount_GetAccountLinkStatus_Request\x1a+.CUserAccount_GetAccountLinkStatus_Response\"\x1f\x82\xb5\x18\x1b\x46\x65tches account link status\x12\x93\x01\n\x13\x43\x61ncelLicenseForApp\x12).CUserAccount_CancelLicenseForApp_Request\x1a*.CUserAccount_CancelLicenseForApp_Response\"%\x82\xb5\x18!Cancels a free license for a user\x12\xc4\x01\n\x17\x43reateFriendInviteToken\x12-.CUserAccount_CreateFriendInviteToken_Request\x1a..CUserAccount_CreateFriendInviteToken_Response\"J\x82\xb5\x18\x46\x43reate a limited-use token that can be used to create a friend request\x12\xa1\x01\n\x15GetFriendInviteTokens\x12+.CUserAccount_GetFriendInviteTokens_Request\x1a,.CUserAccount_GetFriendInviteTokens_Response\"-\x82\xb5\x18)Get the set of active tokens for the user\x12\x9b\x01\n\x15ViewFriendInviteToken\x12+.CUserAccount_ViewFriendInviteToken_Request\x1a,.CUserAccount_ViewFriendInviteToken_Response\"\'\x82\xb5\x18#View details about an invite token \x12\xb7\x01\n\x17RedeemFriendInviteToken\x12-.CUserAccount_RedeemFriendInviteToken_Request\x1a..CUserAccount_RedeemFriendInviteToken_Response\"=\x82\xb5\x18\x39\x43reate a friend relationship using the given invite token\x12\xa2\x01\n\x17RevokeFriendInviteToken\x12-.CUserAccount_RevokeFriendInviteToken_Request\x1a..CUserAccount_RevokeFriendInviteToken_Response\"(\x82\xb5\x18$Revoke an active friend invite token\x12\x98\x01\n\x12RegisterCompatTool\x12(.CUserAccount_RegisterCompatTool_Request\x1a).CUserAccount_RegisterCompatTool_Response\"-\x82\xb5\x18)Register intended account usage of a tool\x1a-\x82\xb5\x18)A service to get user account information2\x9d\x02\n\x0e\x41\x63\x63ountLinking\x12\xd3\x01\n\x14GetLinkedAccountInfo\x12-.CAccountLinking_GetLinkedAccountInfo_Request\x1a..CAccountLinking_GetLinkedAccountInfo_Response\"\\\x82\xb5\x18XList all my active linked external accounts; may be requested to return the access token\x1a\x35\x82\xb5\x18\x31\x41 service to manage and link to external accounts2\xa4\x02\n\x0e\x45mbeddedClient\x12\xc1\x01\n\x16\x41uthorizeCurrentDevice\x12/.CEmbeddedClient_AuthorizeCurrentDevice_Request\x1a).CEmbeddedClient_AuthorizeDevice_Response\"K\x82\xb5\x18GUse a logged-in (password/etc) session to create a durable access token\x1aN\x82\xb5\x18JService to authorize and manage Steam functions directly embedded in gamesB\x03\x90\x01\x01')
+  serialized_options=b'\220\001\001',
+  create_key=_descriptor._internal_create_key,
+  serialized_pb=b'\n\x1fsteammessages_useraccount.proto\x1a\x18steammessages_base.proto\x1a steammessages_unified_base.proto\"P\n8CUserAccount_GetAvailableValveDiscountPromotions_Request\x12\x14\n\x0c\x63ountry_code\x18\x01 \x01(\t\"\x85\x04\n9CUserAccount_GetAvailableValveDiscountPromotions_Response\x12l\n\npromotions\x18\x01 \x03(\x0b\x32X.CUserAccount_GetAvailableValveDiscountPromotions_Response.ValveDiscountPromotionDetails\x1a\xd9\x02\n\x1dValveDiscountPromotionDetails\x12\x13\n\x0bpromotionid\x18\x01 \x01(\r\x12\x1d\n\x15promotion_description\x18\x02 \x01(\t\x12\x1b\n\x13minimum_cart_amount\x18\x03 \x01(\x03\x12\'\n\x1fminimum_cart_amount_for_display\x18\x04 \x01(\x03\x12\x17\n\x0f\x64iscount_amount\x18\x05 \x01(\x03\x12\x15\n\rcurrency_code\x18\x06 \x01(\x05\x12\x1b\n\x13\x61vailable_use_count\x18\x07 \x01(\x05\x12!\n\x19promotional_discount_type\x18\x08 \x01(\x05\x12\x19\n\x11loyalty_reward_id\x18\t \x01(\x05\x12\x1c\n\x14localized_name_token\x18\n \x01(\t\x12\x15\n\rmax_use_count\x18\x0b \x01(\x05\"\x8a\x01\n+CUserAccount_GetClientWalletDetails_Request\x12\x1e\n\x16include_balance_in_usd\x18\x01 \x01(\x08\x12\x18\n\rwallet_region\x18\x02 \x01(\x05:\x01\x31\x12!\n\x19include_formatted_balance\x18\x03 \x01(\x08\"\x93\x03\n&CUserAccount_GetWalletDetails_Response\x12\x12\n\nhas_wallet\x18\x01 \x01(\x08\x12\x19\n\x11user_country_code\x18\x02 \x01(\t\x12\x1b\n\x13wallet_country_code\x18\x03 \x01(\t\x12\x14\n\x0cwallet_state\x18\x04 \x01(\t\x12\x0f\n\x07\x62\x61lance\x18\x05 \x01(\x03\x12\x17\n\x0f\x64\x65layed_balance\x18\x06 \x01(\x03\x12\x15\n\rcurrency_code\x18\x07 \x01(\x05\x12\x1c\n\x14time_most_recent_txn\x18\x08 \x01(\r\x12\x19\n\x11most_recent_txnid\x18\t \x01(\x04\x12\x16\n\x0e\x62\x61lance_in_usd\x18\n \x01(\x03\x12\x1e\n\x16\x64\x65layed_balance_in_usd\x18\x0b \x01(\x03\x12#\n\x1bhas_wallet_in_other_regions\x18\x0c \x01(\x08\x12\x15\n\rother_regions\x18\r \x03(\x05\x12\x19\n\x11\x66ormatted_balance\x18\x0e \x01(\t\"+\n)CUserAccount_GetAccountLinkStatus_Request\"}\n*CUserAccount_GetAccountLinkStatus_Response\x12\x0c\n\x04pwid\x18\x01 \x01(\r\x12\x1d\n\x15identity_verification\x18\x02 \x01(\r\x12\"\n\x1aperformed_age_verification\x18\x03 \x01(\x08\"9\n(CUserAccount_CancelLicenseForApp_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\"+\n)CUserAccount_CancelLicenseForApp_Response\"6\n#CUserAccount_GetUserCountry_Request\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\"7\n$CUserAccount_GetUserCountry_Response\x12\x0f\n\x07\x63ountry\x18\x01 \x01(\t\"r\n,CUserAccount_CreateFriendInviteToken_Request\x12\x14\n\x0cinvite_limit\x18\x01 \x01(\r\x12\x17\n\x0finvite_duration\x18\x02 \x01(\r\x12\x13\n\x0binvite_note\x18\x03 \x01(\t\"\x99\x01\n-CUserAccount_CreateFriendInviteToken_Response\x12\x14\n\x0cinvite_token\x18\x01 \x01(\t\x12\x14\n\x0cinvite_limit\x18\x02 \x01(\x04\x12\x17\n\x0finvite_duration\x18\x03 \x01(\x04\x12\x14\n\x0ctime_created\x18\x04 \x01(\x07\x12\r\n\x05valid\x18\x05 \x01(\x08\",\n*CUserAccount_GetFriendInviteTokens_Request\"m\n+CUserAccount_GetFriendInviteTokens_Response\x12>\n\x06tokens\x18\x01 \x03(\x0b\x32..CUserAccount_CreateFriendInviteToken_Response\"S\n*CUserAccount_ViewFriendInviteToken_Request\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12\x14\n\x0cinvite_token\x18\x02 \x01(\t\"f\n+CUserAccount_ViewFriendInviteToken_Response\x12\r\n\x05valid\x18\x01 \x01(\x08\x12\x0f\n\x07steamid\x18\x02 \x01(\x04\x12\x17\n\x0finvite_duration\x18\x03 \x01(\x04\"U\n,CUserAccount_RedeemFriendInviteToken_Request\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12\x14\n\x0cinvite_token\x18\x02 \x01(\t\"/\n-CUserAccount_RedeemFriendInviteToken_Response\"D\n,CUserAccount_RevokeFriendInviteToken_Request\x12\x14\n\x0cinvite_token\x18\x01 \x01(\t\"/\n-CUserAccount_RevokeFriendInviteToken_Response\">\n\'CUserAccount_RegisterCompatTool_Request\x12\x13\n\x0b\x63ompat_tool\x18\x01 \x01(\r\"*\n(CUserAccount_RegisterCompatTool_Response\"\x9c\x03\n,CAccountLinking_GetLinkedAccountInfo_Request\x12H\n\x0c\x61\x63\x63ount_type\x18\x01 \x01(\x0e\x32\x15.EInternalAccountType:\x1bk_EInternalSteamAccountType\x12+\n\naccount_id\x18\x02 \x01(\x04\x42\x17\x82\xb5\x18\x13Internal account ID\x12t\n\x06\x66ilter\x18\x03 \x01(\x0e\x32\x15.EExternalAccountType:\x0fk_EExternalNoneB<\x82\xb5\x18\x38if specified then only return this external account type\x12\x7f\n\x13return_access_token\x18\x04 \x01(\x08\x42\x62\x82\xb5\x18^if provided and true, then returns valid access token if available. It may refresh the token. \"\x8b\x06\n-CAccountLinking_GetLinkedAccountInfo_Response\x12h\n\x11\x65xternal_accounts\x18\x01 \x03(\x0b\x32M.CAccountLinking_GetLinkedAccountInfo_Response.CExternalAccountTuple_Response\x1a\xef\x04\n\x1e\x43\x45xternalAccountTuple_Response\x12=\n\rexternal_type\x18\x01 \x01(\x0e\x32\x15.EExternalAccountType:\x0fk_EExternalNone\x12;\n\x0b\x65xternal_id\x18\x02 \x01(\tB&\x82\xb5\x18\"unique external account identifier\x12:\n\x12\x65xternal_user_name\x18\x03 \x01(\tB\x1e\x82\xb5\x18\x1auser readable; best effort\x12S\n\x0c\x65xternal_url\x18\x04 \x01(\tB=\x82\xb5\x18\x39required for all, can be a sentinal to verify correctness\x12@\n\x0c\x61\x63\x63\x65ss_token\x18\x05 \x01(\tB*\x82\xb5\x18&provided if requeest and it was valid.\x12k\n\x13\x61\x63\x63\x65ss_token_secret\x18\x06 \x01(\tBN\x82\xb5\x18Jrequired for OAuth v1 and signing the message, provided with access token.\x12\x90\x01\n\x08is_valid\x18\x07 \x01(\x08\x42~\x82\xb5\x18zIf false, it means access token no longer work (expired, disconnected) and the link is now broken. Inform user to refresh.\"w\n.CEmbeddedClient_AuthorizeCurrentDevice_Request\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12\r\n\x05\x61ppid\x18\x02 \x01(\r\x12\x13\n\x0b\x64\x65vice_info\x18\x03 \x01(\t\x12\x10\n\x08\x64\x65viceid\x18\x04 \x01(\r\"`\n\x15\x43\x45mbeddedClient_Token\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12\x14\n\x0c\x63lient_token\x18\x02 \x01(\x0c\x12\x0e\n\x06\x65xpiry\x18\x03 \x01(\r\x12\x10\n\x08\x64\x65viceid\x18\x04 \x01(\r\"a\n(CEmbeddedClient_AuthorizeDevice_Response\x12\x0e\n\x06result\x18\x01 \x01(\r\x12%\n\x05token\x18\x02 \x01(\x0b\x32\x16.CEmbeddedClient_Token*\x8d\x01\n\x14\x45InternalAccountType\x12\x1f\n\x1bk_EInternalSteamAccountType\x10\x01\x12\x17\n\x13k_EInternalClanType\x10\x02\x12\x16\n\x12k_EInternalAppType\x10\x03\x12#\n\x1fk_EInternalBroadcastChannelType\x10\x04*\x86\x02\n\x14\x45\x45xternalAccountType\x12\x13\n\x0fk_EExternalNone\x10\x00\x12\x1b\n\x17k_EExternalSteamAccount\x10\x01\x12\x1c\n\x18k_EExternalGoogleAccount\x10\x02\x12\x1e\n\x1ak_EExternalFacebookAccount\x10\x03\x12\x1d\n\x19k_EExternalTwitterAccount\x10\x04\x12\x1c\n\x18k_EExternalTwitchAccount\x10\x05\x12$\n k_EExternalYouTubeChannelAccount\x10\x06\x12\x1b\n\x17k_EExternalFacebookPage\x10\x07\x32\xc1\x0f\n\x0bUserAccount\x12\xe0\x01\n#GetAvailableValveDiscountPromotions\x12\x39.CUserAccount_GetAvailableValveDiscountPromotions_Request\x1a:.CUserAccount_GetAvailableValveDiscountPromotions_Response\"B\x82\xb5\x18>Gets the available promotional discounts available to the user\x12\xa7\x01\n\x16GetClientWalletDetails\x12,.CUserAccount_GetClientWalletDetails_Request\x1a\'.CUserAccount_GetWalletDetails_Response\"6\x82\xb5\x18\x32Returns balance and details about any users wallet\x12\x90\x01\n\x14GetAccountLinkStatus\x12*.CUserAccount_GetAccountLinkStatus_Request\x1a+.CUserAccount_GetAccountLinkStatus_Response\"\x1f\x82\xb5\x18\x1b\x46\x65tches account link status\x12\x93\x01\n\x13\x43\x61ncelLicenseForApp\x12).CUserAccount_CancelLicenseForApp_Request\x1a*.CUserAccount_CancelLicenseForApp_Response\"%\x82\xb5\x18!Cancels a free license for a user\x12\xc9\x01\n\x0eGetUserCountry\x12$.CUserAccount_GetUserCountry_Request\x1a%.CUserAccount_GetUserCountry_Response\"j\x82\xb5\x18\x66Get the country code associated with the passed steamid (only available for logged-in user or support)\x12\xc4\x01\n\x17\x43reateFriendInviteToken\x12-.CUserAccount_CreateFriendInviteToken_Request\x1a..CUserAccount_CreateFriendInviteToken_Response\"J\x82\xb5\x18\x46\x43reate a limited-use token that can be used to create a friend request\x12\xa1\x01\n\x15GetFriendInviteTokens\x12+.CUserAccount_GetFriendInviteTokens_Request\x1a,.CUserAccount_GetFriendInviteTokens_Response\"-\x82\xb5\x18)Get the set of active tokens for the user\x12\x9b\x01\n\x15ViewFriendInviteToken\x12+.CUserAccount_ViewFriendInviteToken_Request\x1a,.CUserAccount_ViewFriendInviteToken_Response\"\'\x82\xb5\x18#View details about an invite token \x12\xb7\x01\n\x17RedeemFriendInviteToken\x12-.CUserAccount_RedeemFriendInviteToken_Request\x1a..CUserAccount_RedeemFriendInviteToken_Response\"=\x82\xb5\x18\x39\x43reate a friend relationship using the given invite token\x12\xa2\x01\n\x17RevokeFriendInviteToken\x12-.CUserAccount_RevokeFriendInviteToken_Request\x1a..CUserAccount_RevokeFriendInviteToken_Response\"(\x82\xb5\x18$Revoke an active friend invite token\x12\x98\x01\n\x12RegisterCompatTool\x12(.CUserAccount_RegisterCompatTool_Request\x1a).CUserAccount_RegisterCompatTool_Response\"-\x82\xb5\x18)Register intended account usage of a tool\x1a-\x82\xb5\x18)A service to get user account information2\x9d\x02\n\x0e\x41\x63\x63ountLinking\x12\xd3\x01\n\x14GetLinkedAccountInfo\x12-.CAccountLinking_GetLinkedAccountInfo_Request\x1a..CAccountLinking_GetLinkedAccountInfo_Response\"\\\x82\xb5\x18XList all my active linked external accounts; may be requested to return the access token\x1a\x35\x82\xb5\x18\x31\x41 service to manage and link to external accounts2\xa4\x02\n\x0e\x45mbeddedClient\x12\xc1\x01\n\x16\x41uthorizeCurrentDevice\x12/.CEmbeddedClient_AuthorizeCurrentDevice_Request\x1a).CEmbeddedClient_AuthorizeDevice_Response\"K\x82\xb5\x18GUse a logged-in (password/etc) session to create a durable access token\x1aN\x82\xb5\x18JService to authorize and manage Steam functions directly embedded in gamesB\x03\x90\x01\x01'
   ,
-  dependencies=[steammessages__unified__base__pb2.DESCRIPTOR,])
+  dependencies=[steammessages__base__pb2.DESCRIPTOR,steammessages__unified__base__pb2.DESCRIPTOR,])
 
 _EINTERNALACCOUNTTYPE = _descriptor.EnumDescriptor(
   name='EInternalAccountType',
   full_name='EInternalAccountType',
   filename=None,
   file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
   values=[
     _descriptor.EnumValueDescriptor(
       name='k_EInternalSteamAccountType', index=0, number=1,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EInternalClanType', index=1, number=2,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EInternalAppType', index=2, number=3,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EInternalBroadcastChannelType', index=3, number=4,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
   ],
   containing_type=None,
   serialized_options=None,
-  serialized_start=3444,
-  serialized_end=3585,
+  serialized_start=4130,
+  serialized_end=4271,
 )
 _sym_db.RegisterEnumDescriptor(_EINTERNALACCOUNTTYPE)
 
@@ -64,44 +69,53 @@ _EEXTERNALACCOUNTTYPE = _descriptor.EnumDescriptor(
   full_name='EExternalAccountType',
   filename=None,
   file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
   values=[
     _descriptor.EnumValueDescriptor(
       name='k_EExternalNone', index=0, number=0,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EExternalSteamAccount', index=1, number=1,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EExternalGoogleAccount', index=2, number=2,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EExternalFacebookAccount', index=3, number=3,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EExternalTwitterAccount', index=4, number=4,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EExternalTwitchAccount', index=5, number=5,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EExternalYouTubeChannelAccount', index=6, number=6,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
     _descriptor.EnumValueDescriptor(
       name='k_EExternalFacebookPage', index=7, number=7,
       serialized_options=None,
-      type=None),
+      type=None,
+      create_key=_descriptor._internal_create_key),
   ],
   containing_type=None,
   serialized_options=None,
-  serialized_start=3588,
-  serialized_end=3850,
+  serialized_start=4274,
+  serialized_end=4536,
 )
 _sym_db.RegisterEnumDescriptor(_EEXTERNALACCOUNTTYPE)
 
@@ -127,14 +141,15 @@ _CUSERACCOUNT_GETAVAILABLEVALVEDISCOUNTPROMOTIONS_REQUEST = _descriptor.Descript
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='country_code', full_name='CUserAccount_GetAvailableValveDiscountPromotions_Request.country_code', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -147,8 +162,8 @@ _CUSERACCOUNT_GETAVAILABLEVALVEDISCOUNTPROMOTIONS_REQUEST = _descriptor.Descript
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=69,
-  serialized_end=149,
+  serialized_start=95,
+  serialized_end=175,
 )
 
 
@@ -158,6 +173,7 @@ _CUSERACCOUNT_GETAVAILABLEVALVEDISCOUNTPROMOTIONS_RESPONSE_VALVEDISCOUNTPROMOTIO
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='promotionid', full_name='CUserAccount_GetAvailableValveDiscountPromotions_Response.ValveDiscountPromotionDetails.promotionid', index=0,
@@ -165,77 +181,77 @@ _CUSERACCOUNT_GETAVAILABLEVALVEDISCOUNTPROMOTIONS_RESPONSE_VALVEDISCOUNTPROMOTIO
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='promotion_description', full_name='CUserAccount_GetAvailableValveDiscountPromotions_Response.ValveDiscountPromotionDetails.promotion_description', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='minimum_cart_amount', full_name='CUserAccount_GetAvailableValveDiscountPromotions_Response.ValveDiscountPromotionDetails.minimum_cart_amount', index=2,
       number=3, type=3, cpp_type=2, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='minimum_cart_amount_for_display', full_name='CUserAccount_GetAvailableValveDiscountPromotions_Response.ValveDiscountPromotionDetails.minimum_cart_amount_for_display', index=3,
       number=4, type=3, cpp_type=2, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='discount_amount', full_name='CUserAccount_GetAvailableValveDiscountPromotions_Response.ValveDiscountPromotionDetails.discount_amount', index=4,
       number=5, type=3, cpp_type=2, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='currency_code', full_name='CUserAccount_GetAvailableValveDiscountPromotions_Response.ValveDiscountPromotionDetails.currency_code', index=5,
       number=6, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='available_use_count', full_name='CUserAccount_GetAvailableValveDiscountPromotions_Response.ValveDiscountPromotionDetails.available_use_count', index=6,
       number=7, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='promotional_discount_type', full_name='CUserAccount_GetAvailableValveDiscountPromotions_Response.ValveDiscountPromotionDetails.promotional_discount_type', index=7,
       number=8, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='loyalty_reward_id', full_name='CUserAccount_GetAvailableValveDiscountPromotions_Response.ValveDiscountPromotionDetails.loyalty_reward_id', index=8,
       number=9, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='localized_name_token', full_name='CUserAccount_GetAvailableValveDiscountPromotions_Response.ValveDiscountPromotionDetails.localized_name_token', index=9,
       number=10, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='max_use_count', full_name='CUserAccount_GetAvailableValveDiscountPromotions_Response.ValveDiscountPromotionDetails.max_use_count', index=10,
       number=11, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -248,8 +264,8 @@ _CUSERACCOUNT_GETAVAILABLEVALVEDISCOUNTPROMOTIONS_RESPONSE_VALVEDISCOUNTPROMOTIO
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=324,
-  serialized_end=669,
+  serialized_start=350,
+  serialized_end=695,
 )
 
 _CUSERACCOUNT_GETAVAILABLEVALVEDISCOUNTPROMOTIONS_RESPONSE = _descriptor.Descriptor(
@@ -258,6 +274,7 @@ _CUSERACCOUNT_GETAVAILABLEVALVEDISCOUNTPROMOTIONS_RESPONSE = _descriptor.Descrip
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='promotions', full_name='CUserAccount_GetAvailableValveDiscountPromotions_Response.promotions', index=0,
@@ -265,7 +282,7 @@ _CUSERACCOUNT_GETAVAILABLEVALVEDISCOUNTPROMOTIONS_RESPONSE = _descriptor.Descrip
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -278,8 +295,177 @@ _CUSERACCOUNT_GETAVAILABLEVALVEDISCOUNTPROMOTIONS_RESPONSE = _descriptor.Descrip
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=152,
-  serialized_end=669,
+  serialized_start=178,
+  serialized_end=695,
+)
+
+
+_CUSERACCOUNT_GETCLIENTWALLETDETAILS_REQUEST = _descriptor.Descriptor(
+  name='CUserAccount_GetClientWalletDetails_Request',
+  full_name='CUserAccount_GetClientWalletDetails_Request',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='include_balance_in_usd', full_name='CUserAccount_GetClientWalletDetails_Request.include_balance_in_usd', index=0,
+      number=1, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='wallet_region', full_name='CUserAccount_GetClientWalletDetails_Request.wallet_region', index=1,
+      number=2, type=5, cpp_type=1, label=1,
+      has_default_value=True, default_value=1,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='include_formatted_balance', full_name='CUserAccount_GetClientWalletDetails_Request.include_formatted_balance', index=2,
+      number=3, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=698,
+  serialized_end=836,
+)
+
+
+_CUSERACCOUNT_GETWALLETDETAILS_RESPONSE = _descriptor.Descriptor(
+  name='CUserAccount_GetWalletDetails_Response',
+  full_name='CUserAccount_GetWalletDetails_Response',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='has_wallet', full_name='CUserAccount_GetWalletDetails_Response.has_wallet', index=0,
+      number=1, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='user_country_code', full_name='CUserAccount_GetWalletDetails_Response.user_country_code', index=1,
+      number=2, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='wallet_country_code', full_name='CUserAccount_GetWalletDetails_Response.wallet_country_code', index=2,
+      number=3, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='wallet_state', full_name='CUserAccount_GetWalletDetails_Response.wallet_state', index=3,
+      number=4, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='balance', full_name='CUserAccount_GetWalletDetails_Response.balance', index=4,
+      number=5, type=3, cpp_type=2, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='delayed_balance', full_name='CUserAccount_GetWalletDetails_Response.delayed_balance', index=5,
+      number=6, type=3, cpp_type=2, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='currency_code', full_name='CUserAccount_GetWalletDetails_Response.currency_code', index=6,
+      number=7, type=5, cpp_type=1, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='time_most_recent_txn', full_name='CUserAccount_GetWalletDetails_Response.time_most_recent_txn', index=7,
+      number=8, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='most_recent_txnid', full_name='CUserAccount_GetWalletDetails_Response.most_recent_txnid', index=8,
+      number=9, type=4, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='balance_in_usd', full_name='CUserAccount_GetWalletDetails_Response.balance_in_usd', index=9,
+      number=10, type=3, cpp_type=2, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='delayed_balance_in_usd', full_name='CUserAccount_GetWalletDetails_Response.delayed_balance_in_usd', index=10,
+      number=11, type=3, cpp_type=2, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='has_wallet_in_other_regions', full_name='CUserAccount_GetWalletDetails_Response.has_wallet_in_other_regions', index=11,
+      number=12, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='other_regions', full_name='CUserAccount_GetWalletDetails_Response.other_regions', index=12,
+      number=13, type=5, cpp_type=1, label=3,
+      has_default_value=False, default_value=[],
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='formatted_balance', full_name='CUserAccount_GetWalletDetails_Response.formatted_balance', index=13,
+      number=14, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=839,
+  serialized_end=1242,
 )
 
 
@@ -289,6 +475,7 @@ _CUSERACCOUNT_GETACCOUNTLINKSTATUS_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -302,8 +489,8 @@ _CUSERACCOUNT_GETACCOUNTLINKSTATUS_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=671,
-  serialized_end=714,
+  serialized_start=1244,
+  serialized_end=1287,
 )
 
 
@@ -313,6 +500,7 @@ _CUSERACCOUNT_GETACCOUNTLINKSTATUS_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='pwid', full_name='CUserAccount_GetAccountLinkStatus_Response.pwid', index=0,
@@ -320,21 +508,21 @@ _CUSERACCOUNT_GETACCOUNTLINKSTATUS_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='identity_verification', full_name='CUserAccount_GetAccountLinkStatus_Response.identity_verification', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='performed_age_verification', full_name='CUserAccount_GetAccountLinkStatus_Response.performed_age_verification', index=2,
       number=3, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -347,8 +535,8 @@ _CUSERACCOUNT_GETACCOUNTLINKSTATUS_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=716,
-  serialized_end=841,
+  serialized_start=1289,
+  serialized_end=1414,
 )
 
 
@@ -358,6 +546,7 @@ _CUSERACCOUNT_CANCELLICENSEFORAPP_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CUserAccount_CancelLicenseForApp_Request.appid', index=0,
@@ -365,7 +554,7 @@ _CUSERACCOUNT_CANCELLICENSEFORAPP_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -378,8 +567,8 @@ _CUSERACCOUNT_CANCELLICENSEFORAPP_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=843,
-  serialized_end=900,
+  serialized_start=1416,
+  serialized_end=1473,
 )
 
 
@@ -389,7 +578,40 @@ _CUSERACCOUNT_CANCELLICENSEFORAPP_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=1475,
+  serialized_end=1518,
+)
+
+
+_CUSERACCOUNT_GETUSERCOUNTRY_REQUEST = _descriptor.Descriptor(
+  name='CUserAccount_GetUserCountry_Request',
+  full_name='CUserAccount_GetUserCountry_Request',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
+    _descriptor.FieldDescriptor(
+      name='steamid', full_name='CUserAccount_GetUserCountry_Request.steamid', index=0,
+      number=1, type=6, cpp_type=4, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -402,8 +624,40 @@ _CUSERACCOUNT_CANCELLICENSEFORAPP_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=902,
-  serialized_end=945,
+  serialized_start=1520,
+  serialized_end=1574,
+)
+
+
+_CUSERACCOUNT_GETUSERCOUNTRY_RESPONSE = _descriptor.Descriptor(
+  name='CUserAccount_GetUserCountry_Response',
+  full_name='CUserAccount_GetUserCountry_Response',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='country', full_name='CUserAccount_GetUserCountry_Response.country', index=0,
+      number=1, type=9, cpp_type=9, label=1,
+      has_default_value=False, default_value=b"".decode('utf-8'),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=1576,
+  serialized_end=1631,
 )
 
 
@@ -413,6 +667,7 @@ _CUSERACCOUNT_CREATEFRIENDINVITETOKEN_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='invite_limit', full_name='CUserAccount_CreateFriendInviteToken_Request.invite_limit', index=0,
@@ -420,21 +675,21 @@ _CUSERACCOUNT_CREATEFRIENDINVITETOKEN_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='invite_duration', full_name='CUserAccount_CreateFriendInviteToken_Request.invite_duration', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='invite_note', full_name='CUserAccount_CreateFriendInviteToken_Request.invite_note', index=2,
       number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -447,8 +702,8 @@ _CUSERACCOUNT_CREATEFRIENDINVITETOKEN_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=947,
-  serialized_end=1061,
+  serialized_start=1633,
+  serialized_end=1747,
 )
 
 
@@ -458,42 +713,43 @@ _CUSERACCOUNT_CREATEFRIENDINVITETOKEN_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='invite_token', full_name='CUserAccount_CreateFriendInviteToken_Response.invite_token', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='invite_limit', full_name='CUserAccount_CreateFriendInviteToken_Response.invite_limit', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='invite_duration', full_name='CUserAccount_CreateFriendInviteToken_Response.invite_duration', index=2,
       number=3, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='time_created', full_name='CUserAccount_CreateFriendInviteToken_Response.time_created', index=3,
       number=4, type=7, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='valid', full_name='CUserAccount_CreateFriendInviteToken_Response.valid', index=4,
       number=5, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -506,8 +762,8 @@ _CUSERACCOUNT_CREATEFRIENDINVITETOKEN_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1064,
-  serialized_end=1217,
+  serialized_start=1750,
+  serialized_end=1903,
 )
 
 
@@ -517,6 +773,7 @@ _CUSERACCOUNT_GETFRIENDINVITETOKENS_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -530,8 +787,8 @@ _CUSERACCOUNT_GETFRIENDINVITETOKENS_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1219,
-  serialized_end=1263,
+  serialized_start=1905,
+  serialized_end=1949,
 )
 
 
@@ -541,6 +798,7 @@ _CUSERACCOUNT_GETFRIENDINVITETOKENS_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='tokens', full_name='CUserAccount_GetFriendInviteTokens_Response.tokens', index=0,
@@ -548,7 +806,7 @@ _CUSERACCOUNT_GETFRIENDINVITETOKENS_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -561,8 +819,8 @@ _CUSERACCOUNT_GETFRIENDINVITETOKENS_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1265,
-  serialized_end=1374,
+  serialized_start=1951,
+  serialized_end=2060,
 )
 
 
@@ -572,6 +830,7 @@ _CUSERACCOUNT_VIEWFRIENDINVITETOKEN_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CUserAccount_ViewFriendInviteToken_Request.steamid', index=0,
@@ -579,14 +838,14 @@ _CUSERACCOUNT_VIEWFRIENDINVITETOKEN_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='invite_token', full_name='CUserAccount_ViewFriendInviteToken_Request.invite_token', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -599,8 +858,8 @@ _CUSERACCOUNT_VIEWFRIENDINVITETOKEN_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1376,
-  serialized_end=1459,
+  serialized_start=2062,
+  serialized_end=2145,
 )
 
 
@@ -610,6 +869,7 @@ _CUSERACCOUNT_VIEWFRIENDINVITETOKEN_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='valid', full_name='CUserAccount_ViewFriendInviteToken_Response.valid', index=0,
@@ -617,21 +877,21 @@ _CUSERACCOUNT_VIEWFRIENDINVITETOKEN_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CUserAccount_ViewFriendInviteToken_Response.steamid', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='invite_duration', full_name='CUserAccount_ViewFriendInviteToken_Response.invite_duration', index=2,
       number=3, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -644,8 +904,8 @@ _CUSERACCOUNT_VIEWFRIENDINVITETOKEN_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1461,
-  serialized_end=1563,
+  serialized_start=2147,
+  serialized_end=2249,
 )
 
 
@@ -655,6 +915,7 @@ _CUSERACCOUNT_REDEEMFRIENDINVITETOKEN_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CUserAccount_RedeemFriendInviteToken_Request.steamid', index=0,
@@ -662,14 +923,14 @@ _CUSERACCOUNT_REDEEMFRIENDINVITETOKEN_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='invite_token', full_name='CUserAccount_RedeemFriendInviteToken_Request.invite_token', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -682,8 +943,8 @@ _CUSERACCOUNT_REDEEMFRIENDINVITETOKEN_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1565,
-  serialized_end=1650,
+  serialized_start=2251,
+  serialized_end=2336,
 )
 
 
@@ -693,6 +954,7 @@ _CUSERACCOUNT_REDEEMFRIENDINVITETOKEN_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -706,8 +968,8 @@ _CUSERACCOUNT_REDEEMFRIENDINVITETOKEN_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1652,
-  serialized_end=1699,
+  serialized_start=2338,
+  serialized_end=2385,
 )
 
 
@@ -717,14 +979,15 @@ _CUSERACCOUNT_REVOKEFRIENDINVITETOKEN_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='invite_token', full_name='CUserAccount_RevokeFriendInviteToken_Request.invite_token', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -737,8 +1000,8 @@ _CUSERACCOUNT_REVOKEFRIENDINVITETOKEN_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1701,
-  serialized_end=1769,
+  serialized_start=2387,
+  serialized_end=2455,
 )
 
 
@@ -748,6 +1011,7 @@ _CUSERACCOUNT_REVOKEFRIENDINVITETOKEN_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -761,8 +1025,8 @@ _CUSERACCOUNT_REVOKEFRIENDINVITETOKEN_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1771,
-  serialized_end=1818,
+  serialized_start=2457,
+  serialized_end=2504,
 )
 
 
@@ -772,6 +1036,7 @@ _CUSERACCOUNT_REGISTERCOMPATTOOL_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='compat_tool', full_name='CUserAccount_RegisterCompatTool_Request.compat_tool', index=0,
@@ -779,7 +1044,7 @@ _CUSERACCOUNT_REGISTERCOMPATTOOL_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -792,8 +1057,8 @@ _CUSERACCOUNT_REGISTERCOMPATTOOL_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1820,
-  serialized_end=1882,
+  serialized_start=2506,
+  serialized_end=2568,
 )
 
 
@@ -803,6 +1068,7 @@ _CUSERACCOUNT_REGISTERCOMPATTOOL_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -816,8 +1082,8 @@ _CUSERACCOUNT_REGISTERCOMPATTOOL_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1884,
-  serialized_end=1926,
+  serialized_start=2570,
+  serialized_end=2612,
 )
 
 
@@ -827,6 +1093,7 @@ _CACCOUNTLINKING_GETLINKEDACCOUNTINFO_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='account_type', full_name='CAccountLinking_GetLinkedAccountInfo_Request.account_type', index=0,
@@ -834,28 +1101,28 @@ _CACCOUNTLINKING_GETLINKEDACCOUNTINFO_REQUEST = _descriptor.Descriptor(
       has_default_value=True, default_value=1,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='account_id', full_name='CAccountLinking_GetLinkedAccountInfo_Request.account_id', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\023Internal account ID'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\023Internal account ID', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='filter', full_name='CAccountLinking_GetLinkedAccountInfo_Request.filter', index=2,
       number=3, type=14, cpp_type=8, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\0308if specified then only return this external account type'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\0308if specified then only return this external account type', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='return_access_token', full_name='CAccountLinking_GetLinkedAccountInfo_Request.return_access_token', index=3,
       number=4, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030^if provided and true, then returns valid access token if available. It may refresh the token. '), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030^if provided and true, then returns valid access token if available. It may refresh the token. ', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -868,8 +1135,8 @@ _CACCOUNTLINKING_GETLINKEDACCOUNTINFO_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1929,
-  serialized_end=2341,
+  serialized_start=2615,
+  serialized_end=3027,
 )
 
 
@@ -879,6 +1146,7 @@ _CACCOUNTLINKING_GETLINKEDACCOUNTINFO_RESPONSE_CEXTERNALACCOUNTTUPLE_RESPONSE =
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='external_type', full_name='CAccountLinking_GetLinkedAccountInfo_Response.CExternalAccountTuple_Response.external_type', index=0,
@@ -886,49 +1154,49 @@ _CACCOUNTLINKING_GETLINKEDACCOUNTINFO_RESPONSE_CEXTERNALACCOUNTTUPLE_RESPONSE =
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='external_id', full_name='CAccountLinking_GetLinkedAccountInfo_Response.CExternalAccountTuple_Response.external_id', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\"unique external account identifier'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\"unique external account identifier', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='external_user_name', full_name='CAccountLinking_GetLinkedAccountInfo_Response.CExternalAccountTuple_Response.external_user_name', index=2,
       number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\032user readable; best effort'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\032user readable; best effort', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='external_url', full_name='CAccountLinking_GetLinkedAccountInfo_Response.CExternalAccountTuple_Response.external_url', index=3,
       number=4, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\0309required for all, can be a sentinal to verify correctness'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\0309required for all, can be a sentinal to verify correctness', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='access_token', full_name='CAccountLinking_GetLinkedAccountInfo_Response.CExternalAccountTuple_Response.access_token', index=4,
       number=5, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030&provided if requeest and it was valid.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030&provided if requeest and it was valid.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='access_token_secret', full_name='CAccountLinking_GetLinkedAccountInfo_Response.CExternalAccountTuple_Response.access_token_secret', index=5,
       number=6, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030Jrequired for OAuth v1 and signing the message, provided with access token.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030Jrequired for OAuth v1 and signing the message, provided with access token.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='is_valid', full_name='CAccountLinking_GetLinkedAccountInfo_Response.CExternalAccountTuple_Response.is_valid', index=6,
       number=7, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030zIf false, it means access token no longer work (expired, disconnected) and the link is now broken. Inform user to refresh.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030zIf false, it means access token no longer work (expired, disconnected) and the link is now broken. Inform user to refresh.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -941,8 +1209,8 @@ _CACCOUNTLINKING_GETLINKEDACCOUNTINFO_RESPONSE_CEXTERNALACCOUNTTUPLE_RESPONSE =
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=2500,
-  serialized_end=3123,
+  serialized_start=3186,
+  serialized_end=3809,
 )
 
 _CACCOUNTLINKING_GETLINKEDACCOUNTINFO_RESPONSE = _descriptor.Descriptor(
@@ -951,6 +1219,7 @@ _CACCOUNTLINKING_GETLINKEDACCOUNTINFO_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='external_accounts', full_name='CAccountLinking_GetLinkedAccountInfo_Response.external_accounts', index=0,
@@ -958,7 +1227,7 @@ _CACCOUNTLINKING_GETLINKEDACCOUNTINFO_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -971,8 +1240,8 @@ _CACCOUNTLINKING_GETLINKEDACCOUNTINFO_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=2344,
-  serialized_end=3123,
+  serialized_start=3030,
+  serialized_end=3809,
 )
 
 
@@ -982,6 +1251,7 @@ _CEMBEDDEDCLIENT_AUTHORIZECURRENTDEVICE_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CEmbeddedClient_AuthorizeCurrentDevice_Request.steamid', index=0,
@@ -989,28 +1259,28 @@ _CEMBEDDEDCLIENT_AUTHORIZECURRENTDEVICE_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='appid', full_name='CEmbeddedClient_AuthorizeCurrentDevice_Request.appid', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='device_info', full_name='CEmbeddedClient_AuthorizeCurrentDevice_Request.device_info', index=2,
       number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='deviceid', full_name='CEmbeddedClient_AuthorizeCurrentDevice_Request.deviceid', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1023,8 +1293,8 @@ _CEMBEDDEDCLIENT_AUTHORIZECURRENTDEVICE_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=3125,
-  serialized_end=3244,
+  serialized_start=3811,
+  serialized_end=3930,
 )
 
 
@@ -1034,6 +1304,7 @@ _CEMBEDDEDCLIENT_TOKEN = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CEmbeddedClient_Token.steamid', index=0,
@@ -1041,28 +1312,28 @@ _CEMBEDDEDCLIENT_TOKEN = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='client_token', full_name='CEmbeddedClient_Token.client_token', index=1,
       number=2, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='expiry', full_name='CEmbeddedClient_Token.expiry', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='deviceid', full_name='CEmbeddedClient_Token.deviceid', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1075,8 +1346,8 @@ _CEMBEDDEDCLIENT_TOKEN = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=3246,
-  serialized_end=3342,
+  serialized_start=3932,
+  serialized_end=4028,
 )
 
 
@@ -1086,6 +1357,7 @@ _CEMBEDDEDCLIENT_AUTHORIZEDEVICE_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='result', full_name='CEmbeddedClient_AuthorizeDevice_Response.result', index=0,
@@ -1093,14 +1365,14 @@ _CEMBEDDEDCLIENT_AUTHORIZEDEVICE_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='token', full_name='CEmbeddedClient_AuthorizeDevice_Response.token', index=1,
       number=2, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1113,8 +1385,8 @@ _CEMBEDDEDCLIENT_AUTHORIZEDEVICE_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=3344,
-  serialized_end=3441,
+  serialized_start=4030,
+  serialized_end=4127,
 )
 
 _CUSERACCOUNT_GETAVAILABLEVALVEDISCOUNTPROMOTIONS_RESPONSE_VALVEDISCOUNTPROMOTIONDETAILS.containing_type = _CUSERACCOUNT_GETAVAILABLEVALVEDISCOUNTPROMOTIONS_RESPONSE
@@ -1128,10 +1400,14 @@ _CACCOUNTLINKING_GETLINKEDACCOUNTINFO_RESPONSE.fields_by_name['external_accounts
 _CEMBEDDEDCLIENT_AUTHORIZEDEVICE_RESPONSE.fields_by_name['token'].message_type = _CEMBEDDEDCLIENT_TOKEN
 DESCRIPTOR.message_types_by_name['CUserAccount_GetAvailableValveDiscountPromotions_Request'] = _CUSERACCOUNT_GETAVAILABLEVALVEDISCOUNTPROMOTIONS_REQUEST
 DESCRIPTOR.message_types_by_name['CUserAccount_GetAvailableValveDiscountPromotions_Response'] = _CUSERACCOUNT_GETAVAILABLEVALVEDISCOUNTPROMOTIONS_RESPONSE
+DESCRIPTOR.message_types_by_name['CUserAccount_GetClientWalletDetails_Request'] = _CUSERACCOUNT_GETCLIENTWALLETDETAILS_REQUEST
+DESCRIPTOR.message_types_by_name['CUserAccount_GetWalletDetails_Response'] = _CUSERACCOUNT_GETWALLETDETAILS_RESPONSE
 DESCRIPTOR.message_types_by_name['CUserAccount_GetAccountLinkStatus_Request'] = _CUSERACCOUNT_GETACCOUNTLINKSTATUS_REQUEST
 DESCRIPTOR.message_types_by_name['CUserAccount_GetAccountLinkStatus_Response'] = _CUSERACCOUNT_GETACCOUNTLINKSTATUS_RESPONSE
 DESCRIPTOR.message_types_by_name['CUserAccount_CancelLicenseForApp_Request'] = _CUSERACCOUNT_CANCELLICENSEFORAPP_REQUEST
 DESCRIPTOR.message_types_by_name['CUserAccount_CancelLicenseForApp_Response'] = _CUSERACCOUNT_CANCELLICENSEFORAPP_RESPONSE
+DESCRIPTOR.message_types_by_name['CUserAccount_GetUserCountry_Request'] = _CUSERACCOUNT_GETUSERCOUNTRY_REQUEST
+DESCRIPTOR.message_types_by_name['CUserAccount_GetUserCountry_Response'] = _CUSERACCOUNT_GETUSERCOUNTRY_RESPONSE
 DESCRIPTOR.message_types_by_name['CUserAccount_CreateFriendInviteToken_Request'] = _CUSERACCOUNT_CREATEFRIENDINVITETOKEN_REQUEST
 DESCRIPTOR.message_types_by_name['CUserAccount_CreateFriendInviteToken_Response'] = _CUSERACCOUNT_CREATEFRIENDINVITETOKEN_RESPONSE
 DESCRIPTOR.message_types_by_name['CUserAccount_GetFriendInviteTokens_Request'] = _CUSERACCOUNT_GETFRIENDINVITETOKENS_REQUEST
@@ -1153,181 +1429,209 @@ DESCRIPTOR.enum_types_by_name['EInternalAccountType'] = _EINTERNALACCOUNTTYPE
 DESCRIPTOR.enum_types_by_name['EExternalAccountType'] = _EEXTERNALACCOUNTTYPE
 _sym_db.RegisterFileDescriptor(DESCRIPTOR)
 
-CUserAccount_GetAvailableValveDiscountPromotions_Request = _reflection.GeneratedProtocolMessageType('CUserAccount_GetAvailableValveDiscountPromotions_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CUSERACCOUNT_GETAVAILABLEVALVEDISCOUNTPROMOTIONS_REQUEST,
-  __module__ = 'steammessages_useraccount_pb2'
+CUserAccount_GetAvailableValveDiscountPromotions_Request = _reflection.GeneratedProtocolMessageType('CUserAccount_GetAvailableValveDiscountPromotions_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CUSERACCOUNT_GETAVAILABLEVALVEDISCOUNTPROMOTIONS_REQUEST,
+  '__module__' : 'steammessages_useraccount_pb2'
   # @@protoc_insertion_point(class_scope:CUserAccount_GetAvailableValveDiscountPromotions_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CUserAccount_GetAvailableValveDiscountPromotions_Request)
 
-CUserAccount_GetAvailableValveDiscountPromotions_Response = _reflection.GeneratedProtocolMessageType('CUserAccount_GetAvailableValveDiscountPromotions_Response', (_message.Message,), dict(
+CUserAccount_GetAvailableValveDiscountPromotions_Response = _reflection.GeneratedProtocolMessageType('CUserAccount_GetAvailableValveDiscountPromotions_Response', (_message.Message,), {
 
-  ValveDiscountPromotionDetails = _reflection.GeneratedProtocolMessageType('ValveDiscountPromotionDetails', (_message.Message,), dict(
-    DESCRIPTOR = _CUSERACCOUNT_GETAVAILABLEVALVEDISCOUNTPROMOTIONS_RESPONSE_VALVEDISCOUNTPROMOTIONDETAILS,
-    __module__ = 'steammessages_useraccount_pb2'
+  'ValveDiscountPromotionDetails' : _reflection.GeneratedProtocolMessageType('ValveDiscountPromotionDetails', (_message.Message,), {
+    'DESCRIPTOR' : _CUSERACCOUNT_GETAVAILABLEVALVEDISCOUNTPROMOTIONS_RESPONSE_VALVEDISCOUNTPROMOTIONDETAILS,
+    '__module__' : 'steammessages_useraccount_pb2'
     # @@protoc_insertion_point(class_scope:CUserAccount_GetAvailableValveDiscountPromotions_Response.ValveDiscountPromotionDetails)
-    ))
+    })
   ,
-  DESCRIPTOR = _CUSERACCOUNT_GETAVAILABLEVALVEDISCOUNTPROMOTIONS_RESPONSE,
-  __module__ = 'steammessages_useraccount_pb2'
+  'DESCRIPTOR' : _CUSERACCOUNT_GETAVAILABLEVALVEDISCOUNTPROMOTIONS_RESPONSE,
+  '__module__' : 'steammessages_useraccount_pb2'
   # @@protoc_insertion_point(class_scope:CUserAccount_GetAvailableValveDiscountPromotions_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CUserAccount_GetAvailableValveDiscountPromotions_Response)
 _sym_db.RegisterMessage(CUserAccount_GetAvailableValveDiscountPromotions_Response.ValveDiscountPromotionDetails)
 
-CUserAccount_GetAccountLinkStatus_Request = _reflection.GeneratedProtocolMessageType('CUserAccount_GetAccountLinkStatus_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CUSERACCOUNT_GETACCOUNTLINKSTATUS_REQUEST,
-  __module__ = 'steammessages_useraccount_pb2'
+CUserAccount_GetClientWalletDetails_Request = _reflection.GeneratedProtocolMessageType('CUserAccount_GetClientWalletDetails_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CUSERACCOUNT_GETCLIENTWALLETDETAILS_REQUEST,
+  '__module__' : 'steammessages_useraccount_pb2'
+  # @@protoc_insertion_point(class_scope:CUserAccount_GetClientWalletDetails_Request)
+  })
+_sym_db.RegisterMessage(CUserAccount_GetClientWalletDetails_Request)
+
+CUserAccount_GetWalletDetails_Response = _reflection.GeneratedProtocolMessageType('CUserAccount_GetWalletDetails_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CUSERACCOUNT_GETWALLETDETAILS_RESPONSE,
+  '__module__' : 'steammessages_useraccount_pb2'
+  # @@protoc_insertion_point(class_scope:CUserAccount_GetWalletDetails_Response)
+  })
+_sym_db.RegisterMessage(CUserAccount_GetWalletDetails_Response)
+
+CUserAccount_GetAccountLinkStatus_Request = _reflection.GeneratedProtocolMessageType('CUserAccount_GetAccountLinkStatus_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CUSERACCOUNT_GETACCOUNTLINKSTATUS_REQUEST,
+  '__module__' : 'steammessages_useraccount_pb2'
   # @@protoc_insertion_point(class_scope:CUserAccount_GetAccountLinkStatus_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CUserAccount_GetAccountLinkStatus_Request)
 
-CUserAccount_GetAccountLinkStatus_Response = _reflection.GeneratedProtocolMessageType('CUserAccount_GetAccountLinkStatus_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CUSERACCOUNT_GETACCOUNTLINKSTATUS_RESPONSE,
-  __module__ = 'steammessages_useraccount_pb2'
+CUserAccount_GetAccountLinkStatus_Response = _reflection.GeneratedProtocolMessageType('CUserAccount_GetAccountLinkStatus_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CUSERACCOUNT_GETACCOUNTLINKSTATUS_RESPONSE,
+  '__module__' : 'steammessages_useraccount_pb2'
   # @@protoc_insertion_point(class_scope:CUserAccount_GetAccountLinkStatus_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CUserAccount_GetAccountLinkStatus_Response)
 
-CUserAccount_CancelLicenseForApp_Request = _reflection.GeneratedProtocolMessageType('CUserAccount_CancelLicenseForApp_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CUSERACCOUNT_CANCELLICENSEFORAPP_REQUEST,
-  __module__ = 'steammessages_useraccount_pb2'
+CUserAccount_CancelLicenseForApp_Request = _reflection.GeneratedProtocolMessageType('CUserAccount_CancelLicenseForApp_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CUSERACCOUNT_CANCELLICENSEFORAPP_REQUEST,
+  '__module__' : 'steammessages_useraccount_pb2'
   # @@protoc_insertion_point(class_scope:CUserAccount_CancelLicenseForApp_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CUserAccount_CancelLicenseForApp_Request)
 
-CUserAccount_CancelLicenseForApp_Response = _reflection.GeneratedProtocolMessageType('CUserAccount_CancelLicenseForApp_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CUSERACCOUNT_CANCELLICENSEFORAPP_RESPONSE,
-  __module__ = 'steammessages_useraccount_pb2'
+CUserAccount_CancelLicenseForApp_Response = _reflection.GeneratedProtocolMessageType('CUserAccount_CancelLicenseForApp_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CUSERACCOUNT_CANCELLICENSEFORAPP_RESPONSE,
+  '__module__' : 'steammessages_useraccount_pb2'
   # @@protoc_insertion_point(class_scope:CUserAccount_CancelLicenseForApp_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CUserAccount_CancelLicenseForApp_Response)
 
-CUserAccount_CreateFriendInviteToken_Request = _reflection.GeneratedProtocolMessageType('CUserAccount_CreateFriendInviteToken_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CUSERACCOUNT_CREATEFRIENDINVITETOKEN_REQUEST,
-  __module__ = 'steammessages_useraccount_pb2'
+CUserAccount_GetUserCountry_Request = _reflection.GeneratedProtocolMessageType('CUserAccount_GetUserCountry_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CUSERACCOUNT_GETUSERCOUNTRY_REQUEST,
+  '__module__' : 'steammessages_useraccount_pb2'
+  # @@protoc_insertion_point(class_scope:CUserAccount_GetUserCountry_Request)
+  })
+_sym_db.RegisterMessage(CUserAccount_GetUserCountry_Request)
+
+CUserAccount_GetUserCountry_Response = _reflection.GeneratedProtocolMessageType('CUserAccount_GetUserCountry_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CUSERACCOUNT_GETUSERCOUNTRY_RESPONSE,
+  '__module__' : 'steammessages_useraccount_pb2'
+  # @@protoc_insertion_point(class_scope:CUserAccount_GetUserCountry_Response)
+  })
+_sym_db.RegisterMessage(CUserAccount_GetUserCountry_Response)
+
+CUserAccount_CreateFriendInviteToken_Request = _reflection.GeneratedProtocolMessageType('CUserAccount_CreateFriendInviteToken_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CUSERACCOUNT_CREATEFRIENDINVITETOKEN_REQUEST,
+  '__module__' : 'steammessages_useraccount_pb2'
   # @@protoc_insertion_point(class_scope:CUserAccount_CreateFriendInviteToken_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CUserAccount_CreateFriendInviteToken_Request)
 
-CUserAccount_CreateFriendInviteToken_Response = _reflection.GeneratedProtocolMessageType('CUserAccount_CreateFriendInviteToken_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CUSERACCOUNT_CREATEFRIENDINVITETOKEN_RESPONSE,
-  __module__ = 'steammessages_useraccount_pb2'
+CUserAccount_CreateFriendInviteToken_Response = _reflection.GeneratedProtocolMessageType('CUserAccount_CreateFriendInviteToken_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CUSERACCOUNT_CREATEFRIENDINVITETOKEN_RESPONSE,
+  '__module__' : 'steammessages_useraccount_pb2'
   # @@protoc_insertion_point(class_scope:CUserAccount_CreateFriendInviteToken_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CUserAccount_CreateFriendInviteToken_Response)
 
-CUserAccount_GetFriendInviteTokens_Request = _reflection.GeneratedProtocolMessageType('CUserAccount_GetFriendInviteTokens_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CUSERACCOUNT_GETFRIENDINVITETOKENS_REQUEST,
-  __module__ = 'steammessages_useraccount_pb2'
+CUserAccount_GetFriendInviteTokens_Request = _reflection.GeneratedProtocolMessageType('CUserAccount_GetFriendInviteTokens_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CUSERACCOUNT_GETFRIENDINVITETOKENS_REQUEST,
+  '__module__' : 'steammessages_useraccount_pb2'
   # @@protoc_insertion_point(class_scope:CUserAccount_GetFriendInviteTokens_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CUserAccount_GetFriendInviteTokens_Request)
 
-CUserAccount_GetFriendInviteTokens_Response = _reflection.GeneratedProtocolMessageType('CUserAccount_GetFriendInviteTokens_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CUSERACCOUNT_GETFRIENDINVITETOKENS_RESPONSE,
-  __module__ = 'steammessages_useraccount_pb2'
+CUserAccount_GetFriendInviteTokens_Response = _reflection.GeneratedProtocolMessageType('CUserAccount_GetFriendInviteTokens_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CUSERACCOUNT_GETFRIENDINVITETOKENS_RESPONSE,
+  '__module__' : 'steammessages_useraccount_pb2'
   # @@protoc_insertion_point(class_scope:CUserAccount_GetFriendInviteTokens_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CUserAccount_GetFriendInviteTokens_Response)
 
-CUserAccount_ViewFriendInviteToken_Request = _reflection.GeneratedProtocolMessageType('CUserAccount_ViewFriendInviteToken_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CUSERACCOUNT_VIEWFRIENDINVITETOKEN_REQUEST,
-  __module__ = 'steammessages_useraccount_pb2'
+CUserAccount_ViewFriendInviteToken_Request = _reflection.GeneratedProtocolMessageType('CUserAccount_ViewFriendInviteToken_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CUSERACCOUNT_VIEWFRIENDINVITETOKEN_REQUEST,
+  '__module__' : 'steammessages_useraccount_pb2'
   # @@protoc_insertion_point(class_scope:CUserAccount_ViewFriendInviteToken_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CUserAccount_ViewFriendInviteToken_Request)
 
-CUserAccount_ViewFriendInviteToken_Response = _reflection.GeneratedProtocolMessageType('CUserAccount_ViewFriendInviteToken_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CUSERACCOUNT_VIEWFRIENDINVITETOKEN_RESPONSE,
-  __module__ = 'steammessages_useraccount_pb2'
+CUserAccount_ViewFriendInviteToken_Response = _reflection.GeneratedProtocolMessageType('CUserAccount_ViewFriendInviteToken_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CUSERACCOUNT_VIEWFRIENDINVITETOKEN_RESPONSE,
+  '__module__' : 'steammessages_useraccount_pb2'
   # @@protoc_insertion_point(class_scope:CUserAccount_ViewFriendInviteToken_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CUserAccount_ViewFriendInviteToken_Response)
 
-CUserAccount_RedeemFriendInviteToken_Request = _reflection.GeneratedProtocolMessageType('CUserAccount_RedeemFriendInviteToken_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CUSERACCOUNT_REDEEMFRIENDINVITETOKEN_REQUEST,
-  __module__ = 'steammessages_useraccount_pb2'
+CUserAccount_RedeemFriendInviteToken_Request = _reflection.GeneratedProtocolMessageType('CUserAccount_RedeemFriendInviteToken_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CUSERACCOUNT_REDEEMFRIENDINVITETOKEN_REQUEST,
+  '__module__' : 'steammessages_useraccount_pb2'
   # @@protoc_insertion_point(class_scope:CUserAccount_RedeemFriendInviteToken_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CUserAccount_RedeemFriendInviteToken_Request)
 
-CUserAccount_RedeemFriendInviteToken_Response = _reflection.GeneratedProtocolMessageType('CUserAccount_RedeemFriendInviteToken_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CUSERACCOUNT_REDEEMFRIENDINVITETOKEN_RESPONSE,
-  __module__ = 'steammessages_useraccount_pb2'
+CUserAccount_RedeemFriendInviteToken_Response = _reflection.GeneratedProtocolMessageType('CUserAccount_RedeemFriendInviteToken_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CUSERACCOUNT_REDEEMFRIENDINVITETOKEN_RESPONSE,
+  '__module__' : 'steammessages_useraccount_pb2'
   # @@protoc_insertion_point(class_scope:CUserAccount_RedeemFriendInviteToken_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CUserAccount_RedeemFriendInviteToken_Response)
 
-CUserAccount_RevokeFriendInviteToken_Request = _reflection.GeneratedProtocolMessageType('CUserAccount_RevokeFriendInviteToken_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CUSERACCOUNT_REVOKEFRIENDINVITETOKEN_REQUEST,
-  __module__ = 'steammessages_useraccount_pb2'
+CUserAccount_RevokeFriendInviteToken_Request = _reflection.GeneratedProtocolMessageType('CUserAccount_RevokeFriendInviteToken_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CUSERACCOUNT_REVOKEFRIENDINVITETOKEN_REQUEST,
+  '__module__' : 'steammessages_useraccount_pb2'
   # @@protoc_insertion_point(class_scope:CUserAccount_RevokeFriendInviteToken_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CUserAccount_RevokeFriendInviteToken_Request)
 
-CUserAccount_RevokeFriendInviteToken_Response = _reflection.GeneratedProtocolMessageType('CUserAccount_RevokeFriendInviteToken_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CUSERACCOUNT_REVOKEFRIENDINVITETOKEN_RESPONSE,
-  __module__ = 'steammessages_useraccount_pb2'
+CUserAccount_RevokeFriendInviteToken_Response = _reflection.GeneratedProtocolMessageType('CUserAccount_RevokeFriendInviteToken_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CUSERACCOUNT_REVOKEFRIENDINVITETOKEN_RESPONSE,
+  '__module__' : 'steammessages_useraccount_pb2'
   # @@protoc_insertion_point(class_scope:CUserAccount_RevokeFriendInviteToken_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CUserAccount_RevokeFriendInviteToken_Response)
 
-CUserAccount_RegisterCompatTool_Request = _reflection.GeneratedProtocolMessageType('CUserAccount_RegisterCompatTool_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CUSERACCOUNT_REGISTERCOMPATTOOL_REQUEST,
-  __module__ = 'steammessages_useraccount_pb2'
+CUserAccount_RegisterCompatTool_Request = _reflection.GeneratedProtocolMessageType('CUserAccount_RegisterCompatTool_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CUSERACCOUNT_REGISTERCOMPATTOOL_REQUEST,
+  '__module__' : 'steammessages_useraccount_pb2'
   # @@protoc_insertion_point(class_scope:CUserAccount_RegisterCompatTool_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CUserAccount_RegisterCompatTool_Request)
 
-CUserAccount_RegisterCompatTool_Response = _reflection.GeneratedProtocolMessageType('CUserAccount_RegisterCompatTool_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CUSERACCOUNT_REGISTERCOMPATTOOL_RESPONSE,
-  __module__ = 'steammessages_useraccount_pb2'
+CUserAccount_RegisterCompatTool_Response = _reflection.GeneratedProtocolMessageType('CUserAccount_RegisterCompatTool_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CUSERACCOUNT_REGISTERCOMPATTOOL_RESPONSE,
+  '__module__' : 'steammessages_useraccount_pb2'
   # @@protoc_insertion_point(class_scope:CUserAccount_RegisterCompatTool_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CUserAccount_RegisterCompatTool_Response)
 
-CAccountLinking_GetLinkedAccountInfo_Request = _reflection.GeneratedProtocolMessageType('CAccountLinking_GetLinkedAccountInfo_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CACCOUNTLINKING_GETLINKEDACCOUNTINFO_REQUEST,
-  __module__ = 'steammessages_useraccount_pb2'
+CAccountLinking_GetLinkedAccountInfo_Request = _reflection.GeneratedProtocolMessageType('CAccountLinking_GetLinkedAccountInfo_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CACCOUNTLINKING_GETLINKEDACCOUNTINFO_REQUEST,
+  '__module__' : 'steammessages_useraccount_pb2'
   # @@protoc_insertion_point(class_scope:CAccountLinking_GetLinkedAccountInfo_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CAccountLinking_GetLinkedAccountInfo_Request)
 
-CAccountLinking_GetLinkedAccountInfo_Response = _reflection.GeneratedProtocolMessageType('CAccountLinking_GetLinkedAccountInfo_Response', (_message.Message,), dict(
+CAccountLinking_GetLinkedAccountInfo_Response = _reflection.GeneratedProtocolMessageType('CAccountLinking_GetLinkedAccountInfo_Response', (_message.Message,), {
 
-  CExternalAccountTuple_Response = _reflection.GeneratedProtocolMessageType('CExternalAccountTuple_Response', (_message.Message,), dict(
-    DESCRIPTOR = _CACCOUNTLINKING_GETLINKEDACCOUNTINFO_RESPONSE_CEXTERNALACCOUNTTUPLE_RESPONSE,
-    __module__ = 'steammessages_useraccount_pb2'
+  'CExternalAccountTuple_Response' : _reflection.GeneratedProtocolMessageType('CExternalAccountTuple_Response', (_message.Message,), {
+    'DESCRIPTOR' : _CACCOUNTLINKING_GETLINKEDACCOUNTINFO_RESPONSE_CEXTERNALACCOUNTTUPLE_RESPONSE,
+    '__module__' : 'steammessages_useraccount_pb2'
     # @@protoc_insertion_point(class_scope:CAccountLinking_GetLinkedAccountInfo_Response.CExternalAccountTuple_Response)
-    ))
+    })
   ,
-  DESCRIPTOR = _CACCOUNTLINKING_GETLINKEDACCOUNTINFO_RESPONSE,
-  __module__ = 'steammessages_useraccount_pb2'
+  'DESCRIPTOR' : _CACCOUNTLINKING_GETLINKEDACCOUNTINFO_RESPONSE,
+  '__module__' : 'steammessages_useraccount_pb2'
   # @@protoc_insertion_point(class_scope:CAccountLinking_GetLinkedAccountInfo_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CAccountLinking_GetLinkedAccountInfo_Response)
 _sym_db.RegisterMessage(CAccountLinking_GetLinkedAccountInfo_Response.CExternalAccountTuple_Response)
 
-CEmbeddedClient_AuthorizeCurrentDevice_Request = _reflection.GeneratedProtocolMessageType('CEmbeddedClient_AuthorizeCurrentDevice_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CEMBEDDEDCLIENT_AUTHORIZECURRENTDEVICE_REQUEST,
-  __module__ = 'steammessages_useraccount_pb2'
+CEmbeddedClient_AuthorizeCurrentDevice_Request = _reflection.GeneratedProtocolMessageType('CEmbeddedClient_AuthorizeCurrentDevice_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CEMBEDDEDCLIENT_AUTHORIZECURRENTDEVICE_REQUEST,
+  '__module__' : 'steammessages_useraccount_pb2'
   # @@protoc_insertion_point(class_scope:CEmbeddedClient_AuthorizeCurrentDevice_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CEmbeddedClient_AuthorizeCurrentDevice_Request)
 
-CEmbeddedClient_Token = _reflection.GeneratedProtocolMessageType('CEmbeddedClient_Token', (_message.Message,), dict(
-  DESCRIPTOR = _CEMBEDDEDCLIENT_TOKEN,
-  __module__ = 'steammessages_useraccount_pb2'
+CEmbeddedClient_Token = _reflection.GeneratedProtocolMessageType('CEmbeddedClient_Token', (_message.Message,), {
+  'DESCRIPTOR' : _CEMBEDDEDCLIENT_TOKEN,
+  '__module__' : 'steammessages_useraccount_pb2'
   # @@protoc_insertion_point(class_scope:CEmbeddedClient_Token)
-  ))
+  })
 _sym_db.RegisterMessage(CEmbeddedClient_Token)
 
-CEmbeddedClient_AuthorizeDevice_Response = _reflection.GeneratedProtocolMessageType('CEmbeddedClient_AuthorizeDevice_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CEMBEDDEDCLIENT_AUTHORIZEDEVICE_RESPONSE,
-  __module__ = 'steammessages_useraccount_pb2'
+CEmbeddedClient_AuthorizeDevice_Response = _reflection.GeneratedProtocolMessageType('CEmbeddedClient_AuthorizeDevice_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CEMBEDDEDCLIENT_AUTHORIZEDEVICE_RESPONSE,
+  '__module__' : 'steammessages_useraccount_pb2'
   # @@protoc_insertion_point(class_scope:CEmbeddedClient_AuthorizeDevice_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CEmbeddedClient_AuthorizeDevice_Response)
 
 
@@ -1347,9 +1651,10 @@ _USERACCOUNT = _descriptor.ServiceDescriptor(
   full_name='UserAccount',
   file=DESCRIPTOR,
   index=0,
-  serialized_options=_b('\202\265\030)A service to get user account information'),
-  serialized_start=3853,
-  serialized_end=5464,
+  serialized_options=b'\202\265\030)A service to get user account information',
+  create_key=_descriptor._internal_create_key,
+  serialized_start=4539,
+  serialized_end=6524,
   methods=[
   _descriptor.MethodDescriptor(
     name='GetAvailableValveDiscountPromotions',
@@ -1358,79 +1663,108 @@ _USERACCOUNT = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CUSERACCOUNT_GETAVAILABLEVALVEDISCOUNTPROMOTIONS_REQUEST,
     output_type=_CUSERACCOUNT_GETAVAILABLEVALVEDISCOUNTPROMOTIONS_RESPONSE,
-    serialized_options=_b('\202\265\030>Gets the available promotional discounts available to the user'),
+    serialized_options=b'\202\265\030>Gets the available promotional discounts available to the user',
+    create_key=_descriptor._internal_create_key,
+  ),
+  _descriptor.MethodDescriptor(
+    name='GetClientWalletDetails',
+    full_name='UserAccount.GetClientWalletDetails',
+    index=1,
+    containing_service=None,
+    input_type=_CUSERACCOUNT_GETCLIENTWALLETDETAILS_REQUEST,
+    output_type=_CUSERACCOUNT_GETWALLETDETAILS_RESPONSE,
+    serialized_options=b'\202\265\0302Returns balance and details about any users wallet',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetAccountLinkStatus',
     full_name='UserAccount.GetAccountLinkStatus',
-    index=1,
+    index=2,
     containing_service=None,
     input_type=_CUSERACCOUNT_GETACCOUNTLINKSTATUS_REQUEST,
     output_type=_CUSERACCOUNT_GETACCOUNTLINKSTATUS_RESPONSE,
-    serialized_options=_b('\202\265\030\033Fetches account link status'),
+    serialized_options=b'\202\265\030\033Fetches account link status',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='CancelLicenseForApp',
     full_name='UserAccount.CancelLicenseForApp',
-    index=2,
+    index=3,
     containing_service=None,
     input_type=_CUSERACCOUNT_CANCELLICENSEFORAPP_REQUEST,
     output_type=_CUSERACCOUNT_CANCELLICENSEFORAPP_RESPONSE,
-    serialized_options=_b('\202\265\030!Cancels a free license for a user'),
+    serialized_options=b'\202\265\030!Cancels a free license for a user',
+    create_key=_descriptor._internal_create_key,
+  ),
+  _descriptor.MethodDescriptor(
+    name='GetUserCountry',
+    full_name='UserAccount.GetUserCountry',
+    index=4,
+    containing_service=None,
+    input_type=_CUSERACCOUNT_GETUSERCOUNTRY_REQUEST,
+    output_type=_CUSERACCOUNT_GETUSERCOUNTRY_RESPONSE,
+    serialized_options=b'\202\265\030fGet the country code associated with the passed steamid (only available for logged-in user or support)',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='CreateFriendInviteToken',
     full_name='UserAccount.CreateFriendInviteToken',
-    index=3,
+    index=5,
     containing_service=None,
     input_type=_CUSERACCOUNT_CREATEFRIENDINVITETOKEN_REQUEST,
     output_type=_CUSERACCOUNT_CREATEFRIENDINVITETOKEN_RESPONSE,
-    serialized_options=_b('\202\265\030FCreate a limited-use token that can be used to create a friend request'),
+    serialized_options=b'\202\265\030FCreate a limited-use token that can be used to create a friend request',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetFriendInviteTokens',
     full_name='UserAccount.GetFriendInviteTokens',
-    index=4,
+    index=6,
     containing_service=None,
     input_type=_CUSERACCOUNT_GETFRIENDINVITETOKENS_REQUEST,
     output_type=_CUSERACCOUNT_GETFRIENDINVITETOKENS_RESPONSE,
-    serialized_options=_b('\202\265\030)Get the set of active tokens for the user'),
+    serialized_options=b'\202\265\030)Get the set of active tokens for the user',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='ViewFriendInviteToken',
     full_name='UserAccount.ViewFriendInviteToken',
-    index=5,
+    index=7,
     containing_service=None,
     input_type=_CUSERACCOUNT_VIEWFRIENDINVITETOKEN_REQUEST,
     output_type=_CUSERACCOUNT_VIEWFRIENDINVITETOKEN_RESPONSE,
-    serialized_options=_b('\202\265\030#View details about an invite token '),
+    serialized_options=b'\202\265\030#View details about an invite token ',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='RedeemFriendInviteToken',
     full_name='UserAccount.RedeemFriendInviteToken',
-    index=6,
+    index=8,
     containing_service=None,
     input_type=_CUSERACCOUNT_REDEEMFRIENDINVITETOKEN_REQUEST,
     output_type=_CUSERACCOUNT_REDEEMFRIENDINVITETOKEN_RESPONSE,
-    serialized_options=_b('\202\265\0309Create a friend relationship using the given invite token'),
+    serialized_options=b'\202\265\0309Create a friend relationship using the given invite token',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='RevokeFriendInviteToken',
     full_name='UserAccount.RevokeFriendInviteToken',
-    index=7,
+    index=9,
     containing_service=None,
     input_type=_CUSERACCOUNT_REVOKEFRIENDINVITETOKEN_REQUEST,
     output_type=_CUSERACCOUNT_REVOKEFRIENDINVITETOKEN_RESPONSE,
-    serialized_options=_b('\202\265\030$Revoke an active friend invite token'),
+    serialized_options=b'\202\265\030$Revoke an active friend invite token',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='RegisterCompatTool',
     full_name='UserAccount.RegisterCompatTool',
-    index=8,
+    index=10,
     containing_service=None,
     input_type=_CUSERACCOUNT_REGISTERCOMPATTOOL_REQUEST,
     output_type=_CUSERACCOUNT_REGISTERCOMPATTOOL_RESPONSE,
-    serialized_options=_b('\202\265\030)Register intended account usage of a tool'),
+    serialized_options=b'\202\265\030)Register intended account usage of a tool',
+    create_key=_descriptor._internal_create_key,
   ),
 ])
 _sym_db.RegisterServiceDescriptor(_USERACCOUNT)
@@ -1443,9 +1777,10 @@ _ACCOUNTLINKING = _descriptor.ServiceDescriptor(
   full_name='AccountLinking',
   file=DESCRIPTOR,
   index=1,
-  serialized_options=_b('\202\265\0301A service to manage and link to external accounts'),
-  serialized_start=5467,
-  serialized_end=5752,
+  serialized_options=b'\202\265\0301A service to manage and link to external accounts',
+  create_key=_descriptor._internal_create_key,
+  serialized_start=6527,
+  serialized_end=6812,
   methods=[
   _descriptor.MethodDescriptor(
     name='GetLinkedAccountInfo',
@@ -1454,7 +1789,8 @@ _ACCOUNTLINKING = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CACCOUNTLINKING_GETLINKEDACCOUNTINFO_REQUEST,
     output_type=_CACCOUNTLINKING_GETLINKEDACCOUNTINFO_RESPONSE,
-    serialized_options=_b('\202\265\030XList all my active linked external accounts; may be requested to return the access token'),
+    serialized_options=b'\202\265\030XList all my active linked external accounts; may be requested to return the access token',
+    create_key=_descriptor._internal_create_key,
   ),
 ])
 _sym_db.RegisterServiceDescriptor(_ACCOUNTLINKING)
@@ -1467,9 +1803,10 @@ _EMBEDDEDCLIENT = _descriptor.ServiceDescriptor(
   full_name='EmbeddedClient',
   file=DESCRIPTOR,
   index=2,
-  serialized_options=_b('\202\265\030JService to authorize and manage Steam functions directly embedded in games'),
-  serialized_start=5755,
-  serialized_end=6047,
+  serialized_options=b'\202\265\030JService to authorize and manage Steam functions directly embedded in games',
+  create_key=_descriptor._internal_create_key,
+  serialized_start=6815,
+  serialized_end=7107,
   methods=[
   _descriptor.MethodDescriptor(
     name='AuthorizeCurrentDevice',
@@ -1478,7 +1815,8 @@ _EMBEDDEDCLIENT = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CEMBEDDEDCLIENT_AUTHORIZECURRENTDEVICE_REQUEST,
     output_type=_CEMBEDDEDCLIENT_AUTHORIZEDEVICE_RESPONSE,
-    serialized_options=_b('\202\265\030GUse a logged-in (password/etc) session to create a durable access token'),
+    serialized_options=b'\202\265\030GUse a logged-in (password/etc) session to create a durable access token',
+    create_key=_descriptor._internal_create_key,
   ),
 ])
 _sym_db.RegisterServiceDescriptor(_EMBEDDEDCLIENT)
diff --git a/steam/protobufs/steammessages_video_pb2.py b/steam/protobufs/steammessages_video_pb2.py
index a2dd412..be9cce5 100644
--- a/steam/protobufs/steammessages_video_pb2.py
+++ b/steam/protobufs/steammessages_video_pb2.py
@@ -1,9 +1,7 @@
 # -*- coding: utf-8 -*-
 # Generated by the protocol buffer compiler.  DO NOT EDIT!
 # source: steammessages_video.proto
-
-import sys
-_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1'))
+"""Generated protocol buffer code."""
 from google.protobuf import descriptor as _descriptor
 from google.protobuf import message as _message
 from google.protobuf import reflection as _reflection
@@ -15,6 +13,7 @@ from google.protobuf import service_reflection
 _sym_db = _symbol_database.Default()
 
 
+import steam.protobufs.steammessages_base_pb2 as steammessages__base__pb2
 import steam.protobufs.steammessages_unified_base_pb2 as steammessages__unified__base__pb2
 
 
@@ -22,10 +21,11 @@ DESCRIPTOR = _descriptor.FileDescriptor(
   name='steammessages_video.proto',
   package='',
   syntax='proto2',
-  serialized_options=_b('\220\001\001'),
-  serialized_pb=_b('\n\x19steammessages_video.proto\x1a steammessages_unified_base.proto\"\x81\x01\n CVideo_ClientGetVideoURL_Request\x12\x1e\n\x08video_id\x18\x01 \x01(\x04\x42\x0c\x82\xb5\x18\x08Video ID\x12=\n\rclient_cellid\x18\x02 \x01(\rB&\x82\xb5\x18\"Cell ID of client, zero if unknown\"r\n!CVideo_ClientGetVideoURL_Response\x12\x1e\n\x08video_id\x18\x01 \x01(\x04\x42\x0c\x82\xb5\x18\x08Video ID\x12-\n\tvideo_url\x18\x02 \x01(\tB\x1a\x82\xb5\x18\x16URL for video manifest\"\xaa\x04\n\rVideoBookmark\x12\x1a\n\x06\x61pp_id\x18\x01 \x01(\rB\n\x82\xb5\x18\x06\x41pp ID\x12]\n\x1cplayback_position_in_seconds\x18\x02 \x01(\rB7\x82\xb5\x18\x33How many seconds into the video the bookmark is for\x12/\n\x0evideo_track_id\x18\x03 \x01(\x04\x42\x17\x82\xb5\x18\x13video track choice.\x12/\n\x0e\x61udio_track_id\x18\x04 \x01(\x04\x42\x17\x82\xb5\x18\x13\x61udio track choice.\x12\x43\n\x12timedtext_track_id\x18\x05 \x01(\x04\x42\'\x82\xb5\x18#timedtimed or subtitle track choice\x12O\n\rlast_modified\x18\x06 \x01(\rB8\x82\xb5\x18\x34when we recorded it was last modified. Not settable.\x12U\n\x17hide_from_watch_history\x18\x07 \x01(\x08:\x05\x66\x61lseB-\x82\xb5\x18)Whether I want to show this in my history\x12O\n\x11hide_from_library\x18\x08 \x01(\x08:\x05\x66\x61lseB-\x82\xb5\x18)Whether I want to show this in my library\"r\n$CVideo_SetVideoBookmark_Notification\x12J\n\tbookmarks\x18\x01 \x03(\x0b\x32\x0e.VideoBookmarkB\'\x82\xb5\x18#list of bookmarks we want to store.\"\x81\x02\n CVideo_GetVideoBookmarks_Request\x12_\n\x06\x61ppids\x18\x01 \x03(\rBO\x82\xb5\x18KList of App IDs to grab bookmarks for. Can be empty if using updated_since.\x12|\n\rupdated_since\x18\x02 \x01(\rBe\x82\xb5\x18\x61Only return results after time. Min value is 1. (seconds since epoch January 1st, 1970 Unix Time)\"u\n!CVideo_GetVideoBookmarks_Response\x12P\n\tbookmarks\x18\x01 \x03(\x0b\x32\x0e.VideoBookmarkB-\x82\xb5\x18)List of bookmarks we found. Can be empty.\":\n CVideo_UnlockedH264_Notification\x12\x16\n\x0e\x65ncryption_key\x18\x01 \x01(\x0c\"\x85\x01\n(CFovasVideo_ClientGetOPFSettings_Request\x12\x1a\n\x06\x61pp_id\x18\x01 \x01(\rB\n\x82\xb5\x18\x06\x41pp ID\x12=\n\rclient_cellid\x18\x02 \x01(\rB&\x82\xb5\x18\"Cell ID of client, zero if unknown\"|\n)CFovasVideo_ClientGetOPFSettings_Response\x12\x1a\n\x06\x61pp_id\x18\x01 \x01(\rB\n\x82\xb5\x18\x06\x41pp ID\x12\x33\n\x0copf_settings\x18\x02 \x01(\tB\x1d\x82\xb5\x18\x19JSON blob of OPF Settings2\xb5\x04\n\x05Video\x12\x8e\x01\n\x11\x43lientGetVideoURL\x12!.CVideo_ClientGetVideoURL_Request\x1a\".CVideo_ClientGetVideoURL_Response\"2\x82\xb5\x18.Get the initial URL to begin streaming a video\x12\xc1\x01\n\x10SetVideoBookmark\x12%.CVideo_SetVideoBookmark_Notification\x1a\x0b.NoResponse\"y\x82\xb5\x18uBookmarks the locations in the video the user has reached. As as record playback settings per video. Fire and forget.\x12\xc3\x01\n\x11GetVideoBookmarks\x12!.CVideo_GetVideoBookmarks_Request\x1a\".CVideo_GetVideoBookmarks_Response\"g\x82\xb5\x18\x63Returns the video bookmarks locations for the specific videos. Includes playback settings per video\x1a\x11\x82\xb5\x18\rVideo methods2\x9e\x01\n\x0bVideoClient\x12\x88\x01\n\x12NotifyUnlockedH264\x12!.CVideo_UnlockedH264_Notification\x1a\x0b.NoResponse\"B\x82\xb5\x18>Notification from server to client that h264 has been unlocked\x1a\x04\xc0\xb5\x18\x02\x32\xf3\x01\n\nFovasVideo\x12\xc3\x01\n\x14\x43lientGetOPFSettings\x12).CFovasVideo_ClientGetOPFSettings_Request\x1a*.CFovasVideo_ClientGetOPFSettings_Response\"T\x82\xb5\x18PRetrieve the OPF settings JSON blob. Available via the Client for 360 Player App\x1a\x1f\x82\xb5\x18\x1b\x46ovas Video Service MethodsB\x03\x90\x01\x01')
+  serialized_options=b'\220\001\001',
+  create_key=_descriptor._internal_create_key,
+  serialized_pb=b'\n\x19steammessages_video.proto\x1a\x18steammessages_base.proto\x1a steammessages_unified_base.proto\"\x81\x01\n CVideo_ClientGetVideoURL_Request\x12\x1e\n\x08video_id\x18\x01 \x01(\x04\x42\x0c\x82\xb5\x18\x08Video ID\x12=\n\rclient_cellid\x18\x02 \x01(\rB&\x82\xb5\x18\"Cell ID of client, zero if unknown\"r\n!CVideo_ClientGetVideoURL_Response\x12\x1e\n\x08video_id\x18\x01 \x01(\x04\x42\x0c\x82\xb5\x18\x08Video ID\x12-\n\tvideo_url\x18\x02 \x01(\tB\x1a\x82\xb5\x18\x16URL for video manifest\"\xaa\x04\n\rVideoBookmark\x12\x1a\n\x06\x61pp_id\x18\x01 \x01(\rB\n\x82\xb5\x18\x06\x41pp ID\x12]\n\x1cplayback_position_in_seconds\x18\x02 \x01(\rB7\x82\xb5\x18\x33How many seconds into the video the bookmark is for\x12/\n\x0evideo_track_id\x18\x03 \x01(\x04\x42\x17\x82\xb5\x18\x13video track choice.\x12/\n\x0e\x61udio_track_id\x18\x04 \x01(\x04\x42\x17\x82\xb5\x18\x13\x61udio track choice.\x12\x43\n\x12timedtext_track_id\x18\x05 \x01(\x04\x42\'\x82\xb5\x18#timedtimed or subtitle track choice\x12O\n\rlast_modified\x18\x06 \x01(\rB8\x82\xb5\x18\x34when we recorded it was last modified. Not settable.\x12U\n\x17hide_from_watch_history\x18\x07 \x01(\x08:\x05\x66\x61lseB-\x82\xb5\x18)Whether I want to show this in my history\x12O\n\x11hide_from_library\x18\x08 \x01(\x08:\x05\x66\x61lseB-\x82\xb5\x18)Whether I want to show this in my library\"r\n$CVideo_SetVideoBookmark_Notification\x12J\n\tbookmarks\x18\x01 \x03(\x0b\x32\x0e.VideoBookmarkB\'\x82\xb5\x18#list of bookmarks we want to store.\"\x81\x02\n CVideo_GetVideoBookmarks_Request\x12_\n\x06\x61ppids\x18\x01 \x03(\rBO\x82\xb5\x18KList of App IDs to grab bookmarks for. Can be empty if using updated_since.\x12|\n\rupdated_since\x18\x02 \x01(\rBe\x82\xb5\x18\x61Only return results after time. Min value is 1. (seconds since epoch January 1st, 1970 Unix Time)\"u\n!CVideo_GetVideoBookmarks_Response\x12P\n\tbookmarks\x18\x01 \x03(\x0b\x32\x0e.VideoBookmarkB-\x82\xb5\x18)List of bookmarks we found. Can be empty.\":\n CVideo_UnlockedH264_Notification\x12\x16\n\x0e\x65ncryption_key\x18\x01 \x01(\x0c\"\x85\x01\n(CFovasVideo_ClientGetOPFSettings_Request\x12\x1a\n\x06\x61pp_id\x18\x01 \x01(\rB\n\x82\xb5\x18\x06\x41pp ID\x12=\n\rclient_cellid\x18\x02 \x01(\rB&\x82\xb5\x18\"Cell ID of client, zero if unknown\"|\n)CFovasVideo_ClientGetOPFSettings_Response\x12\x1a\n\x06\x61pp_id\x18\x01 \x01(\rB\n\x82\xb5\x18\x06\x41pp ID\x12\x33\n\x0copf_settings\x18\x02 \x01(\tB\x1d\x82\xb5\x18\x19JSON blob of OPF Settings2\xb5\x04\n\x05Video\x12\x8e\x01\n\x11\x43lientGetVideoURL\x12!.CVideo_ClientGetVideoURL_Request\x1a\".CVideo_ClientGetVideoURL_Response\"2\x82\xb5\x18.Get the initial URL to begin streaming a video\x12\xc1\x01\n\x10SetVideoBookmark\x12%.CVideo_SetVideoBookmark_Notification\x1a\x0b.NoResponse\"y\x82\xb5\x18uBookmarks the locations in the video the user has reached. As as record playback settings per video. Fire and forget.\x12\xc3\x01\n\x11GetVideoBookmarks\x12!.CVideo_GetVideoBookmarks_Request\x1a\".CVideo_GetVideoBookmarks_Response\"g\x82\xb5\x18\x63Returns the video bookmarks locations for the specific videos. Includes playback settings per video\x1a\x11\x82\xb5\x18\rVideo methods2\x9e\x01\n\x0bVideoClient\x12\x88\x01\n\x12NotifyUnlockedH264\x12!.CVideo_UnlockedH264_Notification\x1a\x0b.NoResponse\"B\x82\xb5\x18>Notification from server to client that h264 has been unlocked\x1a\x04\xc0\xb5\x18\x02\x32\xf3\x01\n\nFovasVideo\x12\xc3\x01\n\x14\x43lientGetOPFSettings\x12).CFovasVideo_ClientGetOPFSettings_Request\x1a*.CFovasVideo_ClientGetOPFSettings_Response\"T\x82\xb5\x18PRetrieve the OPF settings JSON blob. Available via the Client for 360 Player App\x1a\x1f\x82\xb5\x18\x1b\x46ovas Video Service MethodsB\x03\x90\x01\x01'
   ,
-  dependencies=[steammessages__unified__base__pb2.DESCRIPTOR,])
+  dependencies=[steammessages__base__pb2.DESCRIPTOR,steammessages__unified__base__pb2.DESCRIPTOR,])
 
 
 
@@ -36,6 +36,7 @@ _CVIDEO_CLIENTGETVIDEOURL_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='video_id', full_name='CVideo_ClientGetVideoURL_Request.video_id', index=0,
@@ -43,14 +44,14 @@ _CVIDEO_CLIENTGETVIDEOURL_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\010Video ID'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\010Video ID', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='client_cellid', full_name='CVideo_ClientGetVideoURL_Request.client_cellid', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\"Cell ID of client, zero if unknown'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\"Cell ID of client, zero if unknown', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -63,8 +64,8 @@ _CVIDEO_CLIENTGETVIDEOURL_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=64,
-  serialized_end=193,
+  serialized_start=90,
+  serialized_end=219,
 )
 
 
@@ -74,6 +75,7 @@ _CVIDEO_CLIENTGETVIDEOURL_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='video_id', full_name='CVideo_ClientGetVideoURL_Response.video_id', index=0,
@@ -81,14 +83,14 @@ _CVIDEO_CLIENTGETVIDEOURL_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\010Video ID'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\010Video ID', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='video_url', full_name='CVideo_ClientGetVideoURL_Response.video_url', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\026URL for video manifest'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\026URL for video manifest', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -101,8 +103,8 @@ _CVIDEO_CLIENTGETVIDEOURL_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=195,
-  serialized_end=309,
+  serialized_start=221,
+  serialized_end=335,
 )
 
 
@@ -112,6 +114,7 @@ _VIDEOBOOKMARK = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='app_id', full_name='VideoBookmark.app_id', index=0,
@@ -119,56 +122,56 @@ _VIDEOBOOKMARK = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\006App ID'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\006App ID', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='playback_position_in_seconds', full_name='VideoBookmark.playback_position_in_seconds', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\0303How many seconds into the video the bookmark is for'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\0303How many seconds into the video the bookmark is for', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='video_track_id', full_name='VideoBookmark.video_track_id', index=2,
       number=3, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\023video track choice.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\023video track choice.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='audio_track_id', full_name='VideoBookmark.audio_track_id', index=3,
       number=4, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\023audio track choice.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\023audio track choice.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='timedtext_track_id', full_name='VideoBookmark.timedtext_track_id', index=4,
       number=5, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030#timedtimed or subtitle track choice'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030#timedtimed or subtitle track choice', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='last_modified', full_name='VideoBookmark.last_modified', index=5,
       number=6, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\0304when we recorded it was last modified. Not settable.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\0304when we recorded it was last modified. Not settable.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='hide_from_watch_history', full_name='VideoBookmark.hide_from_watch_history', index=6,
       number=7, type=8, cpp_type=7, label=1,
       has_default_value=True, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030)Whether I want to show this in my history'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030)Whether I want to show this in my history', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='hide_from_library', full_name='VideoBookmark.hide_from_library', index=7,
       number=8, type=8, cpp_type=7, label=1,
       has_default_value=True, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030)Whether I want to show this in my library'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030)Whether I want to show this in my library', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -181,8 +184,8 @@ _VIDEOBOOKMARK = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=312,
-  serialized_end=866,
+  serialized_start=338,
+  serialized_end=892,
 )
 
 
@@ -192,6 +195,7 @@ _CVIDEO_SETVIDEOBOOKMARK_NOTIFICATION = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='bookmarks', full_name='CVideo_SetVideoBookmark_Notification.bookmarks', index=0,
@@ -199,7 +203,7 @@ _CVIDEO_SETVIDEOBOOKMARK_NOTIFICATION = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030#list of bookmarks we want to store.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030#list of bookmarks we want to store.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -212,8 +216,8 @@ _CVIDEO_SETVIDEOBOOKMARK_NOTIFICATION = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=868,
-  serialized_end=982,
+  serialized_start=894,
+  serialized_end=1008,
 )
 
 
@@ -223,6 +227,7 @@ _CVIDEO_GETVIDEOBOOKMARKS_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appids', full_name='CVideo_GetVideoBookmarks_Request.appids', index=0,
@@ -230,14 +235,14 @@ _CVIDEO_GETVIDEOBOOKMARKS_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030KList of App IDs to grab bookmarks for. Can be empty if using updated_since.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030KList of App IDs to grab bookmarks for. Can be empty if using updated_since.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='updated_since', full_name='CVideo_GetVideoBookmarks_Request.updated_since', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030aOnly return results after time. Min value is 1. (seconds since epoch January 1st, 1970 Unix Time)'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030aOnly return results after time. Min value is 1. (seconds since epoch January 1st, 1970 Unix Time)', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -250,8 +255,8 @@ _CVIDEO_GETVIDEOBOOKMARKS_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=985,
-  serialized_end=1242,
+  serialized_start=1011,
+  serialized_end=1268,
 )
 
 
@@ -261,6 +266,7 @@ _CVIDEO_GETVIDEOBOOKMARKS_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='bookmarks', full_name='CVideo_GetVideoBookmarks_Response.bookmarks', index=0,
@@ -268,7 +274,7 @@ _CVIDEO_GETVIDEOBOOKMARKS_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030)List of bookmarks we found. Can be empty.'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030)List of bookmarks we found. Can be empty.', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -281,8 +287,8 @@ _CVIDEO_GETVIDEOBOOKMARKS_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1244,
-  serialized_end=1361,
+  serialized_start=1270,
+  serialized_end=1387,
 )
 
 
@@ -292,14 +298,15 @@ _CVIDEO_UNLOCKEDH264_NOTIFICATION = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='encryption_key', full_name='CVideo_UnlockedH264_Notification.encryption_key', index=0,
       number=1, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -312,8 +319,8 @@ _CVIDEO_UNLOCKEDH264_NOTIFICATION = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1363,
-  serialized_end=1421,
+  serialized_start=1389,
+  serialized_end=1447,
 )
 
 
@@ -323,6 +330,7 @@ _CFOVASVIDEO_CLIENTGETOPFSETTINGS_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CFovasVideo_ClientGetOPFSettings_Request.app_id', index=0,
@@ -330,14 +338,14 @@ _CFOVASVIDEO_CLIENTGETOPFSETTINGS_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\006App ID'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\006App ID', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='client_cellid', full_name='CFovasVideo_ClientGetOPFSettings_Request.client_cellid', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\"Cell ID of client, zero if unknown'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\"Cell ID of client, zero if unknown', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -350,8 +358,8 @@ _CFOVASVIDEO_CLIENTGETOPFSETTINGS_REQUEST = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1424,
-  serialized_end=1557,
+  serialized_start=1450,
+  serialized_end=1583,
 )
 
 
@@ -361,6 +369,7 @@ _CFOVASVIDEO_CLIENTGETOPFSETTINGS_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CFovasVideo_ClientGetOPFSettings_Response.app_id', index=0,
@@ -368,14 +377,14 @@ _CFOVASVIDEO_CLIENTGETOPFSETTINGS_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\006App ID'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\006App ID', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='opf_settings', full_name='CFovasVideo_ClientGetOPFSettings_Response.opf_settings', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030\031JSON blob of OPF Settings'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030\031JSON blob of OPF Settings', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -388,8 +397,8 @@ _CFOVASVIDEO_CLIENTGETOPFSETTINGS_RESPONSE = _descriptor.Descriptor(
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1559,
-  serialized_end=1683,
+  serialized_start=1585,
+  serialized_end=1709,
 )
 
 _CVIDEO_SETVIDEOBOOKMARK_NOTIFICATION.fields_by_name['bookmarks'].message_type = _VIDEOBOOKMARK
@@ -405,67 +414,67 @@ DESCRIPTOR.message_types_by_name['CFovasVideo_ClientGetOPFSettings_Request'] = _
 DESCRIPTOR.message_types_by_name['CFovasVideo_ClientGetOPFSettings_Response'] = _CFOVASVIDEO_CLIENTGETOPFSETTINGS_RESPONSE
 _sym_db.RegisterFileDescriptor(DESCRIPTOR)
 
-CVideo_ClientGetVideoURL_Request = _reflection.GeneratedProtocolMessageType('CVideo_ClientGetVideoURL_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CVIDEO_CLIENTGETVIDEOURL_REQUEST,
-  __module__ = 'steammessages_video_pb2'
+CVideo_ClientGetVideoURL_Request = _reflection.GeneratedProtocolMessageType('CVideo_ClientGetVideoURL_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CVIDEO_CLIENTGETVIDEOURL_REQUEST,
+  '__module__' : 'steammessages_video_pb2'
   # @@protoc_insertion_point(class_scope:CVideo_ClientGetVideoURL_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CVideo_ClientGetVideoURL_Request)
 
-CVideo_ClientGetVideoURL_Response = _reflection.GeneratedProtocolMessageType('CVideo_ClientGetVideoURL_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CVIDEO_CLIENTGETVIDEOURL_RESPONSE,
-  __module__ = 'steammessages_video_pb2'
+CVideo_ClientGetVideoURL_Response = _reflection.GeneratedProtocolMessageType('CVideo_ClientGetVideoURL_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CVIDEO_CLIENTGETVIDEOURL_RESPONSE,
+  '__module__' : 'steammessages_video_pb2'
   # @@protoc_insertion_point(class_scope:CVideo_ClientGetVideoURL_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CVideo_ClientGetVideoURL_Response)
 
-VideoBookmark = _reflection.GeneratedProtocolMessageType('VideoBookmark', (_message.Message,), dict(
-  DESCRIPTOR = _VIDEOBOOKMARK,
-  __module__ = 'steammessages_video_pb2'
+VideoBookmark = _reflection.GeneratedProtocolMessageType('VideoBookmark', (_message.Message,), {
+  'DESCRIPTOR' : _VIDEOBOOKMARK,
+  '__module__' : 'steammessages_video_pb2'
   # @@protoc_insertion_point(class_scope:VideoBookmark)
-  ))
+  })
 _sym_db.RegisterMessage(VideoBookmark)
 
-CVideo_SetVideoBookmark_Notification = _reflection.GeneratedProtocolMessageType('CVideo_SetVideoBookmark_Notification', (_message.Message,), dict(
-  DESCRIPTOR = _CVIDEO_SETVIDEOBOOKMARK_NOTIFICATION,
-  __module__ = 'steammessages_video_pb2'
+CVideo_SetVideoBookmark_Notification = _reflection.GeneratedProtocolMessageType('CVideo_SetVideoBookmark_Notification', (_message.Message,), {
+  'DESCRIPTOR' : _CVIDEO_SETVIDEOBOOKMARK_NOTIFICATION,
+  '__module__' : 'steammessages_video_pb2'
   # @@protoc_insertion_point(class_scope:CVideo_SetVideoBookmark_Notification)
-  ))
+  })
 _sym_db.RegisterMessage(CVideo_SetVideoBookmark_Notification)
 
-CVideo_GetVideoBookmarks_Request = _reflection.GeneratedProtocolMessageType('CVideo_GetVideoBookmarks_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CVIDEO_GETVIDEOBOOKMARKS_REQUEST,
-  __module__ = 'steammessages_video_pb2'
+CVideo_GetVideoBookmarks_Request = _reflection.GeneratedProtocolMessageType('CVideo_GetVideoBookmarks_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CVIDEO_GETVIDEOBOOKMARKS_REQUEST,
+  '__module__' : 'steammessages_video_pb2'
   # @@protoc_insertion_point(class_scope:CVideo_GetVideoBookmarks_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CVideo_GetVideoBookmarks_Request)
 
-CVideo_GetVideoBookmarks_Response = _reflection.GeneratedProtocolMessageType('CVideo_GetVideoBookmarks_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CVIDEO_GETVIDEOBOOKMARKS_RESPONSE,
-  __module__ = 'steammessages_video_pb2'
+CVideo_GetVideoBookmarks_Response = _reflection.GeneratedProtocolMessageType('CVideo_GetVideoBookmarks_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CVIDEO_GETVIDEOBOOKMARKS_RESPONSE,
+  '__module__' : 'steammessages_video_pb2'
   # @@protoc_insertion_point(class_scope:CVideo_GetVideoBookmarks_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CVideo_GetVideoBookmarks_Response)
 
-CVideo_UnlockedH264_Notification = _reflection.GeneratedProtocolMessageType('CVideo_UnlockedH264_Notification', (_message.Message,), dict(
-  DESCRIPTOR = _CVIDEO_UNLOCKEDH264_NOTIFICATION,
-  __module__ = 'steammessages_video_pb2'
+CVideo_UnlockedH264_Notification = _reflection.GeneratedProtocolMessageType('CVideo_UnlockedH264_Notification', (_message.Message,), {
+  'DESCRIPTOR' : _CVIDEO_UNLOCKEDH264_NOTIFICATION,
+  '__module__' : 'steammessages_video_pb2'
   # @@protoc_insertion_point(class_scope:CVideo_UnlockedH264_Notification)
-  ))
+  })
 _sym_db.RegisterMessage(CVideo_UnlockedH264_Notification)
 
-CFovasVideo_ClientGetOPFSettings_Request = _reflection.GeneratedProtocolMessageType('CFovasVideo_ClientGetOPFSettings_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CFOVASVIDEO_CLIENTGETOPFSETTINGS_REQUEST,
-  __module__ = 'steammessages_video_pb2'
+CFovasVideo_ClientGetOPFSettings_Request = _reflection.GeneratedProtocolMessageType('CFovasVideo_ClientGetOPFSettings_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CFOVASVIDEO_CLIENTGETOPFSETTINGS_REQUEST,
+  '__module__' : 'steammessages_video_pb2'
   # @@protoc_insertion_point(class_scope:CFovasVideo_ClientGetOPFSettings_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CFovasVideo_ClientGetOPFSettings_Request)
 
-CFovasVideo_ClientGetOPFSettings_Response = _reflection.GeneratedProtocolMessageType('CFovasVideo_ClientGetOPFSettings_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CFOVASVIDEO_CLIENTGETOPFSETTINGS_RESPONSE,
-  __module__ = 'steammessages_video_pb2'
+CFovasVideo_ClientGetOPFSettings_Response = _reflection.GeneratedProtocolMessageType('CFovasVideo_ClientGetOPFSettings_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CFOVASVIDEO_CLIENTGETOPFSETTINGS_RESPONSE,
+  '__module__' : 'steammessages_video_pb2'
   # @@protoc_insertion_point(class_scope:CFovasVideo_ClientGetOPFSettings_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CFovasVideo_ClientGetOPFSettings_Response)
 
 
@@ -496,9 +505,10 @@ _VIDEO = _descriptor.ServiceDescriptor(
   full_name='Video',
   file=DESCRIPTOR,
   index=0,
-  serialized_options=_b('\202\265\030\rVideo methods'),
-  serialized_start=1686,
-  serialized_end=2251,
+  serialized_options=b'\202\265\030\rVideo methods',
+  create_key=_descriptor._internal_create_key,
+  serialized_start=1712,
+  serialized_end=2277,
   methods=[
   _descriptor.MethodDescriptor(
     name='ClientGetVideoURL',
@@ -507,7 +517,8 @@ _VIDEO = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CVIDEO_CLIENTGETVIDEOURL_REQUEST,
     output_type=_CVIDEO_CLIENTGETVIDEOURL_RESPONSE,
-    serialized_options=_b('\202\265\030.Get the initial URL to begin streaming a video'),
+    serialized_options=b'\202\265\030.Get the initial URL to begin streaming a video',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='SetVideoBookmark',
@@ -516,7 +527,8 @@ _VIDEO = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CVIDEO_SETVIDEOBOOKMARK_NOTIFICATION,
     output_type=steammessages__unified__base__pb2._NORESPONSE,
-    serialized_options=_b('\202\265\030uBookmarks the locations in the video the user has reached. As as record playback settings per video. Fire and forget.'),
+    serialized_options=b'\202\265\030uBookmarks the locations in the video the user has reached. As as record playback settings per video. Fire and forget.',
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetVideoBookmarks',
@@ -525,7 +537,8 @@ _VIDEO = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CVIDEO_GETVIDEOBOOKMARKS_REQUEST,
     output_type=_CVIDEO_GETVIDEOBOOKMARKS_RESPONSE,
-    serialized_options=_b('\202\265\030cReturns the video bookmarks locations for the specific videos. Includes playback settings per video'),
+    serialized_options=b'\202\265\030cReturns the video bookmarks locations for the specific videos. Includes playback settings per video',
+    create_key=_descriptor._internal_create_key,
   ),
 ])
 _sym_db.RegisterServiceDescriptor(_VIDEO)
@@ -538,9 +551,10 @@ _VIDEOCLIENT = _descriptor.ServiceDescriptor(
   full_name='VideoClient',
   file=DESCRIPTOR,
   index=1,
-  serialized_options=_b('\300\265\030\002'),
-  serialized_start=2254,
-  serialized_end=2412,
+  serialized_options=b'\300\265\030\002',
+  create_key=_descriptor._internal_create_key,
+  serialized_start=2280,
+  serialized_end=2438,
   methods=[
   _descriptor.MethodDescriptor(
     name='NotifyUnlockedH264',
@@ -549,7 +563,8 @@ _VIDEOCLIENT = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CVIDEO_UNLOCKEDH264_NOTIFICATION,
     output_type=steammessages__unified__base__pb2._NORESPONSE,
-    serialized_options=_b('\202\265\030>Notification from server to client that h264 has been unlocked'),
+    serialized_options=b'\202\265\030>Notification from server to client that h264 has been unlocked',
+    create_key=_descriptor._internal_create_key,
   ),
 ])
 _sym_db.RegisterServiceDescriptor(_VIDEOCLIENT)
@@ -562,9 +577,10 @@ _FOVASVIDEO = _descriptor.ServiceDescriptor(
   full_name='FovasVideo',
   file=DESCRIPTOR,
   index=2,
-  serialized_options=_b('\202\265\030\033Fovas Video Service Methods'),
-  serialized_start=2415,
-  serialized_end=2658,
+  serialized_options=b'\202\265\030\033Fovas Video Service Methods',
+  create_key=_descriptor._internal_create_key,
+  serialized_start=2441,
+  serialized_end=2684,
   methods=[
   _descriptor.MethodDescriptor(
     name='ClientGetOPFSettings',
@@ -573,7 +589,8 @@ _FOVASVIDEO = _descriptor.ServiceDescriptor(
     containing_service=None,
     input_type=_CFOVASVIDEO_CLIENTGETOPFSETTINGS_REQUEST,
     output_type=_CFOVASVIDEO_CLIENTGETOPFSETTINGS_RESPONSE,
-    serialized_options=_b('\202\265\030PRetrieve the OPF settings JSON blob. Available via the Client for 360 Player App'),
+    serialized_options=b'\202\265\030PRetrieve the OPF settings JSON blob. Available via the Client for 360 Player App',
+    create_key=_descriptor._internal_create_key,
   ),
 ])
 _sym_db.RegisterServiceDescriptor(_FOVASVIDEO)
diff --git a/steam/protobufs/steammessages_webui_friends_pb2.py b/steam/protobufs/steammessages_webui_friends_pb2.py
index 1552ecb..f5bdb1c 100644
--- a/steam/protobufs/steammessages_webui_friends_pb2.py
+++ b/steam/protobufs/steammessages_webui_friends_pb2.py
@@ -1,9 +1,7 @@
 # -*- coding: utf-8 -*-
 # Generated by the protocol buffer compiler.  DO NOT EDIT!
 # source: steammessages_webui_friends.proto
-
-import sys
-_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1'))
+"""Generated protocol buffer code."""
 from google.protobuf import descriptor as _descriptor
 from google.protobuf import message as _message
 from google.protobuf import reflection as _reflection
@@ -24,8 +22,9 @@ DESCRIPTOR = _descriptor.FileDescriptor(
   name='steammessages_webui_friends.proto',
   package='',
   syntax='proto2',
-  serialized_options=_b('\220\001\001'),
-  serialized_pb=_b('\n!steammessages_webui_friends.proto\x1a steammessages_unified_base.proto\x1a\x18steammessages_base.proto\x1a(steammessages_clientserver_friends.proto\"\x82\x01\n1CHelpRequestLogs_UploadUserApplicationLog_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x10\n\x08log_type\x18\x02 \x01(\t\x12\x16\n\x0eversion_string\x18\x03 \x01(\t\x12\x14\n\x0clog_contents\x18\x04 \x01(\t\"@\n2CHelpRequestLogs_UploadUserApplicationLog_Response\x12\n\n\x02id\x18\x01 \x01(\x04\"n\n\x1e\x43MsgClientAppMinutesPlayedData\x12L\n\x0eminutes_played\x18\x01 \x03(\x0b\x32\x34.CMsgClientAppMinutesPlayedData_AppMinutesPlayedData\"n\n3CMsgClientAppMinutesPlayedData_AppMinutesPlayedData\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x0f\n\x07\x66orever\x18\x02 \x01(\x05\x12\x16\n\x0elast_two_weeks\x18\x03 \x01(\x05\">\n\x1a\x43\x43ommunity_GetApps_Request\x12\x0e\n\x06\x61ppids\x18\x01 \x03(\x05\x12\x10\n\x08language\x18\x02 \x01(\r\"B\n\x1b\x43\x43ommunity_GetApps_Response\x12#\n\x04\x61pps\x18\x01 \x03(\x0b\x32\x15.CCDDBAppDetailCommon\"T\n1CCommunity_GetAppRichPresenceLocalization_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\x05\x12\x10\n\x08language\x18\x02 \x01(\t\"\x97\x01\n2CCommunity_GetAppRichPresenceLocalization_Response\x12\r\n\x05\x61ppid\x18\x01 \x01(\x05\x12R\n\x0btoken_lists\x18\x02 \x03(\x0b\x32=.CCommunity_GetAppRichPresenceLocalization_Response_TokenList\"W\n8CCommunity_GetAppRichPresenceLocalization_Response_Token\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t\"\x9b\x01\n<CCommunity_GetAppRichPresenceLocalization_Response_TokenList\x12\x10\n\x08language\x18\x01 \x01(\t\x12I\n\x06tokens\x18\x02 \x03(\x0b\x32\x39.CCommunity_GetAppRichPresenceLocalization_Response_Token\"\x9d\x02\n#CCommunity_GetCommentThread_Request\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12\x1b\n\x13\x63omment_thread_type\x18\x02 \x01(\r\x12\x12\n\ngidfeature\x18\x03 \x01(\x06\x12\x13\n\x0bgidfeature2\x18\x04 \x01(\x06\x12\x17\n\x0f\x63ommentthreadid\x18\x05 \x01(\x06\x12\r\n\x05start\x18\x06 \x01(\x05\x12\r\n\x05\x63ount\x18\x07 \x01(\x05\x12\x10\n\x08upvoters\x18\x08 \x01(\x05\x12\x17\n\x0finclude_deleted\x18\t \x01(\x08\x12\x12\n\ngidcomment\x18\n \x01(\x06\x12\x13\n\x0btime_oldest\x18\x0b \x01(\r\x12\x14\n\x0coldest_first\x18\x0c \x01(\x08\"\xf6\x01\n\x12\x43\x43ommunity_Comment\x12\x12\n\ngidcomment\x18\x01 \x01(\x06\x12\x0f\n\x07steamid\x18\x02 \x01(\x06\x12\x11\n\ttimestamp\x18\x03 \x01(\r\x12\x0c\n\x04text\x18\x04 \x01(\t\x12\x0f\n\x07upvotes\x18\x05 \x01(\x05\x12\x0e\n\x06hidden\x18\x06 \x01(\x08\x12\x16\n\x0ehidden_by_user\x18\x07 \x01(\x08\x12\x0f\n\x07\x64\x65leted\x18\x08 \x01(\x08\x12!\n\tipaddress\x18\t \x01(\x0b\x32\x0e.CMsgIPAddress\x12\x14\n\x0ctotal_hidden\x18\n \x01(\x05\x12\x17\n\x0fupvoted_by_user\x18\x0b \x01(\x08\"\x88\x03\n$CCommunity_GetCommentThread_Response\x12%\n\x08\x63omments\x18\x01 \x03(\x0b\x32\x13.CCommunity_Comment\x12-\n\x10\x64\x65leted_comments\x18\x02 \x03(\x0b\x32\x13.CCommunity_Comment\x12\x0f\n\x07steamid\x18\x03 \x01(\x06\x12\x17\n\x0f\x63ommentthreadid\x18\x04 \x01(\x06\x12\r\n\x05start\x18\x05 \x01(\x05\x12\r\n\x05\x63ount\x18\x06 \x01(\x05\x12\x13\n\x0btotal_count\x18\x07 \x01(\x05\x12\x0f\n\x07upvotes\x18\x08 \x01(\x05\x12\x10\n\x08upvoters\x18\t \x03(\r\x12\x17\n\x0fuser_subscribed\x18\n \x01(\x08\x12\x14\n\x0cuser_upvoted\x18\x0b \x01(\x08\x12\x18\n\x10\x61nswer_commentid\x18\x0c \x01(\x06\x12\x14\n\x0c\x61nswer_actor\x18\r \x01(\r\x12\x19\n\x11\x61nswer_actor_rank\x18\x0e \x01(\x05\x12\x10\n\x08\x63\x61n_post\x18\x0f \x01(\x08\"\xc7\x01\n&CCommunity_PostCommentToThread_Request\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12\x1b\n\x13\x63omment_thread_type\x18\x02 \x01(\r\x12\x12\n\ngidfeature\x18\x03 \x01(\x06\x12\x13\n\x0bgidfeature2\x18\x04 \x01(\x06\x12\x0c\n\x04text\x18\x06 \x01(\t\x12\x18\n\x10gidparentcomment\x18\x07 \x01(\x06\x12\x1e\n\x16suppress_notifications\x18\x08 \x01(\x08\"v\n\'CCommunity_PostCommentToThread_Response\x12\x12\n\ngidcomment\x18\x01 \x01(\x06\x12\x17\n\x0f\x63ommentthreadid\x18\x02 \x01(\x06\x12\r\n\x05\x63ount\x18\x03 \x01(\x05\x12\x0f\n\x07upvotes\x18\x04 \x01(\x05\"\xa9\x01\n*CCommunity_DeleteCommentFromThread_Request\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12\x1b\n\x13\x63omment_thread_type\x18\x02 \x01(\r\x12\x12\n\ngidfeature\x18\x03 \x01(\x06\x12\x13\n\x0bgidfeature2\x18\x04 \x01(\x06\x12\x12\n\ngidcomment\x18\x05 \x01(\x06\x12\x10\n\x08undelete\x18\x06 \x01(\x08\"-\n+CCommunity_DeleteCommentFromThread_Response\"\xc0\x01\n$CCommunity_RateCommentThread_Request\x12\x19\n\x11\x63ommentthreadtype\x18\x01 \x01(\t\x12\x0f\n\x07steamid\x18\x02 \x01(\x04\x12\x12\n\ngidfeature\x18\x03 \x01(\x04\x12\x13\n\x0bgidfeature2\x18\x04 \x01(\x04\x12\x12\n\ngidcomment\x18\x05 \x01(\x04\x12\x0f\n\x07rate_up\x18\x06 \x01(\x08\x12\x1e\n\x16suppress_notifications\x18\x07 \x01(\x08\"\x89\x01\n%CCommunity_RateCommentThread_Response\x12\x12\n\ngidcomment\x18\x01 \x01(\x04\x12\x17\n\x0f\x63ommentthreadid\x18\x02 \x01(\x04\x12\r\n\x05\x63ount\x18\x03 \x01(\r\x12\x0f\n\x07upvotes\x18\x04 \x01(\r\x12\x13\n\x0bhas_upvoted\x18\x05 \x01(\x08\"\xaa\x01\n*CCommunity_GetCommentThreadRatings_Request\x12\x19\n\x11\x63ommentthreadtype\x18\x01 \x01(\t\x12\x0f\n\x07steamid\x18\x02 \x01(\x04\x12\x12\n\ngidfeature\x18\x03 \x01(\x04\x12\x13\n\x0bgidfeature2\x18\x04 \x01(\x04\x12\x12\n\ngidcomment\x18\x05 \x01(\x04\x12\x13\n\x0bmax_results\x18\x06 \x01(\r\"\x9c\x01\n+CCommunity_GetCommentThreadRatings_Response\x12\x17\n\x0f\x63ommentthreadid\x18\x01 \x01(\x04\x12\x12\n\ngidcomment\x18\x02 \x01(\x04\x12\x0f\n\x07upvotes\x18\x03 \x01(\r\x12\x13\n\x0bhas_upvoted\x18\x04 \x01(\x08\x12\x1a\n\x12upvoter_accountids\x18\x05 \x03(\r\"R\n\'CCommunity_RateClanAnnouncement_Request\x12\x16\n\x0e\x61nnouncementid\x18\x01 \x01(\x04\x12\x0f\n\x07vote_up\x18\x02 \x01(\x08\"*\n(CCommunity_RateClanAnnouncement_Response\"K\n1CCommunity_GetClanAnnouncementVoteForUser_Request\x12\x16\n\x0e\x61nnouncementid\x18\x01 \x01(\x04\"Z\n2CCommunity_GetClanAnnouncementVoteForUser_Response\x12\x10\n\x08voted_up\x18\x01 \x01(\x08\x12\x12\n\nvoted_down\x18\x02 \x01(\x08\"/\n\x0c\x43\x41ppPriority\x12\x10\n\x08priority\x18\x01 \x01(\r\x12\r\n\x05\x61ppid\x18\x02 \x03(\r\"\xd8\x02\n*CCommunity_GetUserPartnerEventNews_Request\x12\r\n\x05\x63ount\x18\x01 \x01(\r\x12\x0e\n\x06offset\x18\x02 \x01(\r\x12\x1a\n\x12rtime32_start_time\x18\x03 \x01(\r\x12\x18\n\x10rtime32_end_time\x18\x04 \x01(\r\x12\x1b\n\x13language_preference\x18\x05 \x03(\r\x12M\n\x11\x66ilter_event_type\x18\x06 \x03(\x05\x42\x32\x82\xb5\x18.enum; suggested type: ECommunityWordFilterType\x12\x17\n\x0f\x66ilter_to_appid\x18\x07 \x01(\x08\x12\x1f\n\x08\x61pp_list\x18\x08 \x03(\x0b\x32\r.CAppPriority\x12\x16\n\x0b\x63ount_after\x18\t \x01(\r:\x01\x30\x12\x17\n\x0c\x63ount_before\x18\n \x01(\r:\x01\x30\"W\n+CCommunity_GetUserPartnerEventNews_Response\x12(\n\x07results\x18\x01 \x03(\x0b\x32\x17.CClanMatchEventByRange\"k\n\'CCommunity_GetBestEventsForUser_Request\x12\x1a\n\x12include_steam_blog\x18\x01 \x01(\x08\x12$\n\x1c\x66ilter_to_played_within_days\x18\x02 \x01(\r\"\xc3\x01\n\x1d\x43\x43ommunity_PartnerEventResult\x12\x0e\n\x06\x63lanid\x18\x01 \x01(\r\x12\x11\n\tevent_gid\x18\x02 \x01(\x06\x12\x18\n\x10\x61nnouncement_gid\x18\x03 \x01(\x06\x12\r\n\x05\x61ppid\x18\x04 \x01(\r\x12\x19\n\x11possible_takeover\x18\x05 \x01(\x08\x12 \n\x15rtime32_last_modified\x18\x06 \x01(\r:\x01\x30\x12\x19\n\x11user_app_priority\x18\x07 \x01(\x05\"[\n(CCommunity_GetBestEventsForUser_Response\x12/\n\x07results\x18\x01 \x03(\x0b\x32\x1e.CCommunity_PartnerEventResult\"8\n6CCommunity_ClearUserPartnerEventsAppPriorities_Request\"9\n7CCommunity_ClearUserPartnerEventsAppPriorities_Response\"O\n#CCommunity_PartnerEventsAppPriority\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x19\n\x11user_app_priority\x18\x02 \x01(\x05\"6\n4CCommunity_GetUserPartnerEventsAppPriorities_Request\"q\n5CCommunity_GetUserPartnerEventsAppPriorities_Response\x12\x38\n\npriorities\x18\x01 \x03(\x0b\x32$.CCommunity_PartnerEventsAppPriority\"G\n6CCommunity_ClearSinglePartnerEventsAppPriority_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\"9\n7CCommunity_ClearSinglePartnerEventsAppPriority_Response\"?\n.CCommunity_PartnerEventsShowMoreForApp_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\"1\n/CCommunity_PartnerEventsShowMoreForApp_Response\"?\n.CCommunity_PartnerEventsShowLessForApp_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\"1\n/CCommunity_PartnerEventsShowLessForApp_Response\"\x81\x01\n+CCommunity_MarkPartnerEventsForUser_Request\x12R\n\x08markings\x18\x01 \x03(\x0b\x32@.CCommunity_MarkPartnerEventsForUser_Request_PartnerEventMarking\"\xdd\x01\n?CCommunity_MarkPartnerEventsForUser_Request_PartnerEventMarking\x12\x0e\n\x06\x63lanid\x18\x01 \x01(\r\x12\x11\n\tevent_gid\x18\x02 \x01(\x06\x12P\n\x10\x64isplay_location\x18\x03 \x01(\x05\x42\x36\x82\xb5\x18\x32\x65num; suggested type: EPartnerEventDisplayLocation\x12\x12\n\nmark_shown\x18\x04 \x01(\x08\x12\x11\n\tmark_read\x18\x05 \x01(\x08\".\n,CCommunity_MarkPartnerEventsForUser_Response\"y\n*CProductImpressionsFromClient_Notification\x12K\n\x0bimpressions\x18\x01 \x03(\x0b\x32\x36.CProductImpressionsFromClient_Notification_Impression\"\xa9\x01\n5CProductImpressionsFromClient_Notification_Impression\x12H\n\x04type\x18\x01 \x01(\x05\x42:\x82\xb5\x18\x36\x65num; suggested type: EProductImpressionFromClientType\x12\r\n\x05\x61ppid\x18\x02 \x01(\r\x12\x17\n\x0fnum_impressions\x18\x03 \x01(\r\"P\n\x14\x43\x46riendsListCategory\x12\x0f\n\x07groupid\x18\x01 \x01(\r\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x19\n\x11\x61\x63\x63ountid_members\x18\x03 \x03(\r\"$\n\"CFriendsList_GetCategories_Request\"P\n#CFriendsList_GetCategories_Response\x12)\n\ncategories\x18\x01 \x03(\x0b\x32\x15.CFriendsListCategory\"U\n\x19\x43\x46riendsListFavoriteEntry\x12\x11\n\taccountid\x18\x01 \x01(\r\x12\x0e\n\x06\x63lanid\x18\x02 \x01(\r\x12\x15\n\rchat_group_id\x18\x03 \x01(\x04\"#\n!CFriendsList_GetFavorites_Request\"S\n\"CFriendsList_GetFavorites_Response\x12-\n\tfavorites\x18\x01 \x03(\x0b\x32\x1a.CFriendsListFavoriteEntry\"R\n!CFriendsList_SetFavorites_Request\x12-\n\tfavorites\x18\x01 \x03(\x0b\x32\x1a.CFriendsListFavoriteEntry\"$\n\"CFriendsList_SetFavorites_Response\"[\n*CFriendsList_FavoritesChanged_Notification\x12-\n\tfavorites\x18\x01 \x03(\x0b\x32\x1a.CFriendsListFavoriteEntry\"%\n#CFriendsList_GetFriendsList_Request\"S\n$CFriendsList_GetFriendsList_Response\x12+\n\x0b\x66riendslist\x18\x01 \x01(\x0b\x32\x16.CMsgClientFriendsList\"c\n(CMsgClientUCMEnumerateUserPublishedFiles\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x13\n\x0bstart_index\x18\x02 \x01(\r\x12\x12\n\nsort_order\x18\x03 \x01(\r\"\xb9\x01\n0CMsgClientUCMEnumerateUserPublishedFilesResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\x12Z\n\x0fpublished_files\x18\x02 \x03(\x0b\x32\x41.CMsgClientUCMEnumerateUserPublishedFilesResponse_PublishedFileId\x12\x15\n\rtotal_results\x18\x03 \x01(\r\"]\n@CMsgClientUCMEnumerateUserPublishedFilesResponse_PublishedFileId\x12\x19\n\x11published_file_id\x18\x01 \x01(\x06\"\x98\x01\n)CMsgClientUCMEnumerateUserSubscribedFiles\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x13\n\x0bstart_index\x18\x02 \x01(\r\x12\x14\n\tlist_type\x18\x03 \x01(\r:\x01\x31\x12\x1d\n\x12matching_file_type\x18\x04 \x01(\r:\x01\x30\x12\x11\n\x05\x63ount\x18\x05 \x01(\r:\x02\x35\x30\"\xbc\x01\n1CMsgClientUCMEnumerateUserSubscribedFilesResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\x12\\\n\x10subscribed_files\x18\x02 \x03(\x0b\x32\x42.CMsgClientUCMEnumerateUserSubscribedFilesResponse_PublishedFileId\x12\x15\n\rtotal_results\x18\x03 \x01(\r\"}\nACMsgClientUCMEnumerateUserSubscribedFilesResponse_PublishedFileId\x12\x19\n\x11published_file_id\x18\x01 \x01(\x06\x12\x1d\n\x12rtime32_subscribed\x18\x02 \x01(\x07:\x01\x30\"N\n!CMsgClientUCMPublishedFileDeleted\x12\x19\n\x11published_file_id\x18\x01 \x01(\x06\x12\x0e\n\x06\x61pp_id\x18\x02 \x01(\r\"\x97\x01\n!CMsgClientWorkshopItemInfoRequest\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x19\n\x11last_time_updated\x18\x02 \x01(\r\x12G\n\x0eworkshop_items\x18\x03 \x03(\x0b\x32/.CMsgClientWorkshopItemInfoRequest_WorkshopItem\"a\n.CMsgClientWorkshopItemInfoRequest_WorkshopItem\x12\x19\n\x11published_file_id\x18\x01 \x01(\x06\x12\x14\n\x0ctime_updated\x18\x02 \x01(\r\"\xb2\x01\n\"CMsgClientWorkshopItemInfoResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\x12\x13\n\x0bupdate_time\x18\x02 \x01(\r\x12L\n\x0eworkshop_items\x18\x03 \x03(\x0b\x32\x34.CMsgClientWorkshopItemInfoResponse_WorkshopItemInfo\x12\x15\n\rprivate_items\x18\x04 \x03(\x06\"\x8e\x01\n3CMsgClientWorkshopItemInfoResponse_WorkshopItemInfo\x12\x19\n\x11published_file_id\x18\x01 \x01(\x06\x12\x14\n\x0ctime_updated\x18\x02 \x01(\r\x12\x13\n\x0bmanifest_id\x18\x03 \x01(\x06\x12\x11\n\tis_legacy\x18\x04 \x01(\x08\"\x94\x01\n%CMsgClientUCMGetPublishedFilesForUser\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x18\n\x10\x63reator_steam_id\x18\x02 \x01(\x06\x12\x15\n\rrequired_tags\x18\x03 \x03(\t\x12\x15\n\rexcluded_tags\x18\x04 \x03(\t\x12\x13\n\x0bstart_index\x18\x05 \x01(\r\"\xb3\x01\n-CMsgClientUCMGetPublishedFilesForUserResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\x12W\n\x0fpublished_files\x18\x02 \x03(\x0b\x32>.CMsgClientUCMGetPublishedFilesForUserResponse_PublishedFileId\x12\x15\n\rtotal_results\x18\x03 \x01(\r\"Z\n=CMsgClientUCMGetPublishedFilesForUserResponse_PublishedFileId\x12\x19\n\x11published_file_id\x18\x01 \x01(\x06\"\xb7\x01\n\x1e\x43MsgCREEnumeratePublishedFiles\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x12\n\nquery_type\x18\x02 \x01(\x05\x12\x13\n\x0bstart_index\x18\x03 \x01(\r\x12\x0c\n\x04\x64\x61ys\x18\x04 \x01(\r\x12\r\n\x05\x63ount\x18\x05 \x01(\r\x12\x0c\n\x04tags\x18\x06 \x03(\t\x12\x11\n\tuser_tags\x18\x07 \x03(\t\x12\x1e\n\x12matching_file_type\x18\x08 \x01(\r:\x02\x31\x33\"\xa5\x01\n&CMsgCREEnumeratePublishedFilesResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\x12P\n\x0fpublished_files\x18\x02 \x03(\x0b\x32\x37.CMsgCREEnumeratePublishedFilesResponse_PublishedFileId\x12\x15\n\rtotal_results\x18\x03 \x01(\r\"\x9d\x01\n6CMsgCREEnumeratePublishedFilesResponse_PublishedFileId\x12\x19\n\x11published_file_id\x18\x01 \x01(\x06\x12\x11\n\tvotes_for\x18\x02 \x01(\x05\x12\x15\n\rvotes_against\x18\x03 \x01(\x05\x12\x0f\n\x07reports\x18\x04 \x01(\x05\x12\r\n\x05score\x18\x05 \x01(\x02\"r\n\x18\x43MsgGameServerPingSample\x12\r\n\x05my_ip\x18\x01 \x01(\x07\x12\x11\n\tgs_app_id\x18\x02 \x01(\x05\x12\x34\n\ngs_samples\x18\x03 \x03(\x0b\x32 .CMsgGameServerPingSample_Sample\"^\n\x1f\x43MsgGameServerPingSample_Sample\x12\n\n\x02ip\x18\x01 \x01(\x07\x12\x13\n\x0b\x61vg_ping_ms\x18\x02 \x01(\r\x12\x1a\n\x12stddev_ping_ms_x10\x18\x03 \x01(\r\"D\n!CClan_RespondToClanInvite_Request\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12\x0e\n\x06\x61\x63\x63\x65pt\x18\x02 \x01(\x08\"$\n\"CClan_RespondToClanInvite_Response\"A\n&CVoiceChat_RequestOneOnOneChat_Request\x12\x17\n\x0fsteamid_partner\x18\x01 \x01(\x06\"?\n\'CVoiceChat_RequestOneOnOneChat_Response\x12\x14\n\x0cvoice_chatid\x18\x01 \x01(\x06\"^\n-CVoiceChat_OneOnOneChatRequested_Notification\x12\x14\n\x0cvoice_chatid\x18\x01 \x01(\x06\x12\x17\n\x0fsteamid_partner\x18\x02 \x01(\x06\"p\n%CVoiceChat_AnswerOneOnOneChat_Request\x12\x14\n\x0cvoice_chatid\x18\x01 \x01(\x06\x12\x17\n\x0fsteamid_partner\x18\x02 \x01(\x06\x12\x18\n\x10\x61\x63\x63\x65pted_request\x18\x03 \x01(\x08\"(\n&CVoiceChat_AnswerOneOnOneChat_Response\"~\n3CVoiceChat_OneOnOneChatRequestResponse_Notification\x12\x14\n\x0cvoicechat_id\x18\x01 \x01(\x06\x12\x17\n\x0fsteamid_partner\x18\x02 \x01(\x06\x12\x18\n\x10\x61\x63\x63\x65pted_request\x18\x03 \x01(\x08\"=\n\"CVoiceChat_EndOneOnOneChat_Request\x12\x17\n\x0fsteamid_partner\x18\x01 \x01(\x06\"%\n#CVoiceChat_EndOneOnOneChat_Response\"U\n$CVoiceChat_LeaveOneOnOneChat_Request\x12\x17\n\x0fsteamid_partner\x18\x01 \x01(\x06\x12\x14\n\x0cvoice_chatid\x18\x02 \x01(\x06\"\'\n%CVoiceChat_LeaveOneOnOneChat_Response\"\xdd\x01\n+CVoiceChat_UserJoinedVoiceChat_Notification\x12\x14\n\x0cvoice_chatid\x18\x01 \x01(\x06\x12\x14\n\x0cuser_steamid\x18\x02 \x01(\x06\x12\x0e\n\x06\x63hatid\x18\x03 \x01(\x04\x12 \n\x18one_on_one_steamid_lower\x18\x04 \x01(\x06\x12!\n\x19one_on_one_steamid_higher\x18\x05 \x01(\x06\x12\x15\n\rchat_group_id\x18\x06 \x01(\x04\x12\x16\n\x0euser_sessionid\x18\x07 \x01(\r\"\xe0\x01\n\'CVoiceChat_UserVoiceStatus_Notification\x12\x14\n\x0cvoice_chatid\x18\x01 \x01(\x06\x12\x14\n\x0cuser_steamid\x18\x02 \x01(\x06\x12\x1e\n\x16user_muted_mic_locally\x18\x03 \x01(\x08\x12!\n\x19user_muted_output_locally\x18\x04 \x01(\x08\x12#\n\x1buser_has_no_mic_for_session\x18\x05 \x01(\x08\x12!\n\x19user_webaudio_sample_rate\x18\x06 \x01(\x05\"y\n(CVoiceChat_AllMembersStatus_Notification\x12\x14\n\x0cvoice_chatid\x18\x01 \x01(\x06\x12\x37\n\x05users\x18\x02 \x03(\x0b\x32(.CVoiceChat_UserVoiceStatus_Notification\"\x88\x02\n,CVoiceChat_UpdateVoiceChatWebRTCData_Request\x12\x14\n\x0cvoice_chatid\x18\x01 \x01(\x06\x12\x18\n\x10ip_webrtc_server\x18\x02 \x01(\r\x12\x1a\n\x12port_webrtc_server\x18\x03 \x01(\r\x12\x18\n\x10ip_webrtc_client\x18\x04 \x01(\r\x12\x1a\n\x12port_webrtc_client\x18\x05 \x01(\r\x12\x1e\n\x16ssrc_my_sending_stream\x18\x06 \x01(\r\x12\x12\n\nuser_agent\x18\x07 \x01(\t\x12\"\n\x1ahas_audio_worklets_support\x18\x08 \x01(\x08\"O\n-CVoiceChat_UpdateVoiceChatWebRTCData_Response\x12\x1e\n\x16send_client_voice_logs\x18\x01 \x01(\x08\"i\n,CVoiceChat_UploadClientVoiceChatLogs_Request\x12\x14\n\x0cvoice_chatid\x18\x01 \x01(\x06\x12#\n\x1b\x63lient_voice_logs_new_lines\x18\x02 \x01(\t\"/\n-CVoiceChat_UploadClientVoiceChatLogs_Response\"9\n!CVoiceChat_LeaveVoiceChat_Request\x12\x14\n\x0cvoice_chatid\x18\x01 \x01(\x06\"$\n\"CVoiceChat_LeaveVoiceChat_Response\"\xdb\x01\n)CVoiceChat_UserLeftVoiceChat_Notification\x12\x14\n\x0cvoice_chatid\x18\x01 \x01(\x06\x12\x14\n\x0cuser_steamid\x18\x02 \x01(\x06\x12\x0e\n\x06\x63hatid\x18\x03 \x01(\x04\x12 \n\x18one_on_one_steamid_lower\x18\x04 \x01(\x06\x12!\n\x19one_on_one_steamid_higher\x18\x05 \x01(\x06\x12\x15\n\rchat_group_id\x18\x06 \x01(\x04\x12\x16\n\x0euser_sessionid\x18\x07 \x01(\r\"\xaa\x01\n&CVoiceChat_VoiceChatEnded_Notification\x12\x14\n\x0cvoice_chatid\x18\x01 \x01(\x06\x12 \n\x18one_on_one_steamid_lower\x18\x02 \x01(\x06\x12!\n\x19one_on_one_steamid_higher\x18\x03 \x01(\x06\x12\x0e\n\x06\x63hatid\x18\x04 \x01(\x04\x12\x15\n\rchat_group_id\x18\x05 \x01(\x04\"=\n.CWebRTCClient_InitiateWebRTCConnection_Request\x12\x0b\n\x03sdp\x18\x01 \x01(\t\"M\n/CWebRTCClient_InitiateWebRTCConnection_Response\x12\x1a\n\x12remote_description\x18\x01 \x01(\t\"\x8b\x01\n+CWebRTC_WebRTCSessionConnected_Notification\x12\x0c\n\x04ssrc\x18\x01 \x01(\r\x12\x11\n\tclient_ip\x18\x02 \x01(\r\x12\x13\n\x0b\x63lient_port\x18\x03 \x01(\r\x12\x11\n\tserver_ip\x18\x04 \x01(\r\x12\x13\n\x0bserver_port\x18\x05 \x01(\r\"\xde\x01\n2CWebRTC_WebRTCUpdateRemoteDescription_Notification\x12\x1a\n\x12remote_description\x18\x01 \x01(\t\x12\"\n\x1aremote_description_version\x18\x02 \x01(\x04\x12h\n\x13ssrcs_to_accountids\x18\x03 \x03(\x0b\x32K.CWebRTC_WebRTCUpdateRemoteDescription_Notification_CSSRCToAccountIDMapping\"m\nJCWebRTC_WebRTCUpdateRemoteDescription_Notification_CSSRCToAccountIDMapping\x12\x0c\n\x04ssrc\x18\x01 \x01(\r\x12\x11\n\taccountid\x18\x02 \x01(\r\"\xdb\x01\n9CWebRTCClient_AcknowledgeUpdatedRemoteDescription_Request\x12\x18\n\x10ip_webrtc_server\x18\x01 \x01(\r\x12\x1a\n\x12port_webrtc_server\x18\x02 \x01(\r\x12 \n\x18ip_webrtc_session_client\x18\x03 \x01(\r\x12\"\n\x1aport_webrtc_session_client\x18\x04 \x01(\r\x12\"\n\x1aremote_description_version\x18\x05 \x01(\x04\"<\n:CWebRTCClient_AcknowledgeUpdatedRemoteDescription_Response\"\'\n%CMobilePerAccount_GetSettings_Request\"\xec\x01\n&CMobilePerAccount_GetSettings_Response\x12\x14\n\x0chas_settings\x18\x04 \x01(\x08\x12\x17\n\x0f\x61llow_sale_push\x18\x02 \x01(\x08\x12\x1b\n\x13\x61llow_wishlist_push\x18\x03 \x01(\x08\x12\x1f\n\x17\x63hat_notification_level\x18\x05 \x01(\r\x12\x1a\n\x12notify_direct_chat\x18\x06 \x01(\x08\x12\x19\n\x11notify_group_chat\x18\x07 \x01(\x08\x12\x1e\n\x10\x61llow_event_push\x18\x08 \x01(\x08:\x04true\"\xd5\x01\n%CMobilePerAccount_SetSettings_Request\x12\x17\n\x0f\x61llow_sale_push\x18\x02 \x01(\x08\x12\x1b\n\x13\x61llow_wishlist_push\x18\x03 \x01(\x08\x12\x1f\n\x17\x63hat_notification_level\x18\x04 \x01(\r\x12\x1a\n\x12notify_direct_chat\x18\x05 \x01(\x08\x12\x19\n\x11notify_group_chat\x18\x06 \x01(\x08\x12\x1e\n\x10\x61llow_event_push\x18\x07 \x01(\x08:\x04true\"(\n&CMobilePerAccount_SetSettings_Response\"\x84\x02\n*CMobileDevice_RegisterMobileDevice_Request\x12\x10\n\x08\x64\x65viceid\x18\x01 \x01(\t\x12\x10\n\x08language\x18\x02 \x01(\t\x12\x14\n\x0cpush_enabled\x18\x03 \x01(\x08\x12\x13\n\x0b\x61pp_version\x18\x04 \x01(\t\x12\x12\n\nos_version\x18\x05 \x01(\t\x12\x14\n\x0c\x64\x65vice_model\x18\x06 \x01(\t\x12#\n\x1btwofactor_device_identifier\x18\x07 \x01(\t\x12\x38\n\nmobile_app\x18\x08 \x01(\x05\x42$\x82\xb5\x18 enum; suggested type: EMobileApp\"F\n+CMobileDevice_RegisterMobileDevice_Response\x12\x17\n\x0funique_deviceid\x18\x02 \x01(\r\"E\n1CMobileDevice_DeregisterMobileDevice_Notification\x12\x10\n\x08\x64\x65viceid\x18\x01 \x01(\t\"\x0e\n\x0cUnknownProto2\x97\x01\n\x0fHelpRequestLogs\x12\x83\x01\n\x18UploadUserApplicationLog\x12\x32.CHelpRequestLogs_UploadUserApplicationLog_Request\x1a\x33.CHelpRequestLogs_UploadUserApplicationLog_Response2\x9e\x10\n\tCommunity\x12\x44\n\x07GetApps\x12\x1b.CCommunity_GetApps_Request\x1a\x1c.CCommunity_GetApps_Response\x12\x89\x01\n\x1eGetAppRichPresenceLocalization\x12\x32.CCommunity_GetAppRichPresenceLocalization_Request\x1a\x33.CCommunity_GetAppRichPresenceLocalization_Response\x12_\n\x10GetCommentThread\x12$.CCommunity_GetCommentThread_Request\x1a%.CCommunity_GetCommentThread_Response\x12h\n\x13PostCommentToThread\x12\'.CCommunity_PostCommentToThread_Request\x1a(.CCommunity_PostCommentToThread_Response\x12t\n\x17\x44\x65leteCommentFromThread\x12+.CCommunity_DeleteCommentFromThread_Request\x1a,.CCommunity_DeleteCommentFromThread_Response\x12\x62\n\x11RateCommentThread\x12%.CCommunity_RateCommentThread_Request\x1a&.CCommunity_RateCommentThread_Response\x12t\n\x17GetCommentThreadRatings\x12+.CCommunity_GetCommentThreadRatings_Request\x1a,.CCommunity_GetCommentThreadRatings_Response\x12k\n\x14RateClanAnnouncement\x12(.CCommunity_RateClanAnnouncement_Request\x1a).CCommunity_RateClanAnnouncement_Response\x12\x89\x01\n\x1eGetClanAnnouncementVoteForUser\x12\x32.CCommunity_GetClanAnnouncementVoteForUser_Request\x1a\x33.CCommunity_GetClanAnnouncementVoteForUser_Response\x12t\n\x17GetUserPartnerEventNews\x12+.CCommunity_GetUserPartnerEventNews_Request\x1a,.CCommunity_GetUserPartnerEventNews_Response\x12k\n\x14GetBestEventsForUser\x12(.CCommunity_GetBestEventsForUser_Request\x1a).CCommunity_GetBestEventsForUser_Response\x12w\n\x18MarkPartnerEventsForUser\x12,.CCommunity_MarkPartnerEventsForUser_Request\x1a-.CCommunity_MarkPartnerEventsForUser_Response\x12\x80\x01\n\x1bPartnerEventsShowMoreForApp\x12/.CCommunity_PartnerEventsShowMoreForApp_Request\x1a\x30.CCommunity_PartnerEventsShowMoreForApp_Response\x12\x80\x01\n\x1bPartnerEventsShowLessForApp\x12/.CCommunity_PartnerEventsShowLessForApp_Request\x1a\x30.CCommunity_PartnerEventsShowLessForApp_Response\x12\x98\x01\n#ClearUserPartnerEventsAppPriorities\x12\x37.CCommunity_ClearUserPartnerEventsAppPriorities_Request\x1a\x38.CCommunity_ClearUserPartnerEventsAppPriorities_Response\x12\x92\x01\n!GetUserPartnerEventsAppPriorities\x12\x35.CCommunity_GetUserPartnerEventsAppPriorities_Request\x1a\x36.CCommunity_GetUserPartnerEventsAppPriorities_Response\x12\x98\x01\n#ClearSinglePartnerEventsAppPriority\x12\x37.CCommunity_ClearSinglePartnerEventsAppPriority_Request\x1a\x38.CCommunity_ClearSinglePartnerEventsAppPriority_Response2U\n\x11\x45xperimentService\x12@\n\"ReportProductImpressionsFromClient\x12\r.UnknownProto\x1a\x0b.NoResponse2\xfa\x02\n\x0b\x46riendsList\x12Z\n\rGetCategories\x12#.CFriendsList_GetCategories_Request\x1a$.CFriendsList_GetCategories_Response\x12]\n\x0eGetFriendsList\x12$.CFriendsList_GetFriendsList_Request\x1a%.CFriendsList_GetFriendsList_Response\x12W\n\x0cGetFavorites\x12\".CFriendsList_GetFavorites_Request\x1a#.CFriendsList_GetFavorites_Response\x12W\n\x0cSetFavorites\x12\".CFriendsList_SetFavorites_Request\x1a#.CFriendsList_SetFavorites_Response2a\n\x11\x46riendsListClient\x12L\n\x10\x46\x61voritesChanged\x12+.CFriendsList_FavoritesChanged_Notification\x1a\x0b.NoResponse2f\n\x04\x43lan\x12^\n\x13RespondToClanInvite\x12\".CClan_RespondToClanInvite_Request\x1a#.CClan_RespondToClanInvite_Response2\xc1\x06\n\tVoiceChat\x12z\n\x19UpdateVoiceChatWebRTCData\x12-.CVoiceChat_UpdateVoiceChatWebRTCData_Request\x1a..CVoiceChat_UpdateVoiceChatWebRTCData_Response\x12N\n\x15NotifyUserVoiceStatus\x12(.CVoiceChat_UserVoiceStatus_Notification\x1a\x0b.NoResponse\x12z\n\x19UploadClientVoiceChatLogs\x12-.CVoiceChat_UploadClientVoiceChatLogs_Request\x1a..CVoiceChat_UploadClientVoiceChatLogs_Response\x12Y\n\x0eLeaveVoiceChat\x12\".CVoiceChat_LeaveVoiceChat_Request\x1a#.CVoiceChat_LeaveVoiceChat_Response\x12h\n\x13RequestOneOnOneChat\x12\'.CVoiceChat_RequestOneOnOneChat_Request\x1a(.CVoiceChat_RequestOneOnOneChat_Response\x12\x65\n\x12\x41nswerOneOnOneChat\x12&.CVoiceChat_AnswerOneOnOneChat_Request\x1a\'.CVoiceChat_AnswerOneOnOneChat_Response\x12\\\n\x0f\x45ndOneOnOneChat\x12#.CVoiceChat_EndOneOnOneChat_Request\x1a$.CVoiceChat_EndOneOnOneChat_Response\x12\x62\n\x11LeaveOneOnOneChat\x12%.CVoiceChat_LeaveOneOnOneChat_Request\x1a&.CVoiceChat_LeaveOneOnOneChat_Response2\xed\x04\n\x0fVoiceChatClient\x12V\n\x19NotifyUserJoinedVoiceChat\x12,.CVoiceChat_UserJoinedVoiceChat_Notification\x1a\x0b.NoResponse\x12R\n\x17NotifyUserLeftVoiceChat\x12*.CVoiceChat_UserLeftVoiceChat_Notification\x1a\x0b.NoResponse\x12L\n\x14NotifyVoiceChatEnded\x12\'.CVoiceChat_VoiceChatEnded_Notification\x1a\x0b.NoResponse\x12N\n\x15NotifyUserVoiceStatus\x12(.CVoiceChat_UserVoiceStatus_Notification\x1a\x0b.NoResponse\x12S\n\x19NotifyAllUsersVoiceStatus\x12).CVoiceChat_AllMembersStatus_Notification\x1a\x0b.NoResponse\x12Z\n\x1bNotifyOneOnOneChatRequested\x12..CVoiceChat_OneOnOneChatRequested_Notification\x1a\x0b.NoResponse\x12_\n\x1aNotifyOneOnOneChatResponse\x12\x34.CVoiceChat_OneOnOneChatRequestResponse_Notification\x1a\x0b.NoResponse2\xae\x02\n\x0cWebRTCClient\x12}\n\x18InitiateWebRTCConnection\x12/.CWebRTCClient_InitiateWebRTCConnection_Request\x1a\x30.CWebRTCClient_InitiateWebRTCConnection_Response\x12\x9e\x01\n#AcknowledgeUpdatedRemoteDescription\x12:.CWebRTCClient_AcknowledgeUpdatedRemoteDescription_Request\x1a;.CWebRTCClient_AcknowledgeUpdatedRemoteDescription_Response2\xdf\x01\n\x19WebRTCClientNotifications\x12Y\n\x1cNotifyWebRTCSessionConnected\x12,.CWebRTC_WebRTCSessionConnected_Notification\x1a\x0b.NoResponse\x12g\n#NotifyWebRTCUpdateRemoteDescription\x12\x33.CWebRTC_WebRTCUpdateRemoteDescription_Notification\x1a\x0b.NoResponse2\xd2\x01\n\x10MobilePerAccount\x12^\n\x0bGetSettings\x12&.CMobilePerAccount_GetSettings_Request\x1a\'.CMobilePerAccount_GetSettings_Response\x12^\n\x0bSetSettings\x12&.CMobilePerAccount_SetSettings_Request\x1a\'.CMobilePerAccount_SetSettings_Response2\xdc\x01\n\x0cMobileDevice\x12q\n\x14RegisterMobileDevice\x12+.CMobileDevice_RegisterMobileDevice_Request\x1a,.CMobileDevice_RegisterMobileDevice_Response\x12Y\n\x16\x44\x65registerMobileDevice\x12\x32.CMobileDevice_DeregisterMobileDevice_Notification\x1a\x0b.NoResponseB\x03\x90\x01\x01')
+  serialized_options=b'\220\001\001',
+  create_key=_descriptor._internal_create_key,
+  serialized_pb=b'\n!steammessages_webui_friends.proto\x1a steammessages_unified_base.proto\x1a\x18steammessages_base.proto\x1a(steammessages_clientserver_friends.proto\"\x82\x01\n1CHelpRequestLogs_UploadUserApplicationLog_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x10\n\x08log_type\x18\x02 \x01(\t\x12\x16\n\x0eversion_string\x18\x03 \x01(\t\x12\x14\n\x0clog_contents\x18\x04 \x01(\t\"@\n2CHelpRequestLogs_UploadUserApplicationLog_Response\x12\n\n\x02id\x18\x01 \x01(\x04\"n\n\x1e\x43MsgClientAppMinutesPlayedData\x12L\n\x0eminutes_played\x18\x01 \x03(\x0b\x32\x34.CMsgClientAppMinutesPlayedData_AppMinutesPlayedData\"n\n3CMsgClientAppMinutesPlayedData_AppMinutesPlayedData\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x0f\n\x07\x66orever\x18\x02 \x01(\x05\x12\x16\n\x0elast_two_weeks\x18\x03 \x01(\x05\">\n\x1a\x43\x43ommunity_GetApps_Request\x12\x0e\n\x06\x61ppids\x18\x01 \x03(\x05\x12\x10\n\x08language\x18\x02 \x01(\r\"B\n\x1b\x43\x43ommunity_GetApps_Response\x12#\n\x04\x61pps\x18\x01 \x03(\x0b\x32\x15.CCDDBAppDetailCommon\"T\n1CCommunity_GetAppRichPresenceLocalization_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\x05\x12\x10\n\x08language\x18\x02 \x01(\t\"\x97\x01\n2CCommunity_GetAppRichPresenceLocalization_Response\x12\r\n\x05\x61ppid\x18\x01 \x01(\x05\x12R\n\x0btoken_lists\x18\x02 \x03(\x0b\x32=.CCommunity_GetAppRichPresenceLocalization_Response_TokenList\"W\n8CCommunity_GetAppRichPresenceLocalization_Response_Token\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t\"\x9b\x01\n<CCommunity_GetAppRichPresenceLocalization_Response_TokenList\x12\x10\n\x08language\x18\x01 \x01(\t\x12I\n\x06tokens\x18\x02 \x03(\x0b\x32\x39.CCommunity_GetAppRichPresenceLocalization_Response_Token\"\x9d\x02\n#CCommunity_GetCommentThread_Request\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12\x1b\n\x13\x63omment_thread_type\x18\x02 \x01(\r\x12\x12\n\ngidfeature\x18\x03 \x01(\x06\x12\x13\n\x0bgidfeature2\x18\x04 \x01(\x06\x12\x17\n\x0f\x63ommentthreadid\x18\x05 \x01(\x06\x12\r\n\x05start\x18\x06 \x01(\x05\x12\r\n\x05\x63ount\x18\x07 \x01(\x05\x12\x10\n\x08upvoters\x18\x08 \x01(\x05\x12\x17\n\x0finclude_deleted\x18\t \x01(\x08\x12\x12\n\ngidcomment\x18\n \x01(\x06\x12\x13\n\x0btime_oldest\x18\x0b \x01(\r\x12\x14\n\x0coldest_first\x18\x0c \x01(\x08\"\xf6\x01\n\x12\x43\x43ommunity_Comment\x12\x12\n\ngidcomment\x18\x01 \x01(\x06\x12\x0f\n\x07steamid\x18\x02 \x01(\x06\x12\x11\n\ttimestamp\x18\x03 \x01(\r\x12\x0c\n\x04text\x18\x04 \x01(\t\x12\x0f\n\x07upvotes\x18\x05 \x01(\x05\x12\x0e\n\x06hidden\x18\x06 \x01(\x08\x12\x16\n\x0ehidden_by_user\x18\x07 \x01(\x08\x12\x0f\n\x07\x64\x65leted\x18\x08 \x01(\x08\x12!\n\tipaddress\x18\t \x01(\x0b\x32\x0e.CMsgIPAddress\x12\x14\n\x0ctotal_hidden\x18\n \x01(\x05\x12\x17\n\x0fupvoted_by_user\x18\x0b \x01(\x08\"\x88\x03\n$CCommunity_GetCommentThread_Response\x12%\n\x08\x63omments\x18\x01 \x03(\x0b\x32\x13.CCommunity_Comment\x12-\n\x10\x64\x65leted_comments\x18\x02 \x03(\x0b\x32\x13.CCommunity_Comment\x12\x0f\n\x07steamid\x18\x03 \x01(\x06\x12\x17\n\x0f\x63ommentthreadid\x18\x04 \x01(\x06\x12\r\n\x05start\x18\x05 \x01(\x05\x12\r\n\x05\x63ount\x18\x06 \x01(\x05\x12\x13\n\x0btotal_count\x18\x07 \x01(\x05\x12\x0f\n\x07upvotes\x18\x08 \x01(\x05\x12\x10\n\x08upvoters\x18\t \x03(\r\x12\x17\n\x0fuser_subscribed\x18\n \x01(\x08\x12\x14\n\x0cuser_upvoted\x18\x0b \x01(\x08\x12\x18\n\x10\x61nswer_commentid\x18\x0c \x01(\x06\x12\x14\n\x0c\x61nswer_actor\x18\r \x01(\r\x12\x19\n\x11\x61nswer_actor_rank\x18\x0e \x01(\x05\x12\x10\n\x08\x63\x61n_post\x18\x0f \x01(\x08\"\xc7\x01\n&CCommunity_PostCommentToThread_Request\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12\x1b\n\x13\x63omment_thread_type\x18\x02 \x01(\r\x12\x12\n\ngidfeature\x18\x03 \x01(\x06\x12\x13\n\x0bgidfeature2\x18\x04 \x01(\x06\x12\x0c\n\x04text\x18\x06 \x01(\t\x12\x18\n\x10gidparentcomment\x18\x07 \x01(\x06\x12\x1e\n\x16suppress_notifications\x18\x08 \x01(\x08\"v\n\'CCommunity_PostCommentToThread_Response\x12\x12\n\ngidcomment\x18\x01 \x01(\x06\x12\x17\n\x0f\x63ommentthreadid\x18\x02 \x01(\x06\x12\r\n\x05\x63ount\x18\x03 \x01(\x05\x12\x0f\n\x07upvotes\x18\x04 \x01(\x05\"\xa9\x01\n*CCommunity_DeleteCommentFromThread_Request\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12\x1b\n\x13\x63omment_thread_type\x18\x02 \x01(\r\x12\x12\n\ngidfeature\x18\x03 \x01(\x06\x12\x13\n\x0bgidfeature2\x18\x04 \x01(\x06\x12\x12\n\ngidcomment\x18\x05 \x01(\x06\x12\x10\n\x08undelete\x18\x06 \x01(\x08\"-\n+CCommunity_DeleteCommentFromThread_Response\"\xc0\x01\n$CCommunity_RateCommentThread_Request\x12\x19\n\x11\x63ommentthreadtype\x18\x01 \x01(\t\x12\x0f\n\x07steamid\x18\x02 \x01(\x04\x12\x12\n\ngidfeature\x18\x03 \x01(\x04\x12\x13\n\x0bgidfeature2\x18\x04 \x01(\x04\x12\x12\n\ngidcomment\x18\x05 \x01(\x04\x12\x0f\n\x07rate_up\x18\x06 \x01(\x08\x12\x1e\n\x16suppress_notifications\x18\x07 \x01(\x08\"\x89\x01\n%CCommunity_RateCommentThread_Response\x12\x12\n\ngidcomment\x18\x01 \x01(\x04\x12\x17\n\x0f\x63ommentthreadid\x18\x02 \x01(\x04\x12\r\n\x05\x63ount\x18\x03 \x01(\r\x12\x0f\n\x07upvotes\x18\x04 \x01(\r\x12\x13\n\x0bhas_upvoted\x18\x05 \x01(\x08\"\xaa\x01\n*CCommunity_GetCommentThreadRatings_Request\x12\x19\n\x11\x63ommentthreadtype\x18\x01 \x01(\t\x12\x0f\n\x07steamid\x18\x02 \x01(\x04\x12\x12\n\ngidfeature\x18\x03 \x01(\x04\x12\x13\n\x0bgidfeature2\x18\x04 \x01(\x04\x12\x12\n\ngidcomment\x18\x05 \x01(\x04\x12\x13\n\x0bmax_results\x18\x06 \x01(\r\"\x9c\x01\n+CCommunity_GetCommentThreadRatings_Response\x12\x17\n\x0f\x63ommentthreadid\x18\x01 \x01(\x04\x12\x12\n\ngidcomment\x18\x02 \x01(\x04\x12\x0f\n\x07upvotes\x18\x03 \x01(\r\x12\x13\n\x0bhas_upvoted\x18\x04 \x01(\x08\x12\x1a\n\x12upvoter_accountids\x18\x05 \x03(\r\"R\n\'CCommunity_RateClanAnnouncement_Request\x12\x16\n\x0e\x61nnouncementid\x18\x01 \x01(\x04\x12\x0f\n\x07vote_up\x18\x02 \x01(\x08\"*\n(CCommunity_RateClanAnnouncement_Response\"K\n1CCommunity_GetClanAnnouncementVoteForUser_Request\x12\x16\n\x0e\x61nnouncementid\x18\x01 \x01(\x04\"Z\n2CCommunity_GetClanAnnouncementVoteForUser_Response\x12\x10\n\x08voted_up\x18\x01 \x01(\x08\x12\x12\n\nvoted_down\x18\x02 \x01(\x08\"/\n\x0c\x43\x41ppPriority\x12\x10\n\x08priority\x18\x01 \x01(\r\x12\r\n\x05\x61ppid\x18\x02 \x03(\r\"\xd8\x02\n*CCommunity_GetUserPartnerEventNews_Request\x12\r\n\x05\x63ount\x18\x01 \x01(\r\x12\x0e\n\x06offset\x18\x02 \x01(\r\x12\x1a\n\x12rtime32_start_time\x18\x03 \x01(\r\x12\x18\n\x10rtime32_end_time\x18\x04 \x01(\r\x12\x1b\n\x13language_preference\x18\x05 \x03(\r\x12M\n\x11\x66ilter_event_type\x18\x06 \x03(\x05\x42\x32\x82\xb5\x18.enum; suggested type: ECommunityWordFilterType\x12\x17\n\x0f\x66ilter_to_appid\x18\x07 \x01(\x08\x12\x1f\n\x08\x61pp_list\x18\x08 \x03(\x0b\x32\r.CAppPriority\x12\x16\n\x0b\x63ount_after\x18\t \x01(\r:\x01\x30\x12\x17\n\x0c\x63ount_before\x18\n \x01(\r:\x01\x30\"W\n+CCommunity_GetUserPartnerEventNews_Response\x12(\n\x07results\x18\x01 \x03(\x0b\x32\x17.CClanMatchEventByRange\"k\n\'CCommunity_GetBestEventsForUser_Request\x12\x1a\n\x12include_steam_blog\x18\x01 \x01(\x08\x12$\n\x1c\x66ilter_to_played_within_days\x18\x02 \x01(\r\"\xc3\x01\n\x1d\x43\x43ommunity_PartnerEventResult\x12\x0e\n\x06\x63lanid\x18\x01 \x01(\r\x12\x11\n\tevent_gid\x18\x02 \x01(\x06\x12\x18\n\x10\x61nnouncement_gid\x18\x03 \x01(\x06\x12\r\n\x05\x61ppid\x18\x04 \x01(\r\x12\x19\n\x11possible_takeover\x18\x05 \x01(\x08\x12 \n\x15rtime32_last_modified\x18\x06 \x01(\r:\x01\x30\x12\x19\n\x11user_app_priority\x18\x07 \x01(\x05\"[\n(CCommunity_GetBestEventsForUser_Response\x12/\n\x07results\x18\x01 \x03(\x0b\x32\x1e.CCommunity_PartnerEventResult\"8\n6CCommunity_ClearUserPartnerEventsAppPriorities_Request\"9\n7CCommunity_ClearUserPartnerEventsAppPriorities_Response\"O\n#CCommunity_PartnerEventsAppPriority\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\x12\x19\n\x11user_app_priority\x18\x02 \x01(\x05\"6\n4CCommunity_GetUserPartnerEventsAppPriorities_Request\"q\n5CCommunity_GetUserPartnerEventsAppPriorities_Response\x12\x38\n\npriorities\x18\x01 \x03(\x0b\x32$.CCommunity_PartnerEventsAppPriority\"G\n6CCommunity_ClearSinglePartnerEventsAppPriority_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\"9\n7CCommunity_ClearSinglePartnerEventsAppPriority_Response\"?\n.CCommunity_PartnerEventsShowMoreForApp_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\"1\n/CCommunity_PartnerEventsShowMoreForApp_Response\"?\n.CCommunity_PartnerEventsShowLessForApp_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\"1\n/CCommunity_PartnerEventsShowLessForApp_Response\"\x81\x01\n+CCommunity_MarkPartnerEventsForUser_Request\x12R\n\x08markings\x18\x01 \x03(\x0b\x32@.CCommunity_MarkPartnerEventsForUser_Request_PartnerEventMarking\"\xdd\x01\n?CCommunity_MarkPartnerEventsForUser_Request_PartnerEventMarking\x12\x0e\n\x06\x63lanid\x18\x01 \x01(\r\x12\x11\n\tevent_gid\x18\x02 \x01(\x06\x12P\n\x10\x64isplay_location\x18\x03 \x01(\x05\x42\x36\x82\xb5\x18\x32\x65num; suggested type: EPartnerEventDisplayLocation\x12\x12\n\nmark_shown\x18\x04 \x01(\x08\x12\x11\n\tmark_read\x18\x05 \x01(\x08\".\n,CCommunity_MarkPartnerEventsForUser_Response\"y\n*CProductImpressionsFromClient_Notification\x12K\n\x0bimpressions\x18\x01 \x03(\x0b\x32\x36.CProductImpressionsFromClient_Notification_Impression\"\xa9\x01\n5CProductImpressionsFromClient_Notification_Impression\x12H\n\x04type\x18\x01 \x01(\x05\x42:\x82\xb5\x18\x36\x65num; suggested type: EProductImpressionFromClientType\x12\r\n\x05\x61ppid\x18\x02 \x01(\r\x12\x17\n\x0fnum_impressions\x18\x03 \x01(\r\"P\n\x14\x43\x46riendsListCategory\x12\x0f\n\x07groupid\x18\x01 \x01(\r\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x19\n\x11\x61\x63\x63ountid_members\x18\x03 \x03(\r\"$\n\"CFriendsList_GetCategories_Request\"P\n#CFriendsList_GetCategories_Response\x12)\n\ncategories\x18\x01 \x03(\x0b\x32\x15.CFriendsListCategory\"U\n\x19\x43\x46riendsListFavoriteEntry\x12\x11\n\taccountid\x18\x01 \x01(\r\x12\x0e\n\x06\x63lanid\x18\x02 \x01(\r\x12\x15\n\rchat_group_id\x18\x03 \x01(\x04\"#\n!CFriendsList_GetFavorites_Request\"S\n\"CFriendsList_GetFavorites_Response\x12-\n\tfavorites\x18\x01 \x03(\x0b\x32\x1a.CFriendsListFavoriteEntry\"R\n!CFriendsList_SetFavorites_Request\x12-\n\tfavorites\x18\x01 \x03(\x0b\x32\x1a.CFriendsListFavoriteEntry\"$\n\"CFriendsList_SetFavorites_Response\"[\n*CFriendsList_FavoritesChanged_Notification\x12-\n\tfavorites\x18\x01 \x03(\x0b\x32\x1a.CFriendsListFavoriteEntry\"%\n#CFriendsList_GetFriendsList_Request\"S\n$CFriendsList_GetFriendsList_Response\x12+\n\x0b\x66riendslist\x18\x01 \x01(\x0b\x32\x16.CMsgClientFriendsList\"c\n(CMsgClientUCMEnumerateUserPublishedFiles\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x13\n\x0bstart_index\x18\x02 \x01(\r\x12\x12\n\nsort_order\x18\x03 \x01(\r\"\xb9\x01\n0CMsgClientUCMEnumerateUserPublishedFilesResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\x12Z\n\x0fpublished_files\x18\x02 \x03(\x0b\x32\x41.CMsgClientUCMEnumerateUserPublishedFilesResponse_PublishedFileId\x12\x15\n\rtotal_results\x18\x03 \x01(\r\"]\n@CMsgClientUCMEnumerateUserPublishedFilesResponse_PublishedFileId\x12\x19\n\x11published_file_id\x18\x01 \x01(\x06\"\x98\x01\n)CMsgClientUCMEnumerateUserSubscribedFiles\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x13\n\x0bstart_index\x18\x02 \x01(\r\x12\x14\n\tlist_type\x18\x03 \x01(\r:\x01\x31\x12\x1d\n\x12matching_file_type\x18\x04 \x01(\r:\x01\x30\x12\x11\n\x05\x63ount\x18\x05 \x01(\r:\x02\x35\x30\"\xbc\x01\n1CMsgClientUCMEnumerateUserSubscribedFilesResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\x12\\\n\x10subscribed_files\x18\x02 \x03(\x0b\x32\x42.CMsgClientUCMEnumerateUserSubscribedFilesResponse_PublishedFileId\x12\x15\n\rtotal_results\x18\x03 \x01(\r\"}\nACMsgClientUCMEnumerateUserSubscribedFilesResponse_PublishedFileId\x12\x19\n\x11published_file_id\x18\x01 \x01(\x06\x12\x1d\n\x12rtime32_subscribed\x18\x02 \x01(\x07:\x01\x30\"N\n!CMsgClientUCMPublishedFileDeleted\x12\x19\n\x11published_file_id\x18\x01 \x01(\x06\x12\x0e\n\x06\x61pp_id\x18\x02 \x01(\r\"\x97\x01\n!CMsgClientWorkshopItemInfoRequest\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x19\n\x11last_time_updated\x18\x02 \x01(\r\x12G\n\x0eworkshop_items\x18\x03 \x03(\x0b\x32/.CMsgClientWorkshopItemInfoRequest_WorkshopItem\"a\n.CMsgClientWorkshopItemInfoRequest_WorkshopItem\x12\x19\n\x11published_file_id\x18\x01 \x01(\x06\x12\x14\n\x0ctime_updated\x18\x02 \x01(\r\"\xb2\x01\n\"CMsgClientWorkshopItemInfoResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\x12\x13\n\x0bupdate_time\x18\x02 \x01(\r\x12L\n\x0eworkshop_items\x18\x03 \x03(\x0b\x32\x34.CMsgClientWorkshopItemInfoResponse_WorkshopItemInfo\x12\x15\n\rprivate_items\x18\x04 \x03(\x06\"\x8e\x01\n3CMsgClientWorkshopItemInfoResponse_WorkshopItemInfo\x12\x19\n\x11published_file_id\x18\x01 \x01(\x06\x12\x14\n\x0ctime_updated\x18\x02 \x01(\r\x12\x13\n\x0bmanifest_id\x18\x03 \x01(\x06\x12\x11\n\tis_legacy\x18\x04 \x01(\x08\"\x94\x01\n%CMsgClientUCMGetPublishedFilesForUser\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x18\n\x10\x63reator_steam_id\x18\x02 \x01(\x06\x12\x15\n\rrequired_tags\x18\x03 \x03(\t\x12\x15\n\rexcluded_tags\x18\x04 \x03(\t\x12\x13\n\x0bstart_index\x18\x05 \x01(\r\"\xb3\x01\n-CMsgClientUCMGetPublishedFilesForUserResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\x12W\n\x0fpublished_files\x18\x02 \x03(\x0b\x32>.CMsgClientUCMGetPublishedFilesForUserResponse_PublishedFileId\x12\x15\n\rtotal_results\x18\x03 \x01(\r\"Z\n=CMsgClientUCMGetPublishedFilesForUserResponse_PublishedFileId\x12\x19\n\x11published_file_id\x18\x01 \x01(\x06\"\xb7\x01\n\x1e\x43MsgCREEnumeratePublishedFiles\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\r\x12\x12\n\nquery_type\x18\x02 \x01(\x05\x12\x13\n\x0bstart_index\x18\x03 \x01(\r\x12\x0c\n\x04\x64\x61ys\x18\x04 \x01(\r\x12\r\n\x05\x63ount\x18\x05 \x01(\r\x12\x0c\n\x04tags\x18\x06 \x03(\t\x12\x11\n\tuser_tags\x18\x07 \x03(\t\x12\x1e\n\x12matching_file_type\x18\x08 \x01(\r:\x02\x31\x33\"\xa5\x01\n&CMsgCREEnumeratePublishedFilesResponse\x12\x12\n\x07\x65result\x18\x01 \x01(\x05:\x01\x32\x12P\n\x0fpublished_files\x18\x02 \x03(\x0b\x32\x37.CMsgCREEnumeratePublishedFilesResponse_PublishedFileId\x12\x15\n\rtotal_results\x18\x03 \x01(\r\"\x9d\x01\n6CMsgCREEnumeratePublishedFilesResponse_PublishedFileId\x12\x19\n\x11published_file_id\x18\x01 \x01(\x06\x12\x11\n\tvotes_for\x18\x02 \x01(\x05\x12\x15\n\rvotes_against\x18\x03 \x01(\x05\x12\x0f\n\x07reports\x18\x04 \x01(\x05\x12\r\n\x05score\x18\x05 \x01(\x02\"r\n\x18\x43MsgGameServerPingSample\x12\r\n\x05my_ip\x18\x01 \x01(\x07\x12\x11\n\tgs_app_id\x18\x02 \x01(\x05\x12\x34\n\ngs_samples\x18\x03 \x03(\x0b\x32 .CMsgGameServerPingSample_Sample\"^\n\x1f\x43MsgGameServerPingSample_Sample\x12\n\n\x02ip\x18\x01 \x01(\x07\x12\x13\n\x0b\x61vg_ping_ms\x18\x02 \x01(\r\x12\x1a\n\x12stddev_ping_ms_x10\x18\x03 \x01(\r\"D\n!CClan_RespondToClanInvite_Request\x12\x0f\n\x07steamid\x18\x01 \x01(\x06\x12\x0e\n\x06\x61\x63\x63\x65pt\x18\x02 \x01(\x08\"$\n\"CClan_RespondToClanInvite_Response\"A\n&CVoiceChat_RequestOneOnOneChat_Request\x12\x17\n\x0fsteamid_partner\x18\x01 \x01(\x06\"?\n\'CVoiceChat_RequestOneOnOneChat_Response\x12\x14\n\x0cvoice_chatid\x18\x01 \x01(\x06\"^\n-CVoiceChat_OneOnOneChatRequested_Notification\x12\x14\n\x0cvoice_chatid\x18\x01 \x01(\x06\x12\x17\n\x0fsteamid_partner\x18\x02 \x01(\x06\"p\n%CVoiceChat_AnswerOneOnOneChat_Request\x12\x14\n\x0cvoice_chatid\x18\x01 \x01(\x06\x12\x17\n\x0fsteamid_partner\x18\x02 \x01(\x06\x12\x18\n\x10\x61\x63\x63\x65pted_request\x18\x03 \x01(\x08\"(\n&CVoiceChat_AnswerOneOnOneChat_Response\"~\n3CVoiceChat_OneOnOneChatRequestResponse_Notification\x12\x14\n\x0cvoicechat_id\x18\x01 \x01(\x06\x12\x17\n\x0fsteamid_partner\x18\x02 \x01(\x06\x12\x18\n\x10\x61\x63\x63\x65pted_request\x18\x03 \x01(\x08\"=\n\"CVoiceChat_EndOneOnOneChat_Request\x12\x17\n\x0fsteamid_partner\x18\x01 \x01(\x06\"%\n#CVoiceChat_EndOneOnOneChat_Response\"U\n$CVoiceChat_LeaveOneOnOneChat_Request\x12\x17\n\x0fsteamid_partner\x18\x01 \x01(\x06\x12\x14\n\x0cvoice_chatid\x18\x02 \x01(\x06\"\'\n%CVoiceChat_LeaveOneOnOneChat_Response\"\xdd\x01\n+CVoiceChat_UserJoinedVoiceChat_Notification\x12\x14\n\x0cvoice_chatid\x18\x01 \x01(\x06\x12\x14\n\x0cuser_steamid\x18\x02 \x01(\x06\x12\x0e\n\x06\x63hatid\x18\x03 \x01(\x04\x12 \n\x18one_on_one_steamid_lower\x18\x04 \x01(\x06\x12!\n\x19one_on_one_steamid_higher\x18\x05 \x01(\x06\x12\x15\n\rchat_group_id\x18\x06 \x01(\x04\x12\x16\n\x0euser_sessionid\x18\x07 \x01(\r\"\xe0\x01\n\'CVoiceChat_UserVoiceStatus_Notification\x12\x14\n\x0cvoice_chatid\x18\x01 \x01(\x06\x12\x14\n\x0cuser_steamid\x18\x02 \x01(\x06\x12\x1e\n\x16user_muted_mic_locally\x18\x03 \x01(\x08\x12!\n\x19user_muted_output_locally\x18\x04 \x01(\x08\x12#\n\x1buser_has_no_mic_for_session\x18\x05 \x01(\x08\x12!\n\x19user_webaudio_sample_rate\x18\x06 \x01(\x05\"y\n(CVoiceChat_AllMembersStatus_Notification\x12\x14\n\x0cvoice_chatid\x18\x01 \x01(\x06\x12\x37\n\x05users\x18\x02 \x03(\x0b\x32(.CVoiceChat_UserVoiceStatus_Notification\"\x88\x02\n,CVoiceChat_UpdateVoiceChatWebRTCData_Request\x12\x14\n\x0cvoice_chatid\x18\x01 \x01(\x06\x12\x18\n\x10ip_webrtc_server\x18\x02 \x01(\r\x12\x1a\n\x12port_webrtc_server\x18\x03 \x01(\r\x12\x18\n\x10ip_webrtc_client\x18\x04 \x01(\r\x12\x1a\n\x12port_webrtc_client\x18\x05 \x01(\r\x12\x1e\n\x16ssrc_my_sending_stream\x18\x06 \x01(\r\x12\x12\n\nuser_agent\x18\x07 \x01(\t\x12\"\n\x1ahas_audio_worklets_support\x18\x08 \x01(\x08\"O\n-CVoiceChat_UpdateVoiceChatWebRTCData_Response\x12\x1e\n\x16send_client_voice_logs\x18\x01 \x01(\x08\"i\n,CVoiceChat_UploadClientVoiceChatLogs_Request\x12\x14\n\x0cvoice_chatid\x18\x01 \x01(\x06\x12#\n\x1b\x63lient_voice_logs_new_lines\x18\x02 \x01(\t\"/\n-CVoiceChat_UploadClientVoiceChatLogs_Response\"9\n!CVoiceChat_LeaveVoiceChat_Request\x12\x14\n\x0cvoice_chatid\x18\x01 \x01(\x06\"$\n\"CVoiceChat_LeaveVoiceChat_Response\"\xdb\x01\n)CVoiceChat_UserLeftVoiceChat_Notification\x12\x14\n\x0cvoice_chatid\x18\x01 \x01(\x06\x12\x14\n\x0cuser_steamid\x18\x02 \x01(\x06\x12\x0e\n\x06\x63hatid\x18\x03 \x01(\x04\x12 \n\x18one_on_one_steamid_lower\x18\x04 \x01(\x06\x12!\n\x19one_on_one_steamid_higher\x18\x05 \x01(\x06\x12\x15\n\rchat_group_id\x18\x06 \x01(\x04\x12\x16\n\x0euser_sessionid\x18\x07 \x01(\r\"\xaa\x01\n&CVoiceChat_VoiceChatEnded_Notification\x12\x14\n\x0cvoice_chatid\x18\x01 \x01(\x06\x12 \n\x18one_on_one_steamid_lower\x18\x02 \x01(\x06\x12!\n\x19one_on_one_steamid_higher\x18\x03 \x01(\x06\x12\x0e\n\x06\x63hatid\x18\x04 \x01(\x04\x12\x15\n\rchat_group_id\x18\x05 \x01(\x04\"=\n.CWebRTCClient_InitiateWebRTCConnection_Request\x12\x0b\n\x03sdp\x18\x01 \x01(\t\"M\n/CWebRTCClient_InitiateWebRTCConnection_Response\x12\x1a\n\x12remote_description\x18\x01 \x01(\t\"\x8b\x01\n+CWebRTC_WebRTCSessionConnected_Notification\x12\x0c\n\x04ssrc\x18\x01 \x01(\r\x12\x11\n\tclient_ip\x18\x02 \x01(\r\x12\x13\n\x0b\x63lient_port\x18\x03 \x01(\r\x12\x11\n\tserver_ip\x18\x04 \x01(\r\x12\x13\n\x0bserver_port\x18\x05 \x01(\r\"\xde\x01\n2CWebRTC_WebRTCUpdateRemoteDescription_Notification\x12\x1a\n\x12remote_description\x18\x01 \x01(\t\x12\"\n\x1aremote_description_version\x18\x02 \x01(\x04\x12h\n\x13ssrcs_to_accountids\x18\x03 \x03(\x0b\x32K.CWebRTC_WebRTCUpdateRemoteDescription_Notification_CSSRCToAccountIDMapping\"m\nJCWebRTC_WebRTCUpdateRemoteDescription_Notification_CSSRCToAccountIDMapping\x12\x0c\n\x04ssrc\x18\x01 \x01(\r\x12\x11\n\taccountid\x18\x02 \x01(\r\"\xdb\x01\n9CWebRTCClient_AcknowledgeUpdatedRemoteDescription_Request\x12\x18\n\x10ip_webrtc_server\x18\x01 \x01(\r\x12\x1a\n\x12port_webrtc_server\x18\x02 \x01(\r\x12 \n\x18ip_webrtc_session_client\x18\x03 \x01(\r\x12\"\n\x1aport_webrtc_session_client\x18\x04 \x01(\r\x12\"\n\x1aremote_description_version\x18\x05 \x01(\x04\"<\n:CWebRTCClient_AcknowledgeUpdatedRemoteDescription_Response\"\'\n%CMobilePerAccount_GetSettings_Request\"\xec\x01\n&CMobilePerAccount_GetSettings_Response\x12\x14\n\x0chas_settings\x18\x04 \x01(\x08\x12\x17\n\x0f\x61llow_sale_push\x18\x02 \x01(\x08\x12\x1b\n\x13\x61llow_wishlist_push\x18\x03 \x01(\x08\x12\x1f\n\x17\x63hat_notification_level\x18\x05 \x01(\r\x12\x1a\n\x12notify_direct_chat\x18\x06 \x01(\x08\x12\x19\n\x11notify_group_chat\x18\x07 \x01(\x08\x12\x1e\n\x10\x61llow_event_push\x18\x08 \x01(\x08:\x04true\"\xd5\x01\n%CMobilePerAccount_SetSettings_Request\x12\x17\n\x0f\x61llow_sale_push\x18\x02 \x01(\x08\x12\x1b\n\x13\x61llow_wishlist_push\x18\x03 \x01(\x08\x12\x1f\n\x17\x63hat_notification_level\x18\x04 \x01(\r\x12\x1a\n\x12notify_direct_chat\x18\x05 \x01(\x08\x12\x19\n\x11notify_group_chat\x18\x06 \x01(\x08\x12\x1e\n\x10\x61llow_event_push\x18\x07 \x01(\x08:\x04true\"(\n&CMobilePerAccount_SetSettings_Response\"\x84\x02\n*CMobileDevice_RegisterMobileDevice_Request\x12\x10\n\x08\x64\x65viceid\x18\x01 \x01(\t\x12\x10\n\x08language\x18\x02 \x01(\t\x12\x14\n\x0cpush_enabled\x18\x03 \x01(\x08\x12\x13\n\x0b\x61pp_version\x18\x04 \x01(\t\x12\x12\n\nos_version\x18\x05 \x01(\t\x12\x14\n\x0c\x64\x65vice_model\x18\x06 \x01(\t\x12#\n\x1btwofactor_device_identifier\x18\x07 \x01(\t\x12\x38\n\nmobile_app\x18\x08 \x01(\x05\x42$\x82\xb5\x18 enum; suggested type: EMobileApp\"F\n+CMobileDevice_RegisterMobileDevice_Response\x12\x17\n\x0funique_deviceid\x18\x02 \x01(\r\"E\n1CMobileDevice_DeregisterMobileDevice_Notification\x12\x10\n\x08\x64\x65viceid\x18\x01 \x01(\t\"\x0e\n\x0cUnknownProto2\x97\x01\n\x0fHelpRequestLogs\x12\x83\x01\n\x18UploadUserApplicationLog\x12\x32.CHelpRequestLogs_UploadUserApplicationLog_Request\x1a\x33.CHelpRequestLogs_UploadUserApplicationLog_Response2\x9e\x10\n\tCommunity\x12\x44\n\x07GetApps\x12\x1b.CCommunity_GetApps_Request\x1a\x1c.CCommunity_GetApps_Response\x12\x89\x01\n\x1eGetAppRichPresenceLocalization\x12\x32.CCommunity_GetAppRichPresenceLocalization_Request\x1a\x33.CCommunity_GetAppRichPresenceLocalization_Response\x12_\n\x10GetCommentThread\x12$.CCommunity_GetCommentThread_Request\x1a%.CCommunity_GetCommentThread_Response\x12h\n\x13PostCommentToThread\x12\'.CCommunity_PostCommentToThread_Request\x1a(.CCommunity_PostCommentToThread_Response\x12t\n\x17\x44\x65leteCommentFromThread\x12+.CCommunity_DeleteCommentFromThread_Request\x1a,.CCommunity_DeleteCommentFromThread_Response\x12\x62\n\x11RateCommentThread\x12%.CCommunity_RateCommentThread_Request\x1a&.CCommunity_RateCommentThread_Response\x12t\n\x17GetCommentThreadRatings\x12+.CCommunity_GetCommentThreadRatings_Request\x1a,.CCommunity_GetCommentThreadRatings_Response\x12k\n\x14RateClanAnnouncement\x12(.CCommunity_RateClanAnnouncement_Request\x1a).CCommunity_RateClanAnnouncement_Response\x12\x89\x01\n\x1eGetClanAnnouncementVoteForUser\x12\x32.CCommunity_GetClanAnnouncementVoteForUser_Request\x1a\x33.CCommunity_GetClanAnnouncementVoteForUser_Response\x12t\n\x17GetUserPartnerEventNews\x12+.CCommunity_GetUserPartnerEventNews_Request\x1a,.CCommunity_GetUserPartnerEventNews_Response\x12k\n\x14GetBestEventsForUser\x12(.CCommunity_GetBestEventsForUser_Request\x1a).CCommunity_GetBestEventsForUser_Response\x12w\n\x18MarkPartnerEventsForUser\x12,.CCommunity_MarkPartnerEventsForUser_Request\x1a-.CCommunity_MarkPartnerEventsForUser_Response\x12\x80\x01\n\x1bPartnerEventsShowMoreForApp\x12/.CCommunity_PartnerEventsShowMoreForApp_Request\x1a\x30.CCommunity_PartnerEventsShowMoreForApp_Response\x12\x80\x01\n\x1bPartnerEventsShowLessForApp\x12/.CCommunity_PartnerEventsShowLessForApp_Request\x1a\x30.CCommunity_PartnerEventsShowLessForApp_Response\x12\x98\x01\n#ClearUserPartnerEventsAppPriorities\x12\x37.CCommunity_ClearUserPartnerEventsAppPriorities_Request\x1a\x38.CCommunity_ClearUserPartnerEventsAppPriorities_Response\x12\x92\x01\n!GetUserPartnerEventsAppPriorities\x12\x35.CCommunity_GetUserPartnerEventsAppPriorities_Request\x1a\x36.CCommunity_GetUserPartnerEventsAppPriorities_Response\x12\x98\x01\n#ClearSinglePartnerEventsAppPriority\x12\x37.CCommunity_ClearSinglePartnerEventsAppPriority_Request\x1a\x38.CCommunity_ClearSinglePartnerEventsAppPriority_Response2U\n\x11\x45xperimentService\x12@\n\"ReportProductImpressionsFromClient\x12\r.UnknownProto\x1a\x0b.NoResponse2\xfa\x02\n\x0b\x46riendsList\x12Z\n\rGetCategories\x12#.CFriendsList_GetCategories_Request\x1a$.CFriendsList_GetCategories_Response\x12]\n\x0eGetFriendsList\x12$.CFriendsList_GetFriendsList_Request\x1a%.CFriendsList_GetFriendsList_Response\x12W\n\x0cGetFavorites\x12\".CFriendsList_GetFavorites_Request\x1a#.CFriendsList_GetFavorites_Response\x12W\n\x0cSetFavorites\x12\".CFriendsList_SetFavorites_Request\x1a#.CFriendsList_SetFavorites_Response2a\n\x11\x46riendsListClient\x12L\n\x10\x46\x61voritesChanged\x12+.CFriendsList_FavoritesChanged_Notification\x1a\x0b.NoResponse2f\n\x04\x43lan\x12^\n\x13RespondToClanInvite\x12\".CClan_RespondToClanInvite_Request\x1a#.CClan_RespondToClanInvite_Response2\xc1\x06\n\tVoiceChat\x12z\n\x19UpdateVoiceChatWebRTCData\x12-.CVoiceChat_UpdateVoiceChatWebRTCData_Request\x1a..CVoiceChat_UpdateVoiceChatWebRTCData_Response\x12N\n\x15NotifyUserVoiceStatus\x12(.CVoiceChat_UserVoiceStatus_Notification\x1a\x0b.NoResponse\x12z\n\x19UploadClientVoiceChatLogs\x12-.CVoiceChat_UploadClientVoiceChatLogs_Request\x1a..CVoiceChat_UploadClientVoiceChatLogs_Response\x12Y\n\x0eLeaveVoiceChat\x12\".CVoiceChat_LeaveVoiceChat_Request\x1a#.CVoiceChat_LeaveVoiceChat_Response\x12h\n\x13RequestOneOnOneChat\x12\'.CVoiceChat_RequestOneOnOneChat_Request\x1a(.CVoiceChat_RequestOneOnOneChat_Response\x12\x65\n\x12\x41nswerOneOnOneChat\x12&.CVoiceChat_AnswerOneOnOneChat_Request\x1a\'.CVoiceChat_AnswerOneOnOneChat_Response\x12\\\n\x0f\x45ndOneOnOneChat\x12#.CVoiceChat_EndOneOnOneChat_Request\x1a$.CVoiceChat_EndOneOnOneChat_Response\x12\x62\n\x11LeaveOneOnOneChat\x12%.CVoiceChat_LeaveOneOnOneChat_Request\x1a&.CVoiceChat_LeaveOneOnOneChat_Response2\xed\x04\n\x0fVoiceChatClient\x12V\n\x19NotifyUserJoinedVoiceChat\x12,.CVoiceChat_UserJoinedVoiceChat_Notification\x1a\x0b.NoResponse\x12R\n\x17NotifyUserLeftVoiceChat\x12*.CVoiceChat_UserLeftVoiceChat_Notification\x1a\x0b.NoResponse\x12L\n\x14NotifyVoiceChatEnded\x12\'.CVoiceChat_VoiceChatEnded_Notification\x1a\x0b.NoResponse\x12N\n\x15NotifyUserVoiceStatus\x12(.CVoiceChat_UserVoiceStatus_Notification\x1a\x0b.NoResponse\x12S\n\x19NotifyAllUsersVoiceStatus\x12).CVoiceChat_AllMembersStatus_Notification\x1a\x0b.NoResponse\x12Z\n\x1bNotifyOneOnOneChatRequested\x12..CVoiceChat_OneOnOneChatRequested_Notification\x1a\x0b.NoResponse\x12_\n\x1aNotifyOneOnOneChatResponse\x12\x34.CVoiceChat_OneOnOneChatRequestResponse_Notification\x1a\x0b.NoResponse2\xae\x02\n\x0cWebRTCClient\x12}\n\x18InitiateWebRTCConnection\x12/.CWebRTCClient_InitiateWebRTCConnection_Request\x1a\x30.CWebRTCClient_InitiateWebRTCConnection_Response\x12\x9e\x01\n#AcknowledgeUpdatedRemoteDescription\x12:.CWebRTCClient_AcknowledgeUpdatedRemoteDescription_Request\x1a;.CWebRTCClient_AcknowledgeUpdatedRemoteDescription_Response2\xdf\x01\n\x19WebRTCClientNotifications\x12Y\n\x1cNotifyWebRTCSessionConnected\x12,.CWebRTC_WebRTCSessionConnected_Notification\x1a\x0b.NoResponse\x12g\n#NotifyWebRTCUpdateRemoteDescription\x12\x33.CWebRTC_WebRTCUpdateRemoteDescription_Notification\x1a\x0b.NoResponse2\xd2\x01\n\x10MobilePerAccount\x12^\n\x0bGetSettings\x12&.CMobilePerAccount_GetSettings_Request\x1a\'.CMobilePerAccount_GetSettings_Response\x12^\n\x0bSetSettings\x12&.CMobilePerAccount_SetSettings_Request\x1a\'.CMobilePerAccount_SetSettings_Response2\xdc\x01\n\x0cMobileDevice\x12q\n\x14RegisterMobileDevice\x12+.CMobileDevice_RegisterMobileDevice_Request\x1a,.CMobileDevice_RegisterMobileDevice_Response\x12Y\n\x16\x44\x65registerMobileDevice\x12\x32.CMobileDevice_DeregisterMobileDevice_Notification\x1a\x0b.NoResponseB\x03\x90\x01\x01'
   ,
   dependencies=[steammessages__unified__base__pb2.DESCRIPTOR,steammessages__base__pb2.DESCRIPTOR,steammessages__clientserver__friends__pb2.DESCRIPTOR,])
 
@@ -38,6 +37,7 @@ _CHELPREQUESTLOGS_UPLOADUSERAPPLICATIONLOG_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CHelpRequestLogs_UploadUserApplicationLog_Request.appid', index=0,
@@ -45,28 +45,28 @@ _CHELPREQUESTLOGS_UPLOADUSERAPPLICATIONLOG_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='log_type', full_name='CHelpRequestLogs_UploadUserApplicationLog_Request.log_type', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='version_string', full_name='CHelpRequestLogs_UploadUserApplicationLog_Request.version_string', index=2,
       number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='log_contents', full_name='CHelpRequestLogs_UploadUserApplicationLog_Request.log_contents', index=3,
       number=4, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -90,6 +90,7 @@ _CHELPREQUESTLOGS_UPLOADUSERAPPLICATIONLOG_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='id', full_name='CHelpRequestLogs_UploadUserApplicationLog_Response.id', index=0,
@@ -97,7 +98,7 @@ _CHELPREQUESTLOGS_UPLOADUSERAPPLICATIONLOG_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -121,6 +122,7 @@ _CMSGCLIENTAPPMINUTESPLAYEDDATA = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='minutes_played', full_name='CMsgClientAppMinutesPlayedData.minutes_played', index=0,
@@ -128,7 +130,7 @@ _CMSGCLIENTAPPMINUTESPLAYEDDATA = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -152,6 +154,7 @@ _CMSGCLIENTAPPMINUTESPLAYEDDATA_APPMINUTESPLAYEDDATA = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CMsgClientAppMinutesPlayedData_AppMinutesPlayedData.app_id', index=0,
@@ -159,21 +162,21 @@ _CMSGCLIENTAPPMINUTESPLAYEDDATA_APPMINUTESPLAYEDDATA = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='forever', full_name='CMsgClientAppMinutesPlayedData_AppMinutesPlayedData.forever', index=1,
       number=2, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='last_two_weeks', full_name='CMsgClientAppMinutesPlayedData_AppMinutesPlayedData.last_two_weeks', index=2,
       number=3, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -197,6 +200,7 @@ _CCOMMUNITY_GETAPPS_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appids', full_name='CCommunity_GetApps_Request.appids', index=0,
@@ -204,14 +208,14 @@ _CCOMMUNITY_GETAPPS_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='language', full_name='CCommunity_GetApps_Request.language', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -235,6 +239,7 @@ _CCOMMUNITY_GETAPPS_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='apps', full_name='CCommunity_GetApps_Response.apps', index=0,
@@ -242,7 +247,7 @@ _CCOMMUNITY_GETAPPS_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -266,6 +271,7 @@ _CCOMMUNITY_GETAPPRICHPRESENCELOCALIZATION_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CCommunity_GetAppRichPresenceLocalization_Request.appid', index=0,
@@ -273,14 +279,14 @@ _CCOMMUNITY_GETAPPRICHPRESENCELOCALIZATION_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='language', full_name='CCommunity_GetAppRichPresenceLocalization_Request.language', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -304,6 +310,7 @@ _CCOMMUNITY_GETAPPRICHPRESENCELOCALIZATION_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CCommunity_GetAppRichPresenceLocalization_Response.appid', index=0,
@@ -311,14 +318,14 @@ _CCOMMUNITY_GETAPPRICHPRESENCELOCALIZATION_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='token_lists', full_name='CCommunity_GetAppRichPresenceLocalization_Response.token_lists', index=1,
       number=2, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -342,21 +349,22 @@ _CCOMMUNITY_GETAPPRICHPRESENCELOCALIZATION_RESPONSE_TOKEN = _descriptor.Descript
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='name', full_name='CCommunity_GetAppRichPresenceLocalization_Response_Token.name', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='value', full_name='CCommunity_GetAppRichPresenceLocalization_Response_Token.value', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -380,21 +388,22 @@ _CCOMMUNITY_GETAPPRICHPRESENCELOCALIZATION_RESPONSE_TOKENLIST = _descriptor.Desc
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='language', full_name='CCommunity_GetAppRichPresenceLocalization_Response_TokenList.language', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='tokens', full_name='CCommunity_GetAppRichPresenceLocalization_Response_TokenList.tokens', index=1,
       number=2, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -418,6 +427,7 @@ _CCOMMUNITY_GETCOMMENTTHREAD_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CCommunity_GetCommentThread_Request.steamid', index=0,
@@ -425,84 +435,84 @@ _CCOMMUNITY_GETCOMMENTTHREAD_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='comment_thread_type', full_name='CCommunity_GetCommentThread_Request.comment_thread_type', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='gidfeature', full_name='CCommunity_GetCommentThread_Request.gidfeature', index=2,
       number=3, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='gidfeature2', full_name='CCommunity_GetCommentThread_Request.gidfeature2', index=3,
       number=4, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='commentthreadid', full_name='CCommunity_GetCommentThread_Request.commentthreadid', index=4,
       number=5, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='start', full_name='CCommunity_GetCommentThread_Request.start', index=5,
       number=6, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='count', full_name='CCommunity_GetCommentThread_Request.count', index=6,
       number=7, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='upvoters', full_name='CCommunity_GetCommentThread_Request.upvoters', index=7,
       number=8, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='include_deleted', full_name='CCommunity_GetCommentThread_Request.include_deleted', index=8,
       number=9, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='gidcomment', full_name='CCommunity_GetCommentThread_Request.gidcomment', index=9,
       number=10, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='time_oldest', full_name='CCommunity_GetCommentThread_Request.time_oldest', index=10,
       number=11, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='oldest_first', full_name='CCommunity_GetCommentThread_Request.oldest_first', index=11,
       number=12, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -526,6 +536,7 @@ _CCOMMUNITY_COMMENT = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='gidcomment', full_name='CCommunity_Comment.gidcomment', index=0,
@@ -533,77 +544,77 @@ _CCOMMUNITY_COMMENT = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CCommunity_Comment.steamid', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='timestamp', full_name='CCommunity_Comment.timestamp', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='text', full_name='CCommunity_Comment.text', index=3,
       number=4, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='upvotes', full_name='CCommunity_Comment.upvotes', index=4,
       number=5, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='hidden', full_name='CCommunity_Comment.hidden', index=5,
       number=6, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='hidden_by_user', full_name='CCommunity_Comment.hidden_by_user', index=6,
       number=7, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='deleted', full_name='CCommunity_Comment.deleted', index=7,
       number=8, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='ipaddress', full_name='CCommunity_Comment.ipaddress', index=8,
       number=9, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='total_hidden', full_name='CCommunity_Comment.total_hidden', index=9,
       number=10, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='upvoted_by_user', full_name='CCommunity_Comment.upvoted_by_user', index=10,
       number=11, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -627,6 +638,7 @@ _CCOMMUNITY_GETCOMMENTTHREAD_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='comments', full_name='CCommunity_GetCommentThread_Response.comments', index=0,
@@ -634,105 +646,105 @@ _CCOMMUNITY_GETCOMMENTTHREAD_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='deleted_comments', full_name='CCommunity_GetCommentThread_Response.deleted_comments', index=1,
       number=2, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CCommunity_GetCommentThread_Response.steamid', index=2,
       number=3, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='commentthreadid', full_name='CCommunity_GetCommentThread_Response.commentthreadid', index=3,
       number=4, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='start', full_name='CCommunity_GetCommentThread_Response.start', index=4,
       number=5, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='count', full_name='CCommunity_GetCommentThread_Response.count', index=5,
       number=6, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='total_count', full_name='CCommunity_GetCommentThread_Response.total_count', index=6,
       number=7, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='upvotes', full_name='CCommunity_GetCommentThread_Response.upvotes', index=7,
       number=8, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='upvoters', full_name='CCommunity_GetCommentThread_Response.upvoters', index=8,
       number=9, type=13, cpp_type=3, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='user_subscribed', full_name='CCommunity_GetCommentThread_Response.user_subscribed', index=9,
       number=10, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='user_upvoted', full_name='CCommunity_GetCommentThread_Response.user_upvoted', index=10,
       number=11, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='answer_commentid', full_name='CCommunity_GetCommentThread_Response.answer_commentid', index=11,
       number=12, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='answer_actor', full_name='CCommunity_GetCommentThread_Response.answer_actor', index=12,
       number=13, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='answer_actor_rank', full_name='CCommunity_GetCommentThread_Response.answer_actor_rank', index=13,
       number=14, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='can_post', full_name='CCommunity_GetCommentThread_Response.can_post', index=14,
       number=15, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -756,6 +768,7 @@ _CCOMMUNITY_POSTCOMMENTTOTHREAD_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CCommunity_PostCommentToThread_Request.steamid', index=0,
@@ -763,49 +776,49 @@ _CCOMMUNITY_POSTCOMMENTTOTHREAD_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='comment_thread_type', full_name='CCommunity_PostCommentToThread_Request.comment_thread_type', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='gidfeature', full_name='CCommunity_PostCommentToThread_Request.gidfeature', index=2,
       number=3, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='gidfeature2', full_name='CCommunity_PostCommentToThread_Request.gidfeature2', index=3,
       number=4, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='text', full_name='CCommunity_PostCommentToThread_Request.text', index=4,
       number=6, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='gidparentcomment', full_name='CCommunity_PostCommentToThread_Request.gidparentcomment', index=5,
       number=7, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='suppress_notifications', full_name='CCommunity_PostCommentToThread_Request.suppress_notifications', index=6,
       number=8, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -829,6 +842,7 @@ _CCOMMUNITY_POSTCOMMENTTOTHREAD_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='gidcomment', full_name='CCommunity_PostCommentToThread_Response.gidcomment', index=0,
@@ -836,28 +850,28 @@ _CCOMMUNITY_POSTCOMMENTTOTHREAD_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='commentthreadid', full_name='CCommunity_PostCommentToThread_Response.commentthreadid', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='count', full_name='CCommunity_PostCommentToThread_Response.count', index=2,
       number=3, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='upvotes', full_name='CCommunity_PostCommentToThread_Response.upvotes', index=3,
       number=4, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -881,6 +895,7 @@ _CCOMMUNITY_DELETECOMMENTFROMTHREAD_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CCommunity_DeleteCommentFromThread_Request.steamid', index=0,
@@ -888,42 +903,42 @@ _CCOMMUNITY_DELETECOMMENTFROMTHREAD_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='comment_thread_type', full_name='CCommunity_DeleteCommentFromThread_Request.comment_thread_type', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='gidfeature', full_name='CCommunity_DeleteCommentFromThread_Request.gidfeature', index=2,
       number=3, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='gidfeature2', full_name='CCommunity_DeleteCommentFromThread_Request.gidfeature2', index=3,
       number=4, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='gidcomment', full_name='CCommunity_DeleteCommentFromThread_Request.gidcomment', index=4,
       number=5, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='undelete', full_name='CCommunity_DeleteCommentFromThread_Request.undelete', index=5,
       number=6, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -947,6 +962,7 @@ _CCOMMUNITY_DELETECOMMENTFROMTHREAD_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -971,56 +987,57 @@ _CCOMMUNITY_RATECOMMENTTHREAD_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='commentthreadtype', full_name='CCommunity_RateCommentThread_Request.commentthreadtype', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CCommunity_RateCommentThread_Request.steamid', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='gidfeature', full_name='CCommunity_RateCommentThread_Request.gidfeature', index=2,
       number=3, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='gidfeature2', full_name='CCommunity_RateCommentThread_Request.gidfeature2', index=3,
       number=4, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='gidcomment', full_name='CCommunity_RateCommentThread_Request.gidcomment', index=4,
       number=5, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='rate_up', full_name='CCommunity_RateCommentThread_Request.rate_up', index=5,
       number=6, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='suppress_notifications', full_name='CCommunity_RateCommentThread_Request.suppress_notifications', index=6,
       number=7, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1044,6 +1061,7 @@ _CCOMMUNITY_RATECOMMENTTHREAD_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='gidcomment', full_name='CCommunity_RateCommentThread_Response.gidcomment', index=0,
@@ -1051,35 +1069,35 @@ _CCOMMUNITY_RATECOMMENTTHREAD_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='commentthreadid', full_name='CCommunity_RateCommentThread_Response.commentthreadid', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='count', full_name='CCommunity_RateCommentThread_Response.count', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='upvotes', full_name='CCommunity_RateCommentThread_Response.upvotes', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='has_upvoted', full_name='CCommunity_RateCommentThread_Response.has_upvoted', index=4,
       number=5, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1103,49 +1121,50 @@ _CCOMMUNITY_GETCOMMENTTHREADRATINGS_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='commentthreadtype', full_name='CCommunity_GetCommentThreadRatings_Request.commentthreadtype', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CCommunity_GetCommentThreadRatings_Request.steamid', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='gidfeature', full_name='CCommunity_GetCommentThreadRatings_Request.gidfeature', index=2,
       number=3, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='gidfeature2', full_name='CCommunity_GetCommentThreadRatings_Request.gidfeature2', index=3,
       number=4, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='gidcomment', full_name='CCommunity_GetCommentThreadRatings_Request.gidcomment', index=4,
       number=5, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='max_results', full_name='CCommunity_GetCommentThreadRatings_Request.max_results', index=5,
       number=6, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1169,6 +1188,7 @@ _CCOMMUNITY_GETCOMMENTTHREADRATINGS_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='commentthreadid', full_name='CCommunity_GetCommentThreadRatings_Response.commentthreadid', index=0,
@@ -1176,35 +1196,35 @@ _CCOMMUNITY_GETCOMMENTTHREADRATINGS_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='gidcomment', full_name='CCommunity_GetCommentThreadRatings_Response.gidcomment', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='upvotes', full_name='CCommunity_GetCommentThreadRatings_Response.upvotes', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='has_upvoted', full_name='CCommunity_GetCommentThreadRatings_Response.has_upvoted', index=3,
       number=4, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='upvoter_accountids', full_name='CCommunity_GetCommentThreadRatings_Response.upvoter_accountids', index=4,
       number=5, type=13, cpp_type=3, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1228,6 +1248,7 @@ _CCOMMUNITY_RATECLANANNOUNCEMENT_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='announcementid', full_name='CCommunity_RateClanAnnouncement_Request.announcementid', index=0,
@@ -1235,14 +1256,14 @@ _CCOMMUNITY_RATECLANANNOUNCEMENT_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='vote_up', full_name='CCommunity_RateClanAnnouncement_Request.vote_up', index=1,
       number=2, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1266,6 +1287,7 @@ _CCOMMUNITY_RATECLANANNOUNCEMENT_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -1290,6 +1312,7 @@ _CCOMMUNITY_GETCLANANNOUNCEMENTVOTEFORUSER_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='announcementid', full_name='CCommunity_GetClanAnnouncementVoteForUser_Request.announcementid', index=0,
@@ -1297,7 +1320,7 @@ _CCOMMUNITY_GETCLANANNOUNCEMENTVOTEFORUSER_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1321,6 +1344,7 @@ _CCOMMUNITY_GETCLANANNOUNCEMENTVOTEFORUSER_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='voted_up', full_name='CCommunity_GetClanAnnouncementVoteForUser_Response.voted_up', index=0,
@@ -1328,14 +1352,14 @@ _CCOMMUNITY_GETCLANANNOUNCEMENTVOTEFORUSER_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='voted_down', full_name='CCommunity_GetClanAnnouncementVoteForUser_Response.voted_down', index=1,
       number=2, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1359,6 +1383,7 @@ _CAPPPRIORITY = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='priority', full_name='CAppPriority.priority', index=0,
@@ -1366,14 +1391,14 @@ _CAPPPRIORITY = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='appid', full_name='CAppPriority.appid', index=1,
       number=2, type=13, cpp_type=3, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1397,6 +1422,7 @@ _CCOMMUNITY_GETUSERPARTNEREVENTNEWS_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='count', full_name='CCommunity_GetUserPartnerEventNews_Request.count', index=0,
@@ -1404,70 +1430,70 @@ _CCOMMUNITY_GETUSERPARTNEREVENTNEWS_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='offset', full_name='CCommunity_GetUserPartnerEventNews_Request.offset', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='rtime32_start_time', full_name='CCommunity_GetUserPartnerEventNews_Request.rtime32_start_time', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='rtime32_end_time', full_name='CCommunity_GetUserPartnerEventNews_Request.rtime32_end_time', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='language_preference', full_name='CCommunity_GetUserPartnerEventNews_Request.language_preference', index=4,
       number=5, type=13, cpp_type=3, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='filter_event_type', full_name='CCommunity_GetUserPartnerEventNews_Request.filter_event_type', index=5,
       number=6, type=5, cpp_type=1, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030.enum; suggested type: ECommunityWordFilterType'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030.enum; suggested type: ECommunityWordFilterType', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='filter_to_appid', full_name='CCommunity_GetUserPartnerEventNews_Request.filter_to_appid', index=6,
       number=7, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='app_list', full_name='CCommunity_GetUserPartnerEventNews_Request.app_list', index=7,
       number=8, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='count_after', full_name='CCommunity_GetUserPartnerEventNews_Request.count_after', index=8,
       number=9, type=13, cpp_type=3, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='count_before', full_name='CCommunity_GetUserPartnerEventNews_Request.count_before', index=9,
       number=10, type=13, cpp_type=3, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1491,6 +1517,7 @@ _CCOMMUNITY_GETUSERPARTNEREVENTNEWS_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='results', full_name='CCommunity_GetUserPartnerEventNews_Response.results', index=0,
@@ -1498,7 +1525,7 @@ _CCOMMUNITY_GETUSERPARTNEREVENTNEWS_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1522,6 +1549,7 @@ _CCOMMUNITY_GETBESTEVENTSFORUSER_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='include_steam_blog', full_name='CCommunity_GetBestEventsForUser_Request.include_steam_blog', index=0,
@@ -1529,14 +1557,14 @@ _CCOMMUNITY_GETBESTEVENTSFORUSER_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='filter_to_played_within_days', full_name='CCommunity_GetBestEventsForUser_Request.filter_to_played_within_days', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1560,6 +1588,7 @@ _CCOMMUNITY_PARTNEREVENTRESULT = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='clanid', full_name='CCommunity_PartnerEventResult.clanid', index=0,
@@ -1567,49 +1596,49 @@ _CCOMMUNITY_PARTNEREVENTRESULT = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='event_gid', full_name='CCommunity_PartnerEventResult.event_gid', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='announcement_gid', full_name='CCommunity_PartnerEventResult.announcement_gid', index=2,
       number=3, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='appid', full_name='CCommunity_PartnerEventResult.appid', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='possible_takeover', full_name='CCommunity_PartnerEventResult.possible_takeover', index=4,
       number=5, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='rtime32_last_modified', full_name='CCommunity_PartnerEventResult.rtime32_last_modified', index=5,
       number=6, type=13, cpp_type=3, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='user_app_priority', full_name='CCommunity_PartnerEventResult.user_app_priority', index=6,
       number=7, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1633,6 +1662,7 @@ _CCOMMUNITY_GETBESTEVENTSFORUSER_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='results', full_name='CCommunity_GetBestEventsForUser_Response.results', index=0,
@@ -1640,7 +1670,7 @@ _CCOMMUNITY_GETBESTEVENTSFORUSER_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1664,6 +1694,7 @@ _CCOMMUNITY_CLEARUSERPARTNEREVENTSAPPPRIORITIES_REQUEST = _descriptor.Descriptor
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -1688,6 +1719,7 @@ _CCOMMUNITY_CLEARUSERPARTNEREVENTSAPPPRIORITIES_RESPONSE = _descriptor.Descripto
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -1712,6 +1744,7 @@ _CCOMMUNITY_PARTNEREVENTSAPPPRIORITY = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CCommunity_PartnerEventsAppPriority.appid', index=0,
@@ -1719,14 +1752,14 @@ _CCOMMUNITY_PARTNEREVENTSAPPPRIORITY = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='user_app_priority', full_name='CCommunity_PartnerEventsAppPriority.user_app_priority', index=1,
       number=2, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1750,6 +1783,7 @@ _CCOMMUNITY_GETUSERPARTNEREVENTSAPPPRIORITIES_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -1774,6 +1808,7 @@ _CCOMMUNITY_GETUSERPARTNEREVENTSAPPPRIORITIES_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='priorities', full_name='CCommunity_GetUserPartnerEventsAppPriorities_Response.priorities', index=0,
@@ -1781,7 +1816,7 @@ _CCOMMUNITY_GETUSERPARTNEREVENTSAPPPRIORITIES_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1805,6 +1840,7 @@ _CCOMMUNITY_CLEARSINGLEPARTNEREVENTSAPPPRIORITY_REQUEST = _descriptor.Descriptor
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CCommunity_ClearSinglePartnerEventsAppPriority_Request.appid', index=0,
@@ -1812,7 +1848,7 @@ _CCOMMUNITY_CLEARSINGLEPARTNEREVENTSAPPPRIORITY_REQUEST = _descriptor.Descriptor
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1836,6 +1872,7 @@ _CCOMMUNITY_CLEARSINGLEPARTNEREVENTSAPPPRIORITY_RESPONSE = _descriptor.Descripto
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -1860,6 +1897,7 @@ _CCOMMUNITY_PARTNEREVENTSSHOWMOREFORAPP_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CCommunity_PartnerEventsShowMoreForApp_Request.appid', index=0,
@@ -1867,7 +1905,7 @@ _CCOMMUNITY_PARTNEREVENTSSHOWMOREFORAPP_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1891,6 +1929,7 @@ _CCOMMUNITY_PARTNEREVENTSSHOWMOREFORAPP_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -1915,6 +1954,7 @@ _CCOMMUNITY_PARTNEREVENTSSHOWLESSFORAPP_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='appid', full_name='CCommunity_PartnerEventsShowLessForApp_Request.appid', index=0,
@@ -1922,7 +1962,7 @@ _CCOMMUNITY_PARTNEREVENTSSHOWLESSFORAPP_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -1946,6 +1986,7 @@ _CCOMMUNITY_PARTNEREVENTSSHOWLESSFORAPP_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -1970,6 +2011,7 @@ _CCOMMUNITY_MARKPARTNEREVENTSFORUSER_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='markings', full_name='CCommunity_MarkPartnerEventsForUser_Request.markings', index=0,
@@ -1977,7 +2019,7 @@ _CCOMMUNITY_MARKPARTNEREVENTSFORUSER_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2001,6 +2043,7 @@ _CCOMMUNITY_MARKPARTNEREVENTSFORUSER_REQUEST_PARTNEREVENTMARKING = _descriptor.D
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='clanid', full_name='CCommunity_MarkPartnerEventsForUser_Request_PartnerEventMarking.clanid', index=0,
@@ -2008,35 +2051,35 @@ _CCOMMUNITY_MARKPARTNEREVENTSFORUSER_REQUEST_PARTNEREVENTMARKING = _descriptor.D
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='event_gid', full_name='CCommunity_MarkPartnerEventsForUser_Request_PartnerEventMarking.event_gid', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='display_location', full_name='CCommunity_MarkPartnerEventsForUser_Request_PartnerEventMarking.display_location', index=2,
       number=3, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\0302enum; suggested type: EPartnerEventDisplayLocation'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\0302enum; suggested type: EPartnerEventDisplayLocation', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='mark_shown', full_name='CCommunity_MarkPartnerEventsForUser_Request_PartnerEventMarking.mark_shown', index=3,
       number=4, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='mark_read', full_name='CCommunity_MarkPartnerEventsForUser_Request_PartnerEventMarking.mark_read', index=4,
       number=5, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2060,6 +2103,7 @@ _CCOMMUNITY_MARKPARTNEREVENTSFORUSER_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -2084,6 +2128,7 @@ _CPRODUCTIMPRESSIONSFROMCLIENT_NOTIFICATION = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='impressions', full_name='CProductImpressionsFromClient_Notification.impressions', index=0,
@@ -2091,7 +2136,7 @@ _CPRODUCTIMPRESSIONSFROMCLIENT_NOTIFICATION = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2115,6 +2160,7 @@ _CPRODUCTIMPRESSIONSFROMCLIENT_NOTIFICATION_IMPRESSION = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='type', full_name='CProductImpressionsFromClient_Notification_Impression.type', index=0,
@@ -2122,21 +2168,21 @@ _CPRODUCTIMPRESSIONSFROMCLIENT_NOTIFICATION_IMPRESSION = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\0306enum; suggested type: EProductImpressionFromClientType'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\0306enum; suggested type: EProductImpressionFromClientType', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='appid', full_name='CProductImpressionsFromClient_Notification_Impression.appid', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='num_impressions', full_name='CProductImpressionsFromClient_Notification_Impression.num_impressions', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2160,6 +2206,7 @@ _CFRIENDSLISTCATEGORY = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='groupid', full_name='CFriendsListCategory.groupid', index=0,
@@ -2167,21 +2214,21 @@ _CFRIENDSLISTCATEGORY = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='name', full_name='CFriendsListCategory.name', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='accountid_members', full_name='CFriendsListCategory.accountid_members', index=2,
       number=3, type=13, cpp_type=3, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2205,6 +2252,7 @@ _CFRIENDSLIST_GETCATEGORIES_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -2229,6 +2277,7 @@ _CFRIENDSLIST_GETCATEGORIES_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='categories', full_name='CFriendsList_GetCategories_Response.categories', index=0,
@@ -2236,7 +2285,7 @@ _CFRIENDSLIST_GETCATEGORIES_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2260,6 +2309,7 @@ _CFRIENDSLISTFAVORITEENTRY = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='accountid', full_name='CFriendsListFavoriteEntry.accountid', index=0,
@@ -2267,21 +2317,21 @@ _CFRIENDSLISTFAVORITEENTRY = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='clanid', full_name='CFriendsListFavoriteEntry.clanid', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='chat_group_id', full_name='CFriendsListFavoriteEntry.chat_group_id', index=2,
       number=3, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2305,6 +2355,7 @@ _CFRIENDSLIST_GETFAVORITES_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -2329,6 +2380,7 @@ _CFRIENDSLIST_GETFAVORITES_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='favorites', full_name='CFriendsList_GetFavorites_Response.favorites', index=0,
@@ -2336,7 +2388,7 @@ _CFRIENDSLIST_GETFAVORITES_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2360,6 +2412,7 @@ _CFRIENDSLIST_SETFAVORITES_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='favorites', full_name='CFriendsList_SetFavorites_Request.favorites', index=0,
@@ -2367,7 +2420,7 @@ _CFRIENDSLIST_SETFAVORITES_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2391,6 +2444,7 @@ _CFRIENDSLIST_SETFAVORITES_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -2415,6 +2469,7 @@ _CFRIENDSLIST_FAVORITESCHANGED_NOTIFICATION = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='favorites', full_name='CFriendsList_FavoritesChanged_Notification.favorites', index=0,
@@ -2422,7 +2477,7 @@ _CFRIENDSLIST_FAVORITESCHANGED_NOTIFICATION = _descriptor.Descriptor(
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2446,6 +2501,7 @@ _CFRIENDSLIST_GETFRIENDSLIST_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -2470,6 +2526,7 @@ _CFRIENDSLIST_GETFRIENDSLIST_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='friendslist', full_name='CFriendsList_GetFriendsList_Response.friendslist', index=0,
@@ -2477,7 +2534,7 @@ _CFRIENDSLIST_GETFRIENDSLIST_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2501,6 +2558,7 @@ _CMSGCLIENTUCMENUMERATEUSERPUBLISHEDFILES = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CMsgClientUCMEnumerateUserPublishedFiles.app_id', index=0,
@@ -2508,21 +2566,21 @@ _CMSGCLIENTUCMENUMERATEUSERPUBLISHEDFILES = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='start_index', full_name='CMsgClientUCMEnumerateUserPublishedFiles.start_index', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='sort_order', full_name='CMsgClientUCMEnumerateUserPublishedFiles.sort_order', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2546,6 +2604,7 @@ _CMSGCLIENTUCMENUMERATEUSERPUBLISHEDFILESRESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='eresult', full_name='CMsgClientUCMEnumerateUserPublishedFilesResponse.eresult', index=0,
@@ -2553,21 +2612,21 @@ _CMSGCLIENTUCMENUMERATEUSERPUBLISHEDFILESRESPONSE = _descriptor.Descriptor(
       has_default_value=True, default_value=2,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='published_files', full_name='CMsgClientUCMEnumerateUserPublishedFilesResponse.published_files', index=1,
       number=2, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='total_results', full_name='CMsgClientUCMEnumerateUserPublishedFilesResponse.total_results', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2591,6 +2650,7 @@ _CMSGCLIENTUCMENUMERATEUSERPUBLISHEDFILESRESPONSE_PUBLISHEDFILEID = _descriptor.
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='published_file_id', full_name='CMsgClientUCMEnumerateUserPublishedFilesResponse_PublishedFileId.published_file_id', index=0,
@@ -2598,7 +2658,7 @@ _CMSGCLIENTUCMENUMERATEUSERPUBLISHEDFILESRESPONSE_PUBLISHEDFILEID = _descriptor.
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2622,6 +2682,7 @@ _CMSGCLIENTUCMENUMERATEUSERSUBSCRIBEDFILES = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CMsgClientUCMEnumerateUserSubscribedFiles.app_id', index=0,
@@ -2629,35 +2690,35 @@ _CMSGCLIENTUCMENUMERATEUSERSUBSCRIBEDFILES = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='start_index', full_name='CMsgClientUCMEnumerateUserSubscribedFiles.start_index', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='list_type', full_name='CMsgClientUCMEnumerateUserSubscribedFiles.list_type', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=True, default_value=1,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='matching_file_type', full_name='CMsgClientUCMEnumerateUserSubscribedFiles.matching_file_type', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='count', full_name='CMsgClientUCMEnumerateUserSubscribedFiles.count', index=4,
       number=5, type=13, cpp_type=3, label=1,
       has_default_value=True, default_value=50,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2681,6 +2742,7 @@ _CMSGCLIENTUCMENUMERATEUSERSUBSCRIBEDFILESRESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='eresult', full_name='CMsgClientUCMEnumerateUserSubscribedFilesResponse.eresult', index=0,
@@ -2688,21 +2750,21 @@ _CMSGCLIENTUCMENUMERATEUSERSUBSCRIBEDFILESRESPONSE = _descriptor.Descriptor(
       has_default_value=True, default_value=2,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='subscribed_files', full_name='CMsgClientUCMEnumerateUserSubscribedFilesResponse.subscribed_files', index=1,
       number=2, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='total_results', full_name='CMsgClientUCMEnumerateUserSubscribedFilesResponse.total_results', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2726,6 +2788,7 @@ _CMSGCLIENTUCMENUMERATEUSERSUBSCRIBEDFILESRESPONSE_PUBLISHEDFILEID = _descriptor
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='published_file_id', full_name='CMsgClientUCMEnumerateUserSubscribedFilesResponse_PublishedFileId.published_file_id', index=0,
@@ -2733,14 +2796,14 @@ _CMSGCLIENTUCMENUMERATEUSERSUBSCRIBEDFILESRESPONSE_PUBLISHEDFILEID = _descriptor
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='rtime32_subscribed', full_name='CMsgClientUCMEnumerateUserSubscribedFilesResponse_PublishedFileId.rtime32_subscribed', index=1,
       number=2, type=7, cpp_type=3, label=1,
       has_default_value=True, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2764,6 +2827,7 @@ _CMSGCLIENTUCMPUBLISHEDFILEDELETED = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='published_file_id', full_name='CMsgClientUCMPublishedFileDeleted.published_file_id', index=0,
@@ -2771,14 +2835,14 @@ _CMSGCLIENTUCMPUBLISHEDFILEDELETED = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CMsgClientUCMPublishedFileDeleted.app_id', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2802,6 +2866,7 @@ _CMSGCLIENTWORKSHOPITEMINFOREQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CMsgClientWorkshopItemInfoRequest.app_id', index=0,
@@ -2809,21 +2874,21 @@ _CMSGCLIENTWORKSHOPITEMINFOREQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='last_time_updated', full_name='CMsgClientWorkshopItemInfoRequest.last_time_updated', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='workshop_items', full_name='CMsgClientWorkshopItemInfoRequest.workshop_items', index=2,
       number=3, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2847,6 +2912,7 @@ _CMSGCLIENTWORKSHOPITEMINFOREQUEST_WORKSHOPITEM = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='published_file_id', full_name='CMsgClientWorkshopItemInfoRequest_WorkshopItem.published_file_id', index=0,
@@ -2854,14 +2920,14 @@ _CMSGCLIENTWORKSHOPITEMINFOREQUEST_WORKSHOPITEM = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='time_updated', full_name='CMsgClientWorkshopItemInfoRequest_WorkshopItem.time_updated', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2885,6 +2951,7 @@ _CMSGCLIENTWORKSHOPITEMINFORESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='eresult', full_name='CMsgClientWorkshopItemInfoResponse.eresult', index=0,
@@ -2892,28 +2959,28 @@ _CMSGCLIENTWORKSHOPITEMINFORESPONSE = _descriptor.Descriptor(
       has_default_value=True, default_value=2,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='update_time', full_name='CMsgClientWorkshopItemInfoResponse.update_time', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='workshop_items', full_name='CMsgClientWorkshopItemInfoResponse.workshop_items', index=2,
       number=3, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='private_items', full_name='CMsgClientWorkshopItemInfoResponse.private_items', index=3,
       number=4, type=6, cpp_type=4, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2937,6 +3004,7 @@ _CMSGCLIENTWORKSHOPITEMINFORESPONSE_WORKSHOPITEMINFO = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='published_file_id', full_name='CMsgClientWorkshopItemInfoResponse_WorkshopItemInfo.published_file_id', index=0,
@@ -2944,28 +3012,28 @@ _CMSGCLIENTWORKSHOPITEMINFORESPONSE_WORKSHOPITEMINFO = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='time_updated', full_name='CMsgClientWorkshopItemInfoResponse_WorkshopItemInfo.time_updated', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='manifest_id', full_name='CMsgClientWorkshopItemInfoResponse_WorkshopItemInfo.manifest_id', index=2,
       number=3, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='is_legacy', full_name='CMsgClientWorkshopItemInfoResponse_WorkshopItemInfo.is_legacy', index=3,
       number=4, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -2989,6 +3057,7 @@ _CMSGCLIENTUCMGETPUBLISHEDFILESFORUSER = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CMsgClientUCMGetPublishedFilesForUser.app_id', index=0,
@@ -2996,35 +3065,35 @@ _CMSGCLIENTUCMGETPUBLISHEDFILESFORUSER = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='creator_steam_id', full_name='CMsgClientUCMGetPublishedFilesForUser.creator_steam_id', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='required_tags', full_name='CMsgClientUCMGetPublishedFilesForUser.required_tags', index=2,
       number=3, type=9, cpp_type=9, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='excluded_tags', full_name='CMsgClientUCMGetPublishedFilesForUser.excluded_tags', index=3,
       number=4, type=9, cpp_type=9, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='start_index', full_name='CMsgClientUCMGetPublishedFilesForUser.start_index', index=4,
       number=5, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3048,6 +3117,7 @@ _CMSGCLIENTUCMGETPUBLISHEDFILESFORUSERRESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='eresult', full_name='CMsgClientUCMGetPublishedFilesForUserResponse.eresult', index=0,
@@ -3055,21 +3125,21 @@ _CMSGCLIENTUCMGETPUBLISHEDFILESFORUSERRESPONSE = _descriptor.Descriptor(
       has_default_value=True, default_value=2,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='published_files', full_name='CMsgClientUCMGetPublishedFilesForUserResponse.published_files', index=1,
       number=2, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='total_results', full_name='CMsgClientUCMGetPublishedFilesForUserResponse.total_results', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3093,6 +3163,7 @@ _CMSGCLIENTUCMGETPUBLISHEDFILESFORUSERRESPONSE_PUBLISHEDFILEID = _descriptor.Des
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='published_file_id', full_name='CMsgClientUCMGetPublishedFilesForUserResponse_PublishedFileId.published_file_id', index=0,
@@ -3100,7 +3171,7 @@ _CMSGCLIENTUCMGETPUBLISHEDFILESFORUSERRESPONSE_PUBLISHEDFILEID = _descriptor.Des
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3124,6 +3195,7 @@ _CMSGCREENUMERATEPUBLISHEDFILES = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='app_id', full_name='CMsgCREEnumeratePublishedFiles.app_id', index=0,
@@ -3131,56 +3203,56 @@ _CMSGCREENUMERATEPUBLISHEDFILES = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='query_type', full_name='CMsgCREEnumeratePublishedFiles.query_type', index=1,
       number=2, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='start_index', full_name='CMsgCREEnumeratePublishedFiles.start_index', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='days', full_name='CMsgCREEnumeratePublishedFiles.days', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='count', full_name='CMsgCREEnumeratePublishedFiles.count', index=4,
       number=5, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='tags', full_name='CMsgCREEnumeratePublishedFiles.tags', index=5,
       number=6, type=9, cpp_type=9, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='user_tags', full_name='CMsgCREEnumeratePublishedFiles.user_tags', index=6,
       number=7, type=9, cpp_type=9, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='matching_file_type', full_name='CMsgCREEnumeratePublishedFiles.matching_file_type', index=7,
       number=8, type=13, cpp_type=3, label=1,
       has_default_value=True, default_value=13,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3204,6 +3276,7 @@ _CMSGCREENUMERATEPUBLISHEDFILESRESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='eresult', full_name='CMsgCREEnumeratePublishedFilesResponse.eresult', index=0,
@@ -3211,21 +3284,21 @@ _CMSGCREENUMERATEPUBLISHEDFILESRESPONSE = _descriptor.Descriptor(
       has_default_value=True, default_value=2,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='published_files', full_name='CMsgCREEnumeratePublishedFilesResponse.published_files', index=1,
       number=2, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='total_results', full_name='CMsgCREEnumeratePublishedFilesResponse.total_results', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3249,6 +3322,7 @@ _CMSGCREENUMERATEPUBLISHEDFILESRESPONSE_PUBLISHEDFILEID = _descriptor.Descriptor
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='published_file_id', full_name='CMsgCREEnumeratePublishedFilesResponse_PublishedFileId.published_file_id', index=0,
@@ -3256,35 +3330,35 @@ _CMSGCREENUMERATEPUBLISHEDFILESRESPONSE_PUBLISHEDFILEID = _descriptor.Descriptor
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='votes_for', full_name='CMsgCREEnumeratePublishedFilesResponse_PublishedFileId.votes_for', index=1,
       number=2, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='votes_against', full_name='CMsgCREEnumeratePublishedFilesResponse_PublishedFileId.votes_against', index=2,
       number=3, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='reports', full_name='CMsgCREEnumeratePublishedFilesResponse_PublishedFileId.reports', index=3,
       number=4, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='score', full_name='CMsgCREEnumeratePublishedFilesResponse_PublishedFileId.score', index=4,
       number=5, type=2, cpp_type=6, label=1,
       has_default_value=False, default_value=float(0),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3308,6 +3382,7 @@ _CMSGGAMESERVERPINGSAMPLE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='my_ip', full_name='CMsgGameServerPingSample.my_ip', index=0,
@@ -3315,21 +3390,21 @@ _CMSGGAMESERVERPINGSAMPLE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='gs_app_id', full_name='CMsgGameServerPingSample.gs_app_id', index=1,
       number=2, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='gs_samples', full_name='CMsgGameServerPingSample.gs_samples', index=2,
       number=3, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3353,6 +3428,7 @@ _CMSGGAMESERVERPINGSAMPLE_SAMPLE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='ip', full_name='CMsgGameServerPingSample_Sample.ip', index=0,
@@ -3360,21 +3436,21 @@ _CMSGGAMESERVERPINGSAMPLE_SAMPLE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='avg_ping_ms', full_name='CMsgGameServerPingSample_Sample.avg_ping_ms', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='stddev_ping_ms_x10', full_name='CMsgGameServerPingSample_Sample.stddev_ping_ms_x10', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3398,6 +3474,7 @@ _CCLAN_RESPONDTOCLANINVITE_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid', full_name='CClan_RespondToClanInvite_Request.steamid', index=0,
@@ -3405,14 +3482,14 @@ _CCLAN_RESPONDTOCLANINVITE_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='accept', full_name='CClan_RespondToClanInvite_Request.accept', index=1,
       number=2, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3436,6 +3513,7 @@ _CCLAN_RESPONDTOCLANINVITE_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -3460,6 +3538,7 @@ _CVOICECHAT_REQUESTONEONONECHAT_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid_partner', full_name='CVoiceChat_RequestOneOnOneChat_Request.steamid_partner', index=0,
@@ -3467,7 +3546,7 @@ _CVOICECHAT_REQUESTONEONONECHAT_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3491,6 +3570,7 @@ _CVOICECHAT_REQUESTONEONONECHAT_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='voice_chatid', full_name='CVoiceChat_RequestOneOnOneChat_Response.voice_chatid', index=0,
@@ -3498,7 +3578,7 @@ _CVOICECHAT_REQUESTONEONONECHAT_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3522,6 +3602,7 @@ _CVOICECHAT_ONEONONECHATREQUESTED_NOTIFICATION = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='voice_chatid', full_name='CVoiceChat_OneOnOneChatRequested_Notification.voice_chatid', index=0,
@@ -3529,14 +3610,14 @@ _CVOICECHAT_ONEONONECHATREQUESTED_NOTIFICATION = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steamid_partner', full_name='CVoiceChat_OneOnOneChatRequested_Notification.steamid_partner', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3560,6 +3641,7 @@ _CVOICECHAT_ANSWERONEONONECHAT_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='voice_chatid', full_name='CVoiceChat_AnswerOneOnOneChat_Request.voice_chatid', index=0,
@@ -3567,21 +3649,21 @@ _CVOICECHAT_ANSWERONEONONECHAT_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steamid_partner', full_name='CVoiceChat_AnswerOneOnOneChat_Request.steamid_partner', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='accepted_request', full_name='CVoiceChat_AnswerOneOnOneChat_Request.accepted_request', index=2,
       number=3, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3605,6 +3687,7 @@ _CVOICECHAT_ANSWERONEONONECHAT_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -3629,6 +3712,7 @@ _CVOICECHAT_ONEONONECHATREQUESTRESPONSE_NOTIFICATION = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='voicechat_id', full_name='CVoiceChat_OneOnOneChatRequestResponse_Notification.voicechat_id', index=0,
@@ -3636,21 +3720,21 @@ _CVOICECHAT_ONEONONECHATREQUESTRESPONSE_NOTIFICATION = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='steamid_partner', full_name='CVoiceChat_OneOnOneChatRequestResponse_Notification.steamid_partner', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='accepted_request', full_name='CVoiceChat_OneOnOneChatRequestResponse_Notification.accepted_request', index=2,
       number=3, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3674,6 +3758,7 @@ _CVOICECHAT_ENDONEONONECHAT_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid_partner', full_name='CVoiceChat_EndOneOnOneChat_Request.steamid_partner', index=0,
@@ -3681,7 +3766,7 @@ _CVOICECHAT_ENDONEONONECHAT_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3705,6 +3790,7 @@ _CVOICECHAT_ENDONEONONECHAT_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -3729,6 +3815,7 @@ _CVOICECHAT_LEAVEONEONONECHAT_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='steamid_partner', full_name='CVoiceChat_LeaveOneOnOneChat_Request.steamid_partner', index=0,
@@ -3736,14 +3823,14 @@ _CVOICECHAT_LEAVEONEONONECHAT_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='voice_chatid', full_name='CVoiceChat_LeaveOneOnOneChat_Request.voice_chatid', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3767,6 +3854,7 @@ _CVOICECHAT_LEAVEONEONONECHAT_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -3791,6 +3879,7 @@ _CVOICECHAT_USERJOINEDVOICECHAT_NOTIFICATION = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='voice_chatid', full_name='CVoiceChat_UserJoinedVoiceChat_Notification.voice_chatid', index=0,
@@ -3798,49 +3887,49 @@ _CVOICECHAT_USERJOINEDVOICECHAT_NOTIFICATION = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='user_steamid', full_name='CVoiceChat_UserJoinedVoiceChat_Notification.user_steamid', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='chatid', full_name='CVoiceChat_UserJoinedVoiceChat_Notification.chatid', index=2,
       number=3, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='one_on_one_steamid_lower', full_name='CVoiceChat_UserJoinedVoiceChat_Notification.one_on_one_steamid_lower', index=3,
       number=4, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='one_on_one_steamid_higher', full_name='CVoiceChat_UserJoinedVoiceChat_Notification.one_on_one_steamid_higher', index=4,
       number=5, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='chat_group_id', full_name='CVoiceChat_UserJoinedVoiceChat_Notification.chat_group_id', index=5,
       number=6, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='user_sessionid', full_name='CVoiceChat_UserJoinedVoiceChat_Notification.user_sessionid', index=6,
       number=7, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3864,6 +3953,7 @@ _CVOICECHAT_USERVOICESTATUS_NOTIFICATION = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='voice_chatid', full_name='CVoiceChat_UserVoiceStatus_Notification.voice_chatid', index=0,
@@ -3871,42 +3961,42 @@ _CVOICECHAT_USERVOICESTATUS_NOTIFICATION = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='user_steamid', full_name='CVoiceChat_UserVoiceStatus_Notification.user_steamid', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='user_muted_mic_locally', full_name='CVoiceChat_UserVoiceStatus_Notification.user_muted_mic_locally', index=2,
       number=3, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='user_muted_output_locally', full_name='CVoiceChat_UserVoiceStatus_Notification.user_muted_output_locally', index=3,
       number=4, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='user_has_no_mic_for_session', full_name='CVoiceChat_UserVoiceStatus_Notification.user_has_no_mic_for_session', index=4,
       number=5, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='user_webaudio_sample_rate', full_name='CVoiceChat_UserVoiceStatus_Notification.user_webaudio_sample_rate', index=5,
       number=6, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3930,6 +4020,7 @@ _CVOICECHAT_ALLMEMBERSSTATUS_NOTIFICATION = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='voice_chatid', full_name='CVoiceChat_AllMembersStatus_Notification.voice_chatid', index=0,
@@ -3937,14 +4028,14 @@ _CVOICECHAT_ALLMEMBERSSTATUS_NOTIFICATION = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='users', full_name='CVoiceChat_AllMembersStatus_Notification.users', index=1,
       number=2, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -3968,6 +4059,7 @@ _CVOICECHAT_UPDATEVOICECHATWEBRTCDATA_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='voice_chatid', full_name='CVoiceChat_UpdateVoiceChatWebRTCData_Request.voice_chatid', index=0,
@@ -3975,56 +4067,56 @@ _CVOICECHAT_UPDATEVOICECHATWEBRTCDATA_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='ip_webrtc_server', full_name='CVoiceChat_UpdateVoiceChatWebRTCData_Request.ip_webrtc_server', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='port_webrtc_server', full_name='CVoiceChat_UpdateVoiceChatWebRTCData_Request.port_webrtc_server', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='ip_webrtc_client', full_name='CVoiceChat_UpdateVoiceChatWebRTCData_Request.ip_webrtc_client', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='port_webrtc_client', full_name='CVoiceChat_UpdateVoiceChatWebRTCData_Request.port_webrtc_client', index=4,
       number=5, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='ssrc_my_sending_stream', full_name='CVoiceChat_UpdateVoiceChatWebRTCData_Request.ssrc_my_sending_stream', index=5,
       number=6, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='user_agent', full_name='CVoiceChat_UpdateVoiceChatWebRTCData_Request.user_agent', index=6,
       number=7, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='has_audio_worklets_support', full_name='CVoiceChat_UpdateVoiceChatWebRTCData_Request.has_audio_worklets_support', index=7,
       number=8, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4048,6 +4140,7 @@ _CVOICECHAT_UPDATEVOICECHATWEBRTCDATA_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='send_client_voice_logs', full_name='CVoiceChat_UpdateVoiceChatWebRTCData_Response.send_client_voice_logs', index=0,
@@ -4055,7 +4148,7 @@ _CVOICECHAT_UPDATEVOICECHATWEBRTCDATA_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4079,6 +4172,7 @@ _CVOICECHAT_UPLOADCLIENTVOICECHATLOGS_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='voice_chatid', full_name='CVoiceChat_UploadClientVoiceChatLogs_Request.voice_chatid', index=0,
@@ -4086,14 +4180,14 @@ _CVOICECHAT_UPLOADCLIENTVOICECHATLOGS_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='client_voice_logs_new_lines', full_name='CVoiceChat_UploadClientVoiceChatLogs_Request.client_voice_logs_new_lines', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4117,6 +4211,7 @@ _CVOICECHAT_UPLOADCLIENTVOICECHATLOGS_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -4141,6 +4236,7 @@ _CVOICECHAT_LEAVEVOICECHAT_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='voice_chatid', full_name='CVoiceChat_LeaveVoiceChat_Request.voice_chatid', index=0,
@@ -4148,7 +4244,7 @@ _CVOICECHAT_LEAVEVOICECHAT_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4172,6 +4268,7 @@ _CVOICECHAT_LEAVEVOICECHAT_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -4196,6 +4293,7 @@ _CVOICECHAT_USERLEFTVOICECHAT_NOTIFICATION = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='voice_chatid', full_name='CVoiceChat_UserLeftVoiceChat_Notification.voice_chatid', index=0,
@@ -4203,49 +4301,49 @@ _CVOICECHAT_USERLEFTVOICECHAT_NOTIFICATION = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='user_steamid', full_name='CVoiceChat_UserLeftVoiceChat_Notification.user_steamid', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='chatid', full_name='CVoiceChat_UserLeftVoiceChat_Notification.chatid', index=2,
       number=3, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='one_on_one_steamid_lower', full_name='CVoiceChat_UserLeftVoiceChat_Notification.one_on_one_steamid_lower', index=3,
       number=4, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='one_on_one_steamid_higher', full_name='CVoiceChat_UserLeftVoiceChat_Notification.one_on_one_steamid_higher', index=4,
       number=5, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='chat_group_id', full_name='CVoiceChat_UserLeftVoiceChat_Notification.chat_group_id', index=5,
       number=6, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='user_sessionid', full_name='CVoiceChat_UserLeftVoiceChat_Notification.user_sessionid', index=6,
       number=7, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4269,6 +4367,7 @@ _CVOICECHAT_VOICECHATENDED_NOTIFICATION = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='voice_chatid', full_name='CVoiceChat_VoiceChatEnded_Notification.voice_chatid', index=0,
@@ -4276,35 +4375,35 @@ _CVOICECHAT_VOICECHATENDED_NOTIFICATION = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='one_on_one_steamid_lower', full_name='CVoiceChat_VoiceChatEnded_Notification.one_on_one_steamid_lower', index=1,
       number=2, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='one_on_one_steamid_higher', full_name='CVoiceChat_VoiceChatEnded_Notification.one_on_one_steamid_higher', index=2,
       number=3, type=6, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='chatid', full_name='CVoiceChat_VoiceChatEnded_Notification.chatid', index=3,
       number=4, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='chat_group_id', full_name='CVoiceChat_VoiceChatEnded_Notification.chat_group_id', index=4,
       number=5, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4328,14 +4427,15 @@ _CWEBRTCCLIENT_INITIATEWEBRTCCONNECTION_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='sdp', full_name='CWebRTCClient_InitiateWebRTCConnection_Request.sdp', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4359,14 +4459,15 @@ _CWEBRTCCLIENT_INITIATEWEBRTCCONNECTION_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='remote_description', full_name='CWebRTCClient_InitiateWebRTCConnection_Response.remote_description', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4390,6 +4491,7 @@ _CWEBRTC_WEBRTCSESSIONCONNECTED_NOTIFICATION = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='ssrc', full_name='CWebRTC_WebRTCSessionConnected_Notification.ssrc', index=0,
@@ -4397,35 +4499,35 @@ _CWEBRTC_WEBRTCSESSIONCONNECTED_NOTIFICATION = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='client_ip', full_name='CWebRTC_WebRTCSessionConnected_Notification.client_ip', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='client_port', full_name='CWebRTC_WebRTCSessionConnected_Notification.client_port', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='server_ip', full_name='CWebRTC_WebRTCSessionConnected_Notification.server_ip', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='server_port', full_name='CWebRTC_WebRTCSessionConnected_Notification.server_port', index=4,
       number=5, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4449,28 +4551,29 @@ _CWEBRTC_WEBRTCUPDATEREMOTEDESCRIPTION_NOTIFICATION = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='remote_description', full_name='CWebRTC_WebRTCUpdateRemoteDescription_Notification.remote_description', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='remote_description_version', full_name='CWebRTC_WebRTCUpdateRemoteDescription_Notification.remote_description_version', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='ssrcs_to_accountids', full_name='CWebRTC_WebRTCUpdateRemoteDescription_Notification.ssrcs_to_accountids', index=2,
       number=3, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4494,6 +4597,7 @@ _CWEBRTC_WEBRTCUPDATEREMOTEDESCRIPTION_NOTIFICATION_CSSRCTOACCOUNTIDMAPPING = _d
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='ssrc', full_name='CWebRTC_WebRTCUpdateRemoteDescription_Notification_CSSRCToAccountIDMapping.ssrc', index=0,
@@ -4501,14 +4605,14 @@ _CWEBRTC_WEBRTCUPDATEREMOTEDESCRIPTION_NOTIFICATION_CSSRCTOACCOUNTIDMAPPING = _d
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='accountid', full_name='CWebRTC_WebRTCUpdateRemoteDescription_Notification_CSSRCToAccountIDMapping.accountid', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4532,6 +4636,7 @@ _CWEBRTCCLIENT_ACKNOWLEDGEUPDATEDREMOTEDESCRIPTION_REQUEST = _descriptor.Descrip
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='ip_webrtc_server', full_name='CWebRTCClient_AcknowledgeUpdatedRemoteDescription_Request.ip_webrtc_server', index=0,
@@ -4539,35 +4644,35 @@ _CWEBRTCCLIENT_ACKNOWLEDGEUPDATEDREMOTEDESCRIPTION_REQUEST = _descriptor.Descrip
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='port_webrtc_server', full_name='CWebRTCClient_AcknowledgeUpdatedRemoteDescription_Request.port_webrtc_server', index=1,
       number=2, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='ip_webrtc_session_client', full_name='CWebRTCClient_AcknowledgeUpdatedRemoteDescription_Request.ip_webrtc_session_client', index=2,
       number=3, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='port_webrtc_session_client', full_name='CWebRTCClient_AcknowledgeUpdatedRemoteDescription_Request.port_webrtc_session_client', index=3,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='remote_description_version', full_name='CWebRTCClient_AcknowledgeUpdatedRemoteDescription_Request.remote_description_version', index=4,
       number=5, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4591,6 +4696,7 @@ _CWEBRTCCLIENT_ACKNOWLEDGEUPDATEDREMOTEDESCRIPTION_RESPONSE = _descriptor.Descri
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -4615,6 +4721,7 @@ _CMOBILEPERACCOUNT_GETSETTINGS_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -4639,6 +4746,7 @@ _CMOBILEPERACCOUNT_GETSETTINGS_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='has_settings', full_name='CMobilePerAccount_GetSettings_Response.has_settings', index=0,
@@ -4646,49 +4754,49 @@ _CMOBILEPERACCOUNT_GETSETTINGS_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='allow_sale_push', full_name='CMobilePerAccount_GetSettings_Response.allow_sale_push', index=1,
       number=2, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='allow_wishlist_push', full_name='CMobilePerAccount_GetSettings_Response.allow_wishlist_push', index=2,
       number=3, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='chat_notification_level', full_name='CMobilePerAccount_GetSettings_Response.chat_notification_level', index=3,
       number=5, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='notify_direct_chat', full_name='CMobilePerAccount_GetSettings_Response.notify_direct_chat', index=4,
       number=6, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='notify_group_chat', full_name='CMobilePerAccount_GetSettings_Response.notify_group_chat', index=5,
       number=7, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='allow_event_push', full_name='CMobilePerAccount_GetSettings_Response.allow_event_push', index=6,
       number=8, type=8, cpp_type=7, label=1,
       has_default_value=True, default_value=True,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4712,6 +4820,7 @@ _CMOBILEPERACCOUNT_SETSETTINGS_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='allow_sale_push', full_name='CMobilePerAccount_SetSettings_Request.allow_sale_push', index=0,
@@ -4719,42 +4828,42 @@ _CMOBILEPERACCOUNT_SETSETTINGS_REQUEST = _descriptor.Descriptor(
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='allow_wishlist_push', full_name='CMobilePerAccount_SetSettings_Request.allow_wishlist_push', index=1,
       number=3, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='chat_notification_level', full_name='CMobilePerAccount_SetSettings_Request.chat_notification_level', index=2,
       number=4, type=13, cpp_type=3, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='notify_direct_chat', full_name='CMobilePerAccount_SetSettings_Request.notify_direct_chat', index=3,
       number=5, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='notify_group_chat', full_name='CMobilePerAccount_SetSettings_Request.notify_group_chat', index=4,
       number=6, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='allow_event_push', full_name='CMobilePerAccount_SetSettings_Request.allow_event_push', index=5,
       number=7, type=8, cpp_type=7, label=1,
       has_default_value=True, default_value=True,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4778,6 +4887,7 @@ _CMOBILEPERACCOUNT_SETSETTINGS_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -4802,63 +4912,64 @@ _CMOBILEDEVICE_REGISTERMOBILEDEVICE_REQUEST = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='deviceid', full_name='CMobileDevice_RegisterMobileDevice_Request.deviceid', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='language', full_name='CMobileDevice_RegisterMobileDevice_Request.language', index=1,
       number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='push_enabled', full_name='CMobileDevice_RegisterMobileDevice_Request.push_enabled', index=2,
       number=3, type=8, cpp_type=7, label=1,
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='app_version', full_name='CMobileDevice_RegisterMobileDevice_Request.app_version', index=3,
       number=4, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='os_version', full_name='CMobileDevice_RegisterMobileDevice_Request.os_version', index=4,
       number=5, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='device_model', full_name='CMobileDevice_RegisterMobileDevice_Request.device_model', index=5,
       number=6, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='twofactor_device_identifier', full_name='CMobileDevice_RegisterMobileDevice_Request.twofactor_device_identifier', index=6,
       number=7, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='mobile_app', full_name='CMobileDevice_RegisterMobileDevice_Request.mobile_app', index=7,
       number=8, type=5, cpp_type=1, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=_b('\202\265\030 enum; suggested type: EMobileApp'), file=DESCRIPTOR),
+      serialized_options=b'\202\265\030 enum; suggested type: EMobileApp', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4882,6 +4993,7 @@ _CMOBILEDEVICE_REGISTERMOBILEDEVICE_RESPONSE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='unique_deviceid', full_name='CMobileDevice_RegisterMobileDevice_Response.unique_deviceid', index=0,
@@ -4889,7 +5001,7 @@ _CMOBILEDEVICE_REGISTERMOBILEDEVICE_RESPONSE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4913,14 +5025,15 @@ _CMOBILEDEVICE_DEREGISTERMOBILEDEVICE_NOTIFICATION = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='deviceid', full_name='CMobileDevice_DeregisterMobileDevice_Notification.deviceid', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -4944,6 +5057,7 @@ _UNKNOWNPROTO = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
   ],
   extensions=[
@@ -5105,809 +5219,809 @@ DESCRIPTOR.message_types_by_name['CMobileDevice_DeregisterMobileDevice_Notificat
 DESCRIPTOR.message_types_by_name['UnknownProto'] = _UNKNOWNPROTO
 _sym_db.RegisterFileDescriptor(DESCRIPTOR)
 
-CHelpRequestLogs_UploadUserApplicationLog_Request = _reflection.GeneratedProtocolMessageType('CHelpRequestLogs_UploadUserApplicationLog_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CHELPREQUESTLOGS_UPLOADUSERAPPLICATIONLOG_REQUEST,
-  __module__ = 'steammessages_webui_friends_pb2'
+CHelpRequestLogs_UploadUserApplicationLog_Request = _reflection.GeneratedProtocolMessageType('CHelpRequestLogs_UploadUserApplicationLog_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CHELPREQUESTLOGS_UPLOADUSERAPPLICATIONLOG_REQUEST,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CHelpRequestLogs_UploadUserApplicationLog_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CHelpRequestLogs_UploadUserApplicationLog_Request)
 
-CHelpRequestLogs_UploadUserApplicationLog_Response = _reflection.GeneratedProtocolMessageType('CHelpRequestLogs_UploadUserApplicationLog_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CHELPREQUESTLOGS_UPLOADUSERAPPLICATIONLOG_RESPONSE,
-  __module__ = 'steammessages_webui_friends_pb2'
+CHelpRequestLogs_UploadUserApplicationLog_Response = _reflection.GeneratedProtocolMessageType('CHelpRequestLogs_UploadUserApplicationLog_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CHELPREQUESTLOGS_UPLOADUSERAPPLICATIONLOG_RESPONSE,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CHelpRequestLogs_UploadUserApplicationLog_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CHelpRequestLogs_UploadUserApplicationLog_Response)
 
-CMsgClientAppMinutesPlayedData = _reflection.GeneratedProtocolMessageType('CMsgClientAppMinutesPlayedData', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTAPPMINUTESPLAYEDDATA,
-  __module__ = 'steammessages_webui_friends_pb2'
+CMsgClientAppMinutesPlayedData = _reflection.GeneratedProtocolMessageType('CMsgClientAppMinutesPlayedData', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTAPPMINUTESPLAYEDDATA,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientAppMinutesPlayedData)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientAppMinutesPlayedData)
 
-CMsgClientAppMinutesPlayedData_AppMinutesPlayedData = _reflection.GeneratedProtocolMessageType('CMsgClientAppMinutesPlayedData_AppMinutesPlayedData', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTAPPMINUTESPLAYEDDATA_APPMINUTESPLAYEDDATA,
-  __module__ = 'steammessages_webui_friends_pb2'
+CMsgClientAppMinutesPlayedData_AppMinutesPlayedData = _reflection.GeneratedProtocolMessageType('CMsgClientAppMinutesPlayedData_AppMinutesPlayedData', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTAPPMINUTESPLAYEDDATA_APPMINUTESPLAYEDDATA,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientAppMinutesPlayedData_AppMinutesPlayedData)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientAppMinutesPlayedData_AppMinutesPlayedData)
 
-CCommunity_GetApps_Request = _reflection.GeneratedProtocolMessageType('CCommunity_GetApps_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCOMMUNITY_GETAPPS_REQUEST,
-  __module__ = 'steammessages_webui_friends_pb2'
+CCommunity_GetApps_Request = _reflection.GeneratedProtocolMessageType('CCommunity_GetApps_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCOMMUNITY_GETAPPS_REQUEST,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CCommunity_GetApps_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CCommunity_GetApps_Request)
 
-CCommunity_GetApps_Response = _reflection.GeneratedProtocolMessageType('CCommunity_GetApps_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCOMMUNITY_GETAPPS_RESPONSE,
-  __module__ = 'steammessages_webui_friends_pb2'
+CCommunity_GetApps_Response = _reflection.GeneratedProtocolMessageType('CCommunity_GetApps_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCOMMUNITY_GETAPPS_RESPONSE,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CCommunity_GetApps_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CCommunity_GetApps_Response)
 
-CCommunity_GetAppRichPresenceLocalization_Request = _reflection.GeneratedProtocolMessageType('CCommunity_GetAppRichPresenceLocalization_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCOMMUNITY_GETAPPRICHPRESENCELOCALIZATION_REQUEST,
-  __module__ = 'steammessages_webui_friends_pb2'
+CCommunity_GetAppRichPresenceLocalization_Request = _reflection.GeneratedProtocolMessageType('CCommunity_GetAppRichPresenceLocalization_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCOMMUNITY_GETAPPRICHPRESENCELOCALIZATION_REQUEST,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CCommunity_GetAppRichPresenceLocalization_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CCommunity_GetAppRichPresenceLocalization_Request)
 
-CCommunity_GetAppRichPresenceLocalization_Response = _reflection.GeneratedProtocolMessageType('CCommunity_GetAppRichPresenceLocalization_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCOMMUNITY_GETAPPRICHPRESENCELOCALIZATION_RESPONSE,
-  __module__ = 'steammessages_webui_friends_pb2'
+CCommunity_GetAppRichPresenceLocalization_Response = _reflection.GeneratedProtocolMessageType('CCommunity_GetAppRichPresenceLocalization_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCOMMUNITY_GETAPPRICHPRESENCELOCALIZATION_RESPONSE,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CCommunity_GetAppRichPresenceLocalization_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CCommunity_GetAppRichPresenceLocalization_Response)
 
-CCommunity_GetAppRichPresenceLocalization_Response_Token = _reflection.GeneratedProtocolMessageType('CCommunity_GetAppRichPresenceLocalization_Response_Token', (_message.Message,), dict(
-  DESCRIPTOR = _CCOMMUNITY_GETAPPRICHPRESENCELOCALIZATION_RESPONSE_TOKEN,
-  __module__ = 'steammessages_webui_friends_pb2'
+CCommunity_GetAppRichPresenceLocalization_Response_Token = _reflection.GeneratedProtocolMessageType('CCommunity_GetAppRichPresenceLocalization_Response_Token', (_message.Message,), {
+  'DESCRIPTOR' : _CCOMMUNITY_GETAPPRICHPRESENCELOCALIZATION_RESPONSE_TOKEN,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CCommunity_GetAppRichPresenceLocalization_Response_Token)
-  ))
+  })
 _sym_db.RegisterMessage(CCommunity_GetAppRichPresenceLocalization_Response_Token)
 
-CCommunity_GetAppRichPresenceLocalization_Response_TokenList = _reflection.GeneratedProtocolMessageType('CCommunity_GetAppRichPresenceLocalization_Response_TokenList', (_message.Message,), dict(
-  DESCRIPTOR = _CCOMMUNITY_GETAPPRICHPRESENCELOCALIZATION_RESPONSE_TOKENLIST,
-  __module__ = 'steammessages_webui_friends_pb2'
+CCommunity_GetAppRichPresenceLocalization_Response_TokenList = _reflection.GeneratedProtocolMessageType('CCommunity_GetAppRichPresenceLocalization_Response_TokenList', (_message.Message,), {
+  'DESCRIPTOR' : _CCOMMUNITY_GETAPPRICHPRESENCELOCALIZATION_RESPONSE_TOKENLIST,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CCommunity_GetAppRichPresenceLocalization_Response_TokenList)
-  ))
+  })
 _sym_db.RegisterMessage(CCommunity_GetAppRichPresenceLocalization_Response_TokenList)
 
-CCommunity_GetCommentThread_Request = _reflection.GeneratedProtocolMessageType('CCommunity_GetCommentThread_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCOMMUNITY_GETCOMMENTTHREAD_REQUEST,
-  __module__ = 'steammessages_webui_friends_pb2'
+CCommunity_GetCommentThread_Request = _reflection.GeneratedProtocolMessageType('CCommunity_GetCommentThread_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCOMMUNITY_GETCOMMENTTHREAD_REQUEST,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CCommunity_GetCommentThread_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CCommunity_GetCommentThread_Request)
 
-CCommunity_Comment = _reflection.GeneratedProtocolMessageType('CCommunity_Comment', (_message.Message,), dict(
-  DESCRIPTOR = _CCOMMUNITY_COMMENT,
-  __module__ = 'steammessages_webui_friends_pb2'
+CCommunity_Comment = _reflection.GeneratedProtocolMessageType('CCommunity_Comment', (_message.Message,), {
+  'DESCRIPTOR' : _CCOMMUNITY_COMMENT,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CCommunity_Comment)
-  ))
+  })
 _sym_db.RegisterMessage(CCommunity_Comment)
 
-CCommunity_GetCommentThread_Response = _reflection.GeneratedProtocolMessageType('CCommunity_GetCommentThread_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCOMMUNITY_GETCOMMENTTHREAD_RESPONSE,
-  __module__ = 'steammessages_webui_friends_pb2'
+CCommunity_GetCommentThread_Response = _reflection.GeneratedProtocolMessageType('CCommunity_GetCommentThread_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCOMMUNITY_GETCOMMENTTHREAD_RESPONSE,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CCommunity_GetCommentThread_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CCommunity_GetCommentThread_Response)
 
-CCommunity_PostCommentToThread_Request = _reflection.GeneratedProtocolMessageType('CCommunity_PostCommentToThread_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCOMMUNITY_POSTCOMMENTTOTHREAD_REQUEST,
-  __module__ = 'steammessages_webui_friends_pb2'
+CCommunity_PostCommentToThread_Request = _reflection.GeneratedProtocolMessageType('CCommunity_PostCommentToThread_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCOMMUNITY_POSTCOMMENTTOTHREAD_REQUEST,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CCommunity_PostCommentToThread_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CCommunity_PostCommentToThread_Request)
 
-CCommunity_PostCommentToThread_Response = _reflection.GeneratedProtocolMessageType('CCommunity_PostCommentToThread_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCOMMUNITY_POSTCOMMENTTOTHREAD_RESPONSE,
-  __module__ = 'steammessages_webui_friends_pb2'
+CCommunity_PostCommentToThread_Response = _reflection.GeneratedProtocolMessageType('CCommunity_PostCommentToThread_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCOMMUNITY_POSTCOMMENTTOTHREAD_RESPONSE,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CCommunity_PostCommentToThread_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CCommunity_PostCommentToThread_Response)
 
-CCommunity_DeleteCommentFromThread_Request = _reflection.GeneratedProtocolMessageType('CCommunity_DeleteCommentFromThread_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCOMMUNITY_DELETECOMMENTFROMTHREAD_REQUEST,
-  __module__ = 'steammessages_webui_friends_pb2'
+CCommunity_DeleteCommentFromThread_Request = _reflection.GeneratedProtocolMessageType('CCommunity_DeleteCommentFromThread_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCOMMUNITY_DELETECOMMENTFROMTHREAD_REQUEST,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CCommunity_DeleteCommentFromThread_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CCommunity_DeleteCommentFromThread_Request)
 
-CCommunity_DeleteCommentFromThread_Response = _reflection.GeneratedProtocolMessageType('CCommunity_DeleteCommentFromThread_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCOMMUNITY_DELETECOMMENTFROMTHREAD_RESPONSE,
-  __module__ = 'steammessages_webui_friends_pb2'
+CCommunity_DeleteCommentFromThread_Response = _reflection.GeneratedProtocolMessageType('CCommunity_DeleteCommentFromThread_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCOMMUNITY_DELETECOMMENTFROMTHREAD_RESPONSE,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CCommunity_DeleteCommentFromThread_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CCommunity_DeleteCommentFromThread_Response)
 
-CCommunity_RateCommentThread_Request = _reflection.GeneratedProtocolMessageType('CCommunity_RateCommentThread_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCOMMUNITY_RATECOMMENTTHREAD_REQUEST,
-  __module__ = 'steammessages_webui_friends_pb2'
+CCommunity_RateCommentThread_Request = _reflection.GeneratedProtocolMessageType('CCommunity_RateCommentThread_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCOMMUNITY_RATECOMMENTTHREAD_REQUEST,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CCommunity_RateCommentThread_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CCommunity_RateCommentThread_Request)
 
-CCommunity_RateCommentThread_Response = _reflection.GeneratedProtocolMessageType('CCommunity_RateCommentThread_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCOMMUNITY_RATECOMMENTTHREAD_RESPONSE,
-  __module__ = 'steammessages_webui_friends_pb2'
+CCommunity_RateCommentThread_Response = _reflection.GeneratedProtocolMessageType('CCommunity_RateCommentThread_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCOMMUNITY_RATECOMMENTTHREAD_RESPONSE,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CCommunity_RateCommentThread_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CCommunity_RateCommentThread_Response)
 
-CCommunity_GetCommentThreadRatings_Request = _reflection.GeneratedProtocolMessageType('CCommunity_GetCommentThreadRatings_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCOMMUNITY_GETCOMMENTTHREADRATINGS_REQUEST,
-  __module__ = 'steammessages_webui_friends_pb2'
+CCommunity_GetCommentThreadRatings_Request = _reflection.GeneratedProtocolMessageType('CCommunity_GetCommentThreadRatings_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCOMMUNITY_GETCOMMENTTHREADRATINGS_REQUEST,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CCommunity_GetCommentThreadRatings_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CCommunity_GetCommentThreadRatings_Request)
 
-CCommunity_GetCommentThreadRatings_Response = _reflection.GeneratedProtocolMessageType('CCommunity_GetCommentThreadRatings_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCOMMUNITY_GETCOMMENTTHREADRATINGS_RESPONSE,
-  __module__ = 'steammessages_webui_friends_pb2'
+CCommunity_GetCommentThreadRatings_Response = _reflection.GeneratedProtocolMessageType('CCommunity_GetCommentThreadRatings_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCOMMUNITY_GETCOMMENTTHREADRATINGS_RESPONSE,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CCommunity_GetCommentThreadRatings_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CCommunity_GetCommentThreadRatings_Response)
 
-CCommunity_RateClanAnnouncement_Request = _reflection.GeneratedProtocolMessageType('CCommunity_RateClanAnnouncement_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCOMMUNITY_RATECLANANNOUNCEMENT_REQUEST,
-  __module__ = 'steammessages_webui_friends_pb2'
+CCommunity_RateClanAnnouncement_Request = _reflection.GeneratedProtocolMessageType('CCommunity_RateClanAnnouncement_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCOMMUNITY_RATECLANANNOUNCEMENT_REQUEST,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CCommunity_RateClanAnnouncement_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CCommunity_RateClanAnnouncement_Request)
 
-CCommunity_RateClanAnnouncement_Response = _reflection.GeneratedProtocolMessageType('CCommunity_RateClanAnnouncement_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCOMMUNITY_RATECLANANNOUNCEMENT_RESPONSE,
-  __module__ = 'steammessages_webui_friends_pb2'
+CCommunity_RateClanAnnouncement_Response = _reflection.GeneratedProtocolMessageType('CCommunity_RateClanAnnouncement_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCOMMUNITY_RATECLANANNOUNCEMENT_RESPONSE,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CCommunity_RateClanAnnouncement_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CCommunity_RateClanAnnouncement_Response)
 
-CCommunity_GetClanAnnouncementVoteForUser_Request = _reflection.GeneratedProtocolMessageType('CCommunity_GetClanAnnouncementVoteForUser_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCOMMUNITY_GETCLANANNOUNCEMENTVOTEFORUSER_REQUEST,
-  __module__ = 'steammessages_webui_friends_pb2'
+CCommunity_GetClanAnnouncementVoteForUser_Request = _reflection.GeneratedProtocolMessageType('CCommunity_GetClanAnnouncementVoteForUser_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCOMMUNITY_GETCLANANNOUNCEMENTVOTEFORUSER_REQUEST,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CCommunity_GetClanAnnouncementVoteForUser_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CCommunity_GetClanAnnouncementVoteForUser_Request)
 
-CCommunity_GetClanAnnouncementVoteForUser_Response = _reflection.GeneratedProtocolMessageType('CCommunity_GetClanAnnouncementVoteForUser_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCOMMUNITY_GETCLANANNOUNCEMENTVOTEFORUSER_RESPONSE,
-  __module__ = 'steammessages_webui_friends_pb2'
+CCommunity_GetClanAnnouncementVoteForUser_Response = _reflection.GeneratedProtocolMessageType('CCommunity_GetClanAnnouncementVoteForUser_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCOMMUNITY_GETCLANANNOUNCEMENTVOTEFORUSER_RESPONSE,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CCommunity_GetClanAnnouncementVoteForUser_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CCommunity_GetClanAnnouncementVoteForUser_Response)
 
-CAppPriority = _reflection.GeneratedProtocolMessageType('CAppPriority', (_message.Message,), dict(
-  DESCRIPTOR = _CAPPPRIORITY,
-  __module__ = 'steammessages_webui_friends_pb2'
+CAppPriority = _reflection.GeneratedProtocolMessageType('CAppPriority', (_message.Message,), {
+  'DESCRIPTOR' : _CAPPPRIORITY,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CAppPriority)
-  ))
+  })
 _sym_db.RegisterMessage(CAppPriority)
 
-CCommunity_GetUserPartnerEventNews_Request = _reflection.GeneratedProtocolMessageType('CCommunity_GetUserPartnerEventNews_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCOMMUNITY_GETUSERPARTNEREVENTNEWS_REQUEST,
-  __module__ = 'steammessages_webui_friends_pb2'
+CCommunity_GetUserPartnerEventNews_Request = _reflection.GeneratedProtocolMessageType('CCommunity_GetUserPartnerEventNews_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCOMMUNITY_GETUSERPARTNEREVENTNEWS_REQUEST,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CCommunity_GetUserPartnerEventNews_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CCommunity_GetUserPartnerEventNews_Request)
 
-CCommunity_GetUserPartnerEventNews_Response = _reflection.GeneratedProtocolMessageType('CCommunity_GetUserPartnerEventNews_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCOMMUNITY_GETUSERPARTNEREVENTNEWS_RESPONSE,
-  __module__ = 'steammessages_webui_friends_pb2'
+CCommunity_GetUserPartnerEventNews_Response = _reflection.GeneratedProtocolMessageType('CCommunity_GetUserPartnerEventNews_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCOMMUNITY_GETUSERPARTNEREVENTNEWS_RESPONSE,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CCommunity_GetUserPartnerEventNews_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CCommunity_GetUserPartnerEventNews_Response)
 
-CCommunity_GetBestEventsForUser_Request = _reflection.GeneratedProtocolMessageType('CCommunity_GetBestEventsForUser_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCOMMUNITY_GETBESTEVENTSFORUSER_REQUEST,
-  __module__ = 'steammessages_webui_friends_pb2'
+CCommunity_GetBestEventsForUser_Request = _reflection.GeneratedProtocolMessageType('CCommunity_GetBestEventsForUser_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCOMMUNITY_GETBESTEVENTSFORUSER_REQUEST,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CCommunity_GetBestEventsForUser_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CCommunity_GetBestEventsForUser_Request)
 
-CCommunity_PartnerEventResult = _reflection.GeneratedProtocolMessageType('CCommunity_PartnerEventResult', (_message.Message,), dict(
-  DESCRIPTOR = _CCOMMUNITY_PARTNEREVENTRESULT,
-  __module__ = 'steammessages_webui_friends_pb2'
+CCommunity_PartnerEventResult = _reflection.GeneratedProtocolMessageType('CCommunity_PartnerEventResult', (_message.Message,), {
+  'DESCRIPTOR' : _CCOMMUNITY_PARTNEREVENTRESULT,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CCommunity_PartnerEventResult)
-  ))
+  })
 _sym_db.RegisterMessage(CCommunity_PartnerEventResult)
 
-CCommunity_GetBestEventsForUser_Response = _reflection.GeneratedProtocolMessageType('CCommunity_GetBestEventsForUser_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCOMMUNITY_GETBESTEVENTSFORUSER_RESPONSE,
-  __module__ = 'steammessages_webui_friends_pb2'
+CCommunity_GetBestEventsForUser_Response = _reflection.GeneratedProtocolMessageType('CCommunity_GetBestEventsForUser_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCOMMUNITY_GETBESTEVENTSFORUSER_RESPONSE,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CCommunity_GetBestEventsForUser_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CCommunity_GetBestEventsForUser_Response)
 
-CCommunity_ClearUserPartnerEventsAppPriorities_Request = _reflection.GeneratedProtocolMessageType('CCommunity_ClearUserPartnerEventsAppPriorities_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCOMMUNITY_CLEARUSERPARTNEREVENTSAPPPRIORITIES_REQUEST,
-  __module__ = 'steammessages_webui_friends_pb2'
+CCommunity_ClearUserPartnerEventsAppPriorities_Request = _reflection.GeneratedProtocolMessageType('CCommunity_ClearUserPartnerEventsAppPriorities_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCOMMUNITY_CLEARUSERPARTNEREVENTSAPPPRIORITIES_REQUEST,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CCommunity_ClearUserPartnerEventsAppPriorities_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CCommunity_ClearUserPartnerEventsAppPriorities_Request)
 
-CCommunity_ClearUserPartnerEventsAppPriorities_Response = _reflection.GeneratedProtocolMessageType('CCommunity_ClearUserPartnerEventsAppPriorities_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCOMMUNITY_CLEARUSERPARTNEREVENTSAPPPRIORITIES_RESPONSE,
-  __module__ = 'steammessages_webui_friends_pb2'
+CCommunity_ClearUserPartnerEventsAppPriorities_Response = _reflection.GeneratedProtocolMessageType('CCommunity_ClearUserPartnerEventsAppPriorities_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCOMMUNITY_CLEARUSERPARTNEREVENTSAPPPRIORITIES_RESPONSE,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CCommunity_ClearUserPartnerEventsAppPriorities_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CCommunity_ClearUserPartnerEventsAppPriorities_Response)
 
-CCommunity_PartnerEventsAppPriority = _reflection.GeneratedProtocolMessageType('CCommunity_PartnerEventsAppPriority', (_message.Message,), dict(
-  DESCRIPTOR = _CCOMMUNITY_PARTNEREVENTSAPPPRIORITY,
-  __module__ = 'steammessages_webui_friends_pb2'
+CCommunity_PartnerEventsAppPriority = _reflection.GeneratedProtocolMessageType('CCommunity_PartnerEventsAppPriority', (_message.Message,), {
+  'DESCRIPTOR' : _CCOMMUNITY_PARTNEREVENTSAPPPRIORITY,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CCommunity_PartnerEventsAppPriority)
-  ))
+  })
 _sym_db.RegisterMessage(CCommunity_PartnerEventsAppPriority)
 
-CCommunity_GetUserPartnerEventsAppPriorities_Request = _reflection.GeneratedProtocolMessageType('CCommunity_GetUserPartnerEventsAppPriorities_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCOMMUNITY_GETUSERPARTNEREVENTSAPPPRIORITIES_REQUEST,
-  __module__ = 'steammessages_webui_friends_pb2'
+CCommunity_GetUserPartnerEventsAppPriorities_Request = _reflection.GeneratedProtocolMessageType('CCommunity_GetUserPartnerEventsAppPriorities_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCOMMUNITY_GETUSERPARTNEREVENTSAPPPRIORITIES_REQUEST,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CCommunity_GetUserPartnerEventsAppPriorities_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CCommunity_GetUserPartnerEventsAppPriorities_Request)
 
-CCommunity_GetUserPartnerEventsAppPriorities_Response = _reflection.GeneratedProtocolMessageType('CCommunity_GetUserPartnerEventsAppPriorities_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCOMMUNITY_GETUSERPARTNEREVENTSAPPPRIORITIES_RESPONSE,
-  __module__ = 'steammessages_webui_friends_pb2'
+CCommunity_GetUserPartnerEventsAppPriorities_Response = _reflection.GeneratedProtocolMessageType('CCommunity_GetUserPartnerEventsAppPriorities_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCOMMUNITY_GETUSERPARTNEREVENTSAPPPRIORITIES_RESPONSE,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CCommunity_GetUserPartnerEventsAppPriorities_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CCommunity_GetUserPartnerEventsAppPriorities_Response)
 
-CCommunity_ClearSinglePartnerEventsAppPriority_Request = _reflection.GeneratedProtocolMessageType('CCommunity_ClearSinglePartnerEventsAppPriority_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCOMMUNITY_CLEARSINGLEPARTNEREVENTSAPPPRIORITY_REQUEST,
-  __module__ = 'steammessages_webui_friends_pb2'
+CCommunity_ClearSinglePartnerEventsAppPriority_Request = _reflection.GeneratedProtocolMessageType('CCommunity_ClearSinglePartnerEventsAppPriority_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCOMMUNITY_CLEARSINGLEPARTNEREVENTSAPPPRIORITY_REQUEST,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CCommunity_ClearSinglePartnerEventsAppPriority_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CCommunity_ClearSinglePartnerEventsAppPriority_Request)
 
-CCommunity_ClearSinglePartnerEventsAppPriority_Response = _reflection.GeneratedProtocolMessageType('CCommunity_ClearSinglePartnerEventsAppPriority_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCOMMUNITY_CLEARSINGLEPARTNEREVENTSAPPPRIORITY_RESPONSE,
-  __module__ = 'steammessages_webui_friends_pb2'
+CCommunity_ClearSinglePartnerEventsAppPriority_Response = _reflection.GeneratedProtocolMessageType('CCommunity_ClearSinglePartnerEventsAppPriority_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCOMMUNITY_CLEARSINGLEPARTNEREVENTSAPPPRIORITY_RESPONSE,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CCommunity_ClearSinglePartnerEventsAppPriority_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CCommunity_ClearSinglePartnerEventsAppPriority_Response)
 
-CCommunity_PartnerEventsShowMoreForApp_Request = _reflection.GeneratedProtocolMessageType('CCommunity_PartnerEventsShowMoreForApp_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCOMMUNITY_PARTNEREVENTSSHOWMOREFORAPP_REQUEST,
-  __module__ = 'steammessages_webui_friends_pb2'
+CCommunity_PartnerEventsShowMoreForApp_Request = _reflection.GeneratedProtocolMessageType('CCommunity_PartnerEventsShowMoreForApp_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCOMMUNITY_PARTNEREVENTSSHOWMOREFORAPP_REQUEST,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CCommunity_PartnerEventsShowMoreForApp_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CCommunity_PartnerEventsShowMoreForApp_Request)
 
-CCommunity_PartnerEventsShowMoreForApp_Response = _reflection.GeneratedProtocolMessageType('CCommunity_PartnerEventsShowMoreForApp_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCOMMUNITY_PARTNEREVENTSSHOWMOREFORAPP_RESPONSE,
-  __module__ = 'steammessages_webui_friends_pb2'
+CCommunity_PartnerEventsShowMoreForApp_Response = _reflection.GeneratedProtocolMessageType('CCommunity_PartnerEventsShowMoreForApp_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCOMMUNITY_PARTNEREVENTSSHOWMOREFORAPP_RESPONSE,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CCommunity_PartnerEventsShowMoreForApp_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CCommunity_PartnerEventsShowMoreForApp_Response)
 
-CCommunity_PartnerEventsShowLessForApp_Request = _reflection.GeneratedProtocolMessageType('CCommunity_PartnerEventsShowLessForApp_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCOMMUNITY_PARTNEREVENTSSHOWLESSFORAPP_REQUEST,
-  __module__ = 'steammessages_webui_friends_pb2'
+CCommunity_PartnerEventsShowLessForApp_Request = _reflection.GeneratedProtocolMessageType('CCommunity_PartnerEventsShowLessForApp_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCOMMUNITY_PARTNEREVENTSSHOWLESSFORAPP_REQUEST,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CCommunity_PartnerEventsShowLessForApp_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CCommunity_PartnerEventsShowLessForApp_Request)
 
-CCommunity_PartnerEventsShowLessForApp_Response = _reflection.GeneratedProtocolMessageType('CCommunity_PartnerEventsShowLessForApp_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCOMMUNITY_PARTNEREVENTSSHOWLESSFORAPP_RESPONSE,
-  __module__ = 'steammessages_webui_friends_pb2'
+CCommunity_PartnerEventsShowLessForApp_Response = _reflection.GeneratedProtocolMessageType('CCommunity_PartnerEventsShowLessForApp_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCOMMUNITY_PARTNEREVENTSSHOWLESSFORAPP_RESPONSE,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CCommunity_PartnerEventsShowLessForApp_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CCommunity_PartnerEventsShowLessForApp_Response)
 
-CCommunity_MarkPartnerEventsForUser_Request = _reflection.GeneratedProtocolMessageType('CCommunity_MarkPartnerEventsForUser_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCOMMUNITY_MARKPARTNEREVENTSFORUSER_REQUEST,
-  __module__ = 'steammessages_webui_friends_pb2'
+CCommunity_MarkPartnerEventsForUser_Request = _reflection.GeneratedProtocolMessageType('CCommunity_MarkPartnerEventsForUser_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCOMMUNITY_MARKPARTNEREVENTSFORUSER_REQUEST,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CCommunity_MarkPartnerEventsForUser_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CCommunity_MarkPartnerEventsForUser_Request)
 
-CCommunity_MarkPartnerEventsForUser_Request_PartnerEventMarking = _reflection.GeneratedProtocolMessageType('CCommunity_MarkPartnerEventsForUser_Request_PartnerEventMarking', (_message.Message,), dict(
-  DESCRIPTOR = _CCOMMUNITY_MARKPARTNEREVENTSFORUSER_REQUEST_PARTNEREVENTMARKING,
-  __module__ = 'steammessages_webui_friends_pb2'
+CCommunity_MarkPartnerEventsForUser_Request_PartnerEventMarking = _reflection.GeneratedProtocolMessageType('CCommunity_MarkPartnerEventsForUser_Request_PartnerEventMarking', (_message.Message,), {
+  'DESCRIPTOR' : _CCOMMUNITY_MARKPARTNEREVENTSFORUSER_REQUEST_PARTNEREVENTMARKING,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CCommunity_MarkPartnerEventsForUser_Request_PartnerEventMarking)
-  ))
+  })
 _sym_db.RegisterMessage(CCommunity_MarkPartnerEventsForUser_Request_PartnerEventMarking)
 
-CCommunity_MarkPartnerEventsForUser_Response = _reflection.GeneratedProtocolMessageType('CCommunity_MarkPartnerEventsForUser_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCOMMUNITY_MARKPARTNEREVENTSFORUSER_RESPONSE,
-  __module__ = 'steammessages_webui_friends_pb2'
+CCommunity_MarkPartnerEventsForUser_Response = _reflection.GeneratedProtocolMessageType('CCommunity_MarkPartnerEventsForUser_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCOMMUNITY_MARKPARTNEREVENTSFORUSER_RESPONSE,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CCommunity_MarkPartnerEventsForUser_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CCommunity_MarkPartnerEventsForUser_Response)
 
-CProductImpressionsFromClient_Notification = _reflection.GeneratedProtocolMessageType('CProductImpressionsFromClient_Notification', (_message.Message,), dict(
-  DESCRIPTOR = _CPRODUCTIMPRESSIONSFROMCLIENT_NOTIFICATION,
-  __module__ = 'steammessages_webui_friends_pb2'
+CProductImpressionsFromClient_Notification = _reflection.GeneratedProtocolMessageType('CProductImpressionsFromClient_Notification', (_message.Message,), {
+  'DESCRIPTOR' : _CPRODUCTIMPRESSIONSFROMCLIENT_NOTIFICATION,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CProductImpressionsFromClient_Notification)
-  ))
+  })
 _sym_db.RegisterMessage(CProductImpressionsFromClient_Notification)
 
-CProductImpressionsFromClient_Notification_Impression = _reflection.GeneratedProtocolMessageType('CProductImpressionsFromClient_Notification_Impression', (_message.Message,), dict(
-  DESCRIPTOR = _CPRODUCTIMPRESSIONSFROMCLIENT_NOTIFICATION_IMPRESSION,
-  __module__ = 'steammessages_webui_friends_pb2'
+CProductImpressionsFromClient_Notification_Impression = _reflection.GeneratedProtocolMessageType('CProductImpressionsFromClient_Notification_Impression', (_message.Message,), {
+  'DESCRIPTOR' : _CPRODUCTIMPRESSIONSFROMCLIENT_NOTIFICATION_IMPRESSION,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CProductImpressionsFromClient_Notification_Impression)
-  ))
+  })
 _sym_db.RegisterMessage(CProductImpressionsFromClient_Notification_Impression)
 
-CFriendsListCategory = _reflection.GeneratedProtocolMessageType('CFriendsListCategory', (_message.Message,), dict(
-  DESCRIPTOR = _CFRIENDSLISTCATEGORY,
-  __module__ = 'steammessages_webui_friends_pb2'
+CFriendsListCategory = _reflection.GeneratedProtocolMessageType('CFriendsListCategory', (_message.Message,), {
+  'DESCRIPTOR' : _CFRIENDSLISTCATEGORY,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CFriendsListCategory)
-  ))
+  })
 _sym_db.RegisterMessage(CFriendsListCategory)
 
-CFriendsList_GetCategories_Request = _reflection.GeneratedProtocolMessageType('CFriendsList_GetCategories_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CFRIENDSLIST_GETCATEGORIES_REQUEST,
-  __module__ = 'steammessages_webui_friends_pb2'
+CFriendsList_GetCategories_Request = _reflection.GeneratedProtocolMessageType('CFriendsList_GetCategories_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CFRIENDSLIST_GETCATEGORIES_REQUEST,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CFriendsList_GetCategories_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CFriendsList_GetCategories_Request)
 
-CFriendsList_GetCategories_Response = _reflection.GeneratedProtocolMessageType('CFriendsList_GetCategories_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CFRIENDSLIST_GETCATEGORIES_RESPONSE,
-  __module__ = 'steammessages_webui_friends_pb2'
+CFriendsList_GetCategories_Response = _reflection.GeneratedProtocolMessageType('CFriendsList_GetCategories_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CFRIENDSLIST_GETCATEGORIES_RESPONSE,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CFriendsList_GetCategories_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CFriendsList_GetCategories_Response)
 
-CFriendsListFavoriteEntry = _reflection.GeneratedProtocolMessageType('CFriendsListFavoriteEntry', (_message.Message,), dict(
-  DESCRIPTOR = _CFRIENDSLISTFAVORITEENTRY,
-  __module__ = 'steammessages_webui_friends_pb2'
+CFriendsListFavoriteEntry = _reflection.GeneratedProtocolMessageType('CFriendsListFavoriteEntry', (_message.Message,), {
+  'DESCRIPTOR' : _CFRIENDSLISTFAVORITEENTRY,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CFriendsListFavoriteEntry)
-  ))
+  })
 _sym_db.RegisterMessage(CFriendsListFavoriteEntry)
 
-CFriendsList_GetFavorites_Request = _reflection.GeneratedProtocolMessageType('CFriendsList_GetFavorites_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CFRIENDSLIST_GETFAVORITES_REQUEST,
-  __module__ = 'steammessages_webui_friends_pb2'
+CFriendsList_GetFavorites_Request = _reflection.GeneratedProtocolMessageType('CFriendsList_GetFavorites_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CFRIENDSLIST_GETFAVORITES_REQUEST,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CFriendsList_GetFavorites_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CFriendsList_GetFavorites_Request)
 
-CFriendsList_GetFavorites_Response = _reflection.GeneratedProtocolMessageType('CFriendsList_GetFavorites_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CFRIENDSLIST_GETFAVORITES_RESPONSE,
-  __module__ = 'steammessages_webui_friends_pb2'
+CFriendsList_GetFavorites_Response = _reflection.GeneratedProtocolMessageType('CFriendsList_GetFavorites_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CFRIENDSLIST_GETFAVORITES_RESPONSE,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CFriendsList_GetFavorites_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CFriendsList_GetFavorites_Response)
 
-CFriendsList_SetFavorites_Request = _reflection.GeneratedProtocolMessageType('CFriendsList_SetFavorites_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CFRIENDSLIST_SETFAVORITES_REQUEST,
-  __module__ = 'steammessages_webui_friends_pb2'
+CFriendsList_SetFavorites_Request = _reflection.GeneratedProtocolMessageType('CFriendsList_SetFavorites_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CFRIENDSLIST_SETFAVORITES_REQUEST,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CFriendsList_SetFavorites_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CFriendsList_SetFavorites_Request)
 
-CFriendsList_SetFavorites_Response = _reflection.GeneratedProtocolMessageType('CFriendsList_SetFavorites_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CFRIENDSLIST_SETFAVORITES_RESPONSE,
-  __module__ = 'steammessages_webui_friends_pb2'
+CFriendsList_SetFavorites_Response = _reflection.GeneratedProtocolMessageType('CFriendsList_SetFavorites_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CFRIENDSLIST_SETFAVORITES_RESPONSE,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CFriendsList_SetFavorites_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CFriendsList_SetFavorites_Response)
 
-CFriendsList_FavoritesChanged_Notification = _reflection.GeneratedProtocolMessageType('CFriendsList_FavoritesChanged_Notification', (_message.Message,), dict(
-  DESCRIPTOR = _CFRIENDSLIST_FAVORITESCHANGED_NOTIFICATION,
-  __module__ = 'steammessages_webui_friends_pb2'
+CFriendsList_FavoritesChanged_Notification = _reflection.GeneratedProtocolMessageType('CFriendsList_FavoritesChanged_Notification', (_message.Message,), {
+  'DESCRIPTOR' : _CFRIENDSLIST_FAVORITESCHANGED_NOTIFICATION,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CFriendsList_FavoritesChanged_Notification)
-  ))
+  })
 _sym_db.RegisterMessage(CFriendsList_FavoritesChanged_Notification)
 
-CFriendsList_GetFriendsList_Request = _reflection.GeneratedProtocolMessageType('CFriendsList_GetFriendsList_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CFRIENDSLIST_GETFRIENDSLIST_REQUEST,
-  __module__ = 'steammessages_webui_friends_pb2'
+CFriendsList_GetFriendsList_Request = _reflection.GeneratedProtocolMessageType('CFriendsList_GetFriendsList_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CFRIENDSLIST_GETFRIENDSLIST_REQUEST,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CFriendsList_GetFriendsList_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CFriendsList_GetFriendsList_Request)
 
-CFriendsList_GetFriendsList_Response = _reflection.GeneratedProtocolMessageType('CFriendsList_GetFriendsList_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CFRIENDSLIST_GETFRIENDSLIST_RESPONSE,
-  __module__ = 'steammessages_webui_friends_pb2'
+CFriendsList_GetFriendsList_Response = _reflection.GeneratedProtocolMessageType('CFriendsList_GetFriendsList_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CFRIENDSLIST_GETFRIENDSLIST_RESPONSE,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CFriendsList_GetFriendsList_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CFriendsList_GetFriendsList_Response)
 
-CMsgClientUCMEnumerateUserPublishedFiles = _reflection.GeneratedProtocolMessageType('CMsgClientUCMEnumerateUserPublishedFiles', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTUCMENUMERATEUSERPUBLISHEDFILES,
-  __module__ = 'steammessages_webui_friends_pb2'
+CMsgClientUCMEnumerateUserPublishedFiles = _reflection.GeneratedProtocolMessageType('CMsgClientUCMEnumerateUserPublishedFiles', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTUCMENUMERATEUSERPUBLISHEDFILES,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientUCMEnumerateUserPublishedFiles)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientUCMEnumerateUserPublishedFiles)
 
-CMsgClientUCMEnumerateUserPublishedFilesResponse = _reflection.GeneratedProtocolMessageType('CMsgClientUCMEnumerateUserPublishedFilesResponse', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTUCMENUMERATEUSERPUBLISHEDFILESRESPONSE,
-  __module__ = 'steammessages_webui_friends_pb2'
+CMsgClientUCMEnumerateUserPublishedFilesResponse = _reflection.GeneratedProtocolMessageType('CMsgClientUCMEnumerateUserPublishedFilesResponse', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTUCMENUMERATEUSERPUBLISHEDFILESRESPONSE,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientUCMEnumerateUserPublishedFilesResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientUCMEnumerateUserPublishedFilesResponse)
 
-CMsgClientUCMEnumerateUserPublishedFilesResponse_PublishedFileId = _reflection.GeneratedProtocolMessageType('CMsgClientUCMEnumerateUserPublishedFilesResponse_PublishedFileId', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTUCMENUMERATEUSERPUBLISHEDFILESRESPONSE_PUBLISHEDFILEID,
-  __module__ = 'steammessages_webui_friends_pb2'
+CMsgClientUCMEnumerateUserPublishedFilesResponse_PublishedFileId = _reflection.GeneratedProtocolMessageType('CMsgClientUCMEnumerateUserPublishedFilesResponse_PublishedFileId', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTUCMENUMERATEUSERPUBLISHEDFILESRESPONSE_PUBLISHEDFILEID,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientUCMEnumerateUserPublishedFilesResponse_PublishedFileId)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientUCMEnumerateUserPublishedFilesResponse_PublishedFileId)
 
-CMsgClientUCMEnumerateUserSubscribedFiles = _reflection.GeneratedProtocolMessageType('CMsgClientUCMEnumerateUserSubscribedFiles', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTUCMENUMERATEUSERSUBSCRIBEDFILES,
-  __module__ = 'steammessages_webui_friends_pb2'
+CMsgClientUCMEnumerateUserSubscribedFiles = _reflection.GeneratedProtocolMessageType('CMsgClientUCMEnumerateUserSubscribedFiles', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTUCMENUMERATEUSERSUBSCRIBEDFILES,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientUCMEnumerateUserSubscribedFiles)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientUCMEnumerateUserSubscribedFiles)
 
-CMsgClientUCMEnumerateUserSubscribedFilesResponse = _reflection.GeneratedProtocolMessageType('CMsgClientUCMEnumerateUserSubscribedFilesResponse', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTUCMENUMERATEUSERSUBSCRIBEDFILESRESPONSE,
-  __module__ = 'steammessages_webui_friends_pb2'
+CMsgClientUCMEnumerateUserSubscribedFilesResponse = _reflection.GeneratedProtocolMessageType('CMsgClientUCMEnumerateUserSubscribedFilesResponse', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTUCMENUMERATEUSERSUBSCRIBEDFILESRESPONSE,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientUCMEnumerateUserSubscribedFilesResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientUCMEnumerateUserSubscribedFilesResponse)
 
-CMsgClientUCMEnumerateUserSubscribedFilesResponse_PublishedFileId = _reflection.GeneratedProtocolMessageType('CMsgClientUCMEnumerateUserSubscribedFilesResponse_PublishedFileId', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTUCMENUMERATEUSERSUBSCRIBEDFILESRESPONSE_PUBLISHEDFILEID,
-  __module__ = 'steammessages_webui_friends_pb2'
+CMsgClientUCMEnumerateUserSubscribedFilesResponse_PublishedFileId = _reflection.GeneratedProtocolMessageType('CMsgClientUCMEnumerateUserSubscribedFilesResponse_PublishedFileId', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTUCMENUMERATEUSERSUBSCRIBEDFILESRESPONSE_PUBLISHEDFILEID,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientUCMEnumerateUserSubscribedFilesResponse_PublishedFileId)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientUCMEnumerateUserSubscribedFilesResponse_PublishedFileId)
 
-CMsgClientUCMPublishedFileDeleted = _reflection.GeneratedProtocolMessageType('CMsgClientUCMPublishedFileDeleted', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTUCMPUBLISHEDFILEDELETED,
-  __module__ = 'steammessages_webui_friends_pb2'
+CMsgClientUCMPublishedFileDeleted = _reflection.GeneratedProtocolMessageType('CMsgClientUCMPublishedFileDeleted', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTUCMPUBLISHEDFILEDELETED,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientUCMPublishedFileDeleted)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientUCMPublishedFileDeleted)
 
-CMsgClientWorkshopItemInfoRequest = _reflection.GeneratedProtocolMessageType('CMsgClientWorkshopItemInfoRequest', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTWORKSHOPITEMINFOREQUEST,
-  __module__ = 'steammessages_webui_friends_pb2'
+CMsgClientWorkshopItemInfoRequest = _reflection.GeneratedProtocolMessageType('CMsgClientWorkshopItemInfoRequest', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTWORKSHOPITEMINFOREQUEST,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientWorkshopItemInfoRequest)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientWorkshopItemInfoRequest)
 
-CMsgClientWorkshopItemInfoRequest_WorkshopItem = _reflection.GeneratedProtocolMessageType('CMsgClientWorkshopItemInfoRequest_WorkshopItem', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTWORKSHOPITEMINFOREQUEST_WORKSHOPITEM,
-  __module__ = 'steammessages_webui_friends_pb2'
+CMsgClientWorkshopItemInfoRequest_WorkshopItem = _reflection.GeneratedProtocolMessageType('CMsgClientWorkshopItemInfoRequest_WorkshopItem', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTWORKSHOPITEMINFOREQUEST_WORKSHOPITEM,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientWorkshopItemInfoRequest_WorkshopItem)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientWorkshopItemInfoRequest_WorkshopItem)
 
-CMsgClientWorkshopItemInfoResponse = _reflection.GeneratedProtocolMessageType('CMsgClientWorkshopItemInfoResponse', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTWORKSHOPITEMINFORESPONSE,
-  __module__ = 'steammessages_webui_friends_pb2'
+CMsgClientWorkshopItemInfoResponse = _reflection.GeneratedProtocolMessageType('CMsgClientWorkshopItemInfoResponse', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTWORKSHOPITEMINFORESPONSE,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientWorkshopItemInfoResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientWorkshopItemInfoResponse)
 
-CMsgClientWorkshopItemInfoResponse_WorkshopItemInfo = _reflection.GeneratedProtocolMessageType('CMsgClientWorkshopItemInfoResponse_WorkshopItemInfo', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTWORKSHOPITEMINFORESPONSE_WORKSHOPITEMINFO,
-  __module__ = 'steammessages_webui_friends_pb2'
+CMsgClientWorkshopItemInfoResponse_WorkshopItemInfo = _reflection.GeneratedProtocolMessageType('CMsgClientWorkshopItemInfoResponse_WorkshopItemInfo', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTWORKSHOPITEMINFORESPONSE_WORKSHOPITEMINFO,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientWorkshopItemInfoResponse_WorkshopItemInfo)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientWorkshopItemInfoResponse_WorkshopItemInfo)
 
-CMsgClientUCMGetPublishedFilesForUser = _reflection.GeneratedProtocolMessageType('CMsgClientUCMGetPublishedFilesForUser', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTUCMGETPUBLISHEDFILESFORUSER,
-  __module__ = 'steammessages_webui_friends_pb2'
+CMsgClientUCMGetPublishedFilesForUser = _reflection.GeneratedProtocolMessageType('CMsgClientUCMGetPublishedFilesForUser', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTUCMGETPUBLISHEDFILESFORUSER,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientUCMGetPublishedFilesForUser)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientUCMGetPublishedFilesForUser)
 
-CMsgClientUCMGetPublishedFilesForUserResponse = _reflection.GeneratedProtocolMessageType('CMsgClientUCMGetPublishedFilesForUserResponse', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTUCMGETPUBLISHEDFILESFORUSERRESPONSE,
-  __module__ = 'steammessages_webui_friends_pb2'
+CMsgClientUCMGetPublishedFilesForUserResponse = _reflection.GeneratedProtocolMessageType('CMsgClientUCMGetPublishedFilesForUserResponse', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTUCMGETPUBLISHEDFILESFORUSERRESPONSE,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientUCMGetPublishedFilesForUserResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientUCMGetPublishedFilesForUserResponse)
 
-CMsgClientUCMGetPublishedFilesForUserResponse_PublishedFileId = _reflection.GeneratedProtocolMessageType('CMsgClientUCMGetPublishedFilesForUserResponse_PublishedFileId', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCLIENTUCMGETPUBLISHEDFILESFORUSERRESPONSE_PUBLISHEDFILEID,
-  __module__ = 'steammessages_webui_friends_pb2'
+CMsgClientUCMGetPublishedFilesForUserResponse_PublishedFileId = _reflection.GeneratedProtocolMessageType('CMsgClientUCMGetPublishedFilesForUserResponse_PublishedFileId', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCLIENTUCMGETPUBLISHEDFILESFORUSERRESPONSE_PUBLISHEDFILEID,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CMsgClientUCMGetPublishedFilesForUserResponse_PublishedFileId)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgClientUCMGetPublishedFilesForUserResponse_PublishedFileId)
 
-CMsgCREEnumeratePublishedFiles = _reflection.GeneratedProtocolMessageType('CMsgCREEnumeratePublishedFiles', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCREENUMERATEPUBLISHEDFILES,
-  __module__ = 'steammessages_webui_friends_pb2'
+CMsgCREEnumeratePublishedFiles = _reflection.GeneratedProtocolMessageType('CMsgCREEnumeratePublishedFiles', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCREENUMERATEPUBLISHEDFILES,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CMsgCREEnumeratePublishedFiles)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgCREEnumeratePublishedFiles)
 
-CMsgCREEnumeratePublishedFilesResponse = _reflection.GeneratedProtocolMessageType('CMsgCREEnumeratePublishedFilesResponse', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCREENUMERATEPUBLISHEDFILESRESPONSE,
-  __module__ = 'steammessages_webui_friends_pb2'
+CMsgCREEnumeratePublishedFilesResponse = _reflection.GeneratedProtocolMessageType('CMsgCREEnumeratePublishedFilesResponse', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCREENUMERATEPUBLISHEDFILESRESPONSE,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CMsgCREEnumeratePublishedFilesResponse)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgCREEnumeratePublishedFilesResponse)
 
-CMsgCREEnumeratePublishedFilesResponse_PublishedFileId = _reflection.GeneratedProtocolMessageType('CMsgCREEnumeratePublishedFilesResponse_PublishedFileId', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGCREENUMERATEPUBLISHEDFILESRESPONSE_PUBLISHEDFILEID,
-  __module__ = 'steammessages_webui_friends_pb2'
+CMsgCREEnumeratePublishedFilesResponse_PublishedFileId = _reflection.GeneratedProtocolMessageType('CMsgCREEnumeratePublishedFilesResponse_PublishedFileId', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGCREENUMERATEPUBLISHEDFILESRESPONSE_PUBLISHEDFILEID,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CMsgCREEnumeratePublishedFilesResponse_PublishedFileId)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgCREEnumeratePublishedFilesResponse_PublishedFileId)
 
-CMsgGameServerPingSample = _reflection.GeneratedProtocolMessageType('CMsgGameServerPingSample', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGGAMESERVERPINGSAMPLE,
-  __module__ = 'steammessages_webui_friends_pb2'
+CMsgGameServerPingSample = _reflection.GeneratedProtocolMessageType('CMsgGameServerPingSample', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGGAMESERVERPINGSAMPLE,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CMsgGameServerPingSample)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgGameServerPingSample)
 
-CMsgGameServerPingSample_Sample = _reflection.GeneratedProtocolMessageType('CMsgGameServerPingSample_Sample', (_message.Message,), dict(
-  DESCRIPTOR = _CMSGGAMESERVERPINGSAMPLE_SAMPLE,
-  __module__ = 'steammessages_webui_friends_pb2'
+CMsgGameServerPingSample_Sample = _reflection.GeneratedProtocolMessageType('CMsgGameServerPingSample_Sample', (_message.Message,), {
+  'DESCRIPTOR' : _CMSGGAMESERVERPINGSAMPLE_SAMPLE,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CMsgGameServerPingSample_Sample)
-  ))
+  })
 _sym_db.RegisterMessage(CMsgGameServerPingSample_Sample)
 
-CClan_RespondToClanInvite_Request = _reflection.GeneratedProtocolMessageType('CClan_RespondToClanInvite_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CCLAN_RESPONDTOCLANINVITE_REQUEST,
-  __module__ = 'steammessages_webui_friends_pb2'
+CClan_RespondToClanInvite_Request = _reflection.GeneratedProtocolMessageType('CClan_RespondToClanInvite_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CCLAN_RESPONDTOCLANINVITE_REQUEST,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CClan_RespondToClanInvite_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CClan_RespondToClanInvite_Request)
 
-CClan_RespondToClanInvite_Response = _reflection.GeneratedProtocolMessageType('CClan_RespondToClanInvite_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CCLAN_RESPONDTOCLANINVITE_RESPONSE,
-  __module__ = 'steammessages_webui_friends_pb2'
+CClan_RespondToClanInvite_Response = _reflection.GeneratedProtocolMessageType('CClan_RespondToClanInvite_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CCLAN_RESPONDTOCLANINVITE_RESPONSE,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CClan_RespondToClanInvite_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CClan_RespondToClanInvite_Response)
 
-CVoiceChat_RequestOneOnOneChat_Request = _reflection.GeneratedProtocolMessageType('CVoiceChat_RequestOneOnOneChat_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CVOICECHAT_REQUESTONEONONECHAT_REQUEST,
-  __module__ = 'steammessages_webui_friends_pb2'
+CVoiceChat_RequestOneOnOneChat_Request = _reflection.GeneratedProtocolMessageType('CVoiceChat_RequestOneOnOneChat_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CVOICECHAT_REQUESTONEONONECHAT_REQUEST,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CVoiceChat_RequestOneOnOneChat_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CVoiceChat_RequestOneOnOneChat_Request)
 
-CVoiceChat_RequestOneOnOneChat_Response = _reflection.GeneratedProtocolMessageType('CVoiceChat_RequestOneOnOneChat_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CVOICECHAT_REQUESTONEONONECHAT_RESPONSE,
-  __module__ = 'steammessages_webui_friends_pb2'
+CVoiceChat_RequestOneOnOneChat_Response = _reflection.GeneratedProtocolMessageType('CVoiceChat_RequestOneOnOneChat_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CVOICECHAT_REQUESTONEONONECHAT_RESPONSE,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CVoiceChat_RequestOneOnOneChat_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CVoiceChat_RequestOneOnOneChat_Response)
 
-CVoiceChat_OneOnOneChatRequested_Notification = _reflection.GeneratedProtocolMessageType('CVoiceChat_OneOnOneChatRequested_Notification', (_message.Message,), dict(
-  DESCRIPTOR = _CVOICECHAT_ONEONONECHATREQUESTED_NOTIFICATION,
-  __module__ = 'steammessages_webui_friends_pb2'
+CVoiceChat_OneOnOneChatRequested_Notification = _reflection.GeneratedProtocolMessageType('CVoiceChat_OneOnOneChatRequested_Notification', (_message.Message,), {
+  'DESCRIPTOR' : _CVOICECHAT_ONEONONECHATREQUESTED_NOTIFICATION,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CVoiceChat_OneOnOneChatRequested_Notification)
-  ))
+  })
 _sym_db.RegisterMessage(CVoiceChat_OneOnOneChatRequested_Notification)
 
-CVoiceChat_AnswerOneOnOneChat_Request = _reflection.GeneratedProtocolMessageType('CVoiceChat_AnswerOneOnOneChat_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CVOICECHAT_ANSWERONEONONECHAT_REQUEST,
-  __module__ = 'steammessages_webui_friends_pb2'
+CVoiceChat_AnswerOneOnOneChat_Request = _reflection.GeneratedProtocolMessageType('CVoiceChat_AnswerOneOnOneChat_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CVOICECHAT_ANSWERONEONONECHAT_REQUEST,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CVoiceChat_AnswerOneOnOneChat_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CVoiceChat_AnswerOneOnOneChat_Request)
 
-CVoiceChat_AnswerOneOnOneChat_Response = _reflection.GeneratedProtocolMessageType('CVoiceChat_AnswerOneOnOneChat_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CVOICECHAT_ANSWERONEONONECHAT_RESPONSE,
-  __module__ = 'steammessages_webui_friends_pb2'
+CVoiceChat_AnswerOneOnOneChat_Response = _reflection.GeneratedProtocolMessageType('CVoiceChat_AnswerOneOnOneChat_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CVOICECHAT_ANSWERONEONONECHAT_RESPONSE,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CVoiceChat_AnswerOneOnOneChat_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CVoiceChat_AnswerOneOnOneChat_Response)
 
-CVoiceChat_OneOnOneChatRequestResponse_Notification = _reflection.GeneratedProtocolMessageType('CVoiceChat_OneOnOneChatRequestResponse_Notification', (_message.Message,), dict(
-  DESCRIPTOR = _CVOICECHAT_ONEONONECHATREQUESTRESPONSE_NOTIFICATION,
-  __module__ = 'steammessages_webui_friends_pb2'
+CVoiceChat_OneOnOneChatRequestResponse_Notification = _reflection.GeneratedProtocolMessageType('CVoiceChat_OneOnOneChatRequestResponse_Notification', (_message.Message,), {
+  'DESCRIPTOR' : _CVOICECHAT_ONEONONECHATREQUESTRESPONSE_NOTIFICATION,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CVoiceChat_OneOnOneChatRequestResponse_Notification)
-  ))
+  })
 _sym_db.RegisterMessage(CVoiceChat_OneOnOneChatRequestResponse_Notification)
 
-CVoiceChat_EndOneOnOneChat_Request = _reflection.GeneratedProtocolMessageType('CVoiceChat_EndOneOnOneChat_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CVOICECHAT_ENDONEONONECHAT_REQUEST,
-  __module__ = 'steammessages_webui_friends_pb2'
+CVoiceChat_EndOneOnOneChat_Request = _reflection.GeneratedProtocolMessageType('CVoiceChat_EndOneOnOneChat_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CVOICECHAT_ENDONEONONECHAT_REQUEST,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CVoiceChat_EndOneOnOneChat_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CVoiceChat_EndOneOnOneChat_Request)
 
-CVoiceChat_EndOneOnOneChat_Response = _reflection.GeneratedProtocolMessageType('CVoiceChat_EndOneOnOneChat_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CVOICECHAT_ENDONEONONECHAT_RESPONSE,
-  __module__ = 'steammessages_webui_friends_pb2'
+CVoiceChat_EndOneOnOneChat_Response = _reflection.GeneratedProtocolMessageType('CVoiceChat_EndOneOnOneChat_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CVOICECHAT_ENDONEONONECHAT_RESPONSE,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CVoiceChat_EndOneOnOneChat_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CVoiceChat_EndOneOnOneChat_Response)
 
-CVoiceChat_LeaveOneOnOneChat_Request = _reflection.GeneratedProtocolMessageType('CVoiceChat_LeaveOneOnOneChat_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CVOICECHAT_LEAVEONEONONECHAT_REQUEST,
-  __module__ = 'steammessages_webui_friends_pb2'
+CVoiceChat_LeaveOneOnOneChat_Request = _reflection.GeneratedProtocolMessageType('CVoiceChat_LeaveOneOnOneChat_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CVOICECHAT_LEAVEONEONONECHAT_REQUEST,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CVoiceChat_LeaveOneOnOneChat_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CVoiceChat_LeaveOneOnOneChat_Request)
 
-CVoiceChat_LeaveOneOnOneChat_Response = _reflection.GeneratedProtocolMessageType('CVoiceChat_LeaveOneOnOneChat_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CVOICECHAT_LEAVEONEONONECHAT_RESPONSE,
-  __module__ = 'steammessages_webui_friends_pb2'
+CVoiceChat_LeaveOneOnOneChat_Response = _reflection.GeneratedProtocolMessageType('CVoiceChat_LeaveOneOnOneChat_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CVOICECHAT_LEAVEONEONONECHAT_RESPONSE,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CVoiceChat_LeaveOneOnOneChat_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CVoiceChat_LeaveOneOnOneChat_Response)
 
-CVoiceChat_UserJoinedVoiceChat_Notification = _reflection.GeneratedProtocolMessageType('CVoiceChat_UserJoinedVoiceChat_Notification', (_message.Message,), dict(
-  DESCRIPTOR = _CVOICECHAT_USERJOINEDVOICECHAT_NOTIFICATION,
-  __module__ = 'steammessages_webui_friends_pb2'
+CVoiceChat_UserJoinedVoiceChat_Notification = _reflection.GeneratedProtocolMessageType('CVoiceChat_UserJoinedVoiceChat_Notification', (_message.Message,), {
+  'DESCRIPTOR' : _CVOICECHAT_USERJOINEDVOICECHAT_NOTIFICATION,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CVoiceChat_UserJoinedVoiceChat_Notification)
-  ))
+  })
 _sym_db.RegisterMessage(CVoiceChat_UserJoinedVoiceChat_Notification)
 
-CVoiceChat_UserVoiceStatus_Notification = _reflection.GeneratedProtocolMessageType('CVoiceChat_UserVoiceStatus_Notification', (_message.Message,), dict(
-  DESCRIPTOR = _CVOICECHAT_USERVOICESTATUS_NOTIFICATION,
-  __module__ = 'steammessages_webui_friends_pb2'
+CVoiceChat_UserVoiceStatus_Notification = _reflection.GeneratedProtocolMessageType('CVoiceChat_UserVoiceStatus_Notification', (_message.Message,), {
+  'DESCRIPTOR' : _CVOICECHAT_USERVOICESTATUS_NOTIFICATION,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CVoiceChat_UserVoiceStatus_Notification)
-  ))
+  })
 _sym_db.RegisterMessage(CVoiceChat_UserVoiceStatus_Notification)
 
-CVoiceChat_AllMembersStatus_Notification = _reflection.GeneratedProtocolMessageType('CVoiceChat_AllMembersStatus_Notification', (_message.Message,), dict(
-  DESCRIPTOR = _CVOICECHAT_ALLMEMBERSSTATUS_NOTIFICATION,
-  __module__ = 'steammessages_webui_friends_pb2'
+CVoiceChat_AllMembersStatus_Notification = _reflection.GeneratedProtocolMessageType('CVoiceChat_AllMembersStatus_Notification', (_message.Message,), {
+  'DESCRIPTOR' : _CVOICECHAT_ALLMEMBERSSTATUS_NOTIFICATION,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CVoiceChat_AllMembersStatus_Notification)
-  ))
+  })
 _sym_db.RegisterMessage(CVoiceChat_AllMembersStatus_Notification)
 
-CVoiceChat_UpdateVoiceChatWebRTCData_Request = _reflection.GeneratedProtocolMessageType('CVoiceChat_UpdateVoiceChatWebRTCData_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CVOICECHAT_UPDATEVOICECHATWEBRTCDATA_REQUEST,
-  __module__ = 'steammessages_webui_friends_pb2'
+CVoiceChat_UpdateVoiceChatWebRTCData_Request = _reflection.GeneratedProtocolMessageType('CVoiceChat_UpdateVoiceChatWebRTCData_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CVOICECHAT_UPDATEVOICECHATWEBRTCDATA_REQUEST,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CVoiceChat_UpdateVoiceChatWebRTCData_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CVoiceChat_UpdateVoiceChatWebRTCData_Request)
 
-CVoiceChat_UpdateVoiceChatWebRTCData_Response = _reflection.GeneratedProtocolMessageType('CVoiceChat_UpdateVoiceChatWebRTCData_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CVOICECHAT_UPDATEVOICECHATWEBRTCDATA_RESPONSE,
-  __module__ = 'steammessages_webui_friends_pb2'
+CVoiceChat_UpdateVoiceChatWebRTCData_Response = _reflection.GeneratedProtocolMessageType('CVoiceChat_UpdateVoiceChatWebRTCData_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CVOICECHAT_UPDATEVOICECHATWEBRTCDATA_RESPONSE,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CVoiceChat_UpdateVoiceChatWebRTCData_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CVoiceChat_UpdateVoiceChatWebRTCData_Response)
 
-CVoiceChat_UploadClientVoiceChatLogs_Request = _reflection.GeneratedProtocolMessageType('CVoiceChat_UploadClientVoiceChatLogs_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CVOICECHAT_UPLOADCLIENTVOICECHATLOGS_REQUEST,
-  __module__ = 'steammessages_webui_friends_pb2'
+CVoiceChat_UploadClientVoiceChatLogs_Request = _reflection.GeneratedProtocolMessageType('CVoiceChat_UploadClientVoiceChatLogs_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CVOICECHAT_UPLOADCLIENTVOICECHATLOGS_REQUEST,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CVoiceChat_UploadClientVoiceChatLogs_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CVoiceChat_UploadClientVoiceChatLogs_Request)
 
-CVoiceChat_UploadClientVoiceChatLogs_Response = _reflection.GeneratedProtocolMessageType('CVoiceChat_UploadClientVoiceChatLogs_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CVOICECHAT_UPLOADCLIENTVOICECHATLOGS_RESPONSE,
-  __module__ = 'steammessages_webui_friends_pb2'
+CVoiceChat_UploadClientVoiceChatLogs_Response = _reflection.GeneratedProtocolMessageType('CVoiceChat_UploadClientVoiceChatLogs_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CVOICECHAT_UPLOADCLIENTVOICECHATLOGS_RESPONSE,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CVoiceChat_UploadClientVoiceChatLogs_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CVoiceChat_UploadClientVoiceChatLogs_Response)
 
-CVoiceChat_LeaveVoiceChat_Request = _reflection.GeneratedProtocolMessageType('CVoiceChat_LeaveVoiceChat_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CVOICECHAT_LEAVEVOICECHAT_REQUEST,
-  __module__ = 'steammessages_webui_friends_pb2'
+CVoiceChat_LeaveVoiceChat_Request = _reflection.GeneratedProtocolMessageType('CVoiceChat_LeaveVoiceChat_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CVOICECHAT_LEAVEVOICECHAT_REQUEST,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CVoiceChat_LeaveVoiceChat_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CVoiceChat_LeaveVoiceChat_Request)
 
-CVoiceChat_LeaveVoiceChat_Response = _reflection.GeneratedProtocolMessageType('CVoiceChat_LeaveVoiceChat_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CVOICECHAT_LEAVEVOICECHAT_RESPONSE,
-  __module__ = 'steammessages_webui_friends_pb2'
+CVoiceChat_LeaveVoiceChat_Response = _reflection.GeneratedProtocolMessageType('CVoiceChat_LeaveVoiceChat_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CVOICECHAT_LEAVEVOICECHAT_RESPONSE,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CVoiceChat_LeaveVoiceChat_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CVoiceChat_LeaveVoiceChat_Response)
 
-CVoiceChat_UserLeftVoiceChat_Notification = _reflection.GeneratedProtocolMessageType('CVoiceChat_UserLeftVoiceChat_Notification', (_message.Message,), dict(
-  DESCRIPTOR = _CVOICECHAT_USERLEFTVOICECHAT_NOTIFICATION,
-  __module__ = 'steammessages_webui_friends_pb2'
+CVoiceChat_UserLeftVoiceChat_Notification = _reflection.GeneratedProtocolMessageType('CVoiceChat_UserLeftVoiceChat_Notification', (_message.Message,), {
+  'DESCRIPTOR' : _CVOICECHAT_USERLEFTVOICECHAT_NOTIFICATION,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CVoiceChat_UserLeftVoiceChat_Notification)
-  ))
+  })
 _sym_db.RegisterMessage(CVoiceChat_UserLeftVoiceChat_Notification)
 
-CVoiceChat_VoiceChatEnded_Notification = _reflection.GeneratedProtocolMessageType('CVoiceChat_VoiceChatEnded_Notification', (_message.Message,), dict(
-  DESCRIPTOR = _CVOICECHAT_VOICECHATENDED_NOTIFICATION,
-  __module__ = 'steammessages_webui_friends_pb2'
+CVoiceChat_VoiceChatEnded_Notification = _reflection.GeneratedProtocolMessageType('CVoiceChat_VoiceChatEnded_Notification', (_message.Message,), {
+  'DESCRIPTOR' : _CVOICECHAT_VOICECHATENDED_NOTIFICATION,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CVoiceChat_VoiceChatEnded_Notification)
-  ))
+  })
 _sym_db.RegisterMessage(CVoiceChat_VoiceChatEnded_Notification)
 
-CWebRTCClient_InitiateWebRTCConnection_Request = _reflection.GeneratedProtocolMessageType('CWebRTCClient_InitiateWebRTCConnection_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CWEBRTCCLIENT_INITIATEWEBRTCCONNECTION_REQUEST,
-  __module__ = 'steammessages_webui_friends_pb2'
+CWebRTCClient_InitiateWebRTCConnection_Request = _reflection.GeneratedProtocolMessageType('CWebRTCClient_InitiateWebRTCConnection_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CWEBRTCCLIENT_INITIATEWEBRTCCONNECTION_REQUEST,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CWebRTCClient_InitiateWebRTCConnection_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CWebRTCClient_InitiateWebRTCConnection_Request)
 
-CWebRTCClient_InitiateWebRTCConnection_Response = _reflection.GeneratedProtocolMessageType('CWebRTCClient_InitiateWebRTCConnection_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CWEBRTCCLIENT_INITIATEWEBRTCCONNECTION_RESPONSE,
-  __module__ = 'steammessages_webui_friends_pb2'
+CWebRTCClient_InitiateWebRTCConnection_Response = _reflection.GeneratedProtocolMessageType('CWebRTCClient_InitiateWebRTCConnection_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CWEBRTCCLIENT_INITIATEWEBRTCCONNECTION_RESPONSE,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CWebRTCClient_InitiateWebRTCConnection_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CWebRTCClient_InitiateWebRTCConnection_Response)
 
-CWebRTC_WebRTCSessionConnected_Notification = _reflection.GeneratedProtocolMessageType('CWebRTC_WebRTCSessionConnected_Notification', (_message.Message,), dict(
-  DESCRIPTOR = _CWEBRTC_WEBRTCSESSIONCONNECTED_NOTIFICATION,
-  __module__ = 'steammessages_webui_friends_pb2'
+CWebRTC_WebRTCSessionConnected_Notification = _reflection.GeneratedProtocolMessageType('CWebRTC_WebRTCSessionConnected_Notification', (_message.Message,), {
+  'DESCRIPTOR' : _CWEBRTC_WEBRTCSESSIONCONNECTED_NOTIFICATION,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CWebRTC_WebRTCSessionConnected_Notification)
-  ))
+  })
 _sym_db.RegisterMessage(CWebRTC_WebRTCSessionConnected_Notification)
 
-CWebRTC_WebRTCUpdateRemoteDescription_Notification = _reflection.GeneratedProtocolMessageType('CWebRTC_WebRTCUpdateRemoteDescription_Notification', (_message.Message,), dict(
-  DESCRIPTOR = _CWEBRTC_WEBRTCUPDATEREMOTEDESCRIPTION_NOTIFICATION,
-  __module__ = 'steammessages_webui_friends_pb2'
+CWebRTC_WebRTCUpdateRemoteDescription_Notification = _reflection.GeneratedProtocolMessageType('CWebRTC_WebRTCUpdateRemoteDescription_Notification', (_message.Message,), {
+  'DESCRIPTOR' : _CWEBRTC_WEBRTCUPDATEREMOTEDESCRIPTION_NOTIFICATION,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CWebRTC_WebRTCUpdateRemoteDescription_Notification)
-  ))
+  })
 _sym_db.RegisterMessage(CWebRTC_WebRTCUpdateRemoteDescription_Notification)
 
-CWebRTC_WebRTCUpdateRemoteDescription_Notification_CSSRCToAccountIDMapping = _reflection.GeneratedProtocolMessageType('CWebRTC_WebRTCUpdateRemoteDescription_Notification_CSSRCToAccountIDMapping', (_message.Message,), dict(
-  DESCRIPTOR = _CWEBRTC_WEBRTCUPDATEREMOTEDESCRIPTION_NOTIFICATION_CSSRCTOACCOUNTIDMAPPING,
-  __module__ = 'steammessages_webui_friends_pb2'
+CWebRTC_WebRTCUpdateRemoteDescription_Notification_CSSRCToAccountIDMapping = _reflection.GeneratedProtocolMessageType('CWebRTC_WebRTCUpdateRemoteDescription_Notification_CSSRCToAccountIDMapping', (_message.Message,), {
+  'DESCRIPTOR' : _CWEBRTC_WEBRTCUPDATEREMOTEDESCRIPTION_NOTIFICATION_CSSRCTOACCOUNTIDMAPPING,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CWebRTC_WebRTCUpdateRemoteDescription_Notification_CSSRCToAccountIDMapping)
-  ))
+  })
 _sym_db.RegisterMessage(CWebRTC_WebRTCUpdateRemoteDescription_Notification_CSSRCToAccountIDMapping)
 
-CWebRTCClient_AcknowledgeUpdatedRemoteDescription_Request = _reflection.GeneratedProtocolMessageType('CWebRTCClient_AcknowledgeUpdatedRemoteDescription_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CWEBRTCCLIENT_ACKNOWLEDGEUPDATEDREMOTEDESCRIPTION_REQUEST,
-  __module__ = 'steammessages_webui_friends_pb2'
+CWebRTCClient_AcknowledgeUpdatedRemoteDescription_Request = _reflection.GeneratedProtocolMessageType('CWebRTCClient_AcknowledgeUpdatedRemoteDescription_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CWEBRTCCLIENT_ACKNOWLEDGEUPDATEDREMOTEDESCRIPTION_REQUEST,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CWebRTCClient_AcknowledgeUpdatedRemoteDescription_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CWebRTCClient_AcknowledgeUpdatedRemoteDescription_Request)
 
-CWebRTCClient_AcknowledgeUpdatedRemoteDescription_Response = _reflection.GeneratedProtocolMessageType('CWebRTCClient_AcknowledgeUpdatedRemoteDescription_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CWEBRTCCLIENT_ACKNOWLEDGEUPDATEDREMOTEDESCRIPTION_RESPONSE,
-  __module__ = 'steammessages_webui_friends_pb2'
+CWebRTCClient_AcknowledgeUpdatedRemoteDescription_Response = _reflection.GeneratedProtocolMessageType('CWebRTCClient_AcknowledgeUpdatedRemoteDescription_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CWEBRTCCLIENT_ACKNOWLEDGEUPDATEDREMOTEDESCRIPTION_RESPONSE,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CWebRTCClient_AcknowledgeUpdatedRemoteDescription_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CWebRTCClient_AcknowledgeUpdatedRemoteDescription_Response)
 
-CMobilePerAccount_GetSettings_Request = _reflection.GeneratedProtocolMessageType('CMobilePerAccount_GetSettings_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CMOBILEPERACCOUNT_GETSETTINGS_REQUEST,
-  __module__ = 'steammessages_webui_friends_pb2'
+CMobilePerAccount_GetSettings_Request = _reflection.GeneratedProtocolMessageType('CMobilePerAccount_GetSettings_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CMOBILEPERACCOUNT_GETSETTINGS_REQUEST,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CMobilePerAccount_GetSettings_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CMobilePerAccount_GetSettings_Request)
 
-CMobilePerAccount_GetSettings_Response = _reflection.GeneratedProtocolMessageType('CMobilePerAccount_GetSettings_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CMOBILEPERACCOUNT_GETSETTINGS_RESPONSE,
-  __module__ = 'steammessages_webui_friends_pb2'
+CMobilePerAccount_GetSettings_Response = _reflection.GeneratedProtocolMessageType('CMobilePerAccount_GetSettings_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CMOBILEPERACCOUNT_GETSETTINGS_RESPONSE,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CMobilePerAccount_GetSettings_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CMobilePerAccount_GetSettings_Response)
 
-CMobilePerAccount_SetSettings_Request = _reflection.GeneratedProtocolMessageType('CMobilePerAccount_SetSettings_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CMOBILEPERACCOUNT_SETSETTINGS_REQUEST,
-  __module__ = 'steammessages_webui_friends_pb2'
+CMobilePerAccount_SetSettings_Request = _reflection.GeneratedProtocolMessageType('CMobilePerAccount_SetSettings_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CMOBILEPERACCOUNT_SETSETTINGS_REQUEST,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CMobilePerAccount_SetSettings_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CMobilePerAccount_SetSettings_Request)
 
-CMobilePerAccount_SetSettings_Response = _reflection.GeneratedProtocolMessageType('CMobilePerAccount_SetSettings_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CMOBILEPERACCOUNT_SETSETTINGS_RESPONSE,
-  __module__ = 'steammessages_webui_friends_pb2'
+CMobilePerAccount_SetSettings_Response = _reflection.GeneratedProtocolMessageType('CMobilePerAccount_SetSettings_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CMOBILEPERACCOUNT_SETSETTINGS_RESPONSE,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CMobilePerAccount_SetSettings_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CMobilePerAccount_SetSettings_Response)
 
-CMobileDevice_RegisterMobileDevice_Request = _reflection.GeneratedProtocolMessageType('CMobileDevice_RegisterMobileDevice_Request', (_message.Message,), dict(
-  DESCRIPTOR = _CMOBILEDEVICE_REGISTERMOBILEDEVICE_REQUEST,
-  __module__ = 'steammessages_webui_friends_pb2'
+CMobileDevice_RegisterMobileDevice_Request = _reflection.GeneratedProtocolMessageType('CMobileDevice_RegisterMobileDevice_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CMOBILEDEVICE_REGISTERMOBILEDEVICE_REQUEST,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CMobileDevice_RegisterMobileDevice_Request)
-  ))
+  })
 _sym_db.RegisterMessage(CMobileDevice_RegisterMobileDevice_Request)
 
-CMobileDevice_RegisterMobileDevice_Response = _reflection.GeneratedProtocolMessageType('CMobileDevice_RegisterMobileDevice_Response', (_message.Message,), dict(
-  DESCRIPTOR = _CMOBILEDEVICE_REGISTERMOBILEDEVICE_RESPONSE,
-  __module__ = 'steammessages_webui_friends_pb2'
+CMobileDevice_RegisterMobileDevice_Response = _reflection.GeneratedProtocolMessageType('CMobileDevice_RegisterMobileDevice_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CMOBILEDEVICE_REGISTERMOBILEDEVICE_RESPONSE,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CMobileDevice_RegisterMobileDevice_Response)
-  ))
+  })
 _sym_db.RegisterMessage(CMobileDevice_RegisterMobileDevice_Response)
 
-CMobileDevice_DeregisterMobileDevice_Notification = _reflection.GeneratedProtocolMessageType('CMobileDevice_DeregisterMobileDevice_Notification', (_message.Message,), dict(
-  DESCRIPTOR = _CMOBILEDEVICE_DEREGISTERMOBILEDEVICE_NOTIFICATION,
-  __module__ = 'steammessages_webui_friends_pb2'
+CMobileDevice_DeregisterMobileDevice_Notification = _reflection.GeneratedProtocolMessageType('CMobileDevice_DeregisterMobileDevice_Notification', (_message.Message,), {
+  'DESCRIPTOR' : _CMOBILEDEVICE_DEREGISTERMOBILEDEVICE_NOTIFICATION,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:CMobileDevice_DeregisterMobileDevice_Notification)
-  ))
+  })
 _sym_db.RegisterMessage(CMobileDevice_DeregisterMobileDevice_Notification)
 
-UnknownProto = _reflection.GeneratedProtocolMessageType('UnknownProto', (_message.Message,), dict(
-  DESCRIPTOR = _UNKNOWNPROTO,
-  __module__ = 'steammessages_webui_friends_pb2'
+UnknownProto = _reflection.GeneratedProtocolMessageType('UnknownProto', (_message.Message,), {
+  'DESCRIPTOR' : _UNKNOWNPROTO,
+  '__module__' : 'steammessages_webui_friends_pb2'
   # @@protoc_insertion_point(class_scope:UnknownProto)
-  ))
+  })
 _sym_db.RegisterMessage(UnknownProto)
 
 
@@ -5923,6 +6037,7 @@ _HELPREQUESTLOGS = _descriptor.ServiceDescriptor(
   file=DESCRIPTOR,
   index=0,
   serialized_options=None,
+  create_key=_descriptor._internal_create_key,
   serialized_start=13637,
   serialized_end=13788,
   methods=[
@@ -5934,6 +6049,7 @@ _HELPREQUESTLOGS = _descriptor.ServiceDescriptor(
     input_type=_CHELPREQUESTLOGS_UPLOADUSERAPPLICATIONLOG_REQUEST,
     output_type=_CHELPREQUESTLOGS_UPLOADUSERAPPLICATIONLOG_RESPONSE,
     serialized_options=None,
+    create_key=_descriptor._internal_create_key,
   ),
 ])
 _sym_db.RegisterServiceDescriptor(_HELPREQUESTLOGS)
@@ -5947,6 +6063,7 @@ _COMMUNITY = _descriptor.ServiceDescriptor(
   file=DESCRIPTOR,
   index=1,
   serialized_options=None,
+  create_key=_descriptor._internal_create_key,
   serialized_start=13791,
   serialized_end=15869,
   methods=[
@@ -5958,6 +6075,7 @@ _COMMUNITY = _descriptor.ServiceDescriptor(
     input_type=_CCOMMUNITY_GETAPPS_REQUEST,
     output_type=_CCOMMUNITY_GETAPPS_RESPONSE,
     serialized_options=None,
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetAppRichPresenceLocalization',
@@ -5967,6 +6085,7 @@ _COMMUNITY = _descriptor.ServiceDescriptor(
     input_type=_CCOMMUNITY_GETAPPRICHPRESENCELOCALIZATION_REQUEST,
     output_type=_CCOMMUNITY_GETAPPRICHPRESENCELOCALIZATION_RESPONSE,
     serialized_options=None,
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetCommentThread',
@@ -5976,6 +6095,7 @@ _COMMUNITY = _descriptor.ServiceDescriptor(
     input_type=_CCOMMUNITY_GETCOMMENTTHREAD_REQUEST,
     output_type=_CCOMMUNITY_GETCOMMENTTHREAD_RESPONSE,
     serialized_options=None,
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='PostCommentToThread',
@@ -5985,6 +6105,7 @@ _COMMUNITY = _descriptor.ServiceDescriptor(
     input_type=_CCOMMUNITY_POSTCOMMENTTOTHREAD_REQUEST,
     output_type=_CCOMMUNITY_POSTCOMMENTTOTHREAD_RESPONSE,
     serialized_options=None,
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='DeleteCommentFromThread',
@@ -5994,6 +6115,7 @@ _COMMUNITY = _descriptor.ServiceDescriptor(
     input_type=_CCOMMUNITY_DELETECOMMENTFROMTHREAD_REQUEST,
     output_type=_CCOMMUNITY_DELETECOMMENTFROMTHREAD_RESPONSE,
     serialized_options=None,
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='RateCommentThread',
@@ -6003,6 +6125,7 @@ _COMMUNITY = _descriptor.ServiceDescriptor(
     input_type=_CCOMMUNITY_RATECOMMENTTHREAD_REQUEST,
     output_type=_CCOMMUNITY_RATECOMMENTTHREAD_RESPONSE,
     serialized_options=None,
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetCommentThreadRatings',
@@ -6012,6 +6135,7 @@ _COMMUNITY = _descriptor.ServiceDescriptor(
     input_type=_CCOMMUNITY_GETCOMMENTTHREADRATINGS_REQUEST,
     output_type=_CCOMMUNITY_GETCOMMENTTHREADRATINGS_RESPONSE,
     serialized_options=None,
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='RateClanAnnouncement',
@@ -6021,6 +6145,7 @@ _COMMUNITY = _descriptor.ServiceDescriptor(
     input_type=_CCOMMUNITY_RATECLANANNOUNCEMENT_REQUEST,
     output_type=_CCOMMUNITY_RATECLANANNOUNCEMENT_RESPONSE,
     serialized_options=None,
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetClanAnnouncementVoteForUser',
@@ -6030,6 +6155,7 @@ _COMMUNITY = _descriptor.ServiceDescriptor(
     input_type=_CCOMMUNITY_GETCLANANNOUNCEMENTVOTEFORUSER_REQUEST,
     output_type=_CCOMMUNITY_GETCLANANNOUNCEMENTVOTEFORUSER_RESPONSE,
     serialized_options=None,
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetUserPartnerEventNews',
@@ -6039,6 +6165,7 @@ _COMMUNITY = _descriptor.ServiceDescriptor(
     input_type=_CCOMMUNITY_GETUSERPARTNEREVENTNEWS_REQUEST,
     output_type=_CCOMMUNITY_GETUSERPARTNEREVENTNEWS_RESPONSE,
     serialized_options=None,
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetBestEventsForUser',
@@ -6048,6 +6175,7 @@ _COMMUNITY = _descriptor.ServiceDescriptor(
     input_type=_CCOMMUNITY_GETBESTEVENTSFORUSER_REQUEST,
     output_type=_CCOMMUNITY_GETBESTEVENTSFORUSER_RESPONSE,
     serialized_options=None,
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='MarkPartnerEventsForUser',
@@ -6057,6 +6185,7 @@ _COMMUNITY = _descriptor.ServiceDescriptor(
     input_type=_CCOMMUNITY_MARKPARTNEREVENTSFORUSER_REQUEST,
     output_type=_CCOMMUNITY_MARKPARTNEREVENTSFORUSER_RESPONSE,
     serialized_options=None,
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='PartnerEventsShowMoreForApp',
@@ -6066,6 +6195,7 @@ _COMMUNITY = _descriptor.ServiceDescriptor(
     input_type=_CCOMMUNITY_PARTNEREVENTSSHOWMOREFORAPP_REQUEST,
     output_type=_CCOMMUNITY_PARTNEREVENTSSHOWMOREFORAPP_RESPONSE,
     serialized_options=None,
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='PartnerEventsShowLessForApp',
@@ -6075,6 +6205,7 @@ _COMMUNITY = _descriptor.ServiceDescriptor(
     input_type=_CCOMMUNITY_PARTNEREVENTSSHOWLESSFORAPP_REQUEST,
     output_type=_CCOMMUNITY_PARTNEREVENTSSHOWLESSFORAPP_RESPONSE,
     serialized_options=None,
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='ClearUserPartnerEventsAppPriorities',
@@ -6084,6 +6215,7 @@ _COMMUNITY = _descriptor.ServiceDescriptor(
     input_type=_CCOMMUNITY_CLEARUSERPARTNEREVENTSAPPPRIORITIES_REQUEST,
     output_type=_CCOMMUNITY_CLEARUSERPARTNEREVENTSAPPPRIORITIES_RESPONSE,
     serialized_options=None,
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetUserPartnerEventsAppPriorities',
@@ -6093,6 +6225,7 @@ _COMMUNITY = _descriptor.ServiceDescriptor(
     input_type=_CCOMMUNITY_GETUSERPARTNEREVENTSAPPPRIORITIES_REQUEST,
     output_type=_CCOMMUNITY_GETUSERPARTNEREVENTSAPPPRIORITIES_RESPONSE,
     serialized_options=None,
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='ClearSinglePartnerEventsAppPriority',
@@ -6102,6 +6235,7 @@ _COMMUNITY = _descriptor.ServiceDescriptor(
     input_type=_CCOMMUNITY_CLEARSINGLEPARTNEREVENTSAPPPRIORITY_REQUEST,
     output_type=_CCOMMUNITY_CLEARSINGLEPARTNEREVENTSAPPPRIORITY_RESPONSE,
     serialized_options=None,
+    create_key=_descriptor._internal_create_key,
   ),
 ])
 _sym_db.RegisterServiceDescriptor(_COMMUNITY)
@@ -6115,6 +6249,7 @@ _EXPERIMENTSERVICE = _descriptor.ServiceDescriptor(
   file=DESCRIPTOR,
   index=2,
   serialized_options=None,
+  create_key=_descriptor._internal_create_key,
   serialized_start=15871,
   serialized_end=15956,
   methods=[
@@ -6126,6 +6261,7 @@ _EXPERIMENTSERVICE = _descriptor.ServiceDescriptor(
     input_type=_UNKNOWNPROTO,
     output_type=steammessages__unified__base__pb2._NORESPONSE,
     serialized_options=None,
+    create_key=_descriptor._internal_create_key,
   ),
 ])
 _sym_db.RegisterServiceDescriptor(_EXPERIMENTSERVICE)
@@ -6139,6 +6275,7 @@ _FRIENDSLIST = _descriptor.ServiceDescriptor(
   file=DESCRIPTOR,
   index=3,
   serialized_options=None,
+  create_key=_descriptor._internal_create_key,
   serialized_start=15959,
   serialized_end=16337,
   methods=[
@@ -6150,6 +6287,7 @@ _FRIENDSLIST = _descriptor.ServiceDescriptor(
     input_type=_CFRIENDSLIST_GETCATEGORIES_REQUEST,
     output_type=_CFRIENDSLIST_GETCATEGORIES_RESPONSE,
     serialized_options=None,
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetFriendsList',
@@ -6159,6 +6297,7 @@ _FRIENDSLIST = _descriptor.ServiceDescriptor(
     input_type=_CFRIENDSLIST_GETFRIENDSLIST_REQUEST,
     output_type=_CFRIENDSLIST_GETFRIENDSLIST_RESPONSE,
     serialized_options=None,
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='GetFavorites',
@@ -6168,6 +6307,7 @@ _FRIENDSLIST = _descriptor.ServiceDescriptor(
     input_type=_CFRIENDSLIST_GETFAVORITES_REQUEST,
     output_type=_CFRIENDSLIST_GETFAVORITES_RESPONSE,
     serialized_options=None,
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='SetFavorites',
@@ -6177,6 +6317,7 @@ _FRIENDSLIST = _descriptor.ServiceDescriptor(
     input_type=_CFRIENDSLIST_SETFAVORITES_REQUEST,
     output_type=_CFRIENDSLIST_SETFAVORITES_RESPONSE,
     serialized_options=None,
+    create_key=_descriptor._internal_create_key,
   ),
 ])
 _sym_db.RegisterServiceDescriptor(_FRIENDSLIST)
@@ -6190,6 +6331,7 @@ _FRIENDSLISTCLIENT = _descriptor.ServiceDescriptor(
   file=DESCRIPTOR,
   index=4,
   serialized_options=None,
+  create_key=_descriptor._internal_create_key,
   serialized_start=16339,
   serialized_end=16436,
   methods=[
@@ -6201,6 +6343,7 @@ _FRIENDSLISTCLIENT = _descriptor.ServiceDescriptor(
     input_type=_CFRIENDSLIST_FAVORITESCHANGED_NOTIFICATION,
     output_type=steammessages__unified__base__pb2._NORESPONSE,
     serialized_options=None,
+    create_key=_descriptor._internal_create_key,
   ),
 ])
 _sym_db.RegisterServiceDescriptor(_FRIENDSLISTCLIENT)
@@ -6214,6 +6357,7 @@ _CLAN = _descriptor.ServiceDescriptor(
   file=DESCRIPTOR,
   index=5,
   serialized_options=None,
+  create_key=_descriptor._internal_create_key,
   serialized_start=16438,
   serialized_end=16540,
   methods=[
@@ -6225,6 +6369,7 @@ _CLAN = _descriptor.ServiceDescriptor(
     input_type=_CCLAN_RESPONDTOCLANINVITE_REQUEST,
     output_type=_CCLAN_RESPONDTOCLANINVITE_RESPONSE,
     serialized_options=None,
+    create_key=_descriptor._internal_create_key,
   ),
 ])
 _sym_db.RegisterServiceDescriptor(_CLAN)
@@ -6238,6 +6383,7 @@ _VOICECHAT = _descriptor.ServiceDescriptor(
   file=DESCRIPTOR,
   index=6,
   serialized_options=None,
+  create_key=_descriptor._internal_create_key,
   serialized_start=16543,
   serialized_end=17376,
   methods=[
@@ -6249,6 +6395,7 @@ _VOICECHAT = _descriptor.ServiceDescriptor(
     input_type=_CVOICECHAT_UPDATEVOICECHATWEBRTCDATA_REQUEST,
     output_type=_CVOICECHAT_UPDATEVOICECHATWEBRTCDATA_RESPONSE,
     serialized_options=None,
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='NotifyUserVoiceStatus',
@@ -6258,6 +6405,7 @@ _VOICECHAT = _descriptor.ServiceDescriptor(
     input_type=_CVOICECHAT_USERVOICESTATUS_NOTIFICATION,
     output_type=steammessages__unified__base__pb2._NORESPONSE,
     serialized_options=None,
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='UploadClientVoiceChatLogs',
@@ -6267,6 +6415,7 @@ _VOICECHAT = _descriptor.ServiceDescriptor(
     input_type=_CVOICECHAT_UPLOADCLIENTVOICECHATLOGS_REQUEST,
     output_type=_CVOICECHAT_UPLOADCLIENTVOICECHATLOGS_RESPONSE,
     serialized_options=None,
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='LeaveVoiceChat',
@@ -6276,6 +6425,7 @@ _VOICECHAT = _descriptor.ServiceDescriptor(
     input_type=_CVOICECHAT_LEAVEVOICECHAT_REQUEST,
     output_type=_CVOICECHAT_LEAVEVOICECHAT_RESPONSE,
     serialized_options=None,
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='RequestOneOnOneChat',
@@ -6285,6 +6435,7 @@ _VOICECHAT = _descriptor.ServiceDescriptor(
     input_type=_CVOICECHAT_REQUESTONEONONECHAT_REQUEST,
     output_type=_CVOICECHAT_REQUESTONEONONECHAT_RESPONSE,
     serialized_options=None,
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='AnswerOneOnOneChat',
@@ -6294,6 +6445,7 @@ _VOICECHAT = _descriptor.ServiceDescriptor(
     input_type=_CVOICECHAT_ANSWERONEONONECHAT_REQUEST,
     output_type=_CVOICECHAT_ANSWERONEONONECHAT_RESPONSE,
     serialized_options=None,
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='EndOneOnOneChat',
@@ -6303,6 +6455,7 @@ _VOICECHAT = _descriptor.ServiceDescriptor(
     input_type=_CVOICECHAT_ENDONEONONECHAT_REQUEST,
     output_type=_CVOICECHAT_ENDONEONONECHAT_RESPONSE,
     serialized_options=None,
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='LeaveOneOnOneChat',
@@ -6312,6 +6465,7 @@ _VOICECHAT = _descriptor.ServiceDescriptor(
     input_type=_CVOICECHAT_LEAVEONEONONECHAT_REQUEST,
     output_type=_CVOICECHAT_LEAVEONEONONECHAT_RESPONSE,
     serialized_options=None,
+    create_key=_descriptor._internal_create_key,
   ),
 ])
 _sym_db.RegisterServiceDescriptor(_VOICECHAT)
@@ -6325,6 +6479,7 @@ _VOICECHATCLIENT = _descriptor.ServiceDescriptor(
   file=DESCRIPTOR,
   index=7,
   serialized_options=None,
+  create_key=_descriptor._internal_create_key,
   serialized_start=17379,
   serialized_end=18000,
   methods=[
@@ -6336,6 +6491,7 @@ _VOICECHATCLIENT = _descriptor.ServiceDescriptor(
     input_type=_CVOICECHAT_USERJOINEDVOICECHAT_NOTIFICATION,
     output_type=steammessages__unified__base__pb2._NORESPONSE,
     serialized_options=None,
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='NotifyUserLeftVoiceChat',
@@ -6345,6 +6501,7 @@ _VOICECHATCLIENT = _descriptor.ServiceDescriptor(
     input_type=_CVOICECHAT_USERLEFTVOICECHAT_NOTIFICATION,
     output_type=steammessages__unified__base__pb2._NORESPONSE,
     serialized_options=None,
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='NotifyVoiceChatEnded',
@@ -6354,6 +6511,7 @@ _VOICECHATCLIENT = _descriptor.ServiceDescriptor(
     input_type=_CVOICECHAT_VOICECHATENDED_NOTIFICATION,
     output_type=steammessages__unified__base__pb2._NORESPONSE,
     serialized_options=None,
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='NotifyUserVoiceStatus',
@@ -6363,6 +6521,7 @@ _VOICECHATCLIENT = _descriptor.ServiceDescriptor(
     input_type=_CVOICECHAT_USERVOICESTATUS_NOTIFICATION,
     output_type=steammessages__unified__base__pb2._NORESPONSE,
     serialized_options=None,
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='NotifyAllUsersVoiceStatus',
@@ -6372,6 +6531,7 @@ _VOICECHATCLIENT = _descriptor.ServiceDescriptor(
     input_type=_CVOICECHAT_ALLMEMBERSSTATUS_NOTIFICATION,
     output_type=steammessages__unified__base__pb2._NORESPONSE,
     serialized_options=None,
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='NotifyOneOnOneChatRequested',
@@ -6381,6 +6541,7 @@ _VOICECHATCLIENT = _descriptor.ServiceDescriptor(
     input_type=_CVOICECHAT_ONEONONECHATREQUESTED_NOTIFICATION,
     output_type=steammessages__unified__base__pb2._NORESPONSE,
     serialized_options=None,
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='NotifyOneOnOneChatResponse',
@@ -6390,6 +6551,7 @@ _VOICECHATCLIENT = _descriptor.ServiceDescriptor(
     input_type=_CVOICECHAT_ONEONONECHATREQUESTRESPONSE_NOTIFICATION,
     output_type=steammessages__unified__base__pb2._NORESPONSE,
     serialized_options=None,
+    create_key=_descriptor._internal_create_key,
   ),
 ])
 _sym_db.RegisterServiceDescriptor(_VOICECHATCLIENT)
@@ -6403,6 +6565,7 @@ _WEBRTCCLIENT = _descriptor.ServiceDescriptor(
   file=DESCRIPTOR,
   index=8,
   serialized_options=None,
+  create_key=_descriptor._internal_create_key,
   serialized_start=18003,
   serialized_end=18305,
   methods=[
@@ -6414,6 +6577,7 @@ _WEBRTCCLIENT = _descriptor.ServiceDescriptor(
     input_type=_CWEBRTCCLIENT_INITIATEWEBRTCCONNECTION_REQUEST,
     output_type=_CWEBRTCCLIENT_INITIATEWEBRTCCONNECTION_RESPONSE,
     serialized_options=None,
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='AcknowledgeUpdatedRemoteDescription',
@@ -6423,6 +6587,7 @@ _WEBRTCCLIENT = _descriptor.ServiceDescriptor(
     input_type=_CWEBRTCCLIENT_ACKNOWLEDGEUPDATEDREMOTEDESCRIPTION_REQUEST,
     output_type=_CWEBRTCCLIENT_ACKNOWLEDGEUPDATEDREMOTEDESCRIPTION_RESPONSE,
     serialized_options=None,
+    create_key=_descriptor._internal_create_key,
   ),
 ])
 _sym_db.RegisterServiceDescriptor(_WEBRTCCLIENT)
@@ -6436,6 +6601,7 @@ _WEBRTCCLIENTNOTIFICATIONS = _descriptor.ServiceDescriptor(
   file=DESCRIPTOR,
   index=9,
   serialized_options=None,
+  create_key=_descriptor._internal_create_key,
   serialized_start=18308,
   serialized_end=18531,
   methods=[
@@ -6447,6 +6613,7 @@ _WEBRTCCLIENTNOTIFICATIONS = _descriptor.ServiceDescriptor(
     input_type=_CWEBRTC_WEBRTCSESSIONCONNECTED_NOTIFICATION,
     output_type=steammessages__unified__base__pb2._NORESPONSE,
     serialized_options=None,
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='NotifyWebRTCUpdateRemoteDescription',
@@ -6456,6 +6623,7 @@ _WEBRTCCLIENTNOTIFICATIONS = _descriptor.ServiceDescriptor(
     input_type=_CWEBRTC_WEBRTCUPDATEREMOTEDESCRIPTION_NOTIFICATION,
     output_type=steammessages__unified__base__pb2._NORESPONSE,
     serialized_options=None,
+    create_key=_descriptor._internal_create_key,
   ),
 ])
 _sym_db.RegisterServiceDescriptor(_WEBRTCCLIENTNOTIFICATIONS)
@@ -6469,6 +6637,7 @@ _MOBILEPERACCOUNT = _descriptor.ServiceDescriptor(
   file=DESCRIPTOR,
   index=10,
   serialized_options=None,
+  create_key=_descriptor._internal_create_key,
   serialized_start=18534,
   serialized_end=18744,
   methods=[
@@ -6480,6 +6649,7 @@ _MOBILEPERACCOUNT = _descriptor.ServiceDescriptor(
     input_type=_CMOBILEPERACCOUNT_GETSETTINGS_REQUEST,
     output_type=_CMOBILEPERACCOUNT_GETSETTINGS_RESPONSE,
     serialized_options=None,
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='SetSettings',
@@ -6489,6 +6659,7 @@ _MOBILEPERACCOUNT = _descriptor.ServiceDescriptor(
     input_type=_CMOBILEPERACCOUNT_SETSETTINGS_REQUEST,
     output_type=_CMOBILEPERACCOUNT_SETSETTINGS_RESPONSE,
     serialized_options=None,
+    create_key=_descriptor._internal_create_key,
   ),
 ])
 _sym_db.RegisterServiceDescriptor(_MOBILEPERACCOUNT)
@@ -6502,6 +6673,7 @@ _MOBILEDEVICE = _descriptor.ServiceDescriptor(
   file=DESCRIPTOR,
   index=11,
   serialized_options=None,
+  create_key=_descriptor._internal_create_key,
   serialized_start=18747,
   serialized_end=18967,
   methods=[
@@ -6513,6 +6685,7 @@ _MOBILEDEVICE = _descriptor.ServiceDescriptor(
     input_type=_CMOBILEDEVICE_REGISTERMOBILEDEVICE_REQUEST,
     output_type=_CMOBILEDEVICE_REGISTERMOBILEDEVICE_RESPONSE,
     serialized_options=None,
+    create_key=_descriptor._internal_create_key,
   ),
   _descriptor.MethodDescriptor(
     name='DeregisterMobileDevice',
@@ -6522,6 +6695,7 @@ _MOBILEDEVICE = _descriptor.ServiceDescriptor(
     input_type=_CMOBILEDEVICE_DEREGISTERMOBILEDEVICE_NOTIFICATION,
     output_type=steammessages__unified__base__pb2._NORESPONSE,
     serialized_options=None,
+    create_key=_descriptor._internal_create_key,
   ),
 ])
 _sym_db.RegisterServiceDescriptor(_MOBILEDEVICE)
diff --git a/steam/protobufs/steammessages_workshop_pb2.py b/steam/protobufs/steammessages_workshop_pb2.py
new file mode 100644
index 0000000..cc82a4e
--- /dev/null
+++ b/steam/protobufs/steammessages_workshop_pb2.py
@@ -0,0 +1,174 @@
+# -*- coding: utf-8 -*-
+# Generated by the protocol buffer compiler.  DO NOT EDIT!
+# source: steammessages_workshop.proto
+"""Generated protocol buffer code."""
+from google.protobuf import descriptor as _descriptor
+from google.protobuf import message as _message
+from google.protobuf import reflection as _reflection
+from google.protobuf import symbol_database as _symbol_database
+from google.protobuf import service as _service
+from google.protobuf import service_reflection
+# @@protoc_insertion_point(imports)
+
+_sym_db = _symbol_database.Default()
+
+
+import steam.protobufs.steammessages_base_pb2 as steammessages__base__pb2
+import steam.protobufs.steammessages_unified_base_pb2 as steammessages__unified__base__pb2
+
+
+DESCRIPTOR = _descriptor.FileDescriptor(
+  name='steammessages_workshop.proto',
+  package='',
+  syntax='proto2',
+  serialized_options=b'\220\001\001',
+  create_key=_descriptor._internal_create_key,
+  serialized_pb=b'\n\x1csteammessages_workshop.proto\x1a\x18steammessages_base.proto\x1a steammessages_unified_base.proto\"0\n\x1f\x43Workshop_GetEULAStatus_Request\x12\r\n\x05\x61ppid\x18\x01 \x01(\r\"u\n CWorkshop_GetEULAStatus_Response\x12\x0f\n\x07version\x18\x01 \x01(\r\x12\x18\n\x10timestamp_action\x18\x02 \x01(\r\x12\x10\n\x08\x61\x63\x63\x65pted\x18\x03 \x01(\x08\x12\x14\n\x0cneeds_action\x18\x04 \x01(\x08\x32\xc6\x01\n\x08Workshop\x12\x8c\x01\n\rGetEULAStatus\x12 .CWorkshop_GetEULAStatus_Request\x1a!.CWorkshop_GetEULAStatus_Response\"6\x82\xb5\x18\x32Retrieve the status of the user\'s EULA acceptance.\x1a+\x82\xb5\x18\'A service to access published file dataB\x03\x90\x01\x01'
+  ,
+  dependencies=[steammessages__base__pb2.DESCRIPTOR,steammessages__unified__base__pb2.DESCRIPTOR,])
+
+
+
+
+_CWORKSHOP_GETEULASTATUS_REQUEST = _descriptor.Descriptor(
+  name='CWorkshop_GetEULAStatus_Request',
+  full_name='CWorkshop_GetEULAStatus_Request',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='appid', full_name='CWorkshop_GetEULAStatus_Request.appid', index=0,
+      number=1, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=92,
+  serialized_end=140,
+)
+
+
+_CWORKSHOP_GETEULASTATUS_RESPONSE = _descriptor.Descriptor(
+  name='CWorkshop_GetEULAStatus_Response',
+  full_name='CWorkshop_GetEULAStatus_Response',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  create_key=_descriptor._internal_create_key,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='version', full_name='CWorkshop_GetEULAStatus_Response.version', index=0,
+      number=1, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='timestamp_action', full_name='CWorkshop_GetEULAStatus_Response.timestamp_action', index=1,
+      number=2, type=13, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='accepted', full_name='CWorkshop_GetEULAStatus_Response.accepted', index=2,
+      number=3, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+    _descriptor.FieldDescriptor(
+      name='needs_action', full_name='CWorkshop_GetEULAStatus_Response.needs_action', index=3,
+      number=4, type=8, cpp_type=7, label=1,
+      has_default_value=False, default_value=False,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  serialized_options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=142,
+  serialized_end=259,
+)
+
+DESCRIPTOR.message_types_by_name['CWorkshop_GetEULAStatus_Request'] = _CWORKSHOP_GETEULASTATUS_REQUEST
+DESCRIPTOR.message_types_by_name['CWorkshop_GetEULAStatus_Response'] = _CWORKSHOP_GETEULASTATUS_RESPONSE
+_sym_db.RegisterFileDescriptor(DESCRIPTOR)
+
+CWorkshop_GetEULAStatus_Request = _reflection.GeneratedProtocolMessageType('CWorkshop_GetEULAStatus_Request', (_message.Message,), {
+  'DESCRIPTOR' : _CWORKSHOP_GETEULASTATUS_REQUEST,
+  '__module__' : 'steammessages_workshop_pb2'
+  # @@protoc_insertion_point(class_scope:CWorkshop_GetEULAStatus_Request)
+  })
+_sym_db.RegisterMessage(CWorkshop_GetEULAStatus_Request)
+
+CWorkshop_GetEULAStatus_Response = _reflection.GeneratedProtocolMessageType('CWorkshop_GetEULAStatus_Response', (_message.Message,), {
+  'DESCRIPTOR' : _CWORKSHOP_GETEULASTATUS_RESPONSE,
+  '__module__' : 'steammessages_workshop_pb2'
+  # @@protoc_insertion_point(class_scope:CWorkshop_GetEULAStatus_Response)
+  })
+_sym_db.RegisterMessage(CWorkshop_GetEULAStatus_Response)
+
+
+DESCRIPTOR._options = None
+
+_WORKSHOP = _descriptor.ServiceDescriptor(
+  name='Workshop',
+  full_name='Workshop',
+  file=DESCRIPTOR,
+  index=0,
+  serialized_options=b'\202\265\030\'A service to access published file data',
+  create_key=_descriptor._internal_create_key,
+  serialized_start=262,
+  serialized_end=460,
+  methods=[
+  _descriptor.MethodDescriptor(
+    name='GetEULAStatus',
+    full_name='Workshop.GetEULAStatus',
+    index=0,
+    containing_service=None,
+    input_type=_CWORKSHOP_GETEULASTATUS_REQUEST,
+    output_type=_CWORKSHOP_GETEULASTATUS_RESPONSE,
+    serialized_options=b'\202\265\0302Retrieve the status of the user\'s EULA acceptance.',
+    create_key=_descriptor._internal_create_key,
+  ),
+])
+_sym_db.RegisterServiceDescriptor(_WORKSHOP)
+
+DESCRIPTOR.services_by_name['Workshop'] = _WORKSHOP
+
+Workshop = service_reflection.GeneratedServiceType('Workshop', (_service.Service,), dict(
+  DESCRIPTOR = _WORKSHOP,
+  __module__ = 'steammessages_workshop_pb2'
+  ))
+
+Workshop_Stub = service_reflection.GeneratedServiceStubType('Workshop_Stub', (Workshop,), dict(
+  DESCRIPTOR = _WORKSHOP,
+  __module__ = 'steammessages_workshop_pb2'
+  ))
+
+
+# @@protoc_insertion_point(module_scope)
diff --git a/steam/protobufs/test_messages_pb2.py b/steam/protobufs/test_messages_pb2.py
index e9c647c..ad811ce 100644
--- a/steam/protobufs/test_messages_pb2.py
+++ b/steam/protobufs/test_messages_pb2.py
@@ -1,9 +1,7 @@
 # -*- coding: utf-8 -*-
 # Generated by the protocol buffer compiler.  DO NOT EDIT!
 # source: test_messages.proto
-
-import sys
-_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1'))
+"""Generated protocol buffer code."""
 from google.protobuf import descriptor as _descriptor
 from google.protobuf import message as _message
 from google.protobuf import reflection as _reflection
@@ -20,7 +18,8 @@ DESCRIPTOR = _descriptor.FileDescriptor(
   package='',
   syntax='proto2',
   serialized_options=None,
-  serialized_pb=_b('\n\x13test_messages.proto\"\xe9\x02\n\x13\x43omplexProtoMessage\x12\x10\n\x08number32\x18\x01 \x01(\r\x12\x10\n\x08number64\x18\x02 \x01(\x04\x12\x15\n\rlist_number32\x18\x03 \x03(\r\x12\x15\n\rlist_number64\x18\x04 \x03(\x04\x12\x33\n\x08messages\x18\x05 \x03(\x0b\x32!.ComplexProtoMessage.InnerMessage\x12\x31\n\x07\x62uffers\x18\x06 \x03(\x0b\x32 .ComplexProtoMessage.InnerBuffer\x1a-\n\x0cInnerMessage\x12\x0c\n\x04text\x18\x01 \x01(\t\x12\x0f\n\x07numbers\x18\x02 \x03(\r\x1ai\n\x0bInnerBuffer\x12\x0c\n\x04\x64\x61ta\x18\x01 \x01(\x0c\x12\x35\n\x05\x66lags\x18\x02 \x03(\x0b\x32&.ComplexProtoMessage.InnerBuffer.Flags\x1a\x15\n\x05\x46lags\x12\x0c\n\x04\x66lag\x18\x01 \x01(\x08')
+  create_key=_descriptor._internal_create_key,
+  serialized_pb=b'\n\x13test_messages.proto\"\xe9\x02\n\x13\x43omplexProtoMessage\x12\x10\n\x08number32\x18\x01 \x01(\r\x12\x10\n\x08number64\x18\x02 \x01(\x04\x12\x15\n\rlist_number32\x18\x03 \x03(\r\x12\x15\n\rlist_number64\x18\x04 \x03(\x04\x12\x33\n\x08messages\x18\x05 \x03(\x0b\x32!.ComplexProtoMessage.InnerMessage\x12\x31\n\x07\x62uffers\x18\x06 \x03(\x0b\x32 .ComplexProtoMessage.InnerBuffer\x1a-\n\x0cInnerMessage\x12\x0c\n\x04text\x18\x01 \x01(\t\x12\x0f\n\x07numbers\x18\x02 \x03(\r\x1ai\n\x0bInnerBuffer\x12\x0c\n\x04\x64\x61ta\x18\x01 \x01(\x0c\x12\x35\n\x05\x66lags\x18\x02 \x03(\x0b\x32&.ComplexProtoMessage.InnerBuffer.Flags\x1a\x15\n\x05\x46lags\x12\x0c\n\x04\x66lag\x18\x01 \x01(\x08'
 )
 
 
@@ -32,21 +31,22 @@ _COMPLEXPROTOMESSAGE_INNERMESSAGE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='text', full_name='ComplexProtoMessage.InnerMessage.text', index=0,
       number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
+      has_default_value=False, default_value=b"".decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='numbers', full_name='ComplexProtoMessage.InnerMessage.numbers', index=1,
       number=2, type=13, cpp_type=3, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -69,6 +69,7 @@ _COMPLEXPROTOMESSAGE_INNERBUFFER_FLAGS = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='flag', full_name='ComplexProtoMessage.InnerBuffer.Flags.flag', index=0,
@@ -76,7 +77,7 @@ _COMPLEXPROTOMESSAGE_INNERBUFFER_FLAGS = _descriptor.Descriptor(
       has_default_value=False, default_value=False,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -99,21 +100,22 @@ _COMPLEXPROTOMESSAGE_INNERBUFFER = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='data', full_name='ComplexProtoMessage.InnerBuffer.data', index=0,
       number=1, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b(""),
+      has_default_value=False, default_value=b"",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='flags', full_name='ComplexProtoMessage.InnerBuffer.flags', index=1,
       number=2, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -136,6 +138,7 @@ _COMPLEXPROTOMESSAGE = _descriptor.Descriptor(
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
+  create_key=_descriptor._internal_create_key,
   fields=[
     _descriptor.FieldDescriptor(
       name='number32', full_name='ComplexProtoMessage.number32', index=0,
@@ -143,42 +146,42 @@ _COMPLEXPROTOMESSAGE = _descriptor.Descriptor(
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='number64', full_name='ComplexProtoMessage.number64', index=1,
       number=2, type=4, cpp_type=4, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='list_number32', full_name='ComplexProtoMessage.list_number32', index=2,
       number=3, type=13, cpp_type=3, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='list_number64', full_name='ComplexProtoMessage.list_number64', index=3,
       number=4, type=4, cpp_type=4, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='messages', full_name='ComplexProtoMessage.messages', index=4,
       number=5, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
     _descriptor.FieldDescriptor(
       name='buffers', full_name='ComplexProtoMessage.buffers', index=5,
       number=6, type=11, cpp_type=10, label=3,
       has_default_value=False, default_value=[],
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
+      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
   ],
   extensions=[
   ],
@@ -204,32 +207,32 @@ _COMPLEXPROTOMESSAGE.fields_by_name['buffers'].message_type = _COMPLEXPROTOMESSA
 DESCRIPTOR.message_types_by_name['ComplexProtoMessage'] = _COMPLEXPROTOMESSAGE
 _sym_db.RegisterFileDescriptor(DESCRIPTOR)
 
-ComplexProtoMessage = _reflection.GeneratedProtocolMessageType('ComplexProtoMessage', (_message.Message,), dict(
+ComplexProtoMessage = _reflection.GeneratedProtocolMessageType('ComplexProtoMessage', (_message.Message,), {
 
-  InnerMessage = _reflection.GeneratedProtocolMessageType('InnerMessage', (_message.Message,), dict(
-    DESCRIPTOR = _COMPLEXPROTOMESSAGE_INNERMESSAGE,
-    __module__ = 'test_messages_pb2'
+  'InnerMessage' : _reflection.GeneratedProtocolMessageType('InnerMessage', (_message.Message,), {
+    'DESCRIPTOR' : _COMPLEXPROTOMESSAGE_INNERMESSAGE,
+    '__module__' : 'test_messages_pb2'
     # @@protoc_insertion_point(class_scope:ComplexProtoMessage.InnerMessage)
-    ))
+    })
   ,
 
-  InnerBuffer = _reflection.GeneratedProtocolMessageType('InnerBuffer', (_message.Message,), dict(
+  'InnerBuffer' : _reflection.GeneratedProtocolMessageType('InnerBuffer', (_message.Message,), {
 
-    Flags = _reflection.GeneratedProtocolMessageType('Flags', (_message.Message,), dict(
-      DESCRIPTOR = _COMPLEXPROTOMESSAGE_INNERBUFFER_FLAGS,
-      __module__ = 'test_messages_pb2'
+    'Flags' : _reflection.GeneratedProtocolMessageType('Flags', (_message.Message,), {
+      'DESCRIPTOR' : _COMPLEXPROTOMESSAGE_INNERBUFFER_FLAGS,
+      '__module__' : 'test_messages_pb2'
       # @@protoc_insertion_point(class_scope:ComplexProtoMessage.InnerBuffer.Flags)
-      ))
+      })
     ,
-    DESCRIPTOR = _COMPLEXPROTOMESSAGE_INNERBUFFER,
-    __module__ = 'test_messages_pb2'
+    'DESCRIPTOR' : _COMPLEXPROTOMESSAGE_INNERBUFFER,
+    '__module__' : 'test_messages_pb2'
     # @@protoc_insertion_point(class_scope:ComplexProtoMessage.InnerBuffer)
-    ))
+    })
   ,
-  DESCRIPTOR = _COMPLEXPROTOMESSAGE,
-  __module__ = 'test_messages_pb2'
+  'DESCRIPTOR' : _COMPLEXPROTOMESSAGE,
+  '__module__' : 'test_messages_pb2'
   # @@protoc_insertion_point(class_scope:ComplexProtoMessage)
-  ))
+  })
 _sym_db.RegisterMessage(ComplexProtoMessage)
 _sym_db.RegisterMessage(ComplexProtoMessage.InnerMessage)
 _sym_db.RegisterMessage(ComplexProtoMessage.InnerBuffer)